diff options
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/converter/operations/TransformOperationFactory.java')
-rw-r--r-- | jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/converter/operations/TransformOperationFactory.java | 210 |
1 files changed, 0 insertions, 210 deletions
diff --git a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/converter/operations/TransformOperationFactory.java b/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/converter/operations/TransformOperationFactory.java deleted file mode 100644 index 0c8e6ed9d..000000000 --- a/jsf/plugins/org.eclipse.jst.pagedesigner/src/org/eclipse/jst/pagedesigner/dtmanager/converter/operations/TransformOperationFactory.java +++ /dev/null @@ -1,210 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 Oracle Corporation. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Ian Trimble - initial API and implementation - *******************************************************************************/ -package org.eclipse.jst.pagedesigner.dtmanager.converter.operations; - -import java.util.HashMap; -import java.util.Map; - -import org.eclipse.core.runtime.IConfigurationElement; -import org.eclipse.core.runtime.IExtension; -import org.eclipse.core.runtime.IExtensionPoint; -import org.eclipse.core.runtime.InvalidRegistryObjectException; -import org.eclipse.core.runtime.Platform; -import org.eclipse.jst.jsf.common.ui.internal.logging.Logger; -import org.eclipse.jst.pagedesigner.IJMTConstants; -import org.eclipse.jst.pagedesigner.PDPlugin; -import org.eclipse.jst.pagedesigner.dtmanager.converter.ITransformOperation; -import org.osgi.framework.Bundle; - -/** - * Factory responsible for producing {@link org.eclipse.jst.pagedesigner.dtmanager.converter.ITransformOperation} instances from the <br> - * <code>org.eclipse.jst.pagedesigner.pageDesignerExtension.tagTransformOperation</code> extensions - * <br> - * <p><b>Provisional API - subject to change</b></p> - * - * @author Ian Trimble - Oracle - */ -public final class TransformOperationFactory { - /** - * AppendChildElementOperation - */ - public static final String OP_AppendChildElementOperation = PDPlugin.getPluginId()+".AppendChildElementOperation"; //$NON-NLS-1$ - /** - * AppendChildTextFromXPathOperation - */ - public static final String OP_AppendChildTextFromXPathOperation = PDPlugin.getPluginId()+".AppendChildTextFromXPathOperation"; //$NON-NLS-1$ - /** - * AppendChildTextOperation - */ - public static final String OP_AppendChildTextOperation = PDPlugin.getPluginId()+".AppendChildTextOperation"; //$NON-NLS-1$ - /** - * ConvertAttributeToTextOperation - */ - public static final String OP_ConvertAttributeToTextOperation = PDPlugin.getPluginId()+".ConvertAttributeToTextOperation"; //$NON-NLS-1$ - /** - * CopyAllAttributesOperation - */ - public static final String OP_CopyAllAttributesOperation = PDPlugin.getPluginId()+".CopyAllAttributesOperation"; //$NON-NLS-1$ - /** - * CopyAttributeOperation - */ - public static final String OP_CopyAttributeOperation = PDPlugin.getPluginId()+".CopyAttributeOperation"; //$NON-NLS-1$ - /** - * CopyAttributeWithRenameOperation - */ - public static final String OP_CopyAttributeWithRenameOperation = PDPlugin.getPluginId()+".CopyAttributeWithRenameOperation"; //$NON-NLS-1$ - /** - * CopyChildrenOperation - */ - public static final String OP_CopyChildrenOperation = PDPlugin.getPluginId()+".CopyChildrenOperation"; //$NON-NLS-1$ - /** - * CreateAttributeFromXPathOperation - */ - public static final String OP_CreateAttributeFromXPathOperation = PDPlugin.getPluginId()+".CreateAttributeFromXPathOperation"; //$NON-NLS-1$ - /** - * CreateAttributeOperation - */ - public static final String OP_CreateAttributeOperation = PDPlugin.getPluginId()+".CreateAttributeOperation"; //$NON-NLS-1$ - /** - * CreateElementOperation - */ - public static final String OP_CreateElementOperation = PDPlugin.getPluginId()+".CreateElementOperation"; //$NON-NLS-1$ - /** - * CustomTransformOperation - */ - public static final String OP_CustomTransformOperation = PDPlugin.getPluginId()+".CustomTransformOperation"; //$NON-NLS-1$ - /** - * IfNotOperation - */ - public static final String OP_IfNotOperation = PDPlugin.getPluginId()+".IfNotOperation"; //$NON-NLS-1$ - /** - * IfOperation - */ - public static final String OP_IfOperation = PDPlugin.getPluginId()+".IfOperation"; //$NON-NLS-1$ - /** - * IterateOverElementsOperation - */ - public static final String OP_IterateOverElementsOperation = PDPlugin.getPluginId()+".IterateOverElementsOperation"; //$NON-NLS-1$ - /** - * MakeParentElementCurrentOperation - */ - public static final String OP_MakeParentElementCurrentOperation = PDPlugin.getPluginId()+".MakeParentElementCurrentOperation"; //$NON-NLS-1$ - /** - * RemoveAttributeOperation - */ - public static final String OP_RemoveAttributeOperation = PDPlugin.getPluginId()+".RemoveAttributeOperation"; //$NON-NLS-1$ - /** - * RenameAttributeOperation - */ - public static final String OP_RenameAttributeOperation = PDPlugin.getPluginId()+".RenameAttributeOperation"; //$NON-NLS-1$ - - private static TransformOperationFactory instance; - - private Logger log = PDPlugin.getLogger(TransformOperationFactory.class); - - private Map<String, Class> _tagTransformOpsRegistry; - - /** - * Instantiates an instance. - */ - private TransformOperationFactory() { - //no external instantiation - - //read extensions - readAllTagTransformOperations(); - } - - - /** - * Gets the singleton instance. - * - * @return The singleton instance. - */ - public static synchronized TransformOperationFactory getInstance() { - if (instance == null) { - instance = new TransformOperationFactory(); - } - return instance; - } - - /** - * Gets an ITransformOperation instance for the specified operation ID and - * parameters. - * - * @param opID - the plugin-qualified Operation extension ID. - * @param params - array of String parameters - * @return ITransformOperation - */ - public ITransformOperation getTransformOperation(String opID, String[] params) { - Class opClass = null; - try { - opClass = _tagTransformOpsRegistry.get(opID); - if (opClass != null) { - Object opObject = opClass.newInstance(); - if (opObject instanceof AbstractTransformOperation) { - ((AbstractTransformOperation)opObject).setParameters(params); - ((AbstractTransformOperation)opObject).setTransformOperationID(opID); - return (AbstractTransformOperation)opObject; - } - log.error("Warning.TransformOperationFactory.NotAbstractTransformOperation", opClass.getName()); //$NON-NLS-1$ - } else { - log.error("Warning.TransformOperationFactory.ExtensionNotFound", opID); //$NON-NLS-1$ - } - } catch(IllegalAccessException iae) { - log.error("Warning.TransformOperationFactory.IllegalAccess", opClass.getName(), iae); //$NON-NLS-1$ - } catch(InstantiationException ie) { - log.error("Warning.TransformOperationFactory.Instantiation", opClass.getName(), ie); //$NON-NLS-1$ - } - return null; - } - - /** - * Reads the custom tag transform operations from WPE registry - */ - private void readAllTagTransformOperations() { - try { - _tagTransformOpsRegistry = new HashMap<String, Class>(); - IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(PDPlugin.getPluginId(), IJMTConstants.EXTENSION_POINT_PAGEDESIGNER); - IExtension[] extensions = point.getExtensions(); - for (int i=0;i < extensions.length;i++){ - IExtension ext = extensions[i]; - for (int j=0;j < ext.getConfigurationElements().length;j++){ - if (ext.getConfigurationElements()[j].getName() - .equals(IJMTConstants.TAG_TRANSFORM_OPERATION)) { - registerTransformOperation(ext.getConfigurationElements()[j]); - } - } - } - } catch (InvalidRegistryObjectException e) { - log.error("Warning.TransformOperationFactory.RegistryError", PDPlugin.getPluginId()+IJMTConstants.EXTENSION_POINT_PAGEDESIGNER+"."+IJMTConstants.TAG_TRANSFORM_OPERATION, e); //$NON-NLS-1$ //$NON-NLS-2$ - } - } - - private void registerTransformOperation(final IConfigurationElement element) { - - final Bundle bundle = Platform.getBundle(element.getContributor().getName()); - final String id = element.getContributor().getName()+"."+element.getAttribute("id"); //$NON-NLS-1$ //$NON-NLS-2$ - if (bundle != null) { - try { - final Class transformClass = bundle.loadClass(element.getAttribute("class")); //$NON-NLS-1$ - // Not checking instance type here. Class gets checked as ITransformOperation at - //instantiation time... - //best to log error then rather than now. - _tagTransformOpsRegistry.put(id, transformClass); - } - catch (Exception e) { - log.error("Warning.TransformOperationFactory.CannotLoadOpClass",id, e); //$NON-NLS-1$ - } - } - } - - -} |