You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/04/04 17:51:38 UTC
svn commit: r525543 -
/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/
Author: jsdelfino
Date: Wed Apr 4 08:51:37 2007
New Revision: 525543
URL: http://svn.apache.org/viewvc?view=rev&rev=525543
Log:
Added javadoc and a normalize method to ArtifactProcessor
Modified:
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ArtifactProcessor.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ContributionService.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/DOMArtifactProcessor.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ModelResolver.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StAXArtifactProcessor.java
incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StreamArtifactProcessor.java
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ArtifactProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ArtifactProcessor.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ArtifactProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ArtifactProcessor.java Wed Apr 4 08:51:37 2007
@@ -22,11 +22,35 @@
/**
- * Interface for services that can process contributions.
+ * Interface for extensions that can process contributions.
*
* @version $Rev: 522653 $ $Date: 2007-03-26 15:30:21 -0700 (Mon, 26 Mar 2007) $
*/
-public interface ArtifactProcessor <S,M>{
+public interface ArtifactProcessor <S,M> {
+
+ /**
+ * Read a model from a source. Examples of sources are: an inputstream, an
+ * XML reader, or an object representation of the source.
+ * @param source
+ * @return a model representation of the source.
+ */
M read(S source);
+
+ /**
+ * Resolve references from this model to other models. For example references
+ * from a composite to another one, or references from a composite to a WSDL
+ * model.
+ * @param contribution the contribution containing the model
+ * @param model the model to resolve
+ */
void resolve(Contribution contribution, M model);
+
+ /**
+ * Normalize a model. This can include normalize and applying policies at different
+ * levels, or determining the configuration of services, references and properties in
+ * nested compositions for example.
+ * @param contribution the contribution containing the model
+ * @param model the model to normalize
+ */
+ void normalize(Contribution contribution, M model);
}
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ContributionService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ContributionService.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ContributionService.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ContributionService.java Wed Apr 4 08:51:37 2007
@@ -73,7 +73,7 @@
/**
* Adds or updates a deployment composite using a supplied composite
- * ("composite by value" a data structure, not an existing resource in the
+ * ("composite by value" � a data structure, not an existing resource in the
* domain) to the contribution identified by a supplied contribution URI.
* The added or updated deployment composite is given a relative URI that
* matches the "name" attribute of the composite, with a ".composite"
@@ -89,39 +89,6 @@
*/
void remove(URI contribution) throws ContributionException;
-// /**
-// * Resolve an artifact by QName within the contribution
-// *
-// * @param <T> The java type of the artifact such as javax.wsdl.Definition
-// * @param contribution The URI of the contribution
-// * @param definitionType The java type of the artifact
-// * @param namespace The namespace of the artifact
-// * @param name The name of the artifact
-// * @return The resolved artifact
-// */
-// <T> T resolve(URI contribution, Class<T> definitionType, String namespace, String name);
-//
-// /**
-// * Resolve the reference to an artifact by the location URI within the given
-// * contribution. Some typical use cases are:
-// * <ul>
-// * <li>Reference a XML schema using
-// * {http://www.w3.org/2001/XMLSchema-instance}schemaLocation or
-// * <li>Reference a list of WSDLs using
-// * {http://www.w3.org/2004/08/wsdl-instance}wsdlLocation
-// * </ul>
-// *
-// * @param contribution The URI of the contribution
-// * @param namespace The namespace of the artifact. This is for validation
-// * purpose. If the namespace is null, then no check will be
-// * performed.
-// * @param uri The location URI
-// * @param baseURI The URI of the base artifact where the reference is
-// * declared
-// * @return The URL of the resolved artifact
-// */
-// URL resolve(URI contribution, String namespace, URI uri, URI baseURI);
-
/**
* Resolve an artifact by QName within the contribution
*
@@ -133,4 +100,5 @@
* @return The resolved artifact
*/
<M> M resolve(Class modelClass, Class<M> elementClass, Object modelKey, Object elementKey, Map<String, Object> attributes);
+
}
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/DOMArtifactProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/DOMArtifactProcessor.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/DOMArtifactProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/DOMArtifactProcessor.java Wed Apr 4 08:51:37 2007
@@ -21,6 +21,9 @@
import org.w3c.dom.Node;
+/**
+ * An artifact processor that can read models from a DOM node.
+ */
public interface DOMArtifactProcessor<M> extends ArtifactProcessor<Node, M> {
}
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ModelResolver.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ModelResolver.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ModelResolver.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/ModelResolver.java Wed Apr 4 08:51:37 2007
@@ -23,7 +23,28 @@
import org.apache.tuscany.services.contribution.model.Contribution;
+/**
+ * This interface is implemented by models that can resolve model elements.
+ *
+ * @version $Rev: 522653 $ $Date: 2007-03-26 15:30:21 -0700 (Mon, 26 Mar 2007) $
+ */
public interface ModelResolver {
+
+ /**
+ * The key that can be used to retrieve the model resolver. For example for a WSDL model this
+ * can be the namespace URI of the WSDL document.
+ * @return the key used to retrieve the model resolver
+ */
Object getKey();
+
+ /**
+ * Resolves a model element within a model.
+ * @param contribution the contribution containing the model
+ * @param elementClass the type of element being resolved
+ * @param key the key representing that element (for example the name of a WSDL portType)
+ * @param attributes additional attributes that can be used to resolve the element
+ * @return the resolved model element
+ */
<M> M resolve(Contribution contribution, Class<M> elementClass, Object key, Map<String, Object> attributes);
+
}
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StAXArtifactProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StAXArtifactProcessor.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StAXArtifactProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StAXArtifactProcessor.java Wed Apr 4 08:51:37 2007
@@ -21,6 +21,11 @@
import javax.xml.stream.XMLStreamReader;
+/**
+ * An artifact processor that can read models from a StAX XMLStreamReader.
+ *
+ * @version $Rev: 522653 $ $Date: 2007-03-26 15:30:21 -0700 (Mon, 26 Mar 2007) $
+ */
public interface StAXArtifactProcessor <M> extends ArtifactProcessor <XMLStreamReader, M> {
}
Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StreamArtifactProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StreamArtifactProcessor.java?view=diff&rev=525543&r1=525542&r2=525543
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StreamArtifactProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/services/spi/contribution/StreamArtifactProcessor.java Wed Apr 4 08:51:37 2007
@@ -21,6 +21,11 @@
import java.io.InputStream;
+/**
+ * An artifact processor that can read models from an InputStream.
+ *
+ * @version $Rev: 522653 $ $Date: 2007-03-26 15:30:21 -0700 (Mon, 26 Mar 2007) $
+ */
public interface StreamArtifactProcessor<M> extends ArtifactProcessor<InputStream, M> {
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org