diff options
Diffstat (limited to 'branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote')
4 files changed, 0 insertions, 301 deletions
diff --git a/branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteComponentImpl.java b/branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteComponentImpl.java deleted file mode 100644 index 2251bf5be6..0000000000 --- a/branches/sca-java-1.3/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.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteFactoryImpl.java b/branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteFactoryImpl.java deleted file mode 100644 index e2d25bf47d..0000000000 --- a/branches/sca-java-1.3/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.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteImpl.java b/branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote/OSGiStockQuoteImpl.java deleted file mode 100644 index f2ae804ad1..0000000000 --- a/branches/sca-java-1.3/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.3/itest/osgi-implementation/src/main/java/stockquote/StockQuote.java b/branches/sca-java-1.3/itest/osgi-implementation/src/main/java/stockquote/StockQuote.java deleted file mode 100644 index a47f68c579..0000000000 --- a/branches/sca-java-1.3/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 ; - -} |