[teiid-commits] teiid SVN: r3961 - trunk/connectors/translator-salesforce/src/main/java/org/teiid/translator/salesforce.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Mon Apr 2 12:16:52 EDT 2012
Author: rareddy
Date: 2012-04-02 12:16:52 -0400 (Mon, 02 Apr 2012)
New Revision: 3961
Modified:
trunk/connectors/translator-salesforce/src/main/java/org/teiid/translator/salesforce/SalesForceExecutionFactory.java
Log:
TEIID-1984: Added "GetUpdated" and "GetDeleted" procedures based upon the metadata defined through Designer based SF source model to Dynamic VDB metadata.
Modified: trunk/connectors/translator-salesforce/src/main/java/org/teiid/translator/salesforce/SalesForceExecutionFactory.java
===================================================================
--- trunk/connectors/translator-salesforce/src/main/java/org/teiid/translator/salesforce/SalesForceExecutionFactory.java 2012-04-02 03:41:32 UTC (rev 3960)
+++ trunk/connectors/translator-salesforce/src/main/java/org/teiid/translator/salesforce/SalesForceExecutionFactory.java 2012-04-02 16:16:52 UTC (rev 3961)
@@ -35,7 +35,10 @@
import org.teiid.logging.LogConstants;
import org.teiid.logging.LogManager;
import org.teiid.metadata.MetadataFactory;
+import org.teiid.metadata.Procedure;
+import org.teiid.metadata.ProcedureParameter;
import org.teiid.metadata.RuntimeMetadata;
+import org.teiid.metadata.ProcedureParameter.Type;
import org.teiid.translator.ExecutionContext;
import org.teiid.translator.ExecutionFactory;
import org.teiid.translator.ProcedureExecution;
@@ -43,6 +46,7 @@
import org.teiid.translator.Translator;
import org.teiid.translator.TranslatorException;
import org.teiid.translator.TranslatorProperty;
+import org.teiid.translator.TypeFacility;
import org.teiid.translator.UpdateExecution;
import org.teiid.translator.salesforce.execution.DeleteExecutionImpl;
import org.teiid.translator.salesforce.execution.InsertExecutionImpl;
@@ -113,6 +117,34 @@
public void getMetadata(MetadataFactory metadataFactory, SalesforceConnection connection) throws TranslatorException {
MetadataProcessor processor = new MetadataProcessor(connection,metadataFactory, this);
processor.processMetadata();
+
+ Procedure p1 = metadataFactory.addProcedure("GetUpdated"); //$NON-NLS-1$
+ p1.setAnnotation("Gets the updated objects"); //$NON-NLS-1$
+ ProcedureParameter param = metadataFactory.addProcedureParameter("ObjectName", TypeFacility.RUNTIME_NAMES.STRING, Type.In, p1); //$NON-NLS-1$
+ param.setAnnotation("ObjectName"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("StartDate", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p1); //$NON-NLS-1$
+ param.setAnnotation("Start Time"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("EndDate", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p1); //$NON-NLS-1$
+ param.setAnnotation("End Time"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("LatestDateCovered", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p1); //$NON-NLS-1$
+ param.setAnnotation("Latest Date Covered"); //$NON-NLS-1$
+ metadataFactory.addProcedureResultSetColumn("ID", TypeFacility.RUNTIME_NAMES.STRING, p1); //$NON-NLS-1$
+
+
+ Procedure p2 = metadataFactory.addProcedure("GetDeleted"); //$NON-NLS-1$
+ p2.setAnnotation("Gets the deleted objects"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("ObjectName", TypeFacility.RUNTIME_NAMES.STRING, Type.In, p2); //$NON-NLS-1$
+ param.setAnnotation("ObjectName"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("StartDate", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p2); //$NON-NLS-1$
+ param.setAnnotation("Start Time"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("EndDate", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p2); //$NON-NLS-1$
+ param.setAnnotation("End Time"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("EarliestDateAvailable", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p2); //$NON-NLS-1$
+ param.setAnnotation("Earliest Date Available"); //$NON-NLS-1$
+ param = metadataFactory.addProcedureParameter("LatestDateCovered", TypeFacility.RUNTIME_NAMES.TIMESTAMP, Type.In, p2); //$NON-NLS-1$
+ param.setAnnotation("Latest Date Covered"); //$NON-NLS-1$
+ metadataFactory.addProcedureResultSetColumn("ID", TypeFacility.RUNTIME_NAMES.STRING, p2); //$NON-NLS-1$
+ metadataFactory.addProcedureResultSetColumn("DeletedDate", TypeFacility.RUNTIME_NAMES.TIMESTAMP, p2); //$NON-NLS-1$
}
@Override
More information about the teiid-commits
mailing list