Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.4.0)

E13403-05

oracle.ide.extension
Class ExtensionProcessorPlugin

java.lang.Object
  extended by oracle.ide.extension.ExtensionProcessorPlugin
Direct Known Subclasses:
PropertiesExtensionProcessorPlugin

public abstract class ExtensionProcessorPlugin
extends java.lang.Object

An ExtensionProcessorPlugin is an object that can extend the manifest processing behavior of the IDE.

Create an ExtensionProcessorPlugin by implementing a subclass of this class. You should package up this class in a jar file that contains a services file for this class. A services file is a plain text file containing the fully qualified name of an implementation class.

For example, say you have a plugin implementation in org.acme.MyPlugin. You would create a jar containing a plain text file at myplugin.jar!/META-INF/services/oracle.ide.extension.ExtensionProcessorPlugin. This text file would contain the text org.acme.MyPlugin.

The order in which plugins are invoked is undetermined, and you should not rely on it remaining consistent. In addition, plugins may be invoked as part of the extension design time in JDeveloper.

Plugins are executed in a minimal classpath environment. They must not depend on classes other than those that make up the core boot classpath of the ide.

Since:
11.1.1.0.0

Constructor Summary
ExtensionProcessorPlugin()
           
 
Method Summary
 java.lang.String expandValue(ExtensionProcessorContext context, java.lang.String macroName)
          Expands a macro encountered while processing an extension manifest.
 java.util.Set<java.lang.String> getSupportedMacros(ExtensionProcessorContext context)
          Returns a Set of macro names which are supported in the specified extension processing context.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtensionProcessorPlugin

public ExtensionProcessorPlugin()
Method Detail

getSupportedMacros

public java.util.Set<java.lang.String> getSupportedMacros(ExtensionProcessorContext context)
Returns a Set of macro names which are supported in the specified extension processing context.

Extension manifests can contain macro usages in any attribute value or text node. The syntax of a macro usage is

${macroname}
.

An ExtensionProcessorPlugin may provide logic to expand macros in the extension manifest. The plugin should return a collection of supported macro names from this method.

While processing manifest files, the expandValue(ExtensionProcessorContext,String) method will be called for each occurrence of macros supported by this plugin.

Macro names ending with a colon (:) are macro namespaces. These can be used to implement dynamic macros, such as sysprop:some.property.

This implementation returns an empty set. Will never be null.

Parameters:
context - the extension processing context.
Returns:
a set of supported macro names.

expandValue

public java.lang.String expandValue(ExtensionProcessorContext context,
                                    java.lang.String macroName)
Expands a macro encountered while processing an extension manifest.

You should take care to optimize the performance of this method, since it will be called every time a macro encountered in the extension manifest needs to be expanded.

This implementation returns null.

Parameters:
context - the extension processing context. Will never be null.
macroName - the name of the macro to expand.
Returns:
the expanded value of the macro. If you return null from this method, the macro will not be expanded (the original macro string will be retained intact).

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference
11g Release 1 (11.1.1.4.0)

E13403-05

Copyright © 1997, 2011, Oracle. All rights reserved.