diff options
author | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2009-11-11 23:14:18 +0000 |
---|---|---|
committer | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2009-11-11 23:14:18 +0000 |
commit | fdd5b43d3c139cf2cbd1655d2efbfaf9032a5b5e (patch) | |
tree | bcd16e19fa4bbd45f956812be8b65f7a143b573f /branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java | |
parent | 3caf8614f25d6b1962e20331fdf423c863bc02f3 (diff) |
Moving 1.x branches
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@835145 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java')
75 files changed, 0 insertions, 5209 deletions
diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackCallback.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackCallback.java deleted file mode 100644 index cfecd989fe..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackCallback.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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 callback.client; - -import org.osoa.sca.annotations.Remotable; - -@Remotable -/* - * Callback interface - */ -public interface CallbackCallback { - - public void callbackMessage(String aString); - - public void callbackIncrement(String aString); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackClient.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackClient.java deleted file mode 100644 index 43bc26f2f5..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/CallbackClient.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * 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 callback.client; - -import org.osoa.sca.annotations.Remotable; - -@Remotable -/** - * Callback test client interface - */ -public interface CallbackClient { - - public void run(); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/JavaCallbackClientImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/JavaCallbackClientImpl.java deleted file mode 100644 index f78878ef47..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/JavaCallbackClientImpl.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * 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 callback.client; - -import junit.framework.Assert; - -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Service; - -import callback.service.CallbackService; - -@Service(CallbackClient.class) -/** - * Callback test client implementation - */ -public class JavaCallbackClientImpl implements CallbackClient, CallbackCallback { - - @Reference - protected CallbackService callbackService; - - private static String returnMessage = null; - private static int callbackCount = 0; - private static Object monitor = new Object(); - - public void run() { - - // This tests basic callback patterns. - - // Test1 is the basic callback where the target calls back prior to - // returning to the client. - test1a(); - - // Test2 is where the target does not call back to the client. - test1b(); - - // Test3 is where the target calls back multiple times to the client. - test1c(); - - return; - } - - private void test1a() { - callbackService.knockKnock("Knock Knock"); - int count = 0; - - // - // If we cant get a response in 30 seconds consider this a failure - // - - synchronized (monitor) { - while (returnMessage == null && count++ < 30) { - try { - monitor.wait(1000L); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - - Assert.assertEquals("CallbackITest - test1a", "Who's There", this.getReturnMessage()); - - } - - private void test1b() { - callbackService.noCallback("No Reply Desired"); - Assert.assertEquals("CallbackITest - test1b", 1, 1); - - return; - } - - private void test1c() { - callbackService.multiCallback("Call me back 3 times"); - int count = 0; - - // - // If we can't get a response in 30 seconds consider this a failure - // - - synchronized (monitor) { - while (this.getCallbackCount() < 3 && count++ < 30) { - try { - monitor.wait(1000L); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - - Assert.assertEquals("CallbackITest - test1c", 3, this.getCallbackCount()); - return; - } - - public String getReturnMessage() { - return returnMessage; - } - - public void setReturnMessage(String aReturnMessage) { - returnMessage = aReturnMessage; - } - - public int getCallbackCount() { - return callbackCount; - } - - public void incrementCallbackCount() { - callbackCount++; - } - - public void callbackMessage(String aString) { - System.out.println("Entering callback callbackMessage: " + aString); - synchronized (monitor) { - this.setReturnMessage(aString); - monitor.notify(); - } - } - - public void callbackIncrement(String aString) { - System.out.println("Entering callback increment: " + aString); - synchronized (monitor) { - this.incrementCallbackCount(); - monitor.notify(); - } - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/OSGiCallbackClientImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/OSGiCallbackClientImpl.java deleted file mode 100644 index 1c65ca573b..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/client/OSGiCallbackClientImpl.java +++ /dev/null @@ -1,181 +0,0 @@ -/* - * 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 callback.client; - -import java.util.Hashtable; - - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; - -import callback.service.CallbackService; - -/** - * OSGi Callback test client implementation - */ -public class OSGiCallbackClientImpl implements - CallbackClient, CallbackCallback, BundleActivator { - - protected CallbackService callbackService; - - private static String returnMessage = null; - private static int callbackCount = 0; - private static Object monitor = new Object(); - - private BundleContext bundleContext; - - public void run() { - - // This tests basic callback patterns. - - // Test1 is the basic callback where the target calls back prior to - // returning to the client. - test1a(); - - // Test2 is where the target does not call back to the client. - test1b(); - - // Test3 is where the target calls back multiple times to the client. - test1c(); - - return; - } - - - - private void test1a() { - callbackService.knockKnock("Knock Knock"); - int count = 0; - - // - // If we can't get a response in 30 seconds consider this a failure - // - - synchronized (monitor) { - while (returnMessage == null && count++ < 30) { - try { - monitor.wait(1000L); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - - if (!"Who's There".equals(this.getReturnMessage())) { - throw new RuntimeException("CallbackITest - test1a"); - } - - } - - private void test1b() { - callbackService.noCallback("No Reply Desired"); - - return; - } - - private void test1c() { - callbackService.multiCallback("Call me back 3 times"); - int count = 0; - - // - // If we can't get a response in 30 seconds consider this a failure - // - - synchronized (monitor) { - while (this.getCallbackCount() < 3 && count++ < 30) { - try { - monitor.wait(1000L); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - - if (this.getCallbackCount() != 3) - throw new RuntimeException("CallbackITest - test1c"); - return; - } - - public String getReturnMessage() { - return returnMessage; - } - - public void setReturnMessage(String aReturnMessage) { - returnMessage = aReturnMessage; - } - - public int getCallbackCount() { - return callbackCount; - } - - public void incrementCallbackCount() { - callbackCount++; - } - - public void callbackMessage(String aString) { - System.out.println("Entering callback callbackMessage: " + aString); - synchronized (monitor) { - this.setReturnMessage(aString); - monitor.notify(); - } - } - - public void callbackIncrement(String aString) { - System.out.println("Entering callback increment: " + aString); - synchronized (monitor) { - this.incrementCallbackCount(); - monitor.notify(); - } - } - - - public void start(BundleContext bc) throws Exception { - - System.out.println("Started OSGiCallbackClientImpl bundle "); - - this.bundleContext = bc; - - Hashtable<String, Object> serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.service.name", "CallbackClient/CallbackClient"); - - serviceProps.put("component.name", "CallbackClient"); - bundleContext.registerService("callback.client.CallbackClient", this, serviceProps); - - Hashtable<String, Object> callbackProps = new Hashtable<String, Object>(); - callbackProps.put("component.service.name", "CallbackClient/callbackService"); - callbackProps.put("component.name", "CallbackClient"); - - bundleContext.registerService("callback.client.CallbackCallback", this, callbackProps); - - ServiceReference ref= bundleContext.getServiceReference("callback.service.CallbackService"); - - if (ref != null) - callbackService = (callback.service.CallbackService)bundleContext.getService(ref); - - - - - } - - public void stop(BundleContext bc) { - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/CallbackService.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/CallbackService.java deleted file mode 100644 index 5383e1e268..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/CallbackService.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * 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 callback.service; - -import org.osoa.sca.annotations.Callback; -import org.osoa.sca.annotations.Remotable; - -import callback.client.CallbackCallback; - -@Remotable -@Callback(CallbackCallback.class) -/* - * Callback service interface - */ -public interface CallbackService { - - public void knockKnock(String aString); - - public void noCallback(String aString); - - public void multiCallback(String aString); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/JavaCallbackServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/JavaCallbackServiceImpl.java deleted file mode 100644 index b2af2fa68d..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/JavaCallbackServiceImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * 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 callback.service; - -import org.osoa.sca.annotations.Callback; -import org.osoa.sca.annotations.Service; - -import callback.client.CallbackCallback; - -@Service(CallbackService.class) -/* - * Callback service implementation - */ -public class JavaCallbackServiceImpl implements CallbackService { - - private CallbackCallback callback; - - @Callback - protected void setCallback(CallbackCallback callback) { - this.callback = callback; - } - - public void knockKnock(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - callback.callbackMessage("Who's There"); - System.out.println("CallbackServiceImpl response sent"); - return; - - } - - public void multiCallback(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - callback.callbackIncrement("Who's There 1"); - System.out.println("CallbackServiceImpl response sent"); - callback.callbackIncrement("Who's There 2"); - System.out.println("CallbackServiceImpl response sent"); - callback.callbackIncrement("Who's There 3"); - System.out.println("CallbackServiceImpl response sent"); - return; - - } - - public void noCallback(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - // System.out.println("CallbackServiceImpl No response desired"); - return; - - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/OSGiCallbackServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/OSGiCallbackServiceImpl.java deleted file mode 100644 index c05a3f52a8..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/callback/service/OSGiCallbackServiceImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * 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 callback.service; - -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; -import org.osoa.sca.annotations.Callback; - -import callback.client.CallbackCallback; - -/* - * OSGi Callback service implementation - */ -public class OSGiCallbackServiceImpl implements CallbackService, BundleActivator { - - @Callback - protected CallbackCallback callback; - - - private BundleContext bundleContext; - - public void knockKnock(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - callback.callbackMessage("Who's There"); - System.out.println("CallbackServiceImpl response sent"); - return; - - } - - public void multiCallback(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - callback.callbackIncrement("Who's There 1"); - System.out.println("CallbackServiceImpl response sent"); - callback.callbackIncrement("Who's There 2"); - System.out.println("CallbackServiceImpl response sent"); - callback.callbackIncrement("Who's There 3"); - System.out.println("CallbackServiceImpl response sent"); - return; - - } - - public void noCallback(String aString) { - - System.out.println("CallbackServiceImpl message received: " + aString); - // System.out.println("CallbackServiceImpl No response desired"); - return; - - } - - - public void start(BundleContext bc) throws Exception { - - System.out.println("Started OSGiCallbackServiceImpl bundle "); - - this.bundleContext = bc; - - Hashtable<String, Object> serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.service.name", "CallbackService/CallbackService"); - bundleContext.registerService("callback.service.CallbackService", this, serviceProps); - - - ServiceReference ref= bundleContext.getServiceReference("callback.client.CallbackCallback"); - - if (ref != null) - callback = (CallbackCallback)bundleContext.getService(ref); - - } - - public void stop(BundleContext bc) { - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalCallback.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalCallback.java deleted file mode 100644 index c92f078e49..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalCallback.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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 conversation.client; - -import org.osoa.sca.annotations.Conversational; -import org.osoa.sca.annotations.EndsConversation; -import org.osoa.sca.annotations.Remotable; - - -/** - * The callback interface used when testing conversational callbacks - * - * @version $Rev$ $Date$ - */ -@Remotable -@Conversational -public interface ConversationalCallback { - - public void init(); - - public void destroy(); - - public void initializeCount(int count); - - public void incrementCount(); - - public int retrieveCount(); - - public void businessException() throws Exception; - - @EndsConversation - public String endConversation(); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClient.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClient.java deleted file mode 100644 index af269052c7..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClient.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * 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 conversation.client; - -import org.osoa.sca.annotations.Remotable; - -/** - * The client for the conversational itest. Is implemented by clients - * offering both stateless and stateful callbacks - * - * @version $Rev$ $Date$ - */ - -@Remotable -public interface ConversationalClient { - - public int runConversationFromInjectedReference(); - public int runConversationFromServiceReference(); - public int runConversationWithUserDefinedConversationId(); - public String runConversationCheckUserDefinedConversationId(); - public int runConversationCheckingScope(); - public int runConversationWithCallback(); - public int runConversationHavingPassedReference(); - public String runConversationBusinessException(); - public String runConversationBusinessExceptionCallback(); - public int runConversationCallingEndedConversation(); - public int runConversationCallingEndedConversationCallback(); - public int runConversationAgeTimeout(); - public int runConversationIdleTimeout(); - public int runConversationPrincipleError(); - - public String getCalls(); - public String getServiceCalls(); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java deleted file mode 100644 index 5eb16be597..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * 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 conversation.client; - -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; - -import conversation.client.ConversationalCallback; -import conversation.client.ConversationalClient; -import conversation.client.ConversationalClientStatefulImpl; -import conversation.client.ConversationalClientStatelessImpl; - -/* - * OSGi bundle activator for conversation tests - */ -public class ConversationalClientActivator implements BundleActivator, ServiceListener { - - - private BundleContext bundleContext; - - - public void start(BundleContext bc) throws Exception { - - System.out.println("Started OSGiConversationClientActivator "); - - this.bundleContext = bc; - - bc.addServiceListener(this); - - Hashtable<String, Object> serviceProps; - - serviceProps = new Hashtable<String, Object>(); - - serviceProps.put("component.name", "ConversationalStatelessClientStatelessService"); - Object statelessClientFactory1 = - new ConversationalClientServiceFactory(ConversationalClientStatelessImpl.class, bundleContext, 1); - bundleContext.registerService( - new String[] {ConversationalClient.class.getName(), ConversationalCallback.class.getName()}, - statelessClientFactory1, - serviceProps); - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalStatelessClientStatefulService"); - Object statelessClientFactory2 = - new ConversationalClientServiceFactory(ConversationalClientStatelessImpl.class, bundleContext, 2); - bundleContext.registerService( - new String[] {ConversationalClient.class.getName(), ConversationalCallback.class.getName()}, - statelessClientFactory2, - serviceProps); - - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalStatefulClientStatelessService"); - Object statefulClientFactory1 = - new ConversationalClientServiceFactory(ConversationalClientStatefulImpl.class, bundleContext, 3); - bundleContext.registerService( - new String[] {ConversationalClient.class.getName(), ConversationalCallback.class.getName()}, - statefulClientFactory1, - serviceProps); - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalStatefulClientStatefulService"); - Object statefulClientFactory2 = - new ConversationalClientServiceFactory(ConversationalClientStatefulImpl.class, bundleContext, 4); - bundleContext.registerService( - new String[] {ConversationalClient.class.getName(), ConversationalCallback.class.getName()}, - statefulClientFactory2, - serviceProps); - - - } - - - - public void stop(BundleContext bc) { - } - - public void serviceChanged(ServiceEvent event) { - - if (event.getType() == ServiceEvent.REGISTERED) { - - } - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java deleted file mode 100644 index 8479624546..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java +++ /dev/null @@ -1,135 +0,0 @@ -/* - * 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 conversation.client; - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleContext; -import org.osgi.framework.Constants; -import org.osgi.framework.ServiceFactory; -import org.osgi.framework.ServiceReference; -import org.osgi.framework.ServiceRegistration; - -import conversation.client.ConversationalClientStatefulImpl; -import conversation.client.ConversationalClientStatelessImpl; -import conversation.referenceclient.ConversationalReferenceClient; -import conversation.service.ConversationalService; - -public class ConversationalClientServiceFactory implements ServiceFactory { - - private Class<?> clazz; - private BundleContext bundleContext; - private int serviceNum; - - public ConversationalClientServiceFactory(Class<?> clazz, BundleContext bundleContext, int serviceNum) { - this.clazz = clazz; - this.bundleContext = bundleContext; - this.serviceNum = serviceNum; - } - - public Object getService(Bundle bundle, ServiceRegistration reg) { - - - try { - Object instance = clazz.newInstance(); - - ConversationalClientStatelessImpl statelessClient = null; - ConversationalClientStatefulImpl statefulClient = null; - - if (serviceNum == 1 || serviceNum == 2) { - - ServiceReference ref = bundleContext.getServiceReference(ConversationalReferenceClient.class.getName()); - statelessClient = (ConversationalClientStatelessImpl)instance; - statelessClient.conversationalReferenceClient = - (ConversationalReferenceClient)bundleContext.getService(ref); - } - if (serviceNum == 1) { - - ServiceReference ref = getServiceReference(ConversationalService.class.getName(), - "(component.name=ConversationalServiceStateless)"); - statelessClient.conversationalService = (ConversationalService)bundleContext.getService(ref); - - } - - if (serviceNum == 2) { - - ServiceReference ref = getServiceReference(ConversationalService.class.getName(), - "(component.name=ConversationalServiceStateful)"); - statelessClient.conversationalService = (ConversationalService)bundleContext.getService(ref); - - } - - - if (serviceNum == 3 || serviceNum == 4) { - - ServiceReference ref = bundleContext.getServiceReference(ConversationalReferenceClient.class.getName()); - statefulClient = (ConversationalClientStatefulImpl)instance; - statefulClient.conversationalReferenceClient = - (ConversationalReferenceClient)bundleContext.getService(ref); - } - if (serviceNum == 3) { - - ServiceReference ref = getServiceReference(ConversationalService.class.getName(), - "(component.name=ConversationalServiceStateless)"); - statefulClient.conversationalService = (ConversationalService)bundleContext.getService(ref); - - } - - if (serviceNum == 4) { - - ServiceReference ref = getServiceReference(ConversationalService.class.getName(), - "(component.name=ConversationalServiceStateful)"); - statefulClient.conversationalService = (ConversationalService)bundleContext.getService(ref); - - } - - return instance; - } catch (Exception e) { - - e.printStackTrace(); - return null; - } - } - - public void ungetService(Bundle bundle, ServiceRegistration reg, Object obj) { - - } - - private ServiceReference getServiceReference(String name, String filter) throws Exception { - - ServiceReference refs[] = bundleContext.getServiceReferences(name, filter); - ServiceReference ref = refs[0]; - int ranking = 0; - if (ref.getProperty(Constants.SERVICE_RANKING) instanceof Integer) - ranking = (Integer)ref.getProperty(Constants.SERVICE_RANKING); - for (int i = 1; i < refs.length; i++) { - int thisranking = 0; - if (refs[i].getProperty(Constants.SERVICE_RANKING) instanceof Integer) { - thisranking = (Integer)refs[i].getProperty(Constants.SERVICE_RANKING); - } - if (thisranking > ranking) { - ref = refs[i]; - ranking = thisranking; - } - } - - return ref; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatefulImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatefulImpl.java deleted file mode 100644 index 3aedabc29c..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatefulImpl.java +++ /dev/null @@ -1,254 +0,0 @@ -/* - * 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 conversation.client; - -import org.osoa.sca.ComponentContext; -import org.osoa.sca.ServiceReference; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.ConversationAttributes; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import conversation.referenceclient.ConversationalReferenceClient; -import conversation.service.ConversationalService; - -/** - * The client for the conversational itest which presents a stateful - * callback interface - * - * @version $Rev$ $Date$ - */ - -@Service(interfaces={ConversationalClient.class}) -@Scope("CONVERSATION") -@ConversationAttributes(maxAge="10 minutes", - maxIdleTime="5 minutes", - singlePrincipal=false) -public class ConversationalClientStatefulImpl implements ConversationalClient, ConversationalCallback { - - @Context - protected ComponentContext componentContext; - - protected ConversationalService conversationalService; - - protected ConversationalReferenceClient conversationalReferenceClient; - - private int clientCount = 0; - private int callbackCount = 0; - - - // a static member variable that records the number of times this service is called - public static StringBuffer calls = new StringBuffer(); - - // From ConversationalClient - public int runConversationFromInjectedReference(){ - calls.append("runConversationFromInjectedReference,"); - conversationalService.initializeCount(1); - conversationalService.incrementCount(); - clientCount = conversationalService.retrieveCount(); - conversationalService.endConversation(); - - return clientCount; - } - public int runConversationFromServiceReference(){ - calls.append("runConversationFromServiceReference,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - // serviceReference.getConversation().end(); - - return clientCount; - } - public int runConversationWithUserDefinedConversationId(){ - calls.append("runConversationWithUserDefinedConversationId,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - serviceReference.setConversationID("MyConversation1"); - - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - // serviceReference.getConversation().end(); - - return clientCount; - } - public String runConversationCheckUserDefinedConversationId(){ - calls.append("runConversationCheckUserDefinedConversationId,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - serviceReference.setConversationID("MyConversation2"); - - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - return callableReference.endConversation(); - - } - public int runConversationCheckingScope(){ - calls.append("runConversationCheckingScope,"); - // run a conversation - return runConversationFromInjectedReference(); - - // test will then use a static method to find out how many times - // init/destroy were called - } - public int runConversationWithCallback(){ - calls.append("runConversationWithCallback,"); - callbackCount = 2; - conversationalService.initializeCountCallback(1); - conversationalService.incrementCountCallback(); - clientCount = conversationalService.retrieveCountCallback(); - conversationalService.endConversationCallback(); - - return clientCount; - } - public int runConversationHavingPassedReference(){ - calls.append("runConversationHavingPassedReference,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - conversationalReferenceClient.incrementCount(serviceReference); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - serviceReference.getConversation().end(); - - return clientCount; - } - public String runConversationBusinessException(){ - calls.append("runConversationbusinessException,"); - try { - conversationalService.initializeCount(1); - conversationalService.businessException(); - clientCount = conversationalService.retrieveCount(); - conversationalService.endConversation(); - } catch(Exception ex) { - return ex.getMessage(); - } - - return "No Exception Returned"; - } - - public String runConversationBusinessExceptionCallback(){ - calls.append("runConversationbusinessExceptionCallback,"); - try { - conversationalService.initializeCountCallback(1); - conversationalService.businessExceptionCallback(); - clientCount = conversationalService.retrieveCountCallback(); - conversationalService.endConversationCallback(); - } catch(Exception ex) { - return ex.getMessage(); - } - - return "No Exception Returned"; - } - - public int runConversationCallingEndedConversation(){ - calls.append("runConversationCallingEndedConversation,"); - conversationalService.initializeCount(1); - conversationalService.endConversation(); - return conversationalService.retrieveCount(); - } - - public int runConversationCallingEndedConversationCallback(){ - calls.append("runConversationCallingEndedConversationCallback,"); - conversationalService.initializeCountCallback(1); - conversationalService.endConversationCallback(); - return conversationalService.retrieveCountCallback(); - } - - public int runConversationAgeTimeout(){ - calls.append("runConversationAgeTimeout,"); - // done in other testing - return clientCount; - } - public int runConversationIdleTimeout(){ - calls.append("runConversationIdleTimeout,"); - // done in other testing - return clientCount; - } - public int runConversationPrincipleError(){ - calls.append("runConversationPrincipleError,"); - // TODO - when policy framework is done - return clientCount; - } - - - // From ConversationalCallback - @Init - public void init(){ - calls.append("init,"); - } - - @Destroy - public void destroy(){ - calls.append("destroy,"); - } - - public void initializeCount(int count){ - calls.append("initializeCount,"); - callbackCount += count; - } - - public void incrementCount(){ - calls.append("incrementCount,"); - callbackCount++; - } - - public int retrieveCount(){ - calls.append("retrieveCount,"); - return callbackCount; - } - - public void businessException() throws Exception { - throw new Exception("Business Exception"); - } - - public String endConversation(){ - calls.append("endConversation,"); - callbackCount = 0; - return null; - } - - public String getCalls() { - return calls.toString(); - } - - public String getServiceCalls() { - return conversationalService.getCalls().toString(); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatelessImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatelessImpl.java deleted file mode 100644 index b12e094bc1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientStatelessImpl.java +++ /dev/null @@ -1,253 +0,0 @@ -/* - * 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 conversation.client; - - -import org.osoa.sca.ComponentContext; -import org.osoa.sca.ServiceReference; -import org.osoa.sca.annotations.Context; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import conversation.referenceclient.ConversationalReferenceClient; -import conversation.service.ConversationalService; - -/** - * The client for the conversational itest which presents a stateful - * callback interface - * - * @version $Rev$ $Date$ - */ - -@Service(interfaces={ConversationalClient.class}) -@Scope("STATELESS") -public class ConversationalClientStatelessImpl implements ConversationalClient, ConversationalCallback { - - @Context - protected ComponentContext componentContext; - - @Reference - protected ConversationalService conversationalService; - - @Reference - protected ConversationalReferenceClient conversationalReferenceClient; - - private int clientCount = 0; - private int callbackCount = 0; - - // a static member variable that records the number of times this service is called - public static StringBuffer calls = new StringBuffer(); - - // From ConversationalClient - public int runConversationFromInjectedReference(){ - calls.append("runConversationFromInjectedReference,"); - conversationalService.initializeCount(1); - conversationalService.incrementCount(); - clientCount = conversationalService.retrieveCount(); - conversationalService.endConversation(); - - return clientCount; - } - public int runConversationFromServiceReference(){ - calls.append("runConversationFromServiceReference,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - // serviceReference.getConversation().end(); - - return clientCount; - } - public int runConversationWithUserDefinedConversationId(){ - calls.append("runConversationWithUserDefinedConversationId,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - // serviceReference.getConversation().end(); - - return clientCount; - } - public String runConversationCheckUserDefinedConversationId(){ - calls.append("runConversationCheckUserDefinedConversationId,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - serviceReference.setConversationID("MyConversation2"); - - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - clientCount = callableReference.retrieveCount(); - return callableReference.endConversation(); - - } - public int runConversationCheckingScope(){ - calls.append("runConversationCheckingScope,"); - // run a conversation - return runConversationFromInjectedReference(); - - // test will then use a static method to find out how many times - // init/destroy were called - } - public int runConversationWithCallback(){ - calls.append("runConversationWithCallback,"); - conversationalService.initializeCountCallback(1); - conversationalService.incrementCountCallback(); - clientCount = conversationalService.retrieveCountCallback(); - conversationalService.endConversationCallback(); - - return clientCount; - } - - public int runConversationHavingPassedReference(){ - calls.append("runConversationHavingPassedReference,"); - ServiceReference<ConversationalService> serviceReference = componentContext.getServiceReference(ConversationalService.class, - "conversationalService"); - ConversationalService callableReference = serviceReference.getService(); - - callableReference.initializeCount(1); - callableReference.incrementCount(); - conversationalReferenceClient.incrementCount(serviceReference); - clientCount = callableReference.retrieveCount(); - callableReference.endConversation(); - - // serviceReference.getConversation().end(); - - return clientCount; - } - - public String runConversationBusinessException(){ - calls.append("runConversationbusinessException,"); - try { - conversationalService.initializeCount(1); - conversationalService.businessException(); - clientCount = conversationalService.retrieveCount(); - conversationalService.endConversation(); - } catch(Exception ex) { - return ex.getMessage(); - } - - return "No Exception Returned"; - } - - public String runConversationBusinessExceptionCallback(){ - calls.append("runConversationbusinessExceptionCallback,"); - try { - conversationalService.initializeCountCallback(1); - conversationalService.businessExceptionCallback(); - clientCount = conversationalService.retrieveCountCallback(); - conversationalService.endConversationCallback(); - } catch(Exception ex) { - return ex.getMessage(); - } - - return "No Exception Returned"; - } - - public int runConversationCallingEndedConversation(){ - calls.append("runConversationCallingEndedConversation,"); - conversationalService.initializeCount(1); - conversationalService.endConversation(); - return conversationalService.retrieveCount(); - } - - public int runConversationCallingEndedConversationCallback(){ - calls.append("runConversationCallingEndedConversationCallback,"); - conversationalService.initializeCountCallback(1); - conversationalService.endConversationCallback(); - return conversationalService.retrieveCountCallback(); - } - - public int runConversationAgeTimeout(){ - calls.append("runConversationAgeTimeout,"); - // done in other testing - return clientCount; - } - public int runConversationIdleTimeout(){ - calls.append("runConversationIdleTimeout,"); - // done in other testing - return clientCount; - } - public int runConversationPrincipleError(){ - calls.append("runConversationPrincipleError,"); - // TODO - when policy framework is done - return clientCount; - } - - - // From ConversationalCallback - @Init - public void init(){ - calls.append("init,"); - - } - - @Destroy - public void destroy(){ - calls.append("destroy,"); - - } - - public void initializeCount(int count){ - calls.append("initializeCount,"); - callbackCount = 0; - } - - public void incrementCount(){ - calls.append("incrementCount,"); - callbackCount++; - } - - public int retrieveCount(){ - calls.append("retrieveCount,"); - return callbackCount; - } - - public void businessException() throws Exception { - throw new Exception("Business Exception"); - } - - public String endConversation(){ - calls.append("endConversation,"); - return null; - } - - public String getCalls() { - return calls.toString(); - } - - public String getServiceCalls() { - return conversationalService.getCalls().toString(); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClient.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClient.java deleted file mode 100644 index 59e128b993..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClient.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * 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 conversation.referenceclient; - -import org.osoa.sca.CallableReference; -import org.osoa.sca.annotations.Remotable; - -import conversation.service.ConversationalService; - -/** - * The client that calls into an existing conversation by accepting - * a reference to that conversation - * - * @version $Rev$ $Date$ - */ - -@Remotable -public interface ConversationalReferenceClient { - - public void incrementCount(CallableReference<ConversationalService> conversationalService); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientActivator.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientActivator.java deleted file mode 100644 index ff6f16cba3..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientActivator.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * 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 conversation.referenceclient; - -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; - -/* - * OSGi bundle activator for conversation tests - */ -public class ConversationalReferenceClientActivator implements BundleActivator, ServiceListener { - - - private BundleContext bundleContext; - - - public void start(BundleContext bc) throws Exception { - - System.out.println("Started OSGiConversationReferenceClientActivator "); - - this.bundleContext = bc; - - bc.addServiceListener(this); - - Hashtable<String, Object> serviceProps; - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalReferenceClient"); - ConversationalReferenceClientImpl refClient = new ConversationalReferenceClientImpl(); - bundleContext.registerService(ConversationalReferenceClient.class.getName(), refClient, serviceProps); - - } - - - - public void stop(BundleContext bc) { - } - - public void serviceChanged(ServiceEvent event) { - - if (event.getType() == ServiceEvent.REGISTERED) { - - } - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientImpl.java deleted file mode 100644 index 4524c6bd3d..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/referenceclient/ConversationalReferenceClientImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * 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 conversation.referenceclient; - -import org.osoa.sca.CallableReference; -import org.osoa.sca.annotations.AllowsPassByReference; -import org.osoa.sca.annotations.Service; - -import conversation.service.ConversationalService; - -/** - * A client component that accepts a reference to an ongoing conversation - * and takes part in that conversation - * - * @version $Rev$ $Date$ - */ - -@Service(interfaces={ConversationalReferenceClient.class}) -@AllowsPassByReference -public class ConversationalReferenceClientImpl implements ConversationalReferenceClient{ - - public void incrementCount(CallableReference<ConversationalService> conversationalService){ - ConversationalService callableReference = conversationalService.getService(); - - callableReference.incrementCount(); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalService.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalService.java deleted file mode 100644 index bcd24ef0b1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalService.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * 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 conversation.service; - -import org.osoa.sca.annotations.Callback; -import org.osoa.sca.annotations.Conversational; -import org.osoa.sca.annotations.EndsConversation; -import org.osoa.sca.annotations.Remotable; - -import conversation.client.ConversationalCallback; - - -/** - * The service interface used when testing conversations - * - * @version $Rev$ $Date$ - */ -@Remotable -@Conversational -@Callback(ConversationalCallback.class) -public interface ConversationalService { - - public void init(); - - public void destroy(); - - public void initializeCount(int count); - - public void incrementCount(); - - public int retrieveCount(); - - public void businessException() throws Exception; - - public void initializeCountCallback(int count); - - public void incrementCountCallback(); - - public int retrieveCountCallback(); - - public void businessExceptionCallback() throws Exception; - - @EndsConversation - public String endConversation(); - - public String endConversationCallback(); - - public String getCalls(); -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceActivator.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceActivator.java deleted file mode 100644 index 903f8bf229..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceActivator.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * 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 conversation.service; - -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; - - -/* - * OSGi bundle activator for conversation tests - */ -public class ConversationalServiceActivator implements BundleActivator, ServiceListener { - - - private BundleContext bundleContext; - - - public void start(BundleContext bc) throws Exception { - - System.out.println("Started OSGiConversationServiceActivator "); - - this.bundleContext = bc; - - bc.addServiceListener(this); - - Hashtable<String, Object> serviceProps; - - serviceProps = new Hashtable<String, Object>(); - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalServiceStateful"); - Object statefulService = - new ConversationalServiceFactory(ConversationalServiceStatefulImpl.class); - bundleContext.registerService(ConversationalService.class.getName(), statefulService, serviceProps); - - serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "ConversationalServiceStateless"); - ConversationalServiceStatelessImpl statelessService = new ConversationalServiceStatelessImpl(); - bundleContext.registerService(ConversationalService.class.getName(), statelessService, serviceProps); - - - } - - - - public void stop(BundleContext bc) { - } - - public void serviceChanged(ServiceEvent event) { - - if (event.getType() == ServiceEvent.REGISTERED) { - - } - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java deleted file mode 100644 index fe8bd23f07..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * 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 conversation.service; - -import org.osgi.framework.Bundle; -import org.osgi.framework.ServiceFactory; -import org.osgi.framework.ServiceRegistration; - - -public class ConversationalServiceFactory implements ServiceFactory { - - private Class<?> clazz; - - public ConversationalServiceFactory(Class<?> clazz) { - this.clazz = clazz; - } - - public Object getService(Bundle bundle, ServiceRegistration reg) { - - try { - return clazz.newInstance(); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - - } - - public void ungetService(Bundle bundle, ServiceRegistration reg, Object obj) { - - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatefulImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatefulImpl.java deleted file mode 100644 index ec30d641ac..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatefulImpl.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * 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 conversation.service; - -import org.osoa.sca.annotations.Callback; -import org.osoa.sca.annotations.ConversationAttributes; -import org.osoa.sca.annotations.ConversationID; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import conversation.client.ConversationalCallback; - - -/** - * The service used when testing stateful conversations - * - * @version $Rev$ $Date$ - */ -@Service(ConversationalService.class) -@Scope("CONVERSATION") -@ConversationAttributes(maxAge="10 minutes", - maxIdleTime="5 minutes", - singlePrincipal=false) -public class ConversationalServiceStatefulImpl implements ConversationalService { - - @ConversationID - protected String conversationId; - - @Callback - protected ConversationalCallback conversationalCallback; - - // local count - accumulates during the conversation - private int count = 0; - - // a static member variable that records the number of times this service is called - public static StringBuffer calls = new StringBuffer(); - - @Init - public void init(){ - calls.append("init,"); - } - - @Destroy - public void destroy(){ - calls.append("destroy,"); - } - - public void initializeCount(int count){ - calls.append("initializeCount,"); - this.count = count; - } - - public void incrementCount(){ - calls.append("incrementCount,"); - count++; - } - - public int retrieveCount(){ - calls.append("retrieveCount,"); - return count; - } - - public void businessException() throws Exception { - throw new Exception("Business Exception"); - } - - public void initializeCountCallback(int count){ - calls.append("initializeCountCallback,"); - this.count = count; - conversationalCallback.initializeCount(count); - } - - public void incrementCountCallback(){ - calls.append("incrementCountCallback,"); - count++; - conversationalCallback.incrementCount(); - } - - public int retrieveCountCallback(){ - calls.append("retrieveCountCallback,"); - return conversationalCallback.retrieveCount(); - } - - public void businessExceptionCallback() throws Exception { - calls.append("businessExceptionCallback,"); - conversationalCallback.businessException(); - } - - public String endConversation(){ - calls.append("endConversation,"); - count = 0; - return conversationId; - } - - public String endConversationCallback(){ - calls.append("endConversationCallback,"); - return conversationalCallback.endConversation(); - } - - public String getCalls() { - return calls.toString(); - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatelessImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatelessImpl.java deleted file mode 100644 index 34baca71d1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceStatelessImpl.java +++ /dev/null @@ -1,127 +0,0 @@ -/* - * 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 conversation.service; - -import java.util.HashMap; - -import org.osoa.sca.annotations.Callback; -import org.osoa.sca.annotations.ConversationID; -import org.osoa.sca.annotations.Destroy; -import org.osoa.sca.annotations.Init; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import conversation.client.ConversationalCallback; - - -/** - * The service used when testing stateful conversations - * - * @version $Rev$ $Date$ - */ -@Service(ConversationalService.class) -@Scope("STATELESS") -public class ConversationalServiceStatelessImpl implements ConversationalService { - - @ConversationID - protected String conversationId; - - @Callback - protected ConversationalCallback conversationalCallback; - - // static area in which to hold conversational data - private static HashMap<String, Integer> conversationalState = new HashMap<String, Integer>(); - - // a static member variable that records the number of times this service is called - public static StringBuffer calls = new StringBuffer(); - - @Init - public void init(){ - calls.append("init,"); - } - - @Destroy - public void destroy(){ - calls.append("destroy,"); - } - - public void initializeCount(int count){ - calls.append("initializeCount,"); - Integer conversationalCount = new Integer(count); - conversationalState.put(conversationId, conversationalCount); - } - - public void incrementCount(){ - calls.append("incrementCount,"); - Integer conversationalCount = conversationalState.get(conversationId); - conversationalCount++; - conversationalState.put(conversationId, conversationalCount); - } - - public int retrieveCount(){ - calls.append("retrieveCount,"); - Integer count = conversationalState.get(conversationId); - if (count != null){ - return count.intValue(); - } else { - return -999; - } - } - - public void businessException() throws Exception { - throw new Exception("Business Exception"); - } - - public void initializeCountCallback(int count){ - calls.append("initializeCountCallback,"); - initializeCount(count); - conversationalCallback.initializeCount(count); - } - - public void incrementCountCallback(){ - calls.append("incrementCountCallback,"); - incrementCount(); - conversationalCallback.incrementCount(); - } - - public int retrieveCountCallback(){ - calls.append("retrieveCountCallback,"); - return conversationalCallback.retrieveCount(); - } - - public void businessExceptionCallback() throws Exception { - calls.append("businessExceptionCallback,"); - conversationalCallback.businessException(); - } - - public String endConversation(){ - calls.append("endConversation,"); - conversationalState.remove(conversationId); - return conversationId; - } - - public String endConversationCallback(){ - calls.append("endConversationCallback,"); - return conversationalCallback.endConversation(); - } - - public String getCalls() { - return calls.toString(); - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/Greetings.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/Greetings.java deleted file mode 100644 index 9285c0a8d5..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/Greetings.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * 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; - -@Remotable -public interface Greetings { - - - public String[] getGreetingsFromJava(String[] s); - - public String[] getGreetingsFromOSGi(String[] s); - - public String[] getModifiedGreetingsFromJava(String[] s); - - public String[] getModifiedGreetingsFromOSGi(String[] s); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/HelloWorld.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/HelloWorld.java deleted file mode 100644 index 16d0eae990..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/HelloWorld.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * 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; - -@Remotable -public interface HelloWorld { - - public String getGreetings(String s); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaGreetingsComponent.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaGreetingsComponent.java deleted file mode 100644 index 3d0e045225..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaGreetingsComponent.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * 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.AllowsPassByReference; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -@Service(Greetings.class) -@Scope("COMPOSITE") -public class JavaGreetingsComponent implements Greetings { - - private Greetings greetingsService; - - @Reference - public void setGreetingsService(Greetings greetingsService) { - this.greetingsService = greetingsService; - } - - - public String[] getGreetingsFromJava(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = "Hello " + s[i] + "(From Java)"; - } - - return greetingsService.getGreetingsFromJava(s); - } - - public String[] getGreetingsFromOSGi(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = s[i] + "(From Java)"; - } - - return s; - } - - @AllowsPassByReference - public String[] getModifiedGreetingsFromJava(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = "Hello " + s[i] + "(From Java)"; - } - - return greetingsService.getModifiedGreetingsFromJava(s); - } - - @AllowsPassByReference - public String[] getModifiedGreetingsFromOSGi(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = s[i] + "(From Java)"; - } - - return s; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaHelloWorldComponent.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaHelloWorldComponent.java deleted file mode 100644 index c055aee142..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/JavaHelloWorldComponent.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * 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.Reference; -import org.osoa.sca.annotations.Scope; - -@Scope("COMPOSITE") -public class JavaHelloWorldComponent implements HelloWorld { - - public helloworld.ws.HelloWorld helloWorldWS; - - @Reference - public void setHelloWorldWS(helloworld.ws.HelloWorld helloWorldWS) { - this.helloWorldWS = helloWorldWS; - } - - public String getGreetings(String s) { - return helloWorldWS.getGreetings(s); - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiGreetingsImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiGreetingsImpl.java deleted file mode 100644 index 661eb5a8cb..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiGreetingsImpl.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * 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 java.util.Hashtable; - -import org.osgi.framework.BundleContext; -import org.osgi.framework.InvalidSyntaxException; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; -import org.osgi.framework.ServiceReference; -import org.osgi.framework.BundleActivator; -import org.osoa.sca.annotations.AllowsPassByReference; - - -public class OSGiGreetingsImpl implements Greetings, ServiceListener, BundleActivator { - - private Greetings greetingsService; - - private BundleContext bundleContext; - - public String[] getGreetingsFromOSGi(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = "Hello " + s[i] + "(From OSGi)"; - } - - return greetingsService.getGreetingsFromOSGi(s); - } - - public String[] getGreetingsFromJava(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = s[i] + "(From OSGi)"; - } - - return s; - } - - @AllowsPassByReference - public String[] getModifiedGreetingsFromOSGi(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = "Hello " + s[i] + "(From OSGi)"; - } - - return greetingsService.getModifiedGreetingsFromOSGi(s); - } - - @AllowsPassByReference - public String[] getModifiedGreetingsFromJava(String s[]) { - for (int i = 0; i < s.length; i++) { - s[i] = s[i] + "(From OSGi)"; - } - - return s; - } - - public void start(BundleContext bc) { - - System.out.println("Started OsgiGreetingsImpl bundle "); - - this.bundleContext = bc; - - Hashtable<String, Object> serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.service.name", "OSGiGreetingsComponent/Greetings"); - bundleContext.registerService("helloworld.Greetings", this, serviceProps); - - - ServiceReference ref = bundleContext.getServiceReference("helloworld.Greetings"); - if (ref != null) - greetingsService = (helloworld.Greetings)bundleContext.getService(ref); - else { - try { - String filter = "(objectclass=helloworld.Greetings)"; - this.bundleContext.addServiceListener(this, filter); - - } catch (InvalidSyntaxException e) { - e.printStackTrace(); - } - } - - } - - public void stop(BundleContext bc) { - } - - public void serviceChanged(ServiceEvent event) { - try { - if (event.getType() == ServiceEvent.REGISTERED) { - ServiceReference ref = event.getServiceReference(); - greetingsService = (helloworld.Greetings) bundleContext.getService(ref); - } - } catch (Throwable e) { - e.printStackTrace(); - } - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiHelloWorldImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiHelloWorldImpl.java deleted file mode 100644 index 0588da9a85..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/OSGiHelloWorldImpl.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * 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 java.util.Hashtable; - -import org.osgi.framework.BundleContext; -import org.osgi.framework.InvalidSyntaxException; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; -import org.osgi.framework.ServiceReference; -import org.osgi.framework.BundleActivator; - - -public class OSGiHelloWorldImpl implements HelloWorld, ServiceListener, BundleActivator { - - public helloworld.ws.HelloWorld helloWorldWS; - - private BundleContext bundleContext; - - public String getGreetings(String s) { - return helloWorldWS.getGreetings(s); - } - - - public void start(BundleContext bc) { - - System.out.println("Started OsgiHelloWorldImpl bundle "); - - this.bundleContext = bc; - - Hashtable<String, Object> serviceProps = new Hashtable<String, Object>(); - serviceProps.put("component.name", "HelloWorldComponent"); - bundleContext.registerService("helloworld.HelloWorld", this, serviceProps); - - ServiceReference ref = bundleContext.getServiceReference("helloworld.ws.HelloWorld"); - if (ref != null) - helloWorldWS = (helloworld.ws.HelloWorld)bundleContext.getService(ref); - else { - try { - String filter = "(objectclass=helloworld.ws.HelloWorld)"; - this.bundleContext.addServiceListener(this, filter); - - } catch (InvalidSyntaxException e) { - e.printStackTrace(); - } - } - - } - - public void stop(BundleContext bc) { - } - - public void serviceChanged(ServiceEvent event) { - try { - if (event.getType() == ServiceEvent.REGISTERED) { - ServiceReference ref = event.getServiceReference(); - helloWorldWS = (helloworld.ws.HelloWorld) bundleContext.getService(ref); - } - } catch (Throwable e) { - e.printStackTrace(); - } - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldService.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldService.java deleted file mode 100644 index fff67e1978..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldService.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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.sdo; - -import org.osoa.sca.annotations.Remotable; - -/** - * The interface for the helloworld service - */ -@Remotable -public interface HelloWorldService { - - public String getGreetings(Name name); -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldServiceComponent.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldServiceComponent.java deleted file mode 100644 index 98085449e6..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/HelloWorldServiceComponent.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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.sdo; - -import org.osoa.sca.annotations.Service; - -/** - * This class implements the HelloWorld service. - */ -@Service(HelloWorldService.class) -public class HelloWorldServiceComponent implements HelloWorldService { - - public String getGreetings(Name name) { - return "Hello " + name.getFirst() + " " + name.getLast(); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClient.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClient.java deleted file mode 100644 index 5089019671..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClient.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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.sdo.client; - -import org.osoa.sca.annotations.Remotable; - -/** - * The interface for the helloworld client - */ -@Remotable -public interface HelloWorldClient { - - public String getGreetings(String firstName, String lastName); -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClientComponent.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClientComponent.java deleted file mode 100644 index 1aabf4d10c..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/sdo/client/HelloWorldClientComponent.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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.sdo.client; - -import helloworld.sdo.HelloWorldService; -import helloworld.sdo.HelloworldFactory; -import helloworld.sdo.Name; - -/** - * The HelloWorld client implementation - */ -public class HelloWorldClientComponent implements HelloWorldClient { - - HelloWorldService helloWorldService; - - public String getGreetings(String firstName, String lastName) { - Name name = HelloworldFactory.INSTANCE.createName(); - name.setFirst(firstName); - name.setLast(lastName); - return helloWorldService.getGreetings(name); - } - - public HelloWorldService getHelloWorldService() { - return helloWorldService; - } - - public void setHelloWorldService(HelloWorldService helloWorldService) { - this.helloWorldService = helloWorldService; - } - - public void unsetHelloWorldService(HelloWorldService helloWorldService) { - this.helloWorldService = null; - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorld.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorld.java deleted file mode 100644 index 039a214856..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorld.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * 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.ws; - -import org.osoa.sca.annotations.Remotable; - -@Remotable -public interface HelloWorld { - - public String getGreetings(String s); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorldService.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorldService.java deleted file mode 100644 index 4a3cd4aed2..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/helloworld/ws/HelloWorldService.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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.ws; - -public class HelloWorldService implements HelloWorld { - - public String getGreetings(String s) { - return "Hello " + s; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteComponentImpl.java deleted file mode 100644 index 2251bf5be6..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteComponentImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * 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 stockquote; - -import java.util.Dictionary; - -import org.osgi.service.component.ComponentContext; -import org.osoa.sca.annotations.Property; - -/** - * Declarative Stock quote with configurable properties. - */ -public class OSGiStockQuoteComponentImpl implements StockQuote { - - @Property - public double exchangeRate; - - private String currency; - - - public double configExchangeRate; - public String configCurrency; - - @Property - public void setCurrency(String currency) { - this.currency = currency; - } - - public double getQuote(String ticker) throws Exception { - - if (exchangeRate == 2.0 && !"USD".equals(currency)) { - throw new RuntimeException("Property exchangeRate not set correctly, exchangeRate= " + - exchangeRate + " currency=" + currency); - } - if (exchangeRate == 1.48 && !"EURO".equals(currency)) { - throw new RuntimeException("Property exchangeRate not set correctly, exchangeRate= " + - exchangeRate + " currency=" + currency); - } - - if (configExchangeRate == 2.0 && !"USD".equals(configCurrency)) { - throw new RuntimeException("ConfigAdmin Property exchangeRate not set correctly, exchangeRate= " + - configExchangeRate + " currency=" + configCurrency); - } - if (configExchangeRate == 1.48 && !"EURO".equals(configCurrency)) { - throw new RuntimeException("Property configExchangeRate not set correctly, exchangeRate= " + - configExchangeRate + " currency=" + configCurrency); - } - - return 52.81 * exchangeRate; - - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiStockQuoteComponentImpl bundle "); - Dictionary props = context.getProperties(); - Object prop = props.get("currency"); - if (prop instanceof String[]&& ((String [])prop).length > 0) - configCurrency = ((String [])prop)[0]; - prop = props.get("exchangeRate"); - if (prop instanceof Double[]&& ((Double [])prop).length > 0) - configExchangeRate = (double)((Double [])prop)[0]; - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiStockQuoteComponentImpl bundle "); - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteFactoryImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteFactoryImpl.java deleted file mode 100644 index e2d25bf47d..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteFactoryImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * 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 stockquote; - -import java.util.Hashtable; - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceFactory; -import org.osgi.framework.ServiceRegistration; - -/** - * - * OSGi service factory where service has configurable properties - * Only property injection is tested. ConfigurationAdmin is not used. - * - */ -public class OSGiStockQuoteFactoryImpl implements BundleActivator, ServiceFactory { - - - private BundleContext bundleContext; - - - public void start(BundleContext bc) throws Exception { - - bundleContext = bc; - - Hashtable<String, Object> props = new Hashtable<String, Object>(); - bc.registerService(StockQuote.class.getName(), this, props); - - } - - public void stop(BundleContext bc) throws Exception { - } - - - public Object getService(Bundle bundle, ServiceRegistration registration) { - return new OSGiStockQuoteImpl(bundleContext); - } - - - public void ungetService(Bundle bundle, ServiceRegistration registration, Object service) { - - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteImpl.java deleted file mode 100644 index f2ae804ad1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteImpl.java +++ /dev/null @@ -1,119 +0,0 @@ -/* - * 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 stockquote; - -import java.util.Dictionary; -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; -import org.osgi.service.cm.Configuration; -import org.osgi.service.cm.ConfigurationAdmin; -import org.osoa.sca.annotations.Property; - -/** - * - * Stock quote with configurable properties. - * - */ -public class OSGiStockQuoteImpl implements StockQuote, BundleActivator { - - public String pid; - - @Property - public double exchangeRate; - - private String currency; - - private BundleContext bundleContext; - - public OSGiStockQuoteImpl() { - this.pid = "stockQuote"; - } - - protected OSGiStockQuoteImpl(BundleContext bc) { - this.bundleContext = bc; - } - - @Property - public void setCurrency(String currency) { - this.currency = currency; - } - - - private void checkProperties() throws Exception { - - if (exchangeRate == 2.0 && !"USD".equals(currency)) { - throw new RuntimeException("Property exchangeRate not set correctly, exchangeRate= " + - exchangeRate + " currency=" + currency); - } - - if (exchangeRate == 1.48 && !"EURO".equals(currency)) { - throw new RuntimeException("Property exchangeRate not set correctly, exchangeRate= " + - exchangeRate + " currency=" + currency); - } - - ServiceReference configAdminReference = bundleContext.getServiceReference("org.osgi.service.cm.ConfigurationAdmin"); - if (configAdminReference != null && pid != null ) { - - ConfigurationAdmin cm = (ConfigurationAdmin)bundleContext.getService(configAdminReference); - - Configuration config = cm.getConfiguration("stockQuote", null); - - Dictionary props = config.getProperties(); - - if (exchangeRate != (double)(Double)props.get("exchangeRate")) { - throw new Exception("Config Property exchangeRate not set correctly, expected " - + props.get("exchangeRate") + " got " + exchangeRate); - } - - if (!currency.equals(props.get("currency"))) { - throw new Exception("Config Property currency not set correctly, expected " - + props.get("currency") + " got " + currency); - } - } - - } - - public double getQuote(String ticker) throws Exception { - - checkProperties(); - - return 52.81 * exchangeRate; - - } - - public void start(BundleContext bc) throws Exception { - - bundleContext = bc; - - Hashtable<String, Object> props = new Hashtable<String, Object>(); - props.put("service.pid", "stockQuote"); - - bc.registerService(StockQuote.class.getName(), this, props); - - } - - public void stop(BundleContext bc) throws Exception { - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/StockQuote.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/StockQuote.java deleted file mode 100644 index a47f68c579..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/stockquote/StockQuote.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * 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 stockquote; - -/** - * - * Stock Quote interface - * - */ -public interface StockQuote { - - public double getQuote(String ticker) throws Exception ; - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/OSGiBundleImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/OSGiBundleImpl.java deleted file mode 100644 index 25d7bcf2ff..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/OSGiBundleImpl.java +++ /dev/null @@ -1,163 +0,0 @@ -/* - * 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 supplychain; - - - -import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.Hashtable; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceEvent; -import org.osgi.framework.ServiceListener; -import org.osgi.framework.ServiceReference; - - -/** - * This class implements the Customer service component. - */ -public class OSGiBundleImpl implements ServiceListener, BundleActivator { - - - String name; - - String[] references; - Class<?>[] referenceClasses; - Field[] referenceFields; - String[] referenceFilters; - - Class myClass; - ArrayList<String> serviceNames = new ArrayList<String>(); - ArrayList<Object> serviceObjs = new ArrayList<Object>(); - ArrayList<Hashtable<String, Object>> serviceProperties = new ArrayList<Hashtable<String, Object>>(); - - - private BundleContext bundleContext; - - public OSGiBundleImpl() {} - - public OSGiBundleImpl(String[] references, String[] filters) { - - myClass = this.getClass(); - this.name = this.getClass().getSimpleName(); - this.references = references == null?new String[0] : references; - - - try { - referenceClasses = new Class[references.length]; - referenceFields = new Field[references.length]; - referenceFilters = new String[references.length]; - for (int i = 0; i < references.length; i++) { - referenceFields[i] = this.getClass().getDeclaredField(references[i]); - referenceFields[i].setAccessible(true); - referenceClasses[i] = referenceFields[i].getType(); - - if (filters != null && filters.length > i) - referenceFilters[i] = filters[i]; - } - - } catch (Exception e) { - throw new RuntimeException(e); - } - - } - - public void start(BundleContext bc) { - - System.out.println("Started bundle " + name); - - this.bundleContext = bc; - - boolean useSingleRegisterService = serviceNames.size() > 1; - for (int i = 1; i < serviceNames.size(); i++) { - if (serviceObjs.get(i) != serviceObjs.get(0) || - serviceProperties.get(i) != serviceProperties.get(0)) { - useSingleRegisterService = false; - break; - } - } - if (useSingleRegisterService) { - bundleContext.registerService(serviceNames.toArray(new String[serviceNames.size()]), - serviceObjs.get(0), serviceProperties.get(0)); - } - else { - for (int i = 0; i < serviceNames.size(); i++) { - bundleContext.registerService(serviceNames.get(i), serviceObjs.get(i), serviceProperties.get(i)); - } - } - - started(bc); - - for (int i = 0; i < references.length; i++) { - - try { - if (referenceFields[i].get(this) != null) - continue; - - ServiceReference[] refs = bundleContext.getServiceReferences(referenceClasses[i].getName(), referenceFilters[i]); - if (refs != null && refs.length > 0) { - Object obj = bundleContext.getService(refs[0]); - referenceFields[i].set(this, referenceClasses[i].cast(obj)); - } else { - String filter = "(objectclass=" + referenceClasses[i].getName() + ")"; - this.bundleContext.addServiceListener(this, filter); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - } - - public void stop(BundleContext bc) { - System.out.println("Stop bundle " + name); - - } - - protected void started(BundleContext bc) { - - } - - public void serviceChanged(ServiceEvent event) { - try { - if (event.getType() == ServiceEvent.REGISTERED) { - - ServiceReference ref = event.getServiceReference(); - Object obj = bundleContext.getService(ref); - for (int i = 0; i < references.length; i++) { - if (referenceClasses[i].isAssignableFrom(obj.getClass())) { - referenceFields[i].set(this, referenceClasses[i].cast(obj)); - } - } - } - } catch (Throwable e) { - e.printStackTrace(); - } - } - - - public void registerService(Object serviceObject, String serviceName, Hashtable<String, Object> props) { - serviceObjs.add(serviceObject); - serviceNames.add(serviceName); - serviceProperties.add(props == null? new Hashtable<String, Object>() : props); - } -} -
\ No newline at end of file diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/Customer.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/Customer.java deleted file mode 100644 index 2762bc62be..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/Customer.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * 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 supplychain.customer; - -import org.osoa.sca.annotations.OneWay; - -/** - * This is the business interface of the Customer service component. - */ -public interface Customer { - - public void purchaseBooks(); - - public void purchaseGames(); - - public void purchaseGoods(); - - @OneWay - public void notifyShipment(String order); - - public boolean hasOutstandingOrders(); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/JavaCustomerComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/JavaCustomerComponentImpl.java deleted file mode 100644 index 80346311b1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/JavaCustomerComponentImpl.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * 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 supplychain.customer; - -import java.util.ArrayList; - -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import supplychain.retailer.Retailer; - -/** - * This class implements the Customer service component. - */ -@Service(Customer.class) -@Scope("COMPOSITE") -public class JavaCustomerComponentImpl implements Customer { - - private Retailer retailer1; - - private Retailer retailer2; - - private Retailer retailer3; - - private static ArrayList<String> outstandingOrders = new ArrayList<String>(); - - @Reference - public void setRetailer1(Retailer retailer1) { - this.retailer1 = retailer1; - } - - @Reference - public void setRetailer2(Retailer retailer2) { - this.retailer2 = retailer2; - } - - @Reference - public void setRetailer3(Retailer retailer3) { - this.retailer3 = retailer3; - } - - public void purchaseBooks() { - System.out.println("JavaCustomerComponentImpl.purchaseBooks"); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (ParcelForce)"); - retailer1.submitOrder("Order"); - } - - public void purchaseGames() { - System.out.println("JavaCustomerComponentImpl.purchaseGames"); - outstandingOrders.add("Order, submitted (play.com), fulfilled, shipped (ParcelForce)"); - - retailer2.submitOrder("Order"); - } - - public void purchaseGoods() { - retailer3.submitOrder("Order"); - } - - public void notifyShipment(String order) { - outstandingOrders.remove(order); - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java deleted file mode 100644 index a879505610..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * 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 supplychain.customer; - - -import java.util.ArrayList; - -import org.osgi.service.component.ComponentContext; - - -import supplychain.retailer.Retailer; - -/** - * This class implements the Customer service component. - */ -public class OSGiCustomerComponentImpl implements Customer { - - - private Retailer retailer1; - private Retailer retailer2; - private Retailer retailer3; - - private static ArrayList<String> outstandingOrders = new ArrayList<String>(); - - public OSGiCustomerComponentImpl() { - System.out.println("Created OSGiCustomerComponentImpl " + this); - } - - protected void setRetailer1(Retailer retailer1) { - this.retailer1 = retailer1; - } - - protected void unsetRetailer1(Retailer retailer1) { - // this.retailer1 = null; - } - - - protected void setRetailer2(Retailer retailer2) { - this.retailer2 = retailer2; - } - - protected void unsetRetailer2(Retailer retailer2) { - // this.retailer2 = null; - } - - protected void setRetailer3(Retailer retailer3) { - this.retailer3 = retailer3; - } - - protected void unsetRetailer3(Retailer retailer3) { - // this.retailer3 = null; - } - - - public void purchaseBooks() { - System.out.println("OSGiCustomerComponentImpl.purchaseBooks, retailer1 is " + retailer1); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (ParcelForce)"); - retailer1.submitOrder("Order"); - } - - public void purchaseGames() { - System.out.println("OSGiCustomerComponentImpl.purchaseGames, retailer2 is " + retailer2); - outstandingOrders.add("Order, submitted (play.com), fulfilled, shipped (ParcelForce)"); - - retailer2.submitOrder("Order"); - } - - public void purchaseGoods() { - System.out.println("OSGiCustomerComponentImpl.purchaseGames, retailer3 is " + retailer3); - retailer3.submitOrder("Order"); - } - - public void notifyShipment(String order) { - outstandingOrders.remove(order); - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiCustomerComponentImpl bundle "); - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiCustomerComponentImpl bundle "); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerFactoryImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerFactoryImpl.java deleted file mode 100644 index c8cb522cf4..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerFactoryImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * 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 supplychain.customer; - - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceFactory; -import org.osgi.framework.ServiceRegistration; - -/** - * This class implements the Customer service component. - */ -public class OSGiCustomerFactoryImpl implements BundleActivator, ServiceFactory { - - private BundleContext bundleContext; - - public OSGiCustomerFactoryImpl() { - } - - - public void start(BundleContext bc) { - - this.bundleContext = bc; - bc.registerService(Customer.class.getName(), this, null); - } - - - - - public void stop(BundleContext context) throws Exception { - - } - - - public Object getService(Bundle bundle, ServiceRegistration registration) { - - OSGiCustomerImpl customer = new OSGiCustomerImpl(false); - customer.start(bundleContext); - return customer; - - } - - public void ungetService(Bundle bundle, ServiceRegistration registration, Object obj) { - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerImpl.java deleted file mode 100644 index 546971860e..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerImpl.java +++ /dev/null @@ -1,92 +0,0 @@ -/* - * 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 supplychain.customer; - - -import java.util.ArrayList; - -import org.osoa.sca.annotations.AllowsPassByReference; - -import supplychain.OSGiBundleImpl; -import supplychain.retailer.Retailer; - -/** - * This class implements the Customer service component. - */ -@AllowsPassByReference -public class OSGiCustomerImpl extends OSGiBundleImpl implements Customer { - - private ArrayList<String> outstandingOrders = new ArrayList<String>(); - - private Retailer retailer1; - private Retailer retailer2; - private Retailer retailer3; - - public OSGiCustomerImpl() { - super( new String[]{"retailer1", "retailer2", "retailer3"}, - new String[]{"(retailerName=amazon.com)", - "(retailerName=play.com)", - "(retailerName=ebay.com)" - }); - registerService(this, "supplychain.customer.Customer", null); - - } - - public OSGiCustomerImpl(boolean ignore) { // Used only to test service factories - super( new String[]{"retailer1", "retailer2", "retailer3"}, - new String[]{"(retailerName=amazon.com)", - "(retailerName=play.com)", - "(retailerName=ebay.com)" - }); - - } - - public void purchaseBooks() { - System.out.println("OSGiCustomerImpl.purchaseBooks, retailer is " + retailer1); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (ParcelForce)"); - - retailer1.submitOrder("Order"); - - } - - public void purchaseGames() { - System.out.println("OSGiCustomerImpl.purchaseGames, retailer is " + retailer2); - outstandingOrders.add("Order, submitted (play.com), fulfilled, shipped (ParcelForce)"); - - retailer2.submitOrder("Order"); - - } - - public void purchaseGoods() { - retailer3.submitOrder("Order"); - } - - public void notifyShipment(String order) { - - outstandingOrders.remove(order); - - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java deleted file mode 100644 index 593e55f3f5..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * 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 supplychain.customer; - - -import java.util.ArrayList; - -import org.osgi.service.component.ComponentContext; - - -import supplychain.retailer.Retailer; -import supplychain.retailer.RetailerQuery; - -/** - * This class implements the Customer service component. - */ -public class OSGiCustomerWithQueryComponentImpl implements Customer { - - - private Retailer retailer; - private RetailerQuery retailerQuery; - - private static ArrayList<String> outstandingOrders = new ArrayList<String>(); - - public OSGiCustomerWithQueryComponentImpl() { - System.out.println("Created OSGiCustomerWithQueryComponentImpl " + this); - } - - protected void setRetailer(Retailer retailer) { - this.retailer = retailer; - } - - protected void unsetRetailer(Retailer retailer) { - // this.retailer = null; - } - - - protected void setRetailerQuery(RetailerQuery retailerQuery) { - this.retailerQuery = retailerQuery; - } - - protected void unsetRetailerQuery(RetailerQuery retailerQuery) { - // this.retailerQuery = null; - } - - public void purchaseBooks() { - System.out.println("OSGiCustomerWithQueryComponentImpl.purchaseBooks"); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (RoyalMail)"); - - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - } - - public void purchaseGames() { - System.out.println("OSGiCustomerWithQueryComponentImpl.purchaseGames"); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (RoyalMail)"); - - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - } - - public void purchaseGoods() { - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - } - - public void notifyShipment(String order) { - outstandingOrders.remove(order); - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiCustomerWithQueryComponentImpl bundle "); - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiCustomerWithQueryComponentImpl bundle "); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryImpl.java deleted file mode 100644 index 18483817ad..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * 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 supplychain.customer; - - -import java.util.ArrayList; - -import supplychain.OSGiBundleImpl; -import supplychain.retailer.Retailer; -import supplychain.retailer.RetailerQuery; - -/** - * This class implements the Customer service component. - */ -public class OSGiCustomerWithQueryImpl extends OSGiBundleImpl implements Customer { - - private static ArrayList<String> outstandingOrders = new ArrayList<String>(); - - private Retailer retailer; - private RetailerQuery retailerQuery; - - public OSGiCustomerWithQueryImpl() { - super( new String[]{"retailer", "retailerQuery"}, - new String[]{"(component.service.name=RetailerComponent/Retailer)", - "(component.service.name=RetailerComponent/RetailerQuery)" - }); - registerService(this, "supplychain.customer.Customer", null); - - } - - public void purchaseBooks() { - System.out.println("OSGiCustomerWithQueryImpl.purchaseBooks"); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (RoyalMail)"); - - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - - } - - public void purchaseGames() { - System.out.println("OSGiCustomerWithQueryImpl.purchaseGames"); - outstandingOrders.add("Order, submitted (amazon.com), fulfilled, shipped (RoyalMail)"); - - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - - } - - public void purchaseGoods() { - if (retailerQuery.isAvailable("Order")) - retailer.submitOrder("Order"); - } - - public void notifyShipment(String order) { - - outstandingOrders.remove(order); - - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerComponentImpl.java deleted file mode 100644 index 5ba42780f2..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerComponentImpl.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 supplychain.customer; - -import org.osoa.sca.annotations.Scope; - - -/** - * This class implements the Customer service component. - */ -@Scope("STATELESS") -public class OSGiStatelessCustomerComponentImpl extends OSGiCustomerComponentImpl { - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerImpl.java deleted file mode 100644 index bc569d0ac0..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiStatelessCustomerImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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 supplychain.customer; - - -import org.osoa.sca.annotations.Scope; - - -/** - * This class implements the Customer service component. - */ -@Scope("STATELESS") -public class OSGiStatelessCustomerImpl extends OSGiCustomerImpl { - - public OSGiStatelessCustomerImpl(boolean ignore) { - super(ignore); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiVersionedCustomerImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiVersionedCustomerImpl.java deleted file mode 100644 index 599ab51a50..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiVersionedCustomerImpl.java +++ /dev/null @@ -1,98 +0,0 @@ -/* - * 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 supplychain.customer; - - -import java.util.ArrayList; -import java.util.Hashtable; - -import org.osgi.framework.BundleContext; - -import supplychain.OSGiBundleImpl; -import supplychain.retailer.Retailer; - -/** - * This class implements the Customer service component. - */ -public class OSGiVersionedCustomerImpl extends OSGiBundleImpl implements Customer { - - private static ArrayList<String> outstandingOrders = new ArrayList<String>(); - - private Retailer retailer1; - private Retailer retailer2; - private Retailer retailer3; - private int version; - - public OSGiVersionedCustomerImpl() { - super( new String[]{"retailer1", "retailer2", "retailer3"}, - new String[]{"(retailerName=amazon.com)", - "(retailerName=play.com)", - "(retailerName=ebay.com)" - }); - - } - - protected void started(BundleContext bc) { - - String jarFile = bc.getBundle().getLocation(); - if (jarFile.endsWith("1.jar")) version = 1; - else if (jarFile.endsWith("2.jar")) version = 2; - else version = 3; - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("component.name", "CustomerComponent" + version); - bc.registerService("supplychain.customer.Customer", this, props1); - - } - - public void purchaseBooks() { - System.out.println("OSGiVersionedCustomerImpl.purchaseBooks , retailer is " + retailer1); - outstandingOrders.add("Order, submitted (amazon.com v" + version + - "), fulfilled, shipped (ParcelForce)"); - - retailer1.submitOrder("Order"); - - } - - public void purchaseGames() { - System.out.println("OSGiCustomerImpl.purchaseGames"); - outstandingOrders.add("Order, submitted (play.com v" + version + - "), fulfilled, shipped (ParcelForce)"); - - retailer2.submitOrder("Order"); - - } - - public void purchaseGoods() { - retailer3.submitOrder("Order"); - } - - public void notifyShipment(String order) { - - outstandingOrders.remove(order); - - System.out.print("Work thread " + Thread.currentThread() + " - "); - System.out.println(order); - } - - public boolean hasOutstandingOrders() { - return outstandingOrders.size() != 0; - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/JavaRetailerComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/JavaRetailerComponentImpl.java deleted file mode 100644 index df52c6c760..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/JavaRetailerComponentImpl.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * 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 supplychain.retailer; - - -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import supplychain.warehouse.Warehouse; - -/** - * This class implements the Customer service component. - */ -@Service(Retailer.class) -@Scope("COMPOSITE") -public class JavaRetailerComponentImpl implements Retailer { - - private Warehouse warehouse; - - private String retailerName; - - public JavaRetailerComponentImpl() { - System.out.println("Created RetailerComponentImpl"); - } - - @Reference - public void setWarehouse(Warehouse warehouse) { - System.out.println("retailer setWarehouse " + warehouse); - - this.warehouse = warehouse; - } - - @Property - public void setRetailerName(String retailerName) { - this.retailerName = retailerName; - } - - - public void submitOrder(String order) { - - System.out.println("JavaRetailerComponentImpl.submitOrder " + warehouse); - warehouse.fulfillOrder(order + ", submitted (" + retailerName + ")"); - - } - - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java deleted file mode 100644 index aca5943552..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * 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 supplychain.retailer; - -import org.osgi.service.component.ComponentContext; - -import supplychain.warehouse.Warehouse; - -/** - * This class implements the Customer service component. - */ -public class OSGiRetailerComponentImpl implements Retailer { - - private Warehouse warehouse; - private String retailerName; - - - protected void setWarehouse(Warehouse warehouse) { - this.warehouse = warehouse; - } - - protected void unsetWarehouse(Warehouse warehouse) { - // this.warehouse = null; - } - - public void submitOrder(String order) { - - System.out.println("OSGiRetailerComponentImpl.submitOrder , warehouse is " + warehouse); - warehouse.fulfillOrder(order + ", submitted (" + retailerName + ")"); - - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiRetailerComponentImpl bundle "); - - Object prop = context.getProperties().get("retailerName"); - if (prop instanceof String[]) - retailerName = ((String [])prop)[0]; - - - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiRetailerComponentImpl bundle "); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerImpl.java deleted file mode 100644 index e71c624f49..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * 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 supplychain.retailer; - - -import java.util.Hashtable; - -import supplychain.OSGiBundleImpl; -import supplychain.warehouse.Warehouse; - -/** - * This class implements the Retailer service component. - */ -public class OSGiRetailerImpl extends OSGiBundleImpl { - - protected Warehouse warehouse; - - public OSGiRetailerImpl() { - - super(new String[]{"warehouse"}, - new String[]{"(component.service.name=WarehouseComponent1/Warehouse)"}); - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("retailerName", "amazon.com"); - registerService(new OSGiRetailerServiceImpl(this, "amazon.com"), - "supplychain.retailer.Retailer", props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("retailerName", "play.com"); - registerService( - new OSGiRetailerServiceImpl(this, "play.com"), - "supplychain.retailer.Retailer", props2); - - Hashtable<String, Object> props3 = new Hashtable<String, Object>(); - props3.put("retailerName", "ebay.com"); - registerService( - new OSGiRetailerServiceImpl(this, "ebay.com"), - "supplychain.retailer.Retailer", props3); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerServiceImpl.java deleted file mode 100644 index a036ecfc76..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerServiceImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * 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 supplychain.retailer; - - -/** - * This class implements the Retailer service. - */ -public class OSGiRetailerServiceImpl implements Retailer { - - private OSGiRetailerImpl retailerImpl; - - private String retailerName; - - OSGiRetailerServiceImpl(OSGiRetailerImpl retailerImpl, String retailerName) { - this.retailerImpl = retailerImpl; - this.retailerName = retailerName; - - } - - public void submitOrder(String order) { - - System.out.println("Retailer.submitOrder, warehouse is " + retailerImpl.warehouse); - retailerImpl.warehouse.fulfillOrder(order + ", submitted (" - + retailerName + ")"); - - } - -}
\ No newline at end of file diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java deleted file mode 100644 index db877bb366..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * 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 supplychain.retailer; - -import org.osgi.service.component.ComponentContext; - -import supplychain.warehouse.Warehouse; -import supplychain.warehouse.WarehouseQuery; - -/** - * This class implements the Customer service component. - */ -public class OSGiRetailerWithQueryComponentImpl implements Retailer, RetailerQuery { - - private Warehouse warehouse; - private WarehouseQuery warehouseQuery; - private String retailerName; - - - protected void setWarehouse(Warehouse warehouse) { - this.warehouse = warehouse; - } - - protected void unsetWarehouse(Warehouse warehouse) { - // this.warehouse = null; - } - - protected void setWarehouseQuery(WarehouseQuery warehouseQuery) { - this.warehouseQuery = warehouseQuery; - } - - protected void unsetWarehouseQuery(WarehouseQuery warehouse) { - // this.warehouseQuery = null; - } - - public void submitOrder(String order) { - - System.out.println("OSGiRetailerComponentImpl.submitOrder , warehouse is " + warehouse); - warehouse.fulfillOrder(order + ", submitted (" + retailerName + ")"); - - } - - public boolean isAvailable(String order) { - return warehouseQuery.isAvailable(order); - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiRetailerComponentImpl bundle "); - - Object prop = context.getProperties().get("retailerName"); - if (prop instanceof String[]) - retailerName = ((String [])prop)[0]; - - - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiRetailerComponentImpl bundle "); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryImpl.java deleted file mode 100644 index ee1f575e70..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * 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 supplychain.retailer; - - -import java.util.Hashtable; - -import supplychain.OSGiBundleImpl; -import supplychain.warehouse.Warehouse; -import supplychain.warehouse.WarehouseQuery; - -/** - * This class implements the Retailer service component with query. - */ -public class OSGiRetailerWithQueryImpl extends OSGiBundleImpl implements Retailer, RetailerQuery { - - private Warehouse warehouse; - private WarehouseQuery warehouseQuery; - - public OSGiRetailerWithQueryImpl() { - - super(new String[]{"warehouse", "warehouseQuery"}, null); - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("retailerName", "amazon.com"); - registerService(this, - "supplychain.retailer.Retailer", props1); - - registerService(this, - "supplychain.retailer.RetailerQuery", props1); - - } - - public void submitOrder(String order) { - - System.out.println("Retailer.submitOrder, warehouse is " + warehouse); - warehouse.fulfillOrder(order + ", submitted (" - + "amazon.com" + ")"); - - } - - public boolean isAvailable(String order) { - return warehouseQuery.isAvailable(order); - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerImpl.java deleted file mode 100644 index 09e60ca626..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * 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 supplychain.retailer; - - -import java.util.Hashtable; - -import org.osgi.framework.BundleContext; -import org.osgi.framework.InvalidSyntaxException; -import org.osgi.framework.ServiceReference; - -import supplychain.OSGiBundleImpl; -import supplychain.warehouse.Warehouse; - -/** - * This class implements the Retailer service component. - */ -public class OSGiVersionedRetailerImpl extends OSGiBundleImpl { - - protected Warehouse warehouse; - - private int version; - - public OSGiVersionedRetailerImpl() { - - super(new String[]{"warehouse"}, null); - - - } - - protected void started(BundleContext bc) { - String jarFile = bc.getBundle().getLocation(); - if (jarFile.endsWith("1.jar")) version = 1; - else if (jarFile.endsWith("2.jar")) version = 2; - else version = 3; - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("retailerName", "amazon.com"); - bc.registerService("supplychain.retailer.Retailer", - new OSGiVersionedRetailerServiceImpl(this, "amazon.com", version), - props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("retailerName", "play.com"); - bc.registerService( - "supplychain.retailer.Retailer", - new OSGiVersionedRetailerServiceImpl(this, "play.com", version), - props2); - - try { - ServiceReference[] refs = bc.getServiceReferences(Warehouse.class.getName(), - "(component.service.name=WarehouseComponent" + version + "/Warehouse)"); - if (refs != null && refs.length > 0) { - warehouse = (Warehouse) bc.getService(refs[0]); - } - } catch (InvalidSyntaxException e) { - } - } -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerServiceImpl.java deleted file mode 100644 index 7dd70889c7..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiVersionedRetailerServiceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * 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 supplychain.retailer; - - -/** - * This class implements the Retailer service. - */ -public class OSGiVersionedRetailerServiceImpl implements Retailer { - - private OSGiVersionedRetailerImpl retailerImpl; - - private String retailerName; - - private int version; - - OSGiVersionedRetailerServiceImpl(OSGiVersionedRetailerImpl retailerImpl, String retailerName, int version) { - this.retailerImpl = retailerImpl; - this.retailerName = retailerName; - this.version = version; - } - - public void submitOrder(String order) { - - System.out.println("Retailer.submitOrder, warehouse is " + retailerImpl.warehouse); - retailerImpl.warehouse.fulfillOrder(order + ", submitted (" - + retailerName + " v" + version + ")"); - - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/Retailer.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/Retailer.java deleted file mode 100644 index 1e87d59af1..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/Retailer.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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 supplychain.retailer; - -/** - * This is the business interface of the Retailer service component. - */ -public interface Retailer { - - public void submitOrder(String order); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/RetailerQuery.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/RetailerQuery.java deleted file mode 100644 index 354f40a064..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/retailer/RetailerQuery.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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 supplychain.retailer; - -/** - * This is the business interface of the RetailerQuery service. - */ -public interface RetailerQuery { - - public boolean isAvailable(String order); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/JavaShipperComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/JavaShipperComponentImpl.java deleted file mode 100644 index d0cf43a960..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/JavaShipperComponentImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * 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 supplychain.shipper; - - -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import supplychain.customer.Customer; - -/** - * This class implements the Shipper service component. - */ -@Service(Shipper.class) -@Scope("COMPOSITE") -public class JavaShipperComponentImpl implements Shipper { - - private Customer customer; - - private String shipperName; - - @Reference - public void setCustomer(Customer customer) { - this.customer = customer; - } - - @Property - public void setShipperName(String shipperName) { - this.shipperName = shipperName; - } - - - - public void processShipment(String order) { - System.out.println("JavaShipperComponentImpl.processShipment"); - customer.notifyShipment(order + ", shipped (" + shipperName + ")"); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java deleted file mode 100644 index ff40a7ae36..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * 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 supplychain.shipper; - - -import org.osgi.service.component.ComponentContext; - -import supplychain.customer.Customer; - -/** - * This class implements the Shipper service component. - */ -public class OSGiShipperComponentImpl implements Shipper { - - private Customer customer; - private String shipperName; - - protected void setCustomer(Customer customer) { - this.customer = customer; - } - - protected void unsetCustomer(Customer customer) { - // this.customer = null; - } - - public void processShipment(String order) { - System.out.println("OSGiShipperComponentImpl.processShipment, customer is " + customer); - customer.notifyShipment(order + ", shipped (" + shipperName + ")"); - } - - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiShipperComponentImpl bundle "); - - Object prop = context.getProperties().get("shipperName"); - if (prop instanceof String[]) - shipperName = ((String [])prop)[0]; - - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiShipperComponentImpl bundle "); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperFactoryImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperFactoryImpl.java deleted file mode 100644 index ef989d6fcf..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperFactoryImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * 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 supplychain.shipper; - - -import java.util.Hashtable; - -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceFactory; -import org.osgi.framework.ServiceRegistration; - - -/** - * This class implements the Shipper service component. - */ -public class OSGiShipperFactoryImpl implements BundleActivator, ServiceFactory { - - private BundleContext bundleContext; - - public OSGiShipperFactoryImpl() { - - } - - - public void start(BundleContext bc) { - - this.bundleContext = bc; - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("shipperName", "RoyalMail"); - bc.registerService(Shipper.class.getName(), this, props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("shipperName", "ParcelForce"); - bc.registerService(Shipper.class.getName(), this, props2); - } - - - - - public void stop(BundleContext context) throws Exception { - - } - - - public Object getService(Bundle bundle, ServiceRegistration reg) { - OSGiShipperImpl shipper = new OSGiShipperImpl(false); - shipper.start(bundleContext); - OSGiStatelessShipperServiceImpl shipperService = new OSGiStatelessShipperServiceImpl(shipper, - (String)reg.getReference().getProperty("shipperName")); - return shipperService; - } - - public void ungetService(Bundle arg0, ServiceRegistration arg1, Object arg2) { - - } - - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperImpl.java deleted file mode 100644 index effae8c246..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * 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 supplychain.shipper; - - -import java.util.Hashtable; - -import supplychain.OSGiBundleImpl; -import supplychain.customer.Customer; - -/** - * This class implements the Shipper service component. - */ -public class OSGiShipperImpl extends OSGiBundleImpl { - - protected Customer customer; - - - public OSGiShipperImpl() { - - super(new String[]{"customer"}, null); - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("shipperName", "RoyalMail"); - registerService(new OSGiShipperServiceImpl(this, "RoyalMail"), - "supplychain.shipper.Shipper", props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("shipperName", "ParcelForce"); - registerService( - new OSGiShipperServiceImpl(this, "ParcelForce"), - "supplychain.shipper.Shipper", props2); - } - - // Used only by service factories - public OSGiShipperImpl(boolean ignore) { - - super(new String[]{"customer"}, null); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperServiceImpl.java deleted file mode 100644 index 4effadf208..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperServiceImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * 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 supplychain.shipper; - - -/** - * This class implements the Shipper service. - */ -public class OSGiShipperServiceImpl implements Shipper { - - private OSGiShipperImpl shipperImpl; - - private String shipperName; - - OSGiShipperServiceImpl(OSGiShipperImpl shipperImpl, String shipperName) { - this.shipperImpl = shipperImpl; - this.shipperName = shipperName; - } - - public void processShipment(String order) { - - System.out.println("Shipper.submitOrder, warehouse is " + shipperImpl.customer); - shipperImpl.customer.notifyShipment(order + ", shipped (" + shipperName + ")"); - - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperComponentImpl.java deleted file mode 100644 index 13bce67bb4..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperComponentImpl.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * 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 supplychain.shipper; - -import org.osoa.sca.annotations.Scope; - - -/** - * This class implements the Shipper service component. - */ -@Scope("STATELESS") -public class OSGiStatelessShipperComponentImpl extends OSGiShipperComponentImpl { - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperServiceImpl.java deleted file mode 100644 index 071a131f40..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiStatelessShipperServiceImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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 supplychain.shipper; - -import org.osoa.sca.annotations.Scope; - - -/** - * This class implements the Shipper service. - */ -@Scope("STATELESS") -public class OSGiStatelessShipperServiceImpl extends OSGiShipperServiceImpl { - - public OSGiStatelessShipperServiceImpl(OSGiShipperImpl shipperImpl, String shipperName) { - super(shipperImpl, shipperName); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperImpl.java deleted file mode 100644 index 6ebd1f2894..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * 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 supplychain.shipper; - - -import java.util.Hashtable; - -import org.osgi.framework.BundleContext; -import org.osgi.framework.InvalidSyntaxException; -import org.osgi.framework.ServiceReference; - -import supplychain.OSGiBundleImpl; -import supplychain.customer.Customer; - -/** - * This class implements the Shipper service component. - */ -public class OSGiVersionedShipperImpl extends OSGiBundleImpl { - - protected Customer customer; - - private int version; - - - public OSGiVersionedShipperImpl() { - - super(new String[]{"customer"}, null); - } - - protected void started(BundleContext bc) { - - String jarFile = bc.getBundle().getLocation(); - if (jarFile.endsWith("1.jar")) version = 1; - else if (jarFile.endsWith("2.jar")) version = 2; - - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("shipperName", "RoyalMail"); - props1.put("component.service.name", "ShipperComponent"+version+"/ShipperService1"); - bc.registerService("supplychain.shipper.Shipper", - new OSGiVersionedShipperServiceImpl(this, "RoyalMail", version), - props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("shipperName", "ParcelForce"); - props2.put("component.service.name", "ShipperComponent"+version+"/ShipperService2"); - bc.registerService("supplychain.shipper.Shipper", - new OSGiVersionedShipperServiceImpl(this, "ParcelForce", version), - props2); - - try { - ServiceReference[] refs = bc.getServiceReferences(Customer.class.getName(), - "(component.service.name=CustomerComponent" + version + "/CustomerService)"); - if (refs != null && refs.length > 0) { - customer = (Customer) bc.getService(refs[0]); - } - } catch (InvalidSyntaxException e) { - } - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperServiceImpl.java deleted file mode 100644 index b66961b1c2..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiVersionedShipperServiceImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * 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 supplychain.shipper; - - -/** - * This class implements the Shipper service. - */ -public class OSGiVersionedShipperServiceImpl implements Shipper { - - private OSGiVersionedShipperImpl shipperImpl; - - private String shipperName; - - private int version; - - OSGiVersionedShipperServiceImpl(OSGiVersionedShipperImpl shipperImpl, String shipperName, int version) { - this.shipperImpl = shipperImpl; - this.shipperName = shipperName; - this.version = version; - } - - public void processShipment(String order) { - - System.out.println("Shipper.processShipment, version " + version + " customer is " + shipperImpl.customer); - shipperImpl.customer.notifyShipment(order + ", shipped (" + shipperName + ")"); - - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/Shipper.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/Shipper.java deleted file mode 100644 index 2514928c10..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/shipper/Shipper.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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 supplychain.shipper; - -/** - * This is the business interface of the Shipper service component. - */ -public interface Shipper { - - public void processShipment(String order); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseComponentImpl.java deleted file mode 100644 index 9edf3567e5..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseComponentImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * 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 supplychain.warehouse; - -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import supplychain.shipper.Shipper; - -/** - * This class implements the Warehouse service component. - */ -@Service(Warehouse.class) -@Scope("STATELESS") -public class JavaWarehouseComponentImpl implements Warehouse { - - private Shipper shipper; - - @Reference - public void setShipper(Shipper shipper) { - this.shipper = shipper; - } - - public void fulfillOrder(String order) { - System.out.println("JavaWarehouseComponentImpl.fulfillOrder : shipper is " + shipper); - - shipper.processShipment(order + ", fulfilled"); - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseWithQueryComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseWithQueryComponentImpl.java deleted file mode 100644 index 659f16be7f..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/JavaWarehouseWithQueryComponentImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * 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 supplychain.warehouse; - -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; - -import supplychain.shipper.Shipper; - -/** - * This class implements the Warehouse service component. - */ -@Service(interfaces={Warehouse.class, WarehouseQuery.class}) -@Scope("COMPOSITE") -public class JavaWarehouseWithQueryComponentImpl implements Warehouse, WarehouseQuery { - - private Shipper shipper; - - @Reference - public void setShipper(Shipper shipper) { - this.shipper = shipper; - } - - public void fulfillOrder(String order) { - System.out.println("JavaWarehouseComponentImpl.fulfillOrder : shipper is " + shipper); - - shipper.processShipment(order + ", fulfilled"); - } - - public boolean isAvailable(String order) { - return true; - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java deleted file mode 100644 index 7c9e102fd2..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * 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 supplychain.warehouse; - - -import org.osgi.service.component.ComponentContext; - -import supplychain.shipper.Shipper; - -/** - * This class implements the Warehouse service component. - */ - -public class OSGiWarehouseComponentImpl implements Warehouse { - - private Shipper shipper; - - protected void setShipper(Shipper shipper) { - this.shipper = shipper; - } - - protected void unsetShipper(Shipper shipper) { - // this.shipper = null; - } - - public void fulfillOrder(String order) { - System.out.println("OSGiWarehouseComponentImpl.fulfillOrder : shipper is " + shipper); - - shipper.processShipment(order + ", fulfilled"); - - } - - protected void activate(ComponentContext context){ - System.out.println("Activated OSGiWarehouseComponentImpl "); - } - - protected void deactivate(ComponentContext context){ - System.out.println("Deactivated OSGiWarehouseComponentImpl "); - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseImpl.java deleted file mode 100644 index bb04ff42e0..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * 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 supplychain.warehouse; - - -import java.util.Hashtable; - -import org.osgi.framework.BundleContext; - -import supplychain.OSGiBundleImpl; -import supplychain.shipper.Shipper; - -/** - * This class implements the Warehouse service component. - */ - -public class OSGiWarehouseImpl extends OSGiBundleImpl implements Warehouse { - - protected Shipper shipper; - private OSGiWarehouseServiceImpl warehouseService1; - private OSGiWarehouseServiceImpl warehouseService2; - - public OSGiWarehouseImpl() { - super(new String[]{"shipper"}, null); - - Hashtable<String, Object> props1 = new Hashtable<String, Object>(); - props1.put("component.name", "WarehouseComponent1"); - warehouseService1 = new OSGiWarehouseServiceImpl(this, 2); - registerService(warehouseService1, - "supplychain.warehouse.Warehouse", props1); - - Hashtable<String, Object> props2 = new Hashtable<String, Object>(); - props2.put("component.name", "WarehouseComponent2"); - warehouseService2 = new OSGiWarehouseServiceImpl(this, 1); - registerService(warehouseService2, - "supplychain.warehouse.Warehouse", props2); - } - - protected void started(BundleContext bc) { - warehouseService1.started(bc); - warehouseService2.started(bc); - } - - public void fulfillOrder(String order) { - System.out.println("OSGiWarehouseImpl.fulfillOrder : shipper is " + shipper); - - shipper.processShipment(order + ", fulfilled"); - - } - - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseServiceImpl.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseServiceImpl.java deleted file mode 100644 index 3317816557..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * 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 supplychain.warehouse; - -import org.osgi.framework.BundleContext; -import org.osgi.framework.InvalidSyntaxException; -import org.osgi.framework.ServiceReference; - -import supplychain.shipper.Shipper; - - -/** - * This class implements the Warehouse service. - */ -public class OSGiWarehouseServiceImpl implements Warehouse { - - private OSGiWarehouseImpl warehouseImpl; - private Shipper shipper; - private int shipperNum; - - - OSGiWarehouseServiceImpl(OSGiWarehouseImpl warehouseImpl, int shipperNum) { - this.warehouseImpl = warehouseImpl; - this.shipperNum = shipperNum; - } - - - protected void started(BundleContext bc) { - try { - ServiceReference[] refs = bc.getServiceReferences(Shipper.class.getName(), - "(component.service.name=ShipperComponent" + shipperNum + "/Shipper)"); - if (refs != null && refs.length > 0) { - shipper = (Shipper) bc.getService(refs[0]); - } - } catch (InvalidSyntaxException e) { - } - } - - public void fulfillOrder(String order) { - System.out.println("OSGiWarehouseImpl.fulfillOrder : shipper is " + warehouseImpl.shipper); - - shipper.processShipment(order + ", fulfilled"); - - } - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/Warehouse.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/Warehouse.java deleted file mode 100644 index 6f1f6b8730..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/Warehouse.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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 supplychain.warehouse; - -/** - * This is the business interface of the Warehouse service component. - */ -public interface Warehouse { - - public void fulfillOrder(String order); - -} diff --git a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/WarehouseQuery.java b/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/WarehouseQuery.java deleted file mode 100644 index 6d1ad76796..0000000000 --- a/branches/sca-java-1.5.1/itest/osgi-implementation/src/main/java/supplychain/warehouse/WarehouseQuery.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * 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 supplychain.warehouse; - -/** - * This is the business interface of the RetailerQuery service. - */ -public interface WarehouseQuery { - - public boolean isAvailable(String order); - -} |