summaryrefslogtreecommitdiffstats
path: root/tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java
diff options
context:
space:
mode:
Diffstat (limited to 'tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java')
-rw-r--r--tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java186
1 files changed, 0 insertions, 186 deletions
diff --git a/tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java b/tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java
deleted file mode 100644
index 0c53492d15..0000000000
--- a/tags/java-stable-20060304/das/rdb/src/main/java/org/apache/tuscany/das/rdb/ApplyChangesCommand.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.das.rdb;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.sql.Connection;
-
-import commonj.sdo.DataObject;
-import commonj.sdo.Type;
-
-/**
- * An ApplyChangesCommand is used to flush the changes associated with a
- * modified graph of DataObjects to a database.
- *
- *
- */
-public interface ApplyChangesCommand {
-
- /**
- * Adds a user-provided update command. In the absence of a user-provided
- * command, the DAS will generate one. However this alternative may make
- * sense if the user requires a SQL statement different from what the DAS
- * generates.
- *
- * @param type
- * The DataObject type this command applys to
- * @param cmd
- * The Command used to UPDATE data objects of the specified type
- */
- public void addUpdateCommand(Type type, Command cmd);
-
- /**
- * Adds a user-provided create command. In the absence of a user-provided
- * command, the DAS will generate one. However this alternative may make
- * sense if the user requires a SQL statement different from what the DAS
- * generates.
- *
- * @param type
- * The DataObject type this command applys to
- * @param cmd
- * The Command used to INSERT data objects of the specified type
- */
- public void addCreateCommand(Type type, Command cmd);
-
- /**
- * Adds a user-provided delete command. In the absence of a user-provided
- * command, the DAS will generate one. However this alternative may make
- * sense if the user requires a SQL statement different from what the DAS
- * generates.
- *
- * @param type
- * The DataObject type this command applys to
- * @param cmd
- * The Command used to DELETE data objects of the specified type
- */
- public void addDeleteCommand(Type type, Command cmd);
-
- /**
- * The change history is scanned and modifications to the graph of data
- * objects are flushed to the database.
- *
- * @param root
- * the topmost containing data object
- */
- public void execute(DataObject root);
-
- /**
- * TODO - Need to remove this. COnfig now set via factory method
- */
- public void setMapping(InputStream mappingModel) throws IOException;
-
- /**
- * Provides the java.sql.Connection to be used for this executing this
- * command.
- *
- * @param connection
- * the java.sql.Connection
- */
- public void setConnection(Connection connection);
-
- /**
- * Provides the java.sql.Connection to be used for this executing this
- * command.
- *
- * @param connection
- * the java.sql.Connection
- * @param manageTransactions
- * <code>true</code> if the DAS should perform tx
- * commit/rollback
- */
- public void setConnection(Connection connection, boolean manageTransactions);
-
- /**
- * Add relationship metadata necessary for processing query results. This is
- * an alternative to providing the same information in a config file.
- *
- * @param parent
- * a name identifying the relationship parent key (example:
- * "CUSTOMER.ID")
- * @param child
- * a name identifying the relationship child key
- * ("ORDER.CUSTOMER_ID")
- */
- public void addRelationship(String parent, String child);
-
- /**
- * Add relationship metadata necessary for processing query results. This is
- * an alternative to providing the same information in a config file.
- *
- * @param parentKey
- * the parent key for the relationship
- * @param childKey
- * the child key in the relationship
- * @see Key
- */
- public void addRelationship(Key parentKey, Key childKey);
-
- /**
- * Add primary key metadata. This is an alternative to providing the same
- * information in a config file.
- *
- * @param pk
- * the string identifying a prmary key. (Example: "CUSTOMER.ID")
- */
- public void addPrimaryKey(String columnName);
-
- /**
- * Add primary key metadata. This is an alternative to providing the same
- * information in a config file.
- *
- * @param key
- * the primary key
- * @see Key
- */
- public void addPrimaryKey(Key key);
-
- /**
- * Adds a column to be used in a optimistic concurrency control (OCC)
- * strategy. The generated UPDATE statement will include a overqualified
- * where clause using this column
- *
- * @param columnName
- * the name of the column to be used for OCC
- */
- public void addCollisionColumn(String columnName);
-
- /**
- * Add metadata that indicate a column is a generated primary key.
- *
- * @param string
- * the name of the generated primary key column. Example
- * ("COMPANY.ID")
- */
- public void addGeneratedPrimaryKey(String columnName);
-
- /**
- * Associate a {@link Converter} with a column to be used by this command.
- * This is an alternative to providing the same information in a config
- * file.
- *
- * @param name
- * the name of the column being assigned a converter (example:
- * "CUSTOMER.LASTNAME")
- * @param converterName
- * the name of the converter instance being assigned (example:
- * org.company.project.StringConverter)
- * @see Converter
- **/
- public void addConverter(String name, String converterName);
-
-}