public abstract class MetadataService
extends java.lang.Object
MetadataResourceProviders
  may be plugged into this service the provide metadata from different sources.
  
  The default MetadataResourceProviders uses MDS.  A
  different metadata resource provider can be configured by setting the system
  property oracle.adfinternal.controller.metadata_provider
  to the fully qualified class name of a class that extends this class.
  
Metadata is initially loaded from a collection of ADF metadata resources. This collection of ADFc resources is constructed using the following search rules:
META-INF/adfc-config.xml
         on the classpath.
    /WEB-INF/adfc-config.xml, and load it
         if the resource exists.
  | Constructor and Description | 
|---|
MetadataService()  | 
| Modifier and Type | Method and Description | 
|---|---|
abstract boolean | 
addAdfcConfig(org.w3c.dom.Document document)
Adds top level  
adfc-config element to the existing DOM document. | 
abstract boolean | 
addAdfcMobileConfig(org.w3c.dom.Document document)  | 
abstract Activity | 
getActivity(ActivityId id)
Get an activity with a given ID. 
 | 
abstract java.util.List<java.lang.String> | 
getAdfcResourceNames()
Returns a list of all the names of loaded ADFc unbounded task flow definition
 files. 
 | 
abstract PageFlow | 
getAdfPageFlow()
Get the unbounded ADF page flow. 
 | 
static MetadataService | 
getInstance()  | 
static MetadataService | 
getInstance(MetadataResourceProvider provider,
           AdfcResourceNameProvider resourceNameProvider)
Metadata service based on a specific providers. 
 | 
abstract java.util.List<MetadataResource> | 
getMetadataResources(ParsingConfig config)  | 
abstract MetadataResourceMobile | 
getMobileMutableMetadataResource(ParsingConfig config)  | 
abstract MetadataResource | 
getMutableMetadataResource(java.lang.String resourceName,
                          boolean useCustomizations,
                          boolean skipIntegrityValidation)
Deprecated. 
 
Replaced in 11.1.1.6.2 by  
getMutableMetadataResource(String, boolean, boolean, boolean) | 
abstract MetadataResource | 
getMutableMetadataResource(java.lang.String resourceName,
                          boolean useCustomizations,
                          boolean skipIntegrityValidation,
                          boolean pickUpNewResources)
Returns a metadata resource that can be mutated. 
 | 
abstract TaskFlowDefinition | 
getTaskFlowDefinition(TaskFlowId id)
Get a task flow definition. 
 | 
abstract TaskFlowDefinition | 
getTaskFlowTemplate(TaskFlowId id)
Get a task flow template. 
 | 
abstract void | 
reinitialize(java.util.List<java.lang.String> resources)  | 
static void | 
setFactory(MetadataServiceFactory metadataServiceFactory)
Specifies a  
MetadataServiceFactory to be used. | 
public abstract boolean addAdfcConfig(org.w3c.dom.Document document)
adfc-config element to the existing DOM document.
 adfc-config element must be present before any DT@RT operations
 are performed.document - a DOM documentadfc-config element was successfully added, false otherwise.public abstract boolean addAdfcMobileConfig(org.w3c.dom.Document document)
public static MetadataService getInstance()
MetadataService instance for this application.public static MetadataService getInstance(MetadataResourceProvider provider, AdfcResourceNameProvider resourceNameProvider)
provider - metadata resource providerresourceNameProvider - adfc resource name providerMetadataService instance for this application.public static void setFactory(MetadataServiceFactory metadataServiceFactory)
MetadataServiceFactory to be used. Must be called
 before any usage of getInstance() method.metadataServiceFactory - an instance of MetadataServiceFactory. 
        Cannot be a null value.public abstract Activity getActivity(ActivityId id)
id - activity IDnull if it could not be found.public abstract PageFlow getAdfPageFlow()
public abstract TaskFlowDefinition getTaskFlowDefinition(TaskFlowId id)
id - the ID of the task flow definition.null
          if it could not be found.public abstract TaskFlowDefinition getTaskFlowTemplate(TaskFlowId id)
id - the ID of the task flow template.null
          if it could not be found.@Deprecated public abstract MetadataResource getMutableMetadataResource(java.lang.String resourceName, boolean useCustomizations, boolean skipIntegrityValidation)
getMutableMetadataResource(String, boolean, boolean, boolean)MetadataResourceProvider does not support updating,
 returns null.resourceName - the name of XML document that represents the metadata,
                     for example, "/WEB-INF/adfc-config.xml".useCustomizations - a boolean flag that indicates whether customizations
                          should be loaded with the base document, and
                          whether changes to the metadata resource
                          should be saved as a customization.skipIntegrityValidation - if true, the Controller will not attempt
                                to validate whether modifications to this
                                resource preserve its integrity. For example,
                                if integrity validation is skipped, it is
                                possible to add a control flow rule for
                                which the source or target activities do
                                not exists. All validations are performed
                                against the document model that existed
                                at the beginning of the request. This flag
                                should be used so that multiple artifacts
                                can be added to ADFc model in a single
                                request, such as a view activity and
                                a corresponding control flow rule. This
                                flag does not disable all of the validation
                                logic, however, only the logic that
                                depends on the current document context.public abstract MetadataResource getMutableMetadataResource(java.lang.String resourceName, boolean useCustomizations, boolean skipIntegrityValidation, boolean pickUpNewResources)
MetadataResourceProvider does not support updating,
 returns null.resourceName - the name of XML document that represents the metadata,
                     for example, "/WEB-INF/adfc-config.xml".useCustomizations - a boolean flag that indicates whether customizations
                          should be loaded with the base document, and
                          whether changes to the metadata resource
                          should be saved as a customization.skipIntegrityValidation - if true, the Controller will not attempt
                                to validate whether modifications to this
                                resource preserve its integrity. For example,
                                if integrity validation is skipped, it is
                                possible to add a control flow rule for
                                which the source or target activities do
                                not exists. All validations are performed
                                against the document model that existed
                                at the beginning of the request. This flag
                                should be used so that multiple artifacts
                                can be added to ADFc model in a single
                                request, such as a view activity and
                                a corresponding control flow rule. This
                                flag does not disable all of the validation
                                logic, however, only the logic that
                                depends on the current document context.pickUpNewResources - pick up metadata resources that were just created
                           in this session. This flag is passed directly to the
                           underlying metadata layer.
                           see MDSSession#getMutableMO(MOReference, boolean)
                           for details.public abstract java.util.List<MetadataResource> getMetadataResources(ParsingConfig config)
config - the parsing configurationpublic abstract MetadataResourceMobile getMobileMutableMetadataResource(ParsingConfig config)
config - public abstract void reinitialize(java.util.List<java.lang.String> resources)
resources - a list of bootstrap metadata resource filespublic abstract java.util.List<java.lang.String> getAdfcResourceNames()