| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| package org.apache.axis2.jaxbri.mtom; |
| |
| import javax.activation.DataHandler; |
| import javax.activation.DataSource; |
| |
| import org.apache.axiom.testutils.activation.RandomDataSource; |
| import org.apache.axiom.testutils.io.IOTestUtils; |
| import org.apache.axis2.Constants; |
| import org.apache.axis2.description.AxisService; |
| import org.apache.axis2.engine.AxisConfiguration; |
| import org.apache.axis2.testutils.UtilServer; |
| import org.junit.AfterClass; |
| import org.junit.BeforeClass; |
| import org.junit.Test; |
| |
| public class MtomTest { |
| private static final String ENDPOINT = "http://127.0.0.1:" + UtilServer.TESTING_PORT + "/axis2/services/mtom"; |
| |
| @BeforeClass |
| public static void startServer() throws Exception { |
| UtilServer.start(System.getProperty("basedir", ".") + "/target/repo/mtom"); |
| AxisConfiguration axisConfiguration = UtilServer.getConfigurationContext().getAxisConfiguration(); |
| axisConfiguration.getParameter(Constants.Configuration.ENABLE_MTOM).setValue(true); |
| AxisService service = axisConfiguration.getService("mtom"); |
| service.getParameter(Constants.SERVICE_CLASS).setValue(MtomImpl.class.getName()); |
| service.setScope(Constants.SCOPE_APPLICATION); |
| } |
| |
| @AfterClass |
| public static void stopServer() throws Exception { |
| UtilServer.stop(); |
| } |
| |
| @Test |
| public void test() throws Exception { |
| MtomStub stub = new MtomStub(UtilServer.getConfigurationContext(), ENDPOINT); |
| UploadDocument uploadRequest = new UploadDocument(); |
| DataSource contentDS = new RandomDataSource(1234567L, 1024); |
| uploadRequest.setContent(new DataHandler(contentDS)); |
| UploadDocumentResponse uploadResponse = stub.uploadDocument(uploadRequest); |
| RetrieveDocument retrieveRequest = new RetrieveDocument(); |
| retrieveRequest.setId(uploadResponse.getId()); |
| RetrieveDocumentResponse retrieveResponse = stub.retrieveDocument(retrieveRequest); |
| IOTestUtils.compareStreams(contentDS.getInputStream(), retrieveResponse.getContent().getInputStream()); |
| } |
| } |