diff options
Diffstat (limited to 'sandbox/ramkumar/helloworld-ws-reference/src/main/java')
3 files changed, 126 insertions, 0 deletions
diff --git a/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java new file mode 100644 index 0000000000..dd939c6df6 --- /dev/null +++ b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldClient.java @@ -0,0 +1,52 @@ +/*
+ * 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 helloworld;
+
+import javax.activation.DataHandler;
+import javax.activation.FileDataSource;
+import org.apache.tuscany.sca.host.embedded.SCADomain;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMText;
+
+/**
+ * This client program shows how to create an SCA runtime, start it,
+ * locate the HelloWorld service and invoke it.
+ */
+public class HelloWorldClient {
+
+ public final static void main(String[] args) throws Exception {
+ SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite");
+ HelloWorldService helloWorldService = scaDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent");
+
+ OMFactory fac = OMAbstractFactory.getOMFactory();
+ OMElement imageElement = fac.createOMElement("image", null);
+ // Creating the Data Handler for the file.
+ DataHandler dataHandler = new DataHandler(new FileDataSource("C:/attachedfile.jpg"));
+ //create an OMText node with the above DataHandler and set optimized to true
+ OMText textData = fac.createOMText(dataHandler, true);
+ imageElement.addChild(textData);
+
+ String value = helloWorldService.getGreetings("attachedfile.jpg", imageElement);
+ System.out.println(value);
+
+ scaDomain.close();
+ }
+}
diff --git a/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java new file mode 100644 index 0000000000..4a90d05ea3 --- /dev/null +++ b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldService.java @@ -0,0 +1,30 @@ +/*
+ * 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 helloworld;
+
+import org.osoa.sca.annotations.Remotable;
+import org.apache.axiom.om.OMElement;
+
+/**
+ * The interface for the helloworld service
+ */
+@Remotable
+public interface HelloWorldService {
+ public String getGreetings(String filename, OMElement attachment) throws Exception;
+}
diff --git a/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java new file mode 100644 index 0000000000..66ed3db05f --- /dev/null +++ b/sandbox/ramkumar/helloworld-ws-reference/src/main/java/helloworld/HelloWorldServiceComponent.java @@ -0,0 +1,44 @@ +/*
+ * 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 helloworld;
+
+import org.apache.axiom.om.OMElement;
+
+/**
+ * The HelloWorld service implementation
+ */
+public class HelloWorldServiceComponent implements HelloWorldService {
+
+ HelloWorldService helloWorldService;
+
+ public String getGreetings(String filename, OMElement attachment) throws Exception {
+ System.out.println("Called getGreetings");
+ return helloWorldService.getGreetings(filename, attachment);
+ }
+
+ public HelloWorldService getHelloWorldService() {
+ System.out.println("Got Injected helloWorldService");
+ return helloWorldService;
+ }
+
+ public void setHelloWorldService(HelloWorldService helloWorldService) {
+ System.out.println("Injected helloWorldService");
+ this.helloWorldService = helloWorldService;
+ }
+}
\ No newline at end of file |