XTools Pattern Providers

com.ibm.xtools.patterns.core.patternProviders

The PatternProviders extension point is used to define where plugins may provide pattern content and create pattern instances for the pattern service (com.ibm.xtools.patterns.internal.services.definitions.PatternService).

The pattern service implements the capability for discovering pattern content available from a variety of sources. Pattern definitions are organized into pattern libraries. A pattern library is specified as a RAS asset whose manifest is identified via a property of a PatternLibrary element of the extension. A pattern library contains one or more Pattern elements, each of which is also a separate RAS asset whose manifest is identified via a property. The class property of the extension is the fully qualified class name of a class that extends the abstract class com.ibm.xtools.patterns.core.AbstractPatternInstanceProvider. This methods implemented by this class provide the actual runtime instances of the patterns that are defined in the libraries of the extension.

<!ELEMENT extension (PatternProvider)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT PatternProvider (Priority , Policy? , PatternLibrary*)>

<!ATTLIST PatternProvider

class           CDATA #REQUIRED

dynamicProvider (true | false) >


<!ELEMENT Priority EMPTY>

<!ATTLIST Priority

name (Lowest|Low|Medium|High|Highest) >


<!ELEMENT Policy EMPTY>

<!ATTLIST Policy

class  CDATA #REQUIRED

plugin CDATA #REQUIRED>


<!ELEMENT PatternLibrary (Pattern+)>

<!ATTLIST PatternLibrary

manifest CDATA #REQUIRED

id       CDATA #IMPLIED

version  CDATA #IMPLIED>

A Pattern Library is a RAS asset. The contents of the manifest for a pattern library asset includes artifact references to the Pattern assets contained in the library.



<!ELEMENT Pattern EMPTY>

<!ATTLIST Pattern

manifest  CDATA #REQUIRED

groupPath CDATA #IMPLIED

id        CDATA #IMPLIED

version   CDATA #IMPLIED>

A Pattern is a RAS asset. The contents of the manifest for a pattern asset includes information about the structure and behavior of the pattern.



Following is an example of a pattern provider extension:
   <extension
        point="com.ibm.xtools.patterns.core.patternProviders"
        id="RASLocalRepositoryProvider"
        name="%ext.RASLocalRepositoryProvider">
      <PatternProvider
        class="com.ibm.xtools.ras.internal.providers.LocalRepositoryProvider">
         <Priority name="Medium"></Priority>
      </PatternProvider>
   </extension>

The value of the class attribute must be the fully qualified name of a class that extends com.ibm.xtools.patterns.core.AbstractPatternInstanceProvider.

The Xtools RAS plugin implements at least one proxy pattern provider, which is defined in the com.ibm.xtools.patterns.repository.provider plug-in.


© Copyright 2003-2004 IBM Corporation. All Rights Reserved.