I'm getting. org.apache.tuscany.sca.contribution.service.ContributionReadException: javax.xml .xpath.XPathExpressionException: javax.xml.transform.TransformerException: Extra illegal tokens: 'http://www.osoa.org/xmlns/sca/1.0', ':', 'binding.sca' at org.apache.tuscany.sca.policy.xml.PolicySetProcessor.read (PolicySetPr ocessor.java:109) at org.apache.tuscany.sca.policy.xml.PolicySetProcessor.read (PolicySetPr ocessor.java:61) at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactP rocessor.read(ExtensibleStAXArtifactProcessor.java:83) at org.apache.tuscany.sca.definitions.xml.SCADefinitionsProcessor.read(S CADefinitionsProcessor.java:90) at org.apache.tuscany.sca.definitions.xml.SCADefinitionsProcessor.read(S CADefinitionsProcessor.java:49) at org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactP rocessor.read(ExtensibleStAXArtifactProcessor.java:83) at org.apache.tuscany.sca.definitions.xml.SCADefinitionsDocumentProcesso r.read(SCADefinitionsDocumentProcessor.java:120) at org.apache.tuscany.sca.assembly.xml.ResolvePolicyTestCase.testResolve ConstrainingType(ResolvePolicyTestCase.java:115)
and am assuming it's related to this checkin. Am investigating but in the mean time can you check if anything was missed. Thanks Simon On Fri, Mar 14, 2008 at 3:48 AM, <[EMAIL PROTECTED]> wrote: > Author: rfeng > Date: Thu Mar 13 20:48:47 2008 > New Revision: 636985 > > URL: http://svn.apache.org/viewvc?rev=636985&view=rev > Log: > Fix for TUSCANY-2078 > > Modified: > > > incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java > > > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java > > > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/PropertyUtil.java > > > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java > > > incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/service/impl/ContributionServiceImpl.java > > > incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java > > > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java > > > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java > > Modified: > incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java > (original) > +++ > incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java > Thu Mar 13 20:48:47 2008 > @@ -31,6 +31,9 @@ > import javax.xml.stream.XMLStreamException; > import javax.xml.stream.XMLStreamReader; > import javax.xml.stream.XMLStreamWriter; > +import javax.xml.xpath.XPath; > +import javax.xml.xpath.XPathExpressionException; > +import javax.xml.xpath.XPathFactory; > > import org.apache.tuscany.sca.assembly.AssemblyFactory; > import org.apache.tuscany.sca.assembly.Binding; > @@ -75,7 +78,9 @@ > * @version $Rev$ $Date$ > */ > public class CompositeProcessor extends BaseAssemblyProcessor implements > StAXArtifactProcessor<Composite> { > - > + // FIXME: to be refactored > + private XPathFactory xPathFactory = XPathFactory.newInstance(); > + > /** > * Construct a new composite processor > * > @@ -235,7 +240,33 @@ > // Read a <component><property> > componentProperty = > assemblyFactory.createComponentProperty(); > property = componentProperty; > - componentProperty.setSource(getString(reader, > SOURCE)); > + String source = getString(reader, SOURCE); > + if(source!=null) { > + source = source.trim(); > + } > + componentProperty.setSource(source); > + if (source != null) { > + // $<name>/... > + if (source.charAt(0) == '$') { > + int index = source.indexOf('/'); > + if (index == -1) { > + // Tolerating $prop > + source = source + "/"; > + index = source.length() - 1; > + } > + source = source.substring(index + 1); > + if ("".equals(source)) { > + source = "."; > + } > + } > + XPath xpath = xPathFactory.newXPath(); > + xpath.setNamespaceContext( > reader.getNamespaceContext()); > + try { > + > componentProperty.setSourceXPathExpression(xpath.compile(source)); > + } catch (XPathExpressionException e) { > + throw new > ContributionReadException(e); > + } > + } > componentProperty.setFile(getString(reader, > FILE)); > policyProcessor.readPolicies(property, > reader); > readAbstractProperty(componentProperty, > reader); > @@ -852,7 +883,7 @@ > component.setImplementation(implementation); > } catch ( PolicyValidationException e ) { > throw new > ContributionResolveException("PolicyValidation exception when processing > implementation of component '" > - + > component.getName() + "' due to " + e.getMessage()); > + + > component.getName() + "' due to " + e.getMessage(), e); > } > > } > > Modified: > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java > (original) > +++ > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java > Thu Mar 13 20:48:47 2008 > @@ -18,6 +18,8 @@ > */ > package org.apache.tuscany.sca.assembly; > > +import javax.xml.xpath.XPathExpression; > + > /** > * Represents a configured property of a component. > * > @@ -56,6 +58,18 @@ > * composite > */ > void setSource(String source); > + > + /** > + * Get the XPath expression for the source attribute > + * @return the XPath expression for the source attribute > + */ > + XPathExpression getSourceXPathExpression(); > + > + /** > + * Set the XPath expression for the source attribute > + * @param sourceXPathExpression the XPath expression for the source > attribute > + */ > + void setSourceXPathExpression(XPathExpression sourceXPathExpression); > > /** > * Returns a URI to a file containing the property value. > > Modified: > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/PropertyUtil.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/PropertyUtil.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/PropertyUtil.java > (original) > +++ > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/PropertyUtil.java > Thu Mar 13 20:48:47 2008 > @@ -24,10 +24,13 @@ > import java.net.URI; > import java.net.URL; > import java.net.URLConnection; > +import java.util.Arrays; > +import java.util.Collections; > import java.util.Iterator; > import java.util.List; > import java.util.Map; > > +import javax.xml.XMLConstants; > import javax.xml.namespace.NamespaceContext; > import javax.xml.parsers.DocumentBuilderFactory; > import javax.xml.parsers.ParserConfigurationException; > @@ -36,7 +39,6 @@ > import javax.xml.transform.TransformerFactory; > import javax.xml.transform.dom.DOMResult; > import javax.xml.transform.sax.SAXSource; > -import javax.xml.xpath.XPath; > import javax.xml.xpath.XPathConstants; > import javax.xml.xpath.XPathExpression; > import javax.xml.xpath.XPathExpressionException; > @@ -59,18 +61,11 @@ > private static final DocumentBuilderFactory DOC_BUILDER_FACTORY = > DocumentBuilderFactory.newInstance(); > private static final TransformerFactory TRANSFORMER_FACTORY = > TransformerFactory.newInstance(); > > - static private Document evaluate(NamespaceContext nsContext, Node > node, String xPathExpression) > + static private Document evaluate(Document node, XPathExpression > expression) > throws XPathExpressionException, ParserConfigurationException { > - XPath path = XPATH_FACTORY.newXPath(); > - > - if (nsContext != null) { > - path.setNamespaceContext(nsContext); > - } else { > - path.setNamespaceContext(new DOMNamespaceContext(node)); > - } > - > - XPathExpression expression = path.compile(xPathExpression); > - Node result = (Node)expression.evaluate(node, XPathConstants.NODE > ); > + > + Node value = node.getDocumentElement(); > + Node result = (Node)expression.evaluate(value, > XPathConstants.NODE); > if (result == null) { > return null; > } > @@ -139,19 +134,8 @@ > > Document compositePropDefValues = > (Document)compositeProp.getValue(); > > - // Adding /value because the document root is "value" > - String path = source.substring(index); > - String xpath = null; > - > - if ("/".equals(path)) { > - // trailing / is not legal for xpath > - xpath = "/value"; > - } else { > - xpath = "/value" + path; > - } > - > // FIXME: How to deal with namespaces? > - Document node = evaluate(null, > compositePropDefValues, xpath); > + Document node = evaluate(compositePropDefValues, > aProperty.getSourceXPathExpression()); > > if (node != null) { > aProperty.setValue(node); > @@ -178,15 +162,42 @@ > } > > public String getNamespaceURI(String prefix) { > - return node.lookupNamespaceURI(prefix); > + if (prefix == null) { > + throw new IllegalArgumentException("Prefix is null"); > + } else if (XMLConstants.XML_NS_PREFIX.equals(prefix)) { > + return XMLConstants.XML_NS_URI; > + } else if (XMLConstants.XMLNS_ATTRIBUTE.equals(prefix)) { > + return XMLConstants.XMLNS_ATTRIBUTE_NS_URI; > + } > + String ns = node.lookupNamespaceURI(prefix); > + return ns == null ? XMLConstants.NULL_NS_URI : ns; > } > > public String getPrefix(String namespaceURI) { > + if (namespaceURI == null) { > + throw new IllegalArgumentException("Namespace URI is > null"); > + } else if (XMLConstants.XML_NS_URI.equals(namespaceURI)) { > + return XMLConstants.XML_NS_PREFIX; > + } else if > (XMLConstants.XMLNS_ATTRIBUTE_NS_URI.equals(namespaceURI)) > { > + return XMLConstants.XMLNS_ATTRIBUTE; > + } > return node.lookupPrefix(namespaceURI); > } > > public Iterator<?> getPrefixes(String namespaceURI) { > - return null; > + // Not implemented > + if (namespaceURI == null) { > + throw new IllegalArgumentException("Namespace URI is > null"); > + } else if (XMLConstants.XML_NS_URI.equals(namespaceURI)) { > + return Arrays.asList(XMLConstants.XML_NS_PREFIX > ).iterator(); > + } else if > (XMLConstants.XMLNS_ATTRIBUTE_NS_URI.equals(namespaceURI)) > { > + return Arrays.asList(XMLConstants.XMLNS_ATTRIBUTE > ).iterator(); > + } > + String prefix = getPrefix(namespaceURI); > + if (prefix == null) { > + return Collections.emptyList().iterator(); > + } > + return Arrays.asList(prefix).iterator(); > } > > } > > Modified: > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java > (original) > +++ > incubator/tuscany/java/sca/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java > Thu Mar 13 20:48:47 2008 > @@ -19,6 +19,8 @@ > > package org.apache.tuscany.sca.assembly.impl; > > +import javax.xml.xpath.XPathExpression; > + > import org.apache.tuscany.sca.assembly.ComponentProperty; > import org.apache.tuscany.sca.assembly.Property; > > @@ -31,6 +33,7 @@ > private String file; > private Property property; > private String source; > + private XPathExpression sourceXPathExpression; > > /** > * Constructs a new component property. > @@ -77,6 +80,14 @@ > > public void setSource(String source) { > this.source = source; > + } > + > + public XPathExpression getSourceXPathExpression() { > + return sourceXPathExpression; > + } > + > + public void setSourceXPathExpression(XPathExpression > sourceXPathExpression) { > + this.sourceXPathExpression = sourceXPathExpression; > } > > } > > Modified: > incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/service/impl/ContributionServiceImpl.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/service/impl/ContributionServiceImpl.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/service/impl/ContributionServiceImpl.java > (original) > +++ > incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/service/impl/ContributionServiceImpl.java > Thu Mar 13 20:48:47 2008 > @@ -32,11 +32,9 @@ > import java.util.ArrayList; > import java.util.Collection; > import java.util.Hashtable; > -import java.util.Iterator; > import java.util.List; > import java.util.Map; > > -import javax.xml.namespace.NamespaceContext; > import javax.xml.namespace.QName; > import javax.xml.parsers.DocumentBuilder; > import javax.xml.parsers.DocumentBuilderFactory; > @@ -51,11 +49,9 @@ > import javax.xml.transform.TransformerFactory; > import javax.xml.transform.dom.DOMSource; > import javax.xml.transform.stream.StreamResult; > -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.apache.tuscany.sca.assembly.AssemblyFactory; > import org.apache.tuscany.sca.assembly.Composite; > @@ -545,18 +541,15 @@ > > XPathExpressionException, > > TransformerConfigurationException, > > TransformerException { > - XPathFactory xpathFactory = XPathFactory.newInstance(); > - XPath path = xpathFactory.newXPath(); > - path.setNamespaceContext(new DOMNamespaceContext(doc)); > int prefixCount = 1; > > for ( PolicySet policySet : policySets ) { > if ( policySet.getAppliesTo() != null ) { > - addApplicablePolicySets(policySet, path, doc, > prefixCount); > + addApplicablePolicySets(policySet, doc, prefixCount); > } > > if ( policySet.getAlwaysAppliesTo() != null ) { > - addAlwaysApplicablePolicySets(policySet, path, doc, > prefixCount); > + addAlwaysApplicablePolicySets(policySet, doc, > prefixCount); > } > } > > @@ -569,8 +562,8 @@ > return sw.toString().getBytes(); > } > > - private void addAlwaysApplicablePolicySets(PolicySet policySet, XPath > path, Document doc, int prefixCount) throws XPathExpressionException { > - XPathExpression expression = path.compile( > policySet.getAlwaysAppliesTo()); > + private void addAlwaysApplicablePolicySets(PolicySet policySet, > Document doc, int prefixCount) throws XPathExpressionException { > + XPathExpression expression = > policySet.getAlwaysAppliesToXPathExpression(); > NodeList result = (NodeList)expression.evaluate(doc, > XPathConstants.NODESET); > > if ( result != null ) { > @@ -600,8 +593,8 @@ > } > } > > - private void addApplicablePolicySets(PolicySet policySet, XPath path, > Document doc, int prefixCount) throws XPathExpressionException { > - XPathExpression expression = path.compile(policySet.getAppliesTo > ()); > + private void addApplicablePolicySets(PolicySet policySet, Document > doc, int prefixCount) throws XPathExpressionException { > + XPathExpression expression = > policySet.getAppliesToXPathExpression(); > NodeList result = (NodeList)expression.evaluate(doc, > XPathConstants.NODESET); > > if ( result != null ) { > @@ -683,55 +676,6 @@ > element.setAttributeNodeNS(attr); > } > return prefix; > - } > - > - private static class DOMNamespaceContext implements NamespaceContext > { > - private Node node; > - > - /** > - * @param node > - */ > - public DOMNamespaceContext(Node node) { > - super(); > - this.node = node; > - } > - > - public String getNamespaceURI(String prefix) { > - return node.lookupNamespaceURI(prefix); > - } > - > - public String getPrefix(String namespaceURI) { > - return node.lookupPrefix(namespaceURI); > - } > - > - public Iterator<?> getPrefixes(String namespaceURI) { > - return null; > - } > - > - } > - > - private static String print(Node node) { > - if ( node.getNodeType() != 3 ) { > - > System.out.println("********************************************************" > + node.getNodeType()); > - StringWriter sw = new StringWriter(); > - Source domSource = new DOMSource(node); > - Result finalResult = new StreamResult(sw); > - > - try { > - Transformer t = TransformerFactory.newInstance > ().newTransformer(); > - > - t.setOutputProperty("omit-xml-declaration", "yes"); > - //System.out.println(" ***** - " + t.getOutputProperties > ()); > - t.transform(domSource, finalResult); > - } catch ( Exception e ) { > - e.printStackTrace(); > - } > - System.out.println(sw.toString()); > - System.out.println > ("********************************************************"); > - return sw.toString(); > - } else { > - return null; > - } > } > > } > > Modified: > incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java > (original) > +++ > incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java > Thu Mar 13 20:48:47 2008 > @@ -33,6 +33,9 @@ > import javax.xml.stream.XMLStreamException; > import javax.xml.stream.XMLStreamReader; > import javax.xml.stream.XMLStreamWriter; > +import javax.xml.xpath.XPath; > +import javax.xml.xpath.XPathExpressionException; > +import javax.xml.xpath.XPathFactory; > > import org.apache.axiom.om.OMAbstractFactory; > import org.apache.axiom.om.OMElement; > @@ -59,6 +62,7 @@ > > private PolicyFactory policyFactory; > private StAXArtifactProcessor<Object> extensionProcessor; > + private XPathFactory xpathFactory = XPathFactory.newInstance(); > > public PolicySetProcessor(ModelFactoryExtensionPoint modelFactories) { > this.policyFactory = modelFactories.getFactory(PolicyFactory.class > ); > @@ -91,6 +95,20 @@ > > policySet.setAppliesTo(appliesTo); > policySet.setAlwaysAppliesTo(alwaysAppliesTo); > + > + XPath path = xpathFactory.newXPath(); > + path.setNamespaceContext(reader.getNamespaceContext()); > + try { > + if (appliesTo != null) { > + policySet.setAppliesToXPathExpression(path.compile > (appliesTo)); > + } > + if (alwaysAppliesTo != null) { > + policySet.setAlwaysAppliesToXPathExpression(path.compile > (alwaysAppliesTo)); > + } > + } catch (XPathExpressionException e) { > + throw new ContributionReadException(e); > + } > + > readProvidedIntents(policySet, reader); > > int event = reader.getEventType(); > > Modified: > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java > (original) > +++ > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java > Thu Mar 13 20:48:47 2008 > @@ -22,6 +22,7 @@ > import java.util.Map; > > import javax.xml.namespace.QName; > +import javax.xml.xpath.XPathExpression; > > /** > * Represents a policy set. See the Policy Framework specification for a > @@ -49,7 +50,6 @@ > * @return > */ > //List<Operation> getOperations(); > - > /** > * Returns the list of > * > @@ -64,7 +64,6 @@ > */ > List<Intent> getProvidedIntents(); > > - > /** > * Returns the list of concrete policies, either WS-Policy policy > * attachments, policy references, or policies expressed in another > policy > @@ -87,7 +86,7 @@ > * @param unresolved whether the model element is unresolved > */ > void setUnresolved(boolean unresolved); > - > + > /** > * Returns the xpath expression that is to be used to evaluate > * if this PolicySet applies to specific attachment point > @@ -95,23 +94,21 @@ > * @return the xpath expression > */ > String getAppliesTo(); > - > + > /** > * Sets the xpath expression that is to be used to evaluate > * if this PolicySet applies to specific attachment point > * > - * @return > */ > void setAppliesTo(String xpath); > - > - > + > /** > * Returns the policies / policy attachments provided thro intent maps > * > * @return > */ > - Map<Intent, List<Object>>getMappedPolicies(); > - > + Map<Intent, List<Object>> getMappedPolicies(); > + > /** > * Gets the xpath expression that is to be used to evaluate > * the SCA Artifacts that this policyset will always apply to > @@ -120,13 +117,37 @@ > * @return the xpath expression > */ > String getAlwaysAppliesTo(); > - > + > /** > * Sets the xpath expression that is to be used to evaluate > * the SCA Artifacts that this policyset will always apply to > * immaterial of an intent declared on the SCA Artifact > * > - * @return > */ > void setAlwaysAppliesTo(String xpath); > + > + /** > + * Get the XPath expression for the appliesTo attribute > + * @return the XPath expression for the appliesTo attribute > + */ > + XPathExpression getAppliesToXPathExpression(); > + > + /** > + * Set the XPath expression for the appliesTo attribute > + * @param xpathExpression the XPath expression for the appliesTo > attribute > + */ > + void setAppliesToXPathExpression(XPathExpression xpathExpression); > + > + /** > + * Get the XPath expression for the alwaysAppliesTo attribute > + * @return the XPath expression for the alwaysAppliesTo attribute > + */ > + XPathExpression getAlwaysAppliesToXPathExpression(); > + > + /** > + * Set the XPath expression for the alwaysAppliesTo attribute > + * @param xpathExpression the XPath expression for the > alwaysAppliesTo attribute > + */ > + void setAlwaysAppliesToXPathExpression(XPathExpression > xpathExpression); > + > } > > Modified: > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java > URL: > http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java?rev=636985&r1=636984&r2=636985&view=diff > > ============================================================================== > --- > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java > (original) > +++ > incubator/tuscany/java/sca/modules/policy/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java > Thu Mar 13 20:48:47 2008 > @@ -24,6 +24,7 @@ > import java.util.Map; > > import javax.xml.namespace.QName; > +import javax.xml.xpath.XPathExpression; > > import org.apache.tuscany.sca.policy.Intent; > import org.apache.tuscany.sca.policy.PolicySet; > @@ -46,6 +47,9 @@ > private boolean unresolved = true; > private String alwaysAppliesTo; > > + private XPathExpression appliesToXPathExpression; > + private XPathExpression alwaysAppliesToXPathExpression; > + > public String getAlwaysAppliesTo() { > return alwaysAppliesTo; > } > @@ -125,4 +129,21 @@ > public String toString() { > return getName().toString(); > } > + > + public XPathExpression getAppliesToXPathExpression() { > + return appliesToXPathExpression; > + } > + > + public void setAppliesToXPathExpression(XPathExpression > appliesToXPathExpression) { > + this.appliesToXPathExpression = appliesToXPathExpression; > + } > + > + public XPathExpression getAlwaysAppliesToXPathExpression() { > + return alwaysAppliesToXPathExpression; > + } > + > + public void setAlwaysAppliesToXPathExpression(XPathExpression > alwaysAppliesToXPathExpression) { > + this.alwaysAppliesToXPathExpression = > alwaysAppliesToXPathExpression; > + } > + > } > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >