diff options
Diffstat (limited to 'bundles/org.eclipse.wst.command.env.core/src')
45 files changed, 0 insertions, 3581 deletions
diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandFactory.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandFactory.java deleted file mode 100644 index 0957e6ded..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandFactory.java +++ /dev/null @@ -1,26 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core; - -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - -/** - * This interface is used to create Command objects. - * - */ -public interface CommandFactory -{ - /** - * - * @return returns a created Command object. - */ - public AbstractDataModelOperation create(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandManager.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandManager.java deleted file mode 100644 index 19da21946..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/CommandManager.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core; - -import org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry; - -/** - * CommandManagers help manage the lifecycle of Commands. - */ -public interface CommandManager -{ - /** - * Returns true if this CommandManager is capable of undoing - * Commands. Some CommandManagers and Environments may be of - * a sort that will never undo() Commands. Command.execute() - * methods should take advantage of this method to optimize - * out any caching logic whenever this method returns false. - */ - public boolean isUndoEnabled (); - - // There's probably more, like factory methods for creating - // Undo/Redo stacks and stuff like that. - - public DataMappingRegistry getMappingRegistry(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCore.properties b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCore.properties deleted file mode 100644 index 429c18eaa..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCore.properties +++ /dev/null @@ -1,19 +0,0 @@ -############################################################################### -# Copyright (c) 2001, 2004 IBM Corporation and others. -# 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: -# IBM Corporation - initial API and implementation -############################################################################### - -# -# Common Messages -# -MSG_ERROR_UNEXPECTED_ERROR=IWAB0014E Unexpected exception occured. - -TITLE_WARNING=Warning: -TITLE_ERROR=Error: -TITLE_INFO=Info: diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCoreMessages.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCoreMessages.java deleted file mode 100644 index 94581af68..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/EnvironmentCoreMessages.java +++ /dev/null @@ -1,31 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core; - -import org.eclipse.osgi.util.NLS; - -public final class EnvironmentCoreMessages extends NLS { - - private static final String BUNDLE_NAME = "org.eclipse.wst.command.internal.env.core.EnvironmentCore";//$NON-NLS-1$ - - private EnvironmentCoreMessages() { - // Do not instantiate - } - - public static String MSG_ERROR_UNEXPECTED_ERROR; - public static String TITLE_WARNING; - public static String TITLE_ERROR; - public static String TITLE_INFO; - - static { - NLS.initializeMessages(BUNDLE_NAME, EnvironmentCoreMessages.class); - } -}
\ No newline at end of file diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/ICommandFactory.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/ICommandFactory.java deleted file mode 100644 index 182a28b10..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/ICommandFactory.java +++ /dev/null @@ -1,30 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.wst.command.internal.env.core; - -import java.util.Iterator; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - - -/** - * - * This class is used to return a sequence of Commands. - * - */ -public interface ICommandFactory extends Iterator -{ - /** - * - * @return returns the next Command in the sequence. - */ - public AbstractDataModelOperation getNextCommand(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/SimpleCommandFactory.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/SimpleCommandFactory.java deleted file mode 100644 index 75fdc4a52..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/SimpleCommandFactory.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.wst.command.internal.env.core; - -import java.util.Vector; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - - -public class SimpleCommandFactory implements ICommandFactory -{ - private Vector commands_; - private int index_; - - public SimpleCommandFactory( Vector commands ) - { - commands_ = commands; - index_ = 0; - } - - public AbstractDataModelOperation getNextCommand() - { - return (AbstractDataModelOperation)next(); - } - - public void remove() - { - throw new UnsupportedOperationException(); - } - - public boolean hasNext() - { - return index_ < commands_.size(); - } - - public Object next() - { - return commands_.elementAt(index_++); - } - -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Condition.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Condition.java deleted file mode 100644 index 6d5b18053..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Condition.java +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -/** - * This interface defines a boolean condition that can be evaluated for any object. - */ -public interface Condition -{ - /** - * This returns whether the given object passes this condition. - */ - public boolean evaluate(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Evaluate.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Evaluate.java deleted file mode 100644 index 0dcb74ec0..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Evaluate.java +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -/** - * This interface can be used when a conditional object needs to be returned. -**/ -public interface Evaluate -{ - /** - * @return returns an object based on some evaluated condition. - **/ - public Object evaluate(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/MessageUtils.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/MessageUtils.java deleted file mode 100644 index aa7bb5939..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/MessageUtils.java +++ /dev/null @@ -1,88 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -import java.text.MessageFormat; -import java.util.Hashtable; -import java.util.Locale; -import java.util.ResourceBundle; - -/** - * This class provides a convienent way to access resource bundles and - * retieve translated strings. - * - * - */ -public class MessageUtils -{ - private ResourceBundle resource_; - - private static Hashtable bundles_ = new Hashtable(); - - /** - * - * @param bundleId the resource bundle ID. - * @param object the class loader for this object will be used to retrieve - * the resource bundle. - */ - public MessageUtils( String bundleId, Object object ) - { - this( bundleId, object.getClass().getClassLoader() ); - } - - /** - * - * @param bundleId the resource bundle ID. - * @param loader the class loader that will be used to retrieve - * the resource bundle. - */ - public MessageUtils( String bundleId, ClassLoader loader ) - { - resource_ = (ResourceBundle)bundles_.get( bundleId ); - - if( resource_ == null ) - { - resource_ = ResourceBundle.getBundle( bundleId, Locale.getDefault(), loader ); - bundles_.put( bundleId, resource_ ); - } - } - - /** - * - * @param key the key for the string to retrieve. - * @return returns the translated string. - */ - public String getMessage ( String key ) - { - String value = key; - - try - { - value = resource_.getString( key ); - } - catch( Throwable exc ) - { - } - - return value; - } - - /** - * - * @param key the key for the string to retrieve. - * @param args These arguments will be substituted into the translated string. - * @return returns the translated string with any substitutions. - */ - public String getMessage ( String key, Object[] args ) - { - return MessageFormat.format( getMessage(key),args ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/ProgressUtils.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/ProgressUtils.java deleted file mode 100644 index 4028caa12..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/ProgressUtils.java +++ /dev/null @@ -1,22 +0,0 @@ -/*************************************************************************************************** - * Copyright (c) 2003, 2005 IBM Corporation and others. 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: IBM Corporation - initial API and implementation - **************************************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -import org.eclipse.core.runtime.IProgressMonitor; - -public class ProgressUtils -{ - static public void report( IProgressMonitor monitor, String message ) - { - if( monitor != null ) - { - monitor.beginTask( message, IProgressMonitor.UNKNOWN ); - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Range.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Range.java deleted file mode 100644 index 2e98b4b20..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/Range.java +++ /dev/null @@ -1,62 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -import org.eclipse.wst.common.environment.uri.IURI; - -/** - * Carries position information within a resource. - */ -public interface Range -{ - public static final int UNKNOWN = -1; - - /** - * Returns the identifier of the resource the range applies to. - */ - public IURI getURI (); - - /** - * Returns the index, zero-indexed, of the first line - * of the range. - */ - public int getStartingLineNumber (); - - /** - * Returns the index, zero-indexed, of the first character - * of the range relative to the beginning of the line. - */ - public int getStartingCharNumberInLine (); - - /** - * Returns the index, zero-indexed, of the first character - * of the range relative to the beginning of the file. - */ - public int getStartingCharNumberInURI (); - - /** - * Returns the index, zero-indexed, of the last line - * of the range. - */ - public int getEndingLineNumber (); - - /** - * Returns the offset, zero-indexed, of the last character - * of the range relative to the beginning of the line. - */ - public int getEndingCharNumberInLine (); - - /** - * Returns the index, zero-indexed, of the last character - * of the range relative to the beginning of the file. - */ - public int getEndingCharNumberInURI (); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/RangeVector.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/RangeVector.java deleted file mode 100644 index 3f86edfaf..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/RangeVector.java +++ /dev/null @@ -1,30 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -import java.util.Vector; - -/** - * This Vector makes the protected method removeRange public. - * - */ -public class RangeVector extends Vector -{ - /** - * Comment for <code>serialVersionUID</code> - */ - private static final long serialVersionUID = 4048793476659230773L; - - public void removeRange( int start, int end ) - { - super.removeRange( start, end ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/StatusUtils.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/StatusUtils.java deleted file mode 100644 index a03a57201..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/common/StatusUtils.java +++ /dev/null @@ -1,58 +0,0 @@ -/*************************************************************************************************** - * Copyright (c) 2003, 2005 IBM Corporation and others. 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: IBM Corporation - initial API and implementation - **************************************************************************************************/ -package org.eclipse.wst.command.internal.env.core.common; - -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.MultiStatus; -import org.eclipse.core.runtime.Status; - -public class StatusUtils -{ - public static IStatus errorStatus( String errorMessage ) - { - return new Status( IStatus.ERROR, "id", 0, errorMessage, null ); - } - - public static IStatus errorStatus( Throwable exc ) - { - String message = exc.getMessage(); - - return new Status( IStatus.ERROR, "id", 0, message == null ? "" : message, exc ); - } - - public static IStatus errorStatus( String message, Throwable exc ) - { - return new Status( IStatus.ERROR, "id", 0, message, exc ); - } - - public static MultiStatus multiStatus( String message, IStatus[] children, Throwable exc ) - { - return new MultiStatus( "id", 0, children, message, exc ); - } - - public static MultiStatus multiStatus( String message, IStatus[] children ) - { - return new MultiStatus( "id", 0, children, message, null ); - } - - public static IStatus warningStatus( String warningMessage ) - { - return new Status( IStatus.WARNING, "id", 0, warningMessage, null ); - } - - public static IStatus warningStatus( String warningMessage, Throwable exc ) - { - return new Status( IStatus.WARNING, "id", 0, warningMessage, exc ); - } - - public static IStatus infoStatus( String infoMessage ) - { - return new Status( IStatus.INFO, "id", 0, infoMessage, null ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/Context.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/Context.java deleted file mode 100644 index d38351bd0..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/Context.java +++ /dev/null @@ -1,87 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.context; - -/** - * This interface provides a way to get and set preference information. - * - */ -public interface Context -{ - /** - * Loads the preference data into this Context object. - * - */ - public void load(); - - /** - * Sets the default for a boolean preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setDefault (String name, boolean value); - - /** - * Sets the default for a string preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setDefault (String name, String value); - - /** - * Sets the default for a int preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setDefault (String name, int value); - - /** - * Sets the value for a string preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setValue (String name, String value); - - /** - * Sets the value for a boolean preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setValue (String name, boolean value); - - /** - * Sets the value for a int preference. - * @param name the preference name. - * @param value the preference value. - */ - public void setValue (String name, int value); - - /** - * Gets the value for a string preference. - * @param name the preference name. - * @return the preference value. - */ - public String getValueAsString ( String name); - - /** - * Gets the value for a boolean preference. - * @param name the preference name. - * @return the preference value. - */ - public boolean getValueAsBoolean ( String name); - - /** - * Gets the value for a int preference. - * @param name the preference name. - * @return the preference value. - */ - public int getValueAsInt ( String name); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceContext.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceContext.java deleted file mode 100644 index b36ecc2ca..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceContext.java +++ /dev/null @@ -1,74 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.context; - -public interface ResourceContext -{ - /** - * This constant string is used to lookup the overwrite files general preference from - * the plugins local preferences store. - **/ - public static final String PREFERENCE_OVERWRITE = "filesOverwrite"; - - /** - * This constant string is used to lookup the create folders general preference from - * the plugins local preferences store. - **/ - public static final String PREFERENCE_CREATE_FOLDERS = "createFolders"; - - /** - * This constant string is used to lookup the checkout files general preference from - * the plugins local preferences store. - **/ - public static final String PREFERENCE_CHECKOUT = "filesCheckout"; - - /** - * - * @param enable set whether overwriting of files is enabled. - */ - public void setOverwriteFilesEnabled ( boolean enable); - - /** - * - * @return returns whether overwriting of files is enabled. - */ - public boolean isOverwriteFilesEnabled(); - - /** - * - * @param enable set whether creation of folders is enabled. - */ - public void setCreateFoldersEnabled( boolean enable); - - /** - * - * @return returns whether creation of folders is enabled. - */ - public boolean isCreateFoldersEnabled(); - - /** - * - * @param enable sets whether automatic checkout of files is enabled. - */ - public void setCheckoutFilesEnabled( boolean enable); - - /** - * - * @return returns whether automatic checkout of files is enabled. - */ - public boolean isCheckoutFilesEnabled(); - - /** - * - * @return returns a copy of this ResourceContext. - */ - public ResourceContext copy(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceDefaults.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceDefaults.java deleted file mode 100644 index dad802626..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/ResourceDefaults.java +++ /dev/null @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.context; - -public class ResourceDefaults -{ - private static final boolean PREFERENCE_OVERWRITE_DEFAULT = false; - private static final boolean PREFERENCE_CREATE_FOLDERS_DEFAULT = true; - private static final boolean PREFERENCE_CHECKOUT_DEFAULT = false; - - /** - * - * @return returns the default setting for overwriting files. - */ - public static boolean getOverwriteFilesDefault () - { - return PREFERENCE_OVERWRITE_DEFAULT; - } - - /** - * - * @return returns the default setting ofr creating folders. - */ - public static boolean getCreateFoldersDefault () - { - return PREFERENCE_CREATE_FOLDERS_DEFAULT; - } - - /** - * - * @return returns the default setting for checking out files. - */ - public static boolean getCheckoutFilesDefault() - { - return PREFERENCE_CHECKOUT_DEFAULT; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/TransientResourceContext.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/TransientResourceContext.java deleted file mode 100644 index 1dffa025b..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/context/TransientResourceContext.java +++ /dev/null @@ -1,82 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2001, 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.context; - -/** - * This class implements a ResourceContext interface where the state - * of the context data is transient. - * - */ -public class TransientResourceContext implements ResourceContext -{ - private boolean overWriteFiles; - private boolean createFolders; - private boolean checkOutFiles; - - public TransientResourceContext() { - setOverwriteFilesEnabled(ResourceDefaults.getOverwriteFilesDefault()); - setCreateFoldersEnabled(ResourceDefaults.getCreateFoldersDefault()); - setCheckoutFilesEnabled(ResourceDefaults.getCheckoutFilesDefault()); - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#setOverwriteFilesEnabled(boolean) - */ - public void setOverwriteFilesEnabled(boolean enable) { - overWriteFiles = enable; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#isOverwriteFilesEnabled() - */ - public boolean isOverwriteFilesEnabled() { - return overWriteFiles; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#setCreateFoldersEnabled(boolean) - */ - public void setCreateFoldersEnabled(boolean enable) { - createFolders = enable; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#isCreateFoldersEnabled() - */ - public boolean isCreateFoldersEnabled() { - return createFolders; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#setCheckoutFilesEnabled(boolean) - */ - public void setCheckoutFilesEnabled(boolean enable) { - checkOutFiles = enable; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#isCheckoutFilesEnabled() - */ - public boolean isCheckoutFilesEnabled() { - return checkOutFiles; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.context.ResourceContext#copy() - */ - public ResourceContext copy() { - ResourceContext cc = new TransientResourceContext(); - cc.setOverwriteFilesEnabled(isOverwriteFilesEnabled()); - cc.setCreateFoldersEnabled(isCreateFoldersEnabled()); - cc.setCheckoutFilesEnabled(isCheckoutFilesEnabled()); - return cc; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/BeanModifier.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/BeanModifier.java deleted file mode 100644 index d56fc66c0..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/BeanModifier.java +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - -public interface BeanModifier { - - /** - * Performs modification on bean properties using data provided - * @param bean The bean to be modified - * @param propertyHolder The data to use to make the modification - */ - public void modify(Object bean, Object propertyHolder); - -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/ClassEntry.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/ClassEntry.java deleted file mode 100644 index 41e5c5664..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/ClassEntry.java +++ /dev/null @@ -1,77 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2006 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - * yyyymmdd bug Email and other contact information - * -------- -------- ----------------------------------------------------------- - * 20060313 130958 pmoogk@ca.ibm.com - Peter Moogk - *******************************************************************************/ - -package org.eclipse.wst.command.internal.env.core.data; - -import java.util.Vector; - -public class ClassEntry -{ - // A list of getter methods for a particular class. - public Vector getterList_; - - // A list of setter methods for a particular class. - public Vector setterList_; - - // A list of instance objects for this class. Only the last entry - // should be looked at. - private Vector objectList_ = new Vector(); - - // A list of Interger objects that represent an ordering of objects. - // The number of entries in the objectList vector and the orderList vector - // should be the same. Each entry in the objectList vector is - // corelated with each entry in the orderList vector. - private Vector orderList_ = new Vector(); - - public void addObject( Object object, int order ) - { - objectList_.add(object); - orderList_.add( new Integer(order) ); - } - - public Object getLastObject() - { - Object result = null; - - if( objectList_.size() > 0 ) - { - result = objectList_.lastElement(); - } - - return result; - } - - public int getLastOrder() - { - int result = -1; - - if( orderList_.size() > 0 ) - { - result = ((Integer)orderList_.lastElement()).intValue(); - } - - return result; - } - - public void removeObject( Object object ) - { - int removalIndex = objectList_.indexOf(object); - - if( removalIndex != -1 ) - { - objectList_.remove(removalIndex); - orderList_.remove(removalIndex); - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataFlowManager.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataFlowManager.java deleted file mode 100644 index e7ffe03f8..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataFlowManager.java +++ /dev/null @@ -1,293 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2006 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - * yyyymmdd bug Email and other contact information - * -------- -------- ----------------------------------------------------------- - * 20060313 130958 pmoogk@ca.ibm.com - Peter Moogk - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.util.Hashtable; -import java.util.Vector; -import org.eclipse.wst.common.environment.IEnvironment; -import org.eclipse.wst.common.environment.ILog; - - -public class DataFlowManager -{ - private DataMappingRegistryImpl registry_; - private Hashtable classTable_; - private int order_; - private IEnvironment environment_; - - public DataFlowManager( DataMappingRegistryImpl registry, IEnvironment environment ) - { - registry_ = registry; - classTable_ = new Hashtable(); - order_ = 0; - environment_ = environment; - } - - public DataMappingRegistry getMappingRegistry() - { - return registry_; - } - - // Remove this instance object from the mapping table. - public void unprocess( Object object ) - { - String objectType = object.getClass().getName(); - ClassEntry classEntry = (ClassEntry)classTable_.get( objectType ); - - if( classEntry != null ) - { - classEntry.removeObject(object); - } - } - - // Add this object to our mapping table and call the setters - // that have corresponding getter objects. - public void process( Object object ) - { - // Add this object to the classTable_ if required. - String objectType = object.getClass().getName(); - ClassEntry classEntry = (ClassEntry)classTable_.get( objectType ); - - environment_.getLog().log(ILog.INFO, "data", 5004, this, "process", "Processing: " + objectType ); - - if( classEntry == null ) - { - classEntry = new ClassEntry(); - classTable_.put( objectType, classEntry ); - } - - classEntry.addObject(object, order_++ ); - - // Now process the setters for this object - Vector ruleEntries = registry_.getRuleEntries( objectType ); - - if( ruleEntries != null ) - { - if( classEntry.setterList_ == null ) - { - classEntry.setterList_ = getSetterList( object ); - } - - // For each setter in this object try to find a rule. - for( int setterIndex = 0; setterIndex < classEntry.setterList_.size(); setterIndex++ ) - { - ObjectMethod currentObjectMethod = new ObjectMethod(); - Method setterMethod = (Method)classEntry.setterList_.elementAt( setterIndex ); - RuleEntry currentRuleEntry = null; - - currentObjectMethod.order = -1; - - // Find rules that match this setter. Note: there can be more than one rule - // that matches this setter. In this case we use the most recent, which is - // defined by the order field. - for( int index = 0; index < ruleEntries.size(); index++ ) - { - RuleEntry ruleEntry = (RuleEntry)ruleEntries.elementAt( index ); - - if( setterMethod.getName().equals( "set" + ruleEntry.targetProperty_ ) ) - { - // We found a setter for this rule. Now find the getter method. - // Note: getGetterMethod always returns a value, but if there is no - // getters available it will set the order to -1. - ObjectMethod getter = getGetterMethod( ruleEntry.sourceType_, ruleEntry.sourceProperty_ ); - - if( getter.order == -1 ) - { - environment_.getLog().log(ILog.INFO , "data", 5005, this, "process", " >>No getter found for property: " + setterMethod.getName()); - } - - if( currentObjectMethod.order < getter.order ) - { - // We found a more recent getter. - currentObjectMethod = getter; - currentRuleEntry = ruleEntry; - } - } - } - - if( currentObjectMethod.order != -1 ) - { - invokeMethod( currentObjectMethod.object, - currentObjectMethod.method, - object, - setterMethod, - currentRuleEntry.transformer_ ); - } - else - { - environment_.getLog().log(ILog.INFO, "data", 5006, this, "process", " >>No rule found for setter: " + setterMethod.getName() ); - } - } - } - } - - /** - * Find all the setters for this object and return a vector of them. - * - * @param object - * @return - */ - private Vector getSetterList( Object object ) - { - Vector result = new Vector(); - - Method[] methods = object.getClass().getMethods(); - - for( int index = 0; index < methods.length; index++ ) - { - Method method = methods[index]; - boolean isPublic = Modifier.isPublic( method.getModifiers() ); - Class returnType = method.getReturnType(); - - if( isPublic && - returnType == Void.TYPE && - method.getParameterTypes().length == 1 && - method.getName().startsWith( "set" )) - { - method.setAccessible( true ); - result.add( method ); - } - } - - return result; - } - - private ObjectMethod getGetterMethod( String sourceType, String sourceProperty ) - { - ClassEntry classEntry = (ClassEntry)classTable_.get( sourceType ); - ObjectMethod getterFound = new ObjectMethod(); - - // Indicate that there is no getter yet. - getterFound.order = -1; - - if( classEntry != null ) - { - Object lastObject = classEntry.getLastObject(); - - if( lastObject != null ) - { - if( classEntry.getterList_ == null ) - { - // Build the getter list. - classEntry.getterList_ = getGetterList( lastObject ); - } - - for( int index = 0; index < classEntry.getterList_.size(); index++ ) - { - Method getter = (Method)classEntry.getterList_.elementAt( index ); - - if( getter.getName().equals( "get" + sourceProperty )) - { - getterFound.order = classEntry.getLastOrder(); - getterFound.method = getter; - getterFound.object = lastObject; - break; - } - } - } - } - - return getterFound; - } - - private Vector getGetterList( Object object ) - { - Vector result = new Vector(); - - Method[] methods = object.getClass().getMethods(); - - for( int index = 0; index < methods.length; index++ ) - { - Method method = methods[index]; - boolean isPublic = Modifier.isPublic( method.getModifiers() ); - Class returnType = method.getReturnType(); - - if( isPublic && - returnType != Void.TYPE && - method.getParameterTypes().length == 0 && - method.getName().startsWith( "get" )) - { - method.setAccessible( true ); - result.add( method ); - } - } - - return result; - } - - private void invokeMethod( Object sourceObject, - Method sourceMethod , - Object clientObject, - Method clientMethod, - Transformer transformer) - { - Object data = null; - - try - { - data = sourceMethod.invoke( sourceObject, new Object[0] ); - } - catch( InvocationTargetException exc ) - { - exc.printStackTrace(); - // pgm Need to externalize this string. - throw new IllegalArgumentException( "Provider \"" + sourceObject.getClass().getName() + - "\" threw an exception." ); - } - catch( IllegalAccessException exc ) - { - exc.printStackTrace(); - // pgm Need to externalize this string. - throw new IllegalArgumentException( "Provider \"" + sourceObject.getClass().getName() + - "\" threw an exception." ); - } - - environment_.getLog().log(ILog.INFO, "data", 5007, this, "invokeMethod "," Setting prop: " + clientMethod.getName() + " data=" + data + " from: " + sourceObject.getClass().getName() ); - - - if( transformer != null ) - { - data = transformer.transform( data ); - } - - try - { - clientMethod.invoke( clientObject, new Object[]{ data } ); - } - catch( InvocationTargetException exc ) - { - exc.printStackTrace(); - // pgm Need to externalize this string. - throw new IllegalArgumentException( "Client \"" + clientObject.getClass().getName() + - "\" threw an exception." ); - } - catch( IllegalAccessException exc ) - { - exc.printStackTrace(); - // pgm Need to externalize this string. - throw new IllegalArgumentException( "Client \"" + clientObject.getClass().getName() + - "\" threw an exception." ); - } - } - - private class ObjectMethod - { - public Object object; - public Method method; - public int order; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistry.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistry.java deleted file mode 100644 index 99da37a6f..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistry.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - -public interface DataMappingRegistry -{ - /** - * This method adds a data mapping from a source object to a target - * object. When the sourceObject is encountered by the framework the - * sourceProperty will be called and the data will be passed to the - * targetProperty in the targetObject. If a transformer object is - * specified the sourceObject is transformed before being passed to - * the target object. - * - * @param sourceType The source object. - * @param sourceProperty The source property. - * @param targetType The target object. - * @param targetProperty The target property. - * @param transformer The transformer object that transforms the - * the source object. - */ - public void addMapping( Class sourceType, - String sourceProperty, - Class targetType, - String targetProperty, - Transformer transformer ); - - /** - * This method is equivalent to the above with targetProperty the same - * as the sourceProperty and with the transformer set to null. - * - * @param sourceType The source object. - * @param sourceProperty The source property. - * @param targetType The target object. - */ - public void addMapping( Class sourceType, - String sourceProperty, - Class targetType ); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistryImpl.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistryImpl.java deleted file mode 100644 index 7bea57788..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/DataMappingRegistryImpl.java +++ /dev/null @@ -1,117 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - -import java.util.Hashtable; -import java.util.Vector; - - -public class DataMappingRegistryImpl implements DataMappingRegistry -{ - private Hashtable rulesTable_ = new Hashtable(); - - public Vector getRuleEntries( String targetType ) - { - return (Vector)rulesTable_.get( targetType ); - } - - /* (non-Javadoc) - * @see org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry#addMapping(java.lang.Class, java.lang.String, java.lang.Class, java.lang.String, org.eclipse.wst.command.internal.env.core.data.Transformer) - */ - public void addMapping( Class sourceType, String sourceProperty, - Class targetType, String targetProperty, - Transformer transformer) - { - Vector ruleEntries = (Vector)rulesTable_.get( targetType.getName() ); - RuleEntry ruleEntry = null; - - if( ruleEntries == null ) - { - ruleEntries = new Vector(); - rulesTable_.put( targetType.getName(), ruleEntries ); - } - - // Find the rule entry - for( int index = 0; index < ruleEntries.size(); index++ ) - { - RuleEntry newEntry = (RuleEntry)ruleEntries.elementAt( index ); - - if( sourceProperty.equals( newEntry.sourceProperty_ ) && - sourceType.equals( newEntry.sourceType_ ) && - targetProperty.equals( newEntry.targetProperty_ ) ) - { - // The entry already exists - ruleEntry = newEntry; - break; - } - } - - if( ruleEntry == null ) - { - // The rule didn't exist already so we will create a new one. - ruleEntry = new RuleEntry(sourceType.getName(), sourceProperty, targetProperty, transformer ); - ruleEntries.add( ruleEntry ); - } - else - { - // Just update the transformer. - ruleEntry.transformer_ = transformer; - } - } - - //ruleEntries_. -// String sourceClass = sourceType.getName(); -// String targetClass = targetType.getName(); -// Vector entries = (Vector)ruleEntries_.get( sourceClass ); -// RuleEntry ruleEntry = null; -// -// if( entries != null ) -// { -// // Check to see if this mapping already exists. -// for( int index = 0; index < entries.size(); index++ ) -// { -// RuleEntry foundEntry = (RuleEntry)entries.elementAt( index ); -// -// if( sourceProperty.equals( foundEntry.sourceProperty_ ) && -// targetType.equals( foundEntry.targetType_ ) && -// targetProperty.equals( foundEntry.targetProperty_ ) ) -// { -// ruleEntry = foundEntry; -// ruleEntry.transformer_ = transformer; -// } -// } -// -// // There is an existing vector for this sourceClass, but it didn't -// // contain this new rule so we will add it in. -// if( ruleEntry == null ) -// { -// ruleEntry = new RuleEntry( sourceProperty, targetClass, targetProperty, transformer ); -// entries.add( ruleEntry ); -// } -// } -// else -// { -// // We need to create a new vector for this sourceClass. -// entries = new Vector(); -// ruleEntry = new RuleEntry( sourceProperty, targetClass, targetProperty, transformer ); -// entries.add( ruleEntry ); -// ruleEntries_.put( sourceClass, entries ); -// } -// } - - /* (non-Javadoc) - * @see org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry#addMapping(java.lang.Class, java.lang.String, java.lang.Class) - */ - public void addMapping(Class sourceType, String sourceProperty, Class targetType) - { - addMapping( sourceType, sourceProperty, targetType, sourceProperty, null ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/RuleEntry.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/RuleEntry.java deleted file mode 100644 index df242c105..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/RuleEntry.java +++ /dev/null @@ -1,32 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - - -public class RuleEntry -{ - public String sourceType_; - public String sourceProperty_; - public String targetProperty_; - public Transformer transformer_; - - - public RuleEntry( String sourceType, - String sourceProperty, - String targetProperty, - Transformer transformer ) - { - sourceType_ = sourceType; - sourceProperty_ = sourceProperty; - targetProperty_ = targetProperty; - transformer_ = transformer; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/Transformer.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/Transformer.java deleted file mode 100644 index 19c3c01e7..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/data/Transformer.java +++ /dev/null @@ -1,23 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.data; - -/** - * This interface is used to transform an object from one class to another. - * - */ -public interface Transformer -{ - /* - * @return returns a transformed object based on the input value. - */ - public Object transform( Object value ); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/AbstractCommandFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/AbstractCommandFragment.java deleted file mode 100644 index d18a2f2db..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/AbstractCommandFragment.java +++ /dev/null @@ -1,102 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry; - - -/** - * This class is used as the base class for other standard fragment classes. - * -**/ -public abstract class AbstractCommandFragment implements CommandFragment -{ - private CommandFactory commandFactory_; - private String id_; - private boolean doNotRunInTransaction_ = false; - - /** - * Copy constructor. - * @param fragment - */ - protected AbstractCommandFragment( AbstractCommandFragment fragment ) - { - commandFactory_ = fragment.commandFactory_; - id_ = fragment.id_; - } - - /** - * Creates a new AbstractCommandFragment. - * - * @param command the executable command for this fragment. - **/ - public AbstractCommandFragment( CommandFactory commandFactory, String id ) - { - commandFactory_ = commandFactory; - id_ = id; - } - - public String getId() - { - return id_; - } - - public void setId( String id ) - { - id_ = id; - } - - /** - * Gets executable command associated with this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFactory getCommandFactory() - { - return commandFactory_; - } - - /** - * This method is called retrieve the data mappings for this command fragment. - */ - public void registerDataMappings( DataMappingRegistry registry ) - { - // The default behaviour is not to add any entries to the registry. - } - - /** - * - * @return If the commands for this fragment should not be run within a transaction then - * this method should return true. If the fragment does not care if it is run in a transaction - * or not it should return false. - */ - public boolean doNotRunInTransaction() - { - return doNotRunInTransaction_; - } - - /** - * Sets the run in transaction property. - * @param doNotRunInTransaction - */ - public void setDoNotRunInTransaction( boolean doNotRunInTransaction ) - { - doNotRunInTransaction_ = doNotRunInTransaction; - } - - /** - * All fragments need to be cloneable. - **/ - abstract public Object clone(); - -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/BooleanFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/BooleanFragment.java deleted file mode 100644 index 571156de4..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/BooleanFragment.java +++ /dev/null @@ -1,154 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.common.Condition; - - -/** - * This class returns either the true fragment or the false fragment - * based on the response from the condition object. -**/ -public class BooleanFragment extends AbstractCommandFragment -{ - private CommandFragment trueFragment_; - private CommandFragment falseFragment_; - private Condition condition_; - - /** - * Create a BooleanFragment with default values. - * - */ - public BooleanFragment() - { - this( null, null, new Condition() - { - public boolean evaluate() - { - return true; - } - }, - null, "" ); - } - - /** - * - * @param trueFragment The fragment chosen if the condition is true. - * @param falseFragment The fragment chosen if the condition is false. - * @param condition The condition. - */ - public BooleanFragment( CommandFragment trueFragment, - CommandFragment falseFragment, - Condition condition ) - { - this( trueFragment, falseFragment, condition, null, "" ); - } - - /** - * Creates a new BooleanFragment. - * - * @param trueFragment returned if condition is true. - * @param falseFragment returned if condition is false. - * @param condition the condition for this fragment. - * @param state the state passed to the condition. - * @param command the exectable command for this fragment. - **/ - public BooleanFragment( CommandFragment trueFragment, - CommandFragment falseFragment, - Condition condition, - CommandFactory commandFactory, - String id ) - { - super( commandFactory, id ); - - trueFragment_ = trueFragment; - falseFragment_ = falseFragment; - condition_ = condition; - } - - /** - * Copy constructor. - * @param frag - */ - protected BooleanFragment( BooleanFragment frag ) - { - this( null, - null, - frag.condition_, - frag.getCommandFactory(), - frag.getId() ); - - // Now we have to clone in the true and false - // fragments. - trueFragment_ = (CommandFragment)trueFragment_.clone(); - falseFragment_ = (CommandFragment)falseFragment_.clone(); - } - - /** - * Makes a copy of the CommandFragment. - * - * @return returns a copy of this fragment. - **/ - public Object clone() - { - return new BooleanFragment( this ); - } - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment() - { - return condition_.evaluate() ? trueFragment_ : falseFragment_; - } - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ) - { - return null; - } - - /** - * Sets the condition. - * @param condition - */ - public void setCondition( Condition condition ) - { - condition_ = condition; - } - - /** - * Sets the true fragment. - * @param fragment - */ - public void setTrueFragment( CommandFragment fragment ) - { - trueFragment_ = fragment; - } - - /** - * Sets the false fragment. - * @param fragment - */ - public void setFalseFragment( CommandFragment fragment ) - { - falseFragment_ = fragment; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ChoiceFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ChoiceFragment.java deleted file mode 100644 index 3982cbd05..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ChoiceFragment.java +++ /dev/null @@ -1,143 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import java.util.Enumeration; -import java.util.Hashtable; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.common.Evaluate; - - -/** - * This class returns a fragment from a list of fragments based - * on the object returned from the Evaluate object. -**/ -public class ChoiceFragment extends AbstractCommandFragment -{ - private Hashtable fragmentTable_; - private Evaluate evaluate_; - - /** - * Create a clone with new a new hashtable. - **/ - protected ChoiceFragment( ChoiceFragment frag ) - { - super( frag.getCommandFactory(), frag.getId() ); - - evaluate_ = frag.evaluate_; - fragmentTable_ = new Hashtable(); - - Enumeration keys = frag.fragmentTable_.keys(); - - // Clone the fragments in the table. - while( keys.hasMoreElements() ) - { - Object key = keys.nextElement(); - fragmentTable_.put( key, ((CommandFragment)frag.fragmentTable_.get(key)).clone() ); - } - } - - public ChoiceFragment( Object[] keys, - CommandFragment[] fragments ) - { - this( keys, fragments, null, null, "" ); - } - - public ChoiceFragment( Object[] keys, - CommandFragment[] fragments, - Evaluate evaluate ) - { - this( keys, fragments, evaluate, null, "" ); - } - - public void setEvaluate( Evaluate evaluate ) - { - evaluate_ = evaluate; - } - - /** - * Constructs a choice fragment. The key at index X is mapped to - * to the fragment at index X. - * - * @param keys these keys must be unique as determined by the equals method. - * They are used to identify which fragment to return. - * @param fragments these are the fragments to be returned. Null is not allowed - * as an entry in the array. - * @param evaluate the object returned by this evaluate object is used - * as the key to locate a fragment. - * @param state the state passed to evaluate. - **/ - public ChoiceFragment( Object[] keys, - CommandFragment[] fragments, - Evaluate evaluate, - CommandFactory commandFactory, - String id ) - { - super( commandFactory, id ); - - evaluate_ = evaluate; - fragmentTable_ = new Hashtable(); - - if( keys == null || fragments == null || keys.length != fragments.length ) - { - throw new IllegalArgumentException( "Bad keys or fragments." ); - } - else - { - // Create the fragment table. - for( int index = 0; index < keys.length; index++ ) - { - fragmentTable_.put( keys[index], fragments[index] ); - } - } - } - - /** - * Makes a copy of the CommandFragment. - * - * @return returns a copy of this fragment. - **/ - public Object clone() - { - return new ChoiceFragment( this ); - } - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment() - { - Object key = evaluate_.evaluate(); - CommandFragment fragment = (CommandFragment)fragmentTable_.get(key); - - if( fragment == null ) - { - throw new IllegalArgumentException( "Key not found in table. Key=" + key ); - } - - return fragment; - } - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ) - { - return null; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFactoryFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFactoryFragment.java deleted file mode 100644 index 19075ac57..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFactoryFragment.java +++ /dev/null @@ -1,160 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2005 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ - -package org.eclipse.wst.command.internal.env.core.fragment; - -import java.util.Vector; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.ICommandFactory; -import org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - -public abstract class CommandFactoryFragment implements CommandFragment -{ - private Vector commands_; - - /** - * Subclasses should override this method and return - * an CommandFactory. - * @return - */ - public abstract ICommandFactory getICommandFactory(); - - /** - * All wizard fragments need to be cloneable. - **/ - public abstract Object clone(); - - protected CommandFactoryFragment( CommandFactoryFragment frag ) - { - commands_ = frag.commands_; - } - - public CommandFactoryFragment() - { - } - - /** - * - * @return Returns a unique identifier for this fragment. - */ - public String getId() - { - return ""; - } - - /** - * Gets executable command associated with this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFactory getCommandFactory() - { - return null; - } - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment() - { - CommandFragment result = null; - - commands_ = createCommands(); - - if( commands_.size() > 0 ) - { - result = (ChildFragment)commands_.elementAt(0); - } - - return result; - } - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ) - { - CommandFragment result = null; - - if( commands_ != null && fragment instanceof ChildFragment ) - { - ChildFragment child = (ChildFragment)fragment; - - int index = child.index_; - - if( index != -1 ) - { - index++; - - if( index < commands_.size() ) - { - result = (CommandFragment)commands_.elementAt( index ); - } - } - } - - return result; - } - - /* - * This method is called to retrieve the data mappings for this command fragment. - */ - public void registerDataMappings( DataMappingRegistry registry ) - { - } - - /** - * - * @return If the commands for this fragment should not be run within a transaction then - * this method should return true. If the fragment does not care if it is run in a transaction - * or not it should return false. - */ - public boolean doNotRunInTransaction() - { - return false; - } - - private Vector createCommands() - { - Vector commands = new Vector(); - ICommandFactory factory = getICommandFactory(); - int index = 0; - - while( factory != null && factory.hasNext() ) - { - AbstractDataModelOperation command = factory.getNextCommand(); - - commands.add( new ChildFragment( command, index++ ) ); - } - - return commands; - } - - private class ChildFragment extends SimpleFragment - { - int index_; - - public ChildFragment( AbstractDataModelOperation command, int index ) - { - super( command, command.getID() ); - index_ = index; - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragment.java deleted file mode 100644 index 03af35eca..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragment.java +++ /dev/null @@ -1,71 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry; - - -/** - * This interface describes a list of interruptable commands. The - * order of this list of commands is defined by the getFirstSubFragment and - * getNextSubFragment methods. -**/ -public interface CommandFragment extends Cloneable -{ - /** - * - * @return Returns a unique identifier for this fragment. - */ - public String getId(); - - /** - * Gets executable command associated with this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFactory getCommandFactory(); - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment(); - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ); - - /* - * This method is called to retrieve the data mappings for this command fragment. - */ - public void registerDataMappings( DataMappingRegistry registry ); - - /** - * - * @return If the commands for this fragment should not be run within a transaction then - * this method should return true. If the fragment does not care if it is run in a transaction - * or not it should return false. - */ - public boolean doNotRunInTransaction(); - - /** - * All wizard fragments need to be cloneable. - **/ - public Object clone(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentEngine.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentEngine.java deleted file mode 100644 index 12488aaa0..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentEngine.java +++ /dev/null @@ -1,467 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2006 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - * yyyymmdd bug Email and other contact information - * -------- -------- ----------------------------------------------------------- - * 20060223 129232 pmoogk@ca.ibm.com - Peter Moogk - * 20060313 130958 pmoogk@ca.ibm.com - Peter Moogk - * 20061011 159283 makandre@ca.ibm.com - Andrew Mak, project not associated to EAR when using ant on command-line - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import java.util.Stack; - -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.MultiStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.CommandManager; -import org.eclipse.wst.command.internal.env.core.EnvironmentCoreMessages; -import org.eclipse.wst.command.internal.env.core.common.StatusUtils; -import org.eclipse.wst.command.internal.env.core.data.DataFlowManager; -import org.eclipse.wst.command.internal.env.core.data.DataMappingRegistry; -import org.eclipse.wst.common.environment.IEnvironment; -import org.eclipse.wst.common.environment.ILog; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - - - -/** - * The CommandFragmentEngine provides a convienent way to traverse CommandFragments - * and possiblity execute its associate Command. - */ -public class CommandFragmentEngine implements CommandManager -{ - private Stack commandStack_; - private FragmentListener undoFragmentListener_; - private FragmentListener nextFragmentListener_; - private FragmentListener afterExecuteFragmentListener_; - private FragmentListener peekFragmentListener_; - private DataFlowManager dataManager_; - private IEnvironment environment_; - private IStatus lastStatus_; - - /** - * Creates a CommandFragmentEngine. - * - * @param startFragment the root fragment where traversal will begin. - * @param dataManager the data manager containing all of the data mappings. - * @param environment the environment. - */ - public CommandFragmentEngine( CommandFragment startFragment, DataFlowManager dataManager, IEnvironment environment ) - { - SequenceFragment root = new SequenceFragment(); - root.add( startFragment ); - - commandStack_ = new Stack(); - - addToStack( root, -1 ); - addToStack( startFragment, 0 ); - - dataManager_ = dataManager; - environment_ = environment; - } - - public String toString() - { - String newline = System.getProperty("line.separator"); - StringBuffer buffer = new StringBuffer(); - - buffer.append(newline); - buffer.append("Command stack start:"); - buffer.append(newline); - - for( int index = 0; index < commandStack_.size(); index++ ) - { - CommandListEntry entry = (CommandListEntry)commandStack_.elementAt(index); - entry.dump(buffer, index); - } - - buffer.append("Command start end:"); - buffer.append(newline); - - return buffer.toString(); - } - - /** - * @return returns the Data mapping registry. - */ - public DataMappingRegistry getMappingRegistry() - { - return dataManager_.getMappingRegistry(); - } - - /** - * - * @return the Status from the last Command executed. - */ - public IStatus getLastStatus() - { - return lastStatus_; - } - - /** - */ - public boolean isUndoEnabled() - { - return true; - } - - /** - * Sets the next fragment listener for this engine. This listener will be - * called for each fragment that is traversed in moveForwardToNextStop operation. - * - * @param listener the fragment listener. - */ - public void setNextFragmentListener( FragmentListener listener ) - { - nextFragmentListener_ = listener; - } - - public void setAfterExecuteFragmentListener( FragmentListener listener ) - { - afterExecuteFragmentListener_ = listener; - } - - /** - * Sets the next fragment listener for this engine. This listener will be - * called for each fragment that is traversed in peekForwardToNextStop operation. - * - * @param listener the fragment listener. - */ - public void setPeekFragmentListener( FragmentListener listener ) - { - peekFragmentListener_ = listener; - } - - /** - * Sets the peek fragment listener for this engine. This listener will be - * called for each fragment that is traversed in undoToLastStop operation. - * - * @param listener the fragment listener. - */ - public void setUndoFragmentListener( FragmentListener listener ) - { - undoFragmentListener_ = listener; - } - - /** - * Traverse the CommandFragments starting with the CommandFragment on the - * top of the command fragment stack. The operation does NOT change the - * command fragment stack and does not execute any command associated with - * a CommandFragment. - */ - public void peekForwardToNextStop() - { - CommandListEntry topEntry = (CommandListEntry)commandStack_.lastElement(); - int parentIndex = topEntry.parentIndex_; - CommandFragment childFragment = topEntry.fragment_; - boolean continueLoop = navigateChildFragments( childFragment, false ); - - while( parentIndex != -1 && continueLoop ) - { - CommandListEntry parentEntry = (CommandListEntry)commandStack_.elementAt( parentIndex ); - CommandFragment parentFragment = parentEntry.fragment_; - CommandFragment nextFragment = parentFragment.getNextSubFragment( childFragment ); - - if( nextFragment == null ) - { - // There are no more sibling fragments to navigate so we will pop up to the parent - // an continue navigation there. - parentIndex = parentEntry.parentIndex_; - childFragment = parentFragment; - } - else - { - if( navigateChildFragments( nextFragment, true ) ) - { - // We are continuing to navigate. This time we want to traverse the sibling - // of nextFragment. - childFragment = nextFragment; - } - else - { - // We are stopping our navigation. - continueLoop = false; - } - } - } - } - - - /** - * Traverse the CommandFragments starting with the CommandFragment on the - * top of the command fragment stack. This operation does change the - * command fragment stack and does execute any command associated with - * a CommandFragment. - */ - public void moveForwardToNextStop( IProgressMonitor monitor ) - { - CommandListEntry topEntry = (CommandListEntry)commandStack_.lastElement(); - int parentIndex = topEntry.parentIndex_; - CommandFragment currentFragment = topEntry.fragment_; - boolean continueExecute = visitTop( monitor ); - CommandFragment childFragment = currentFragment.getFirstSubFragment(); - - // If the current fragment has child fragments we need to traverse these children. - while( childFragment != null && continueExecute ) - { - parentIndex = commandStack_.size() - 1; - addToStack( childFragment, parentIndex ); - continueExecute = visitTop( monitor ); - currentFragment = childFragment; - childFragment = currentFragment.getFirstSubFragment(); - } - - // The previous while loop has guaranteed that currentFragment has no - // child fragments. This while loop assumes this to be the case. - while( parentIndex != -1 && continueExecute ) - { - CommandListEntry parentEntry = (CommandListEntry)commandStack_.elementAt( parentIndex ); - CommandFragment parentFragment = parentEntry.fragment_; - CommandFragment nextFragment = null; - - if( currentFragment == null ) - { - nextFragment = parentFragment.getFirstSubFragment(); - } - else - { - nextFragment = parentFragment.getNextSubFragment( currentFragment ); - } - - if( nextFragment == null ) - { - // There are no more sibling fragments to navigate so we will pop up to the parent - // and continue navigation there. - parentIndex = parentEntry.parentIndex_; - currentFragment = parentFragment; - } - else - { - // We have a new fragment that we need to add to the top of the stack. - addToStack( nextFragment, parentIndex ); - parentIndex = commandStack_.size() - 1; - continueExecute = visitTop( monitor ); - currentFragment = null; - } - } - } - - /** - * - * @return returns true if the there is not longer any elements on the stack. Note: - * that last two entries are always left on the stack. - */ - public boolean undoToLastStop() - { - CommandListEntry topEntry = (CommandListEntry)commandStack_.lastElement(); - - if( topEntry.fragmentStopped_ && !topEntry.beforeExecute_ ) - { - // Normally the command at the top of the stack has not been executed. If - // it has been execute, it means that we tried to execute and it failed. - // The first command in the command stack failed. Therefore, we should - // only undo this command. - performUndo( topEntry ); - return topEntry.parentIndex_ == 0; - } - - performUndo( topEntry ); - - while( topEntry.parentIndex_ != 0 ) - { - commandStack_.pop(); - topEntry = (CommandListEntry)commandStack_.lastElement(); - - performUndo( topEntry ); - - if( topEntry.fragmentStopped_ ) - { - break; - } - } - - return topEntry.parentIndex_ == 0; - } - - private void performUndo( CommandListEntry entry ) - { - if( entry.parentIndex_ == 0 ) return; - - AbstractDataModelOperation cmd = entry.command_; - - if( cmd != null && cmd.canUndo() && !entry.beforeExecute_ ) - { - try - { - cmd.undo( null, null ); - dataManager_.unprocess(cmd); - } - catch( Exception exc ) - { - exc.printStackTrace(); - } - - entry.beforeExecute_ = true; - } - - undoFragmentListener_.notify( entry.fragment_ ); - } - - private boolean navigateChildFragments( CommandFragment fragment, boolean visitCurrent ) - { - boolean continueNavigate = true; - CommandFragment childFrag = null; - - if( visitCurrent ) - { - continueNavigate = peekFragmentListener_.notify( fragment ); - dataManager_.process( fragment ); - } - - childFrag = fragment.getFirstSubFragment(); - - while( childFrag != null && continueNavigate ) - { - continueNavigate = navigateChildFragments( childFrag, true ); - childFrag = fragment.getNextSubFragment( childFrag ); - } - - return continueNavigate; - } - - private boolean visitTop( IProgressMonitor monitor ) - { - CommandListEntry entry = (CommandListEntry)commandStack_.lastElement(); - boolean continueNavigate = nextFragmentListener_.notify( entry.fragment_ ); - - if( continueNavigate ) - { - // Call the setters for this fragment. - dataManager_.process( entry.fragment_ ); - - // Add any rules to the mapping registry before we execute the command. - entry.fragment_.registerDataMappings( dataManager_.getMappingRegistry() ); - - lastStatus_ = runCommand( entry, monitor ); - - if( afterExecuteFragmentListener_ != null ) - { - continueNavigate = afterExecuteFragmentListener_.notify( entry.fragment_ ); - - if( !continueNavigate ) - { - // The after execution listener has indicated that execution should stop. - // Therefore, we will upgrade the severity of the last status to ERROR. - lastStatus_ = new Status( IStatus.ERROR, - lastStatus_.getPlugin(), - lastStatus_.getCode(), - lastStatus_.getMessage(), - lastStatus_.getException() ); - } - } - - if( continueNavigate && lastStatus_.getSeverity() == IStatus.ERROR ) continueNavigate = false; - } - - if( !continueNavigate ) entry.fragmentStopped_ = true; - - return continueNavigate; - } - - private void addToStack( CommandFragment fragment, int parentIndex ) - { - CommandListEntry entry = new CommandListEntry( fragment, parentIndex ); - commandStack_.push( entry ); - } - - // Subclasses can do initialization before the execution of a command here - protected IStatus initBeforeExecute( AbstractDataModelOperation operation ) - { - return Status.OK_STATUS; - } - - private IStatus runCommand( CommandListEntry entry, IProgressMonitor monitor ) - { - CommandFactory factory = entry.fragment_.getCommandFactory(); - IStatus status = Status.OK_STATUS; - - if( factory != null ) - { - AbstractDataModelOperation cmd = factory.create(); - - entry.command_ = cmd; - - if( cmd != null ) - { - try - { - dataManager_.process( cmd ); - - status = initBeforeExecute( cmd ); - - environment_.getLog().log(ILog.INFO, "command", 5001, this, "runCommand", "Executing: " + cmd.getClass().getName()); - - cmd.setEnvironment( environment_ ); - status = cmd.execute( monitor, null ); - - entry.beforeExecute_ = false; - } - catch( Throwable exc ) - { - IStatus unexpectedError = StatusUtils.errorStatus( exc ); - MultiStatus parentStatus = new MultiStatus( "id", 0, new IStatus[]{unexpectedError}, - EnvironmentCoreMessages.MSG_ERROR_UNEXPECTED_ERROR, null ); - environment_.getStatusHandler().reportError( parentStatus ); - status = unexpectedError; - } - finally - { - String message = "Ok"; - - if( status.getSeverity() == Status.ERROR ) - { - message = "Error: " + status.getMessage(); - } - - environment_.getLog().log(ILog.INFO, "command", 5001, this, "runCommand", "Execution status: " + message ); - } - } - } - - return status; - } - - private class CommandListEntry - { - public CommandListEntry( CommandFragment fragment, int parentIndex ) - { - fragment_ = fragment; - parentIndex_ = parentIndex; - fragmentStopped_ = false; - beforeExecute_ = true; - } - - public AbstractDataModelOperation command_; - public CommandFragment fragment_; - public int parentIndex_; - public boolean fragmentStopped_; - public boolean beforeExecute_; - - public void dump( StringBuffer buffer, int index ) - { - String newline = System.getProperty("line.separator"); - String line = " " + index + "- frag: " + fragment_.getId() + " parIndex: " + parentIndex_ + " stop: " + fragmentStopped_ + " beforeExecute: " + beforeExecute_ ; - buffer.append(line); - buffer.append(newline); - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactory.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactory.java deleted file mode 100644 index a99be49b3..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactory.java +++ /dev/null @@ -1,24 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -/** - * This interface provides a way to create CommandFragments. - * - */ -public interface CommandFragmentFactory -{ - /** - * - * @return returns a created CommandFragment object. - */ - public CommandFragment create(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactoryFactory.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactoryFactory.java deleted file mode 100644 index 0f1701c09..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/CommandFragmentFactoryFactory.java +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -public interface CommandFragmentFactoryFactory -{ - /** - * The framework calls this method to get the CommandFragmentFactory - * for a particular extension. - * - * @return Creates a CommandFragmentFactory. - */ - public CommandFragmentFactory create(); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ExtensionFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ExtensionFragment.java deleted file mode 100644 index 7751ba603..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/ExtensionFragment.java +++ /dev/null @@ -1,99 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import java.util.Hashtable; -import org.eclipse.wst.command.internal.env.core.registry.CommandRegistry; - - -public class ExtensionFragment extends AbstractCommandFragment -{ - private String[] ids_;; - private CommandRegistry extensionRegistry_; - private Hashtable fragments_; - - /** - * The default constructor - * - */ - public ExtensionFragment() - { - super( null, "" ); - fragments_ = new Hashtable(); - } - - /** - * Copy constructor. - * @param Fragment the fragment to copy - */ - protected ExtensionFragment( ExtensionFragment fragment ) - { - super( fragment ); - - ids_ = fragment.ids_; - extensionRegistry_ = fragment.extensionRegistry_; - fragments_ = fragment.fragments_; - } - - /** - * - * @param ids Sets the IDs for this extension fragment. - */ - public void setExtensionIds( String[] ids ) - { - ids_ = ids; - } - - /** - * - * @param registry Sets the registry for this extension fragment. - */ - public void setExtensionRegistry( CommandRegistry registry ) - { - extensionRegistry_ = registry; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.fragment.CommandFragment#getFirstSubFragment() - */ - public CommandFragment getFirstSubFragment() - { - CommandFragmentFactoryFactory factory = extensionRegistry_.getFactoryFactory( ids_ ); - - if( factory == null ) return null; - - CommandFragment fragment = (CommandFragment)fragments_.get( factory ); - - if( fragment == null ) - { - fragment = factory.create().create(); - fragments_.put( factory, fragment ); - } - - return fragment; - } - - /** - * @see org.eclipse.wst.command.internal.env.core.fragment.CommandFragment#getNextSubFragment(org.eclipse.wst.command.internal.env.core.fragment.CommandFragment) - */ - public CommandFragment getNextSubFragment(CommandFragment fragment) - { - return null; - } - - /** - * @see java.lang.Object#clone() - */ - public Object clone() - { - return new ExtensionFragment( this ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/FragmentListener.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/FragmentListener.java deleted file mode 100644 index 01cd7a163..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/FragmentListener.java +++ /dev/null @@ -1,25 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -/** - * This interface should be implement for code that needs to listen to fragments - * that are being traverse by the CommandFragmentEngine. - * - */ -public interface FragmentListener -{ - /* - * Notifies this listener that a commandFragment is being visited during - * a traversal. - */ - public boolean notify( CommandFragment commandFragment ); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopCondition.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopCondition.java deleted file mode 100644 index 8c3e4d416..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopCondition.java +++ /dev/null @@ -1,27 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -/** - * This interface can be used when a conditional object needs to be returned. -**/ -public interface LoopCondition -{ - /** - * Evaluates a loop condition. - * - * @param loop the loop fragment that is being evaluated. - * @param fragment the child fragment of the loop - * under evaluation. Note: fragment can be null. - * @return returns an object based on some evaluated condition. - **/ - public boolean evaluate( LoopFragment loop, CommandFragment fragment ); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopFragment.java deleted file mode 100644 index 60cdc9a72..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/LoopFragment.java +++ /dev/null @@ -1,135 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.command.internal.env.core.common.RangeVector; - - -/** - * This class returns a dynamically determined number of - * fragments. This loop will return the fragment parameter - * as long as the stopCondition evaluates to false. Otherwise, - * null is returned. -**/ -public class LoopFragment extends AbstractCommandFragment -{ - private LoopCondition stopCondition_; - private CommandFragment fragment_; - private RangeVector fragmentHistory_; - - /** - * Copy contructor for this fragment. - **/ - protected LoopFragment( LoopFragment fragment ) - { - this( fragment.fragment_, - fragment.stopCondition_, - fragment.getCommandFactory(), - fragment.getId() ); - } - - public LoopFragment( CommandFragment fragment, - LoopCondition stopCondition ) - { - this( fragment, stopCondition, null, "" ); - } - - /** - * @param fragment the fragment that will be returned by the loop. - * @param stopCondition when false the fragment will be returned, - * otherwise null is returned. - * @param state the state passed to the condition. - * @param command the executable command for this fragment. - **/ - public LoopFragment( CommandFragment fragment, - LoopCondition stopCondition, - CommandFactory commandFactory, - String id ) - { - super( commandFactory, id ); - - fragment_ = fragment; - stopCondition_ = stopCondition; - fragmentHistory_ = new RangeVector(); - } - - /** - * Makes a copy of the CommandFragment. - * - * @return returns a copy of this fragment. - **/ - public Object clone() - { - return new LoopFragment( this ); - } - - /** - * Returns the index of the fragment - * - * @param fragment the fragment to search. - * @return the index of this fragment. - **/ - public int indexOf( CommandFragment fragment ) - { - return fragmentHistory_.indexOf( fragment ); - } - - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment() - { - return getNextSubFragment( null ); - } - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment frag ) - { - CommandFragment nextFrag = null; - - if( stopCondition_.evaluate( this, frag ) ) - { - // The stop condition has been met. - // Do nothing. - } - else - { - int fragIndex = indexOf( frag ); - - // Note: when fragment == null the fragIndex - // should be -1. Therefore, if there - // is already a first fragment in - // fragmentHistory that will be returned. - if( fragIndex + 1 < fragmentHistory_.size() ) - { - // We have a copy of the fragment already. - nextFrag = (CommandFragment)(fragmentHistory_.elementAt( fragIndex + 1 )); - } - else - { - nextFrag = (CommandFragment)(fragment_.clone()); - fragmentHistory_.add( nextFrag ); - } - } - - return nextFrag; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SequenceFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SequenceFragment.java deleted file mode 100644 index 190871230..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SequenceFragment.java +++ /dev/null @@ -1,133 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import java.util.Arrays; -import java.util.List; -import java.util.Vector; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; - - -/** - * This class implements a sequence of CommandFragments. -**/ -public class SequenceFragment extends AbstractCommandFragment -{ - private List fragmentList_; - - protected SequenceFragment( SequenceFragment frag ) - { - super( frag.getCommandFactory(), frag.getId() ); - - fragmentList_ = new Vector(); - - for( int index = 0; index < frag.fragmentList_.size(); index++ ) - { - Object newFrag = ((CommandFragment)frag.fragmentList_.get(index)).clone(); - fragmentList_.add( newFrag ); - } - } - - public SequenceFragment( CommandFragment[] fragments, - CommandFactory commandFactory, - String id ) - { - super( commandFactory, id ); - - if( fragments != null ) - { - fragmentList_ = Arrays.asList( fragments ); - } - else - { - fragmentList_ = new Vector(); - } - } - - public SequenceFragment() - { - super( null, "" ); - - fragmentList_ = new Vector(); - } - - /** - * Appends a fragment to the sequence. - **/ - public void add( CommandFragment fragment ) - { - fragmentList_.add( fragment ); - } - - /** - * Makes a copy of the CommandFragment. - * - * @return returns a copy of this fragment. - **/ - public Object clone() - { - return new SequenceFragment( this ); - } - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment() - { - CommandFragment fragment = null; - - if( fragmentList_ == null || fragmentList_.size() == 0 ) - { - fragment = null; - } - else - { - fragment = (CommandFragment)( fragmentList_.get(0) ); - } - - return fragment; - } - - /** - * Gets the next child fragment for this fragment. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ) - { - int index = fragmentList_.indexOf( fragment ); - - if( index == -1 ) - { - throw new IllegalArgumentException( "Fragment not found in sequence."); - } - else - { - index++; - - if( index >= fragmentList_.size() ) - { - // There is nothing following this fragment so return null; - return null; - } - else - { - // Return the next fragment. - return (CommandFragment)(fragmentList_.get( index )); - } - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SimpleFragment.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SimpleFragment.java deleted file mode 100644 index 0d1f1e4eb..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/fragment/SimpleFragment.java +++ /dev/null @@ -1,81 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.fragment; - -import org.eclipse.wst.command.internal.env.core.CommandFactory; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - -/** - * This class implements an empty of WizardFragment. -**/ -public class SimpleFragment extends AbstractCommandFragment -{ - public SimpleFragment() - { - this( (CommandFactory)null, "" ); - } - - public SimpleFragment( String id ) - { - this( (CommandFactory)null, id ); - } - - public SimpleFragment( final AbstractDataModelOperation operation, String id ) - { - super( new CommandFactory() - { - public AbstractDataModelOperation create() - { - return operation; - } - }, id ); - } - - public SimpleFragment( CommandFactory commandFactory, String id ) - { - super( commandFactory, id ); - } - - /** - * Copy constructor for fragment. - **/ - protected SimpleFragment( SimpleFragment fragment ) - { - super( fragment.getCommandFactory(), fragment.getId() ); - } - - /** - * All wizard fragments need to be cloneable. - **/ - public Object clone() - { - return new SimpleFragment( this ); - } - - - /** - * Gets the first child fragment for this fragment. - * - * @return returns the first child fragment for this fragment. Returns - * null when there is no first child. - **/ - public CommandFragment getFirstSubFragment(){ return null; } - - /** - * Gets the next child fragment for this fragment. - * Since this is a simple fragment, there is no next fragment - * so we will always return null. - * - * @return returns the next child fragment for this fragment. Returns null - * when there is no next child. - **/ - public CommandFragment getNextSubFragment( CommandFragment fragment ){ return null; } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/registry/CommandRegistry.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/registry/CommandRegistry.java deleted file mode 100644 index 86f4829b5..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/registry/CommandRegistry.java +++ /dev/null @@ -1,29 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.registry; - -import org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentFactoryFactory; - -/** - * This interface provides a way to create a CommandFragmentFactoryFactory - * from an array of ids. - * - */ -public interface CommandRegistry -{ - /** - * Creates a CommandFragmentFactoryFactory from an array of ids. - * - * @param ids the ids. - * @return the CommandFragmentFactoryFactory object. - */ - public CommandFragmentFactoryFactory getFactoryFactory( String[] ids ); -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/BooleanSelection.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/BooleanSelection.java deleted file mode 100644 index b2ee8b00a..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/BooleanSelection.java +++ /dev/null @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -/** - * This class combines a string with a boolean value. This is - * useful for storing the state data for a boolean selection list. - */ -package org.eclipse.wst.command.internal.env.core.selection; - -public class BooleanSelection -{ - private String value_; - private boolean selected_; - - public BooleanSelection( String value, boolean selected ) - { - value_ = value; - selected_ = selected; - } - - /** - * - * @return Get the string value. - */ - public String getValue() - { - return value_; - } - - /** - * - * @return Get the boolean value for this string. - */ - public boolean isSelected() - { - return selected_; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/ChoicesToString.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/ChoicesToString.java deleted file mode 100644 index 3453a0203..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/ChoicesToString.java +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.selection; - -import org.eclipse.wst.command.internal.env.core.data.Transformer; - -/** - * This transformer class selects a string at a particular level - * in a SelectionListChoices class. - */ -public class ChoicesToString implements Transformer -{ - private int level_; - - public ChoicesToString( int level ) - { - level_ = level; - } - - /* (non-Javadoc) - * @see org.eclipse.wst.command.internal.env.core.data.Transformer#transform(java.lang.Object) - */ - public Object transform( Object value ) - { - SelectionListChoices choices = (SelectionListChoices)value; - - for( int index = 0; index < level_; index++ ) - { - choices = choices.getChoice(); - } - - return choices.getList().getSelection(); - } - - public SelectionList transform( SelectionListChoices choices ) - { - return (SelectionList)transform( (Object)choices ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/DynamicList.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/DynamicList.java deleted file mode 100644 index 937d38d13..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/DynamicList.java +++ /dev/null @@ -1,92 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.selection; - -import java.util.Vector; - -/** - * This is a Dynamic version of the SelectionListChoices class. - */ -public class DynamicList -{ - private Vector stringList_ = new Vector(); - private Vector dynamicListVectorList_ = new Vector(); - - /** - * Adds an entry into the dynamic list. - * - * @param values the string values that lead to the target. - * @param target the target. - */ - public void add( String[] values, Object target ) - { - DynamicList currentList = this; - - for( int index = 0; index < values.length; index++ ) - { - String value = values[index]; - int length = currentList.stringList_.size(); - int foundIndex = -1; - - // Find the string in the current list. - for( int searchIndex = 0; searchIndex < length; searchIndex++ ) - { - String string = (String)currentList.stringList_.elementAt( searchIndex ); - - if( string.equals( value ) ) - { - foundIndex = searchIndex; - break; - } - } - - if( foundIndex == -1 ) - { - // We have a new string so add it to the list. - currentList.stringList_.add( value ); - currentList.dynamicListVectorList_.add( new DynamicList() ); - foundIndex = length; - } - - currentList = (DynamicList)currentList.dynamicListVectorList_.elementAt( foundIndex ); - } - - currentList.dynamicListVectorList_.add( target ); - } - - /** - * - * @return returns a SelectionListChoices object from this DynamicList - * object. - */ - public SelectionListChoices toListChoices() - { - SelectionList list = new SelectionList( (String[])stringList_.toArray( new String[0] ), 0); - int length = dynamicListVectorList_.size(); - Vector vector = new Vector(); - - for( int index = 0; index < length; index++ ) - { - Object obj = dynamicListVectorList_.elementAt(index); - - if( obj instanceof DynamicList ) - { - vector.add( ((DynamicList)obj).toListChoices() ); - } - else - { - vector.add( obj ); - } - } - - return new SelectionListChoices( list, vector ); - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionList.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionList.java deleted file mode 100644 index e52ebdc65..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionList.java +++ /dev/null @@ -1,96 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.selection; - -/** - * This class stores a list strings along with a selectionIndex which - * stores the current string that selected. There is also a selection - * value. If this value is one of the strings in the the string list - * then selectionIndex will contain the index of this string. If it - * is not in the list then the selectionValue string will contain this - * value and selectionIndex will be set to -1. This class can be - * used to store the state data for a Combo box. - */ -public class SelectionList -{ - private int selectionIndex_; - private String[] list_; - private String selectionValue_; - - public SelectionList( String[] list, int selectionIndex ) - { - list_ = list; - selectionIndex_ = selectionIndex; - } - - /** - * Sets the selection value for this object. - * - * @param value the value. - */ - public void setSelectionValue( String value ) - { - selectionValue_ = value; - selectionIndex_ = -1; - - for( int index = 0; index < list_.length; index++ ) - { - if( value.equals( list_[index] ) ) - { - selectionIndex_ = index; - break; - } - } - } - - /* - * @return returns the string list. - */ - public String[] getList() - { - return list_; - } - - /* - * Sets the currently selected string in the list. - */ - public void setIndex( int index ) - { - selectionIndex_ = index; - selectionValue_ = null; - } - - /* - * @return returns the index of the current string. The value - * will be -1 if the selection value is not in the string list. - */ - public int getIndex() - { - return selectionIndex_; - } - - /* - * @return returns the current string selection for this object. - */ - public String getSelection() - { - if( selectionValue_ != null ) return selectionValue_; - - if( selectionIndex_ == -1 || selectionIndex_ > list_.length-1 ) - { - return ""; - } - else - { - return list_[ selectionIndex_ ]; - } - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionListChoices.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionListChoices.java deleted file mode 100644 index 6c6aba878..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/selection/SelectionListChoices.java +++ /dev/null @@ -1,121 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.selection; - -import java.util.Vector; - -/* - * This class can be used to store a hierarchy of SelectionList - * objects. - */ -public class SelectionListChoices -{ - private SelectionList selectionList_; - private Vector choices_; - private SelectionList newValueSelectionList_; - - /** - * - * @param list The selection list. - * @param choices This is a vector of SelectionListChoies and can be - * null if there are no choices. This index of list - * is used to index into choices. If index is -1 then - * the newValueSelectionList is used. - */ - public SelectionListChoices( SelectionList list, Vector choices ) - { - selectionList_ = list; - choices_ = choices; - - newValueSelectionList_ = new SelectionList( new String[0], -1 ); - } - - public SelectionListChoices( SelectionList list, Vector choices, SelectionList newList ) - { - this( list, choices ); - newValueSelectionList_ = newList; - } - - /** - * @return returns the current Selection list. - */ - public SelectionList getList() - { - return selectionList_; - } - - /** - * - * @return returns the choices for this object. - */ - public Vector getChoices() - { - return choices_; - } - - /** - * - * @param level the level in the hierarchy where we want to get the choices. - * @return returns a vector of SelectionListChoices. - */ - public Vector getChoicesAtLevel( int level ) - { - SelectionListChoices choices = this; - - for( int index = 0; index < level; index++ ) - { - choices = choices.getChoice(); - } - - return choices.getChoices(); - } - - /** - * - * @return returns the current SelectionListChoice - */ - public SelectionListChoices getChoice() - { - int selectionIndex = selectionList_.getIndex(); - SelectionListChoices result = null; - - if( selectionIndex == -1 ) - { - result = new SelectionListChoices( newValueSelectionList_, null ); - } - else if( choices_ != null && choices_.size() != 0 ) - { - result = (SelectionListChoices)choices_.elementAt( selectionIndex ); - } - - return result; - } - - /** - * - * @param index the index of the choice we want. - * @return returns the SelectionListChoice at the index specified. - */ - public SelectionListChoices getChoice(int index) - { - SelectionListChoices result = null; - if (index < 0 || index >= getList().getList().length) - { - result = new SelectionListChoices( newValueSelectionList_, null ); - } - else - { - result = (SelectionListChoices)choices_.elementAt( index ); - } - - return result; - } -} diff --git a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/uri/NativeFileCommand.java b/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/uri/NativeFileCommand.java deleted file mode 100644 index ef51355ea..000000000 --- a/bundles/org.eclipse.wst.command.env.core/src/org/eclipse/wst/command/internal/env/core/uri/NativeFileCommand.java +++ /dev/null @@ -1,117 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004 IBM Corporation and others. - * 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: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package org.eclipse.wst.command.internal.env.core.uri; - -import java.io.File; -import java.util.LinkedList; -import java.util.List; -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.wst.common.environment.uri.IURI; -import org.eclipse.wst.common.environment.uri.URIException; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; - -public abstract class NativeFileCommand extends AbstractDataModelOperation -{ - protected String name; - - protected String description; - - protected IURI[] urisToRead; - - protected IURI[] urisToWrite; - - protected NativeFileCommand () - { - this(null,null); - } - - protected NativeFileCommand ( String name, String description ) - { - this.name = name; - this.description = description; - } - - public String getName () - { - return name; - } - - public String getDescription () - { - return description; - } - - public void setURIsToRead ( IURI[] urisToRead ) - { - this.urisToRead = urisToRead; - } - - public IURI[] getURIsToRead () - { - return urisToRead; - } - - public void setURIsToWrite ( IURI[] urisToWrite ) - { - this.urisToWrite = urisToWrite; - } - - public IURI[] getURIsToWrite () - { - return urisToWrite; - } - - public IStatus execute ( IProgressMonitor monitor, IAdaptable adaptable ) - { - File[] filesToRead = getFiles(urisToRead); - File[] filesToWrite = getFiles(urisToWrite); - preProcess(filesToRead,filesToWrite); - IStatus status = execute(filesToRead,filesToWrite); - postProcess(filesToRead,filesToWrite); - return status; - } - - public abstract IStatus execute ( File[] filesToRead, File[] filesToWrite ); - - private void preProcess ( File[] filesToRead, File[] filesToWrite ) - { - // TBD. - } - - private void postProcess ( File[] filesToRead, File[] filesToWrite ) - { - // TBD. - } - - private File[] getFiles ( IURI[] uris ) - { - List list = new LinkedList(); - if (uris != null) - { - for (int i=0; i<uris.length; i++) - { - if (uris[i].isAvailableAsFile()) - { - try - { - list.add(uris[i].asFile()); - } - catch (URIException e) - { - } - } - } - } - return (File[])list.toArray(new File[0]); - } -} |