summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog
diff options
context:
space:
mode:
Diffstat (limited to 'branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog')
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogClient.java37
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogService.java28
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogService.java31
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogServiceImpl.java94
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogService.java32
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogServiceImpl.java99
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/NamespaceContextImpl.java126
-rw-r--r--branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/XPathHelper.java55
8 files changed, 0 insertions, 502 deletions
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogClient.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogClient.java
deleted file mode 100644
index de67e597ac..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogClient.java
+++ /dev/null
@@ -1,37 +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 catalog;
-
-import org.apache.tuscany.sca.host.embedded.SCADomain;
-
-/**
- * This client program to invoke the Mortgage LoanApproval service
- */
-public class CatalogClient {
-
- public static void main(String[] args) throws Exception {
- System.err.println("Please make sure you have the ids configured in catalog.composite");
- SCADomain domain = SCADomain.newInstance("catalog.composite");
- CatalogService ebay = domain.getService(CatalogService.class, "EBayCatalogService");
- ebay.get();
- CatalogService amazon = domain.getService(CatalogService.class, "AmazonCatalogService");
- amazon.get();
-
- }
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogService.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogService.java
deleted file mode 100644
index c5db53621c..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/CatalogService.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 catalog;
-
-
-/**
- * @version $Rev$ $Date$
- */
-public interface CatalogService {
- String[] get();
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogService.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogService.java
deleted file mode 100644
index ce66396582..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogService.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 catalog.amazon;
-
-import org.apache.tuscany.sca.databinding.annotation.DataBinding;
-import org.osoa.sca.annotations.Remotable;
-import org.w3c.dom.Node;
-
-@Remotable
-@DataBinding(value="org.w3c.dom.Node", wrapped=true)
-public interface AmazonCatalogService {
- Node ItemSearch(Node requestWrapper);
-
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogServiceImpl.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogServiceImpl.java
deleted file mode 100644
index 2c56a37601..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/amazon/AmazonCatalogServiceImpl.java
+++ /dev/null
@@ -1,94 +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 catalog.amazon;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.tuscany.sca.databinding.impl.DOMHelper;
-import org.osoa.sca.annotations.Property;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import catalog.CatalogService;
-import catalog.util.XPathHelper;
-
-/**
- * @version $Rev$ $Date$
- */
-@Service(CatalogService.class)
-public class AmazonCatalogServiceImpl implements CatalogService {
- private static final String AMAZON_TNS = "http://webservices.amazon.com/AWSECommerceService/2007-09-21";
-
- @Reference(name = "amazonFindItems")
- protected AmazonCatalogService itemSearch;
-
- @Property(name="AWSAccessKeyId", required=true)
- protected String accessKeyId;
-
- private Node amazonItemSearch(String keywords) throws Exception {
- Document doc = DOMHelper.newDocument();
- Element wrapper = doc.createElementNS(AMAZON_TNS, "ItemSearch");
- doc.appendChild(wrapper);
- Element key = doc.createElementNS(AMAZON_TNS, "AWSAccessKeyId");
- key.appendChild(doc.createTextNode(accessKeyId));
- wrapper.appendChild(key);
-
- Element request = doc.createElementNS(AMAZON_TNS, "Request");
- wrapper.appendChild(request);
-
- Element keywordsElement = doc.createElementNS(AMAZON_TNS, "Keywords");
- keywordsElement.appendChild(doc.createTextNode(keywords));
- request.appendChild(keywordsElement);
-
- Element searchIndex = doc.createElementNS(AMAZON_TNS, "SearchIndex");
- searchIndex.appendChild(doc.createTextNode("All"));
- request.appendChild(searchIndex);
-
- // System.out.println(new Node2String().transform(doc, null));
- Node result = itemSearch.ItemSearch(doc);
- return result;
- }
-
- public String[] get() {
- try {
- Node list = amazonItemSearch("Fruit");
- Map<String, String> map = new HashMap<String, String>();
- map.put("a", AMAZON_TNS);
- NodeList nodes =
- XPathHelper.selectNodes("//a:Item/a:ItemAttributes[a:ProductGroup='Grocery']/a:Title", list, map);
- String titles[] = new String[nodes.getLength()];
- System.out.println("Amazon catalog:");
- for (int i = 0; i < nodes.getLength(); i++) {
- titles[i] = nodes.item(i).getTextContent();
- System.out.println("[" + i + "]" + titles[i]);
- }
-
- return titles;
- } catch (Exception e) {
- e.printStackTrace();
- return null;
- }
- }
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogService.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogService.java
deleted file mode 100644
index 5aeaabdbf3..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogService.java
+++ /dev/null
@@ -1,32 +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 catalog.ebay;
-
-import org.osoa.sca.annotations.Remotable;
-import org.w3c.dom.Node;
-
-/**
- * @version $Rev$ $Date$
- */
-@Remotable
-public interface EBayCatalogService {
- Node FindItems(Node request);
- Node GetUserProfile(Node request);
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogServiceImpl.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogServiceImpl.java
deleted file mode 100644
index dc69816c27..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/ebay/EBayCatalogServiceImpl.java
+++ /dev/null
@@ -1,99 +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 catalog.ebay;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.tuscany.sca.databinding.impl.DOMHelper;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import catalog.CatalogService;
-import catalog.util.XPathHelper;
-
-/**
- * @version $Rev$ $Date$
- */
-@Service(CatalogService.class)
-public class EBayCatalogServiceImpl implements CatalogService {
- private static final String EBAY_TNS = "urn:ebay:apis:eBLBaseComponents";
-
- @Reference(name = "eBayFindItems")
- protected EBayCatalogService findItems;
-
- @Reference(name = "eBayGetUserProfile")
- protected EBayCatalogService getUserProfile;
-
- private Node eBayFindItems(String keywords, int maxEntries) throws Exception {
- Document doc = DOMHelper.newDocument();
- Element request = doc.createElementNS(EBAY_TNS, "FindItemsRequest");
- doc.appendChild(request);
- Element keywordsElement = doc.createElementNS(EBAY_TNS, "QueryKeywords");
- keywordsElement.appendChild(doc.createTextNode(keywords));
- Element maxEntriesElement = doc.createElementNS(EBAY_TNS, "MaxEntries");
- maxEntriesElement.appendChild(doc.createTextNode(String.valueOf(maxEntries)));
- Element messageIDElement = doc.createElementNS(EBAY_TNS, "MessageID");
- messageIDElement.appendChild(doc.createTextNode("001"));
- request.appendChild(maxEntriesElement);
- request.appendChild(keywordsElement);
- request.appendChild(messageIDElement);
- // System.out.println(new Node2String().transform(doc, null));
- Node result = findItems.FindItems(doc);
- return result;
- }
-
- private Node eBayGetUserProfile(String userID) throws Exception {
- Document doc = DOMHelper.newDocument();
- Element req = doc.createElementNS(EBAY_TNS, "GetUserProfileRequest");
- doc.appendChild(req);
- Element user = doc.createElementNS(EBAY_TNS, "UserID");
- user.appendChild(doc.createTextNode(userID));
- Element msgID = doc.createElementNS(EBAY_TNS, "MessageID");
- msgID.appendChild(doc.createTextNode("001"));
- req.appendChild(user);
- // System.out.println(new Node2String().transform(doc, null));
- Node result = getUserProfile.GetUserProfile(doc);
- return result;
- }
-
- public String[] get() {
- try {
- Node items = eBayFindItems("Fruit", 10);
- Map<String, String> map = new HashMap<String, String>();
- map.put("e", EBAY_TNS);
- NodeList nodes = XPathHelper.selectNodes("//e:Item/e:Title", items, map);
- String[] titles = new String[nodes.getLength()];
- System.out.println("eBay catalog:");
- for (int i = 0; i < nodes.getLength(); i++) {
- titles[i] = nodes.item(i).getTextContent();
- System.out.println("[" + i + "]" + titles[i]);
- }
- return titles;
- } catch (Exception e) {
- e.printStackTrace();
- return null;
- }
- }
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/NamespaceContextImpl.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/NamespaceContextImpl.java
deleted file mode 100644
index dcd14f5530..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/NamespaceContextImpl.java
+++ /dev/null
@@ -1,126 +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 catalog.util;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.NamespaceContext;
-
-public class NamespaceContextImpl implements NamespaceContext {
- private NamespaceContext parent;
- private Map<String, String> map = new HashMap<String, String>();
-
- /**
- * @param parent
- */
- public NamespaceContextImpl(NamespaceContext parent, Map<String, String> map) {
- super();
- this.parent = parent;
- if (parent == null) {
- this.map.put("xml", "http://www.w3.org/XML/1998/namespace");
- this.map.put("xmlns", "http://www.w3.org/2000/xmlns/");
- }
- if (map != null) {
- this.map.putAll(map);
- }
- }
-
- public String getNamespaceURI(String prefix) {
- if (prefix == null) {
- throw new IllegalArgumentException("Prefix is null");
- }
-
- String ns = (String)map.get(prefix);
- if (ns != null) {
- return ns;
- }
- if (parent != null) {
- return parent.getNamespaceURI(prefix);
- }
- return null;
- }
-
- public String getPrefix(String nsURI) {
- if (nsURI == null)
- throw new IllegalArgumentException("Namespace is null");
- for (Iterator<Map.Entry<String, String>> i = map.entrySet().iterator(); i.hasNext();) {
- Map.Entry<String, String> entry = i.next();
- if (entry.getValue().equals(nsURI)) {
- return entry.getKey();
- }
- }
- if (parent != null) {
- return parent.getPrefix(nsURI);
- }
- return null;
- }
-
- public Iterator getPrefixes(String nsURI) {
- List<String> prefixList = new ArrayList<String>();
- for (Iterator<Map.Entry<String, String>> i = map.entrySet().iterator(); i.hasNext();) {
- Map.Entry<String, String> entry = i.next();
- if (entry.getValue().equals(nsURI)) {
- prefixList.add(entry.getKey());
- }
- }
- final Iterator currentIterator = prefixList.iterator();
- final Iterator parentIterator = parent != null ? null : parent.getPrefixes(nsURI);
- return new Iterator() {
-
- public boolean hasNext() {
- return currentIterator.hasNext() || (parentIterator != null && parentIterator.hasNext());
- }
-
- public Object next() {
- if (!hasNext()) {
- throw new IllegalStateException("End of iterator has reached");
- }
- return currentIterator.hasNext() ? currentIterator.next() : parentIterator.next();
- }
-
- public void remove() {
- throw new UnsupportedOperationException();
- }
-
- };
-
- }
-
- public void register(String prefix, String ns) {
- map.put(prefix, ns);
- }
-
- public NamespaceContext getParent() {
- return parent;
- }
-
- public String toString() {
- StringBuffer sb = new StringBuffer(map.toString());
- if (parent != null) {
- sb.append("\nParent: ");
- sb.append(parent);
- }
- return sb.toString();
- }
-}
diff --git a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/XPathHelper.java b/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/XPathHelper.java
deleted file mode 100644
index 850ba7d8ae..0000000000
--- a/branches/sca-java-1.4/tutorials/store/www-services/catalog-amazon/src/main/java/catalog/util/XPathHelper.java
+++ /dev/null
@@ -1,55 +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 catalog.util;
-
-import java.util.Map;
-
-import javax.xml.xpath.XPath;
-import javax.xml.xpath.XPathConstants;
-import javax.xml.xpath.XPathExpression;
-import javax.xml.xpath.XPathExpressionException;
-import javax.xml.xpath.XPathFactory;
-
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * @version $Rev$ $Date$
- */
-public class XPathHelper {
-
- public static Node selectNode(String xpath, Node root, Map<String, String> namespaces)
- throws XPathExpressionException {
- XPath path = XPathFactory.newInstance().newXPath();
- NamespaceContextImpl context = new NamespaceContextImpl(null, namespaces);
- path.setNamespaceContext(context);
- XPathExpression exp = path.compile(xpath);
- return (Node)exp.evaluate(root, XPathConstants.NODE);
- }
-
- public static NodeList selectNodes(String xpath, Node root, Map<String, String> namespaces)
- throws XPathExpressionException {
- XPath path = XPathFactory.newInstance().newXPath();
- NamespaceContextImpl context = new NamespaceContextImpl(null, namespaces);
- path.setNamespaceContext(context);
- XPathExpression exp = path.compile(xpath);
- return (NodeList)exp.evaluate(root, XPathConstants.NODESET);
- }
-}