org.apache.tuscany.sca.node
Class SCANodeFactory

java.lang.Object
  extended by org.apache.tuscany.sca.node.SCANodeFactory
Direct Known Subclasses:
NodeFactoryImpl

public abstract class SCANodeFactory
extends java.lang.Object

A factory for SCA processing nodes. An SCA processing node can be loaded with an SCA composite and the SCA contributions required by the composite.


Nested Class Summary
static class SCANodeFactory.NodeProxy
           
 
Constructor Summary
SCANodeFactory()
           
 
Method Summary
abstract  SCANode createSCANode(java.lang.String compositeURI, SCAContribution... contributions)
          Creates a new SCA node.
abstract  SCANode createSCANode(java.lang.String compositeURI, java.lang.String compositeContent, SCAContribution... contributions)
          Creates a new SCA node.
abstract  SCANode createSCANodeFromClassLoader(java.lang.String compositeURI, java.lang.ClassLoader classLoader)
          Create a SCA node based on the discovery of the contribution on the classpath for the given classloader.
abstract  SCANode createSCANodeFromURL(java.lang.String configurationURL)
          Creates a new SCA node from the configuration URL
static SCANodeFactory newInstance()
          Returns a new SCA node factory instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SCANodeFactory

public SCANodeFactory()
Method Detail

newInstance

public static SCANodeFactory newInstance()
Returns a new SCA node factory instance.

Returns:
a new SCA node factory

createSCANodeFromClassLoader

public abstract SCANode createSCANodeFromClassLoader(java.lang.String compositeURI,
                                                     java.lang.ClassLoader classLoader)
Create a SCA node based on the discovery of the contribution on the classpath for the given classloader. This method should be treated a convinient shortcut with the following assumptions:

Parameters:
compositeURI - The URI of the composite file relative to the root of the enclosing contribution
classLoader - The ClassLoader used to load the composite file as a resource. If the value is null, then thread context classloader will be used
Returns:
A newly created SCA node

createSCANodeFromURL

public abstract SCANode createSCANodeFromURL(java.lang.String configurationURL)
Creates a new SCA node from the configuration URL

Parameters:
configurationURL - the URL of the node configuration which is the ATOM feed that contains the URI of the composite and a collection of URLs for the contributions
Returns:
a new SCA node.

createSCANode

public abstract SCANode createSCANode(java.lang.String compositeURI,
                                      SCAContribution... contributions)
Creates a new SCA node.

Parameters:
compositeURI - the URI of the composite to use
contributions - the URI of the contributions that provides the composites and related artifacts. If the list is empty, then we will use the thread context classloader to discover the contribution on the classpath
Returns:
a new SCA node.

createSCANode

public abstract SCANode createSCANode(java.lang.String compositeURI,
                                      java.lang.String compositeContent,
                                      SCAContribution... contributions)
Creates a new SCA node.

Parameters:
compositeURI - the URI of the composite to use
compositeContent - the XML content of the composite to use
contributions - the URI of the contributions that provides the composites and related artifacts
Returns:
a new SCA node.