teiid SVN: r2951 - in trunk/engine/src: main/java/org/teiid/query/parser and 11 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-28 15:23:19 -0500 (Mon, 28 Feb 2011)
New Revision: 2951
Modified:
trunk/engine/src/main/java/org/teiid/query/optimizer/xml/QueryUtil.java
trunk/engine/src/main/java/org/teiid/query/optimizer/xml/SourceNodePlannerVisitor.java
trunk/engine/src/main/java/org/teiid/query/parser/QueryParser.java
trunk/engine/src/main/java/org/teiid/query/resolver/ProcedureContainerResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/QueryResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/command/DeleteResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/command/ExecResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/command/SimpleQueryResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/command/UpdateProcedureResolver.java
trunk/engine/src/main/java/org/teiid/query/resolver/util/BindVariableVisitor.java
trunk/engine/src/main/java/org/teiid/query/sql/lang/StoredProcedure.java
trunk/engine/src/main/java/org/teiid/query/sql/proc/CreateUpdateProcedureCommand.java
trunk/engine/src/main/resources/org/teiid/query/i18n.properties
trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java
trunk/engine/src/test/java/org/teiid/query/resolver/TestProcedureResolving.java
trunk/engine/src/test/java/org/teiid/query/resolver/TestResolver.java
trunk/engine/src/test/java/org/teiid/query/resolver/TestXMLResolver.java
trunk/engine/src/test/java/org/teiid/query/sql/proc/TestCreateUpdateProcedureCommand.java
trunk/engine/src/test/java/org/teiid/query/sql/util/TestElementSymbolOptimizer.java
trunk/engine/src/test/java/org/teiid/query/validator/TestValidator.java
Log:
TEIID-1483 consolidating resolving code with designer
Modified: trunk/engine/src/main/java/org/teiid/query/optimizer/xml/QueryUtil.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/optimizer/xml/QueryUtil.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/optimizer/xml/QueryUtil.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -24,7 +24,6 @@
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -183,9 +182,9 @@
}
static void handleBindings(LanguageObject object, QueryNode planNode, XMLPlannerEnvironment planEnv)
- throws QueryResolverException, QueryPlannerException, QueryMetadataException, TeiidComponentException {
+ throws QueryMetadataException, TeiidComponentException {
- List parsedBindings = parseBindings(planNode, planEnv);
+ List parsedBindings = QueryResolver.parseBindings(planNode);
if (!parsedBindings.isEmpty()) {
//use ReferenceBindingReplacer Visitor
@@ -193,24 +192,6 @@
}
}
- static List parseBindings(QueryNode planNode, XMLPlannerEnvironment planEnv) throws TeiidComponentException {
- Collection bindingsCol = planNode.getBindings();
- if (bindingsCol == null) {
- return Collections.EMPTY_LIST;
- }
-
- List parsedBindings = new ArrayList(bindingsCol.size());
- for (Iterator bindings=bindingsCol.iterator(); bindings.hasNext();) {
- try {
- ElementSymbol binding = (ElementSymbol)QueryParser.getQueryParser().parseExpression((String)bindings.next());
- parsedBindings.add(binding);
- } catch (QueryParserException err) {
- throw new TeiidComponentException(err);
- }
- }
- return parsedBindings;
- }
-
static Map createSymbolMap(GroupSymbol oldGroup, final String newGroup, Collection projectedElements) {
HashMap symbolMap = new HashMap();
symbolMap.put(oldGroup, new GroupSymbol(newGroup));
Modified: trunk/engine/src/main/java/org/teiid/query/optimizer/xml/SourceNodePlannerVisitor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/optimizer/xml/SourceNodePlannerVisitor.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/optimizer/xml/SourceNodePlannerVisitor.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -43,6 +43,7 @@
import org.teiid.query.mapping.xml.ResultSetInfo;
import org.teiid.query.metadata.TempMetadataAdapter;
import org.teiid.query.metadata.TempMetadataStore;
+import org.teiid.query.resolver.QueryResolver;
import org.teiid.query.resolver.util.ResolverUtil;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Criteria;
@@ -193,12 +194,16 @@
private boolean areBindingsOnlyToNode(QueryNode modifiedNode, MappingSourceNode sourceNode)
throws TeiidComponentException {
- List bindings = QueryUtil.parseBindings(modifiedNode, planEnv);
+ List<SingleElementSymbol> bindings = QueryResolver.parseBindings(modifiedNode);
String nodeStr = (sourceNode.getActualResultSetName() + ElementSymbol.SEPARATOR).toUpperCase();
- for (Iterator i = bindings.iterator(); i.hasNext();) {
- ElementSymbol binding = (ElementSymbol)i.next();
+ for (Iterator<SingleElementSymbol> i = bindings.iterator(); i.hasNext();) {
+ SingleElementSymbol ses = i.next();
+ if (ses instanceof AliasSymbol) {
+ ses = ((AliasSymbol)ses).getSymbol();
+ }
+ ElementSymbol binding = (ElementSymbol)ses;
if (!binding.getCanonicalName().startsWith(nodeStr)) {
return false;
@@ -259,12 +264,23 @@
static void mapBindings(MappingSourceNode sourceNode,
QueryNode oldQueryNode,
- QueryNode modifiedNode) {
+ QueryNode modifiedNode) throws TeiidComponentException {
if (oldQueryNode.getBindings() != null) {
- List bindings = new ArrayList();
- for (Iterator i = oldQueryNode.getBindings().iterator(); i.hasNext();) {
- String binding = (String)i.next();
- bindings.add(sourceNode.getMappedSymbol(new ElementSymbol(binding)).getName());
+ List<String> bindings = new ArrayList<String>();
+ for (Iterator<SingleElementSymbol> i = QueryResolver.parseBindings(oldQueryNode).iterator(); i.hasNext();) {
+ SingleElementSymbol ses = i.next();
+ String name = ses.getName();
+ boolean useName = false;
+ if (ses instanceof AliasSymbol) {
+ ses = ((AliasSymbol)ses).getSymbol();
+ useName = true;
+ }
+ ElementSymbol es = (ElementSymbol)ses;
+ if (!useName) {
+ bindings.add(sourceNode.getMappedSymbol(es).getName());
+ } else {
+ bindings.add(new AliasSymbol(name, sourceNode.getMappedSymbol(es)).toString());
+ }
}
modifiedNode.setBindings(bindings);
}
Modified: trunk/engine/src/main/java/org/teiid/query/parser/QueryParser.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/parser/QueryParser.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/parser/QueryParser.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -30,6 +30,7 @@
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Criteria;
import org.teiid.query.sql.symbol.Expression;
+import org.teiid.query.sql.symbol.SingleElementSymbol;
/**
* <p>Converts a SQL-string to an object version of a query. This
@@ -215,7 +216,27 @@
}
return result;
}
+
+ public SingleElementSymbol parseSelectExpression(String sql) throws QueryParserException {
+ if(sql == null) {
+ throw new IllegalArgumentException(QueryPlugin.Util.getString("QueryParser.nullSqlExpr")); //$NON-NLS-1$
+ }
+ ParseInfo dummyInfo = new ParseInfo();
+
+ SingleElementSymbol result = null;
+ try{
+ result = getSqlParser(sql).selectExpression(dummyInfo);
+
+ } catch(ParseException pe) {
+ throw convertParserException(pe);
+
+ } catch(TokenMgrError tme) {
+ throw handleTokenMgrError(tme);
+ }
+ return result;
+ }
+
private QueryParserException handleTokenMgrError(TokenMgrError tme) {
// LogManager.logError( LogConstants.CTX_QUERY_PARSER, tme, new Object[] {"Exception parsing: ", sql} );
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/ProcedureContainerResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/ProcedureContainerResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/ProcedureContainerResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -29,6 +29,7 @@
import org.teiid.api.exception.query.QueryMetadataException;
import org.teiid.api.exception.query.QueryParserException;
import org.teiid.api.exception.query.QueryResolverException;
+import org.teiid.client.metadata.ParameterInfo;
import org.teiid.core.TeiidComponentException;
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.util.StringUtil;
@@ -36,6 +37,7 @@
import org.teiid.query.QueryPlugin;
import org.teiid.query.analysis.AnalysisRecord;
import org.teiid.query.metadata.QueryMetadataInterface;
+import org.teiid.query.metadata.StoredProcedureInfo;
import org.teiid.query.metadata.TempMetadataAdapter;
import org.teiid.query.metadata.TempMetadataID;
import org.teiid.query.metadata.TempMetadataStore;
@@ -45,11 +47,9 @@
import org.teiid.query.resolver.util.ResolverUtil;
import org.teiid.query.sql.ProcedureReservedWords;
import org.teiid.query.sql.lang.Command;
-import org.teiid.query.sql.lang.Delete;
import org.teiid.query.sql.lang.GroupContext;
-import org.teiid.query.sql.lang.Insert;
import org.teiid.query.sql.lang.ProcedureContainer;
-import org.teiid.query.sql.lang.Update;
+import org.teiid.query.sql.lang.SPParameter;
import org.teiid.query.sql.proc.CreateUpdateProcedureCommand;
import org.teiid.query.sql.proc.TriggerAction;
import org.teiid.query.sql.symbol.ElementSymbol;
@@ -101,46 +101,6 @@
throw new QueryResolverException(e, "ERR.015.008.0045", QueryPlugin.Util.getString("ERR.015.008.0045", group)); //$NON-NLS-1$ //$NON-NLS-2$
}
- if(subCommand instanceof CreateUpdateProcedureCommand){
- CreateUpdateProcedureCommand cupCommand = (CreateUpdateProcedureCommand)subCommand;
- //if the subcommand is virtual stored procedure, it must have the same
- //projected symbol as its parent.
- if(!cupCommand.isUpdateProcedure()){
- cupCommand.setProjectedSymbols(procCommand.getProjectedSymbols());
- }
-
- cupCommand.setVirtualGroup(procCommand.getGroup());
- cupCommand.setUserCommand(procCommand);
- } else if (subCommand instanceof TriggerAction) {
- TriggerAction ta = (TriggerAction)subCommand;
- ta.setView(procCommand.getGroup());
- TempMetadataAdapter tma = new TempMetadataAdapter(metadata, new TempMetadataStore());
- ta.setTemporaryMetadata(tma.getMetadataStore().getData());
- GroupContext externalGroups = ta.getExternalGroupContexts();
- //TODO: it seems easier to just inline the handling here rather than have each of the resolvers check for trigger actions
- List<ElementSymbol> viewElements = ResolverUtil.resolveElementsInGroup(ta.getView(), metadata);
- if (procCommand instanceof Update || procCommand instanceof Insert) {
- addChanging(tma.getMetadataStore(), externalGroups, viewElements);
- ProcedureContainerResolver.addScalarGroup(SQLConstants.Reserved.NEW, tma.getMetadataStore(), externalGroups, viewElements, false);
- }
- if (procCommand instanceof Update || procCommand instanceof Delete) {
- ProcedureContainerResolver.addScalarGroup(SQLConstants.Reserved.OLD, tma.getMetadataStore(), externalGroups, viewElements, false);
- }
- QueryResolver.setChildMetadata(subCommand, tma.getMetadataStore().getData(), externalGroups);
- QueryResolver.resolveCommand(subCommand, metadata);
- return ta;
- }
-
- //find the childMetadata using a clean metadata store
- TempMetadataStore childMetadata = new TempMetadataStore();
- QueryMetadataInterface resolveMetadata = new TempMetadataAdapter(metadata, childMetadata);
-
- GroupContext externalGroups = findChildCommandMetadata(procCommand, childMetadata, resolveMetadata);
-
- QueryResolver.setChildMetadata(subCommand, childMetadata.getData(), externalGroups);
-
- QueryResolver.resolveCommand(subCommand, metadata);
-
return subCommand;
}
@@ -157,52 +117,7 @@
GroupSymbol group) throws TeiidComponentException,
QueryMetadataException, QueryResolverException;
- /**
- * Find all metadata defined by this command for it's children. This metadata should be collected
- * in the childMetadata object. Typical uses of this are for stored queries that define parameter
- * variables valid in subcommands. only used for inserts, updates, and deletes
- * @param metadata Metadata access
- * @param command The command to find metadata on
- * @param childMetadata The store to collect child metadata in
- * @throws QueryMetadataException If there is a metadata problem
- * @throws QueryResolverException If the query cannot be resolved
- * @throws TeiidComponentException If there is an internal error
- */
- public GroupContext findChildCommandMetadata(ProcedureContainer container, TempMetadataStore discoveredMetadata, QueryMetadataInterface metadata)
- throws QueryMetadataException, QueryResolverException, TeiidComponentException {
- // get the group on the delete statement
- GroupSymbol group = container.getGroup();
- // proceed further if it is a virtual group
-
- return createChildMetadata(discoveredMetadata, metadata, group);
- }
-
- static GroupContext createChildMetadata(
- TempMetadataStore discoveredMetadata,
- QueryMetadataInterface metadata, GroupSymbol group)
- throws QueryMetadataException, TeiidComponentException {
- GroupContext externalGroups = new GroupContext();
-
- //Look up elements for the virtual group
- List<ElementSymbol> elements = ResolverUtil.resolveElementsInGroup(group, metadata);
-
- // Create the INPUT variables
- List<ElementSymbol> inputElments = new ArrayList<ElementSymbol>(elements.size());
- for(int i=0; i<elements.size(); i++) {
- ElementSymbol virtualElmnt = elements.get(i);
- ElementSymbol inputElement = (ElementSymbol)virtualElmnt.clone();
- inputElments.add(inputElement);
- }
-
- addScalarGroup(ProcedureReservedWords.INPUT, discoveredMetadata, externalGroups, inputElments, false);
- addScalarGroup(ProcedureReservedWords.INPUTS, discoveredMetadata, externalGroups, inputElments, false);
-
- // Switch type to be boolean for all CHANGING variables
- addChanging(discoveredMetadata, externalGroups, elements);
- return externalGroups;
- }
-
- private static void addChanging(TempMetadataStore discoveredMetadata,
+ public static void addChanging(TempMetadataStore discoveredMetadata,
GroupContext externalGroups, List<ElementSymbol> elements) {
List<ElementSymbol> changingElements = new ArrayList<ElementSymbol>(elements.size());
for(int i=0; i<elements.size(); i++) {
@@ -340,5 +255,81 @@
variables.setMetadataID(tid);
return variables;
}
+
+ /**
+ * Set the appropriate "external" metadata for the given command
+ */
+ public static void findChildCommandMetadata(Command currentCommand,
+ GroupSymbol container, int type, QueryMetadataInterface metadata)
+ throws QueryMetadataException, TeiidComponentException {
+ //find the childMetadata using a clean metadata store
+ TempMetadataStore childMetadata = new TempMetadataStore();
+ TempMetadataAdapter tma = new TempMetadataAdapter(metadata, childMetadata);
+ GroupContext externalGroups = new GroupContext();
+
+ if (currentCommand instanceof TriggerAction) {
+ TriggerAction ta = (TriggerAction)currentCommand;
+ ta.setView(container);
+ //TODO: it seems easier to just inline the handling here rather than have each of the resolvers check for trigger actions
+ List<ElementSymbol> viewElements = ResolverUtil.resolveElementsInGroup(ta.getView(), metadata);
+ if (type == Command.TYPE_UPDATE || type == Command.TYPE_INSERT) {
+ ProcedureContainerResolver.addChanging(tma.getMetadataStore(), externalGroups, viewElements);
+ ProcedureContainerResolver.addScalarGroup(SQLConstants.Reserved.NEW, tma.getMetadataStore(), externalGroups, viewElements, false);
+ }
+ if (type == Command.TYPE_UPDATE || type == Command.TYPE_DELETE) {
+ ProcedureContainerResolver.addScalarGroup(SQLConstants.Reserved.OLD, tma.getMetadataStore(), externalGroups, viewElements, false);
+ }
+ } else if (currentCommand instanceof CreateUpdateProcedureCommand) {
+ CreateUpdateProcedureCommand cupc = (CreateUpdateProcedureCommand)currentCommand;
+ cupc.setVirtualGroup(container);
+
+ if (type == Command.TYPE_STORED_PROCEDURE) {
+ StoredProcedureInfo info = metadata.getStoredProcedureInfoForProcedure(container.getCanonicalName());
+ // Create temporary metadata that defines a group based on either the stored proc
+ // name or the stored query name - this will be used later during planning
+ String procName = metadata.getFullName(info.getProcedureID());
+
+ // Look through parameters to find input elements - these become child metadata
+ List<ElementSymbol> tempElements = new ArrayList<ElementSymbol>(info.getParameters().size());
+ boolean[] updatable = new boolean[info.getParameters().size()];
+ int i = 0;
+ for (SPParameter param : info.getParameters()) {
+ if(param.getParameterType() != ParameterInfo.RESULT_SET) {
+ ElementSymbol symbol = param.getParameterSymbol();
+ tempElements.add(symbol);
+ updatable[i++] = param.getParameterType() != ParameterInfo.IN;
+ }
+ }
+
+ ProcedureContainerResolver.addScalarGroup(procName, childMetadata, externalGroups, tempElements, updatable);
+ } else if (type != Command.TYPE_DELETE) {
+ createInputChangingMetadata(childMetadata, tma, container, externalGroups);
+ }
+ }
+
+ QueryResolver.setChildMetadata(currentCommand, childMetadata.getData(), externalGroups);
+ }
+
+ static void createInputChangingMetadata(
+ TempMetadataStore discoveredMetadata,
+ QueryMetadataInterface metadata, GroupSymbol group, GroupContext externalGroups)
+ throws QueryMetadataException, TeiidComponentException {
+ //Look up elements for the virtual group
+ List<ElementSymbol> elements = ResolverUtil.resolveElementsInGroup(group, metadata);
+
+ // Create the INPUT variables
+ List<ElementSymbol> inputElments = new ArrayList<ElementSymbol>(elements.size());
+ for(int i=0; i<elements.size(); i++) {
+ ElementSymbol virtualElmnt = elements.get(i);
+ ElementSymbol inputElement = (ElementSymbol)virtualElmnt.clone();
+ inputElments.add(inputElement);
+ }
+
+ ProcedureContainerResolver.addScalarGroup(ProcedureReservedWords.INPUT, discoveredMetadata, externalGroups, inputElments, false);
+ ProcedureContainerResolver.addScalarGroup(ProcedureReservedWords.INPUTS, discoveredMetadata, externalGroups, inputElments, false);
+
+ // Switch type to be boolean for all CHANGING variables
+ ProcedureContainerResolver.addChanging(discoveredMetadata, externalGroups, elements);
+ }
}
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/QueryResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/QueryResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/QueryResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -22,9 +22,11 @@
package org.teiid.query.resolver;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -57,6 +59,7 @@
import org.teiid.query.resolver.util.BindVariableVisitor;
import org.teiid.query.resolver.util.ResolverUtil;
import org.teiid.query.resolver.util.ResolverVisitor;
+import org.teiid.query.sql.ProcedureReservedWords;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Criteria;
import org.teiid.query.sql.lang.From;
@@ -66,9 +69,12 @@
import org.teiid.query.sql.lang.Query;
import org.teiid.query.sql.lang.SubqueryContainer;
import org.teiid.query.sql.lang.UnaryFromClause;
+import org.teiid.query.sql.proc.CreateUpdateProcedureCommand;
+import org.teiid.query.sql.symbol.AliasSymbol;
import org.teiid.query.sql.symbol.ElementSymbol;
import org.teiid.query.sql.symbol.Expression;
import org.teiid.query.sql.symbol.GroupSymbol;
+import org.teiid.query.sql.symbol.SingleElementSymbol;
import org.teiid.query.sql.visitor.ValueIteratorProviderCollectorVisitor;
import org.teiid.query.validator.ValidationVisitor;
@@ -96,7 +102,21 @@
public static Command expandCommand(ProcedureContainer proc, QueryMetadataInterface metadata, AnalysisRecord analysisRecord) throws QueryResolverException, QueryMetadataException, TeiidComponentException {
ProcedureContainerResolver cr = (ProcedureContainerResolver)chooseResolver(proc, metadata);
- return cr.expandCommand(proc, metadata, analysisRecord);
+ Command command = cr.expandCommand(proc, metadata, analysisRecord);
+ if (command == null) {
+ return null;
+ }
+ if (command instanceof CreateUpdateProcedureCommand) {
+ CreateUpdateProcedureCommand cupCommand = (CreateUpdateProcedureCommand)command;
+ cupCommand.setUserCommand(proc);
+ //if the subcommand is virtual stored procedure, it must have the same
+ //projected symbol as its parent.
+ if(!cupCommand.isUpdateProcedure()){
+ cupCommand.setProjectedSymbols(proc.getProjectedSymbols());
+ }
+ }
+ resolveCommand(command, proc.getGroup(), proc.getType(), metadata);
+ return command;
}
/**
@@ -117,6 +137,93 @@
return resolveCommand(command, metadata, true);
}
+ /**
+ * Resolve a command in a given type container and type context.
+ * @param type The {@link Command} type
+ */
+ public static TempMetadataStore resolveCommand(Command currentCommand, GroupSymbol container, int type, QueryMetadataInterface metadata) throws QueryResolverException, TeiidComponentException {
+ ResolverUtil.resolveGroup(container, metadata);
+ switch (type) {
+ case Command.TYPE_QUERY:
+ QueryNode queryNode = metadata.getVirtualPlan(metadata.getGroupID(container.getCanonicalName()));
+
+ addBindingMetadata(currentCommand, metadata, queryNode);
+ break;
+ case Command.TYPE_INSERT:
+ case Command.TYPE_UPDATE:
+ case Command.TYPE_DELETE:
+ case Command.TYPE_STORED_PROCEDURE:
+ ProcedureContainerResolver.findChildCommandMetadata(currentCommand, container, type, metadata);
+ }
+ return resolveCommand(currentCommand, metadata, true);
+ }
+
+ static void addBindingMetadata(Command currentCommand,
+ QueryMetadataInterface metadata, QueryNode queryNode)
+ throws TeiidComponentException, QueryResolverException {
+ if (queryNode.getBindings() != null && queryNode.getBindings().size() > 0) {
+ // GroupSymbol (name form) for InputSet
+ GroupSymbol inputSetSymbol = new GroupSymbol(ProcedureReservedWords.INPUT);
+
+ // Create ElementSymbols for each InputParameter
+ List<ElementSymbol> elements = new ArrayList<ElementSymbol>(queryNode.getBindings().size());
+ boolean positional = true;
+ for (SingleElementSymbol ses : parseBindings(queryNode)) {
+ String name = ses.getName();
+ if (ses instanceof AliasSymbol) {
+ ses = ((AliasSymbol)ses).getSymbol();
+ positional = false;
+ }
+ ElementSymbol elementSymbol = (ElementSymbol)ses;
+ ResolverVisitor.resolveLanguageObject(elementSymbol, metadata);
+ if (!positional) {
+ elementSymbol.setName(name);
+ }
+ elements.add(elementSymbol);
+ }
+ if (positional) {
+ BindVariableVisitor.bindReferences(currentCommand, elements);
+ } else {
+ TempMetadataStore rootExternalStore = new TempMetadataStore();
+ rootExternalStore.addTempGroup(inputSetSymbol.getName(), elements);
+ currentCommand.addExternalGroupToContext(inputSetSymbol);
+
+ Map tempMetadata = currentCommand.getTemporaryMetadata();
+ if(tempMetadata == null) {
+ currentCommand.setTemporaryMetadata(rootExternalStore.getData());
+ } else {
+ tempMetadata.putAll(rootExternalStore.getData());
+ }
+ }
+ }
+ }
+
+ /**
+ * Bindings are a poor mans input parameters. They are represented in legacy metadata
+ * by ElementSymbols and placed positionally into the command or by alias symbols
+ * and matched by names.
+ * @param planNode
+ * @return
+ * @throws TeiidComponentException
+ */
+ public static List<SingleElementSymbol> parseBindings(QueryNode planNode) throws TeiidComponentException {
+ Collection<String> bindingsCol = planNode.getBindings();
+ if (bindingsCol == null) {
+ return Collections.emptyList();
+ }
+
+ List<SingleElementSymbol> parsedBindings = new ArrayList<SingleElementSymbol>(bindingsCol.size());
+ for (Iterator<String> bindings=bindingsCol.iterator(); bindings.hasNext();) {
+ try {
+ SingleElementSymbol binding = QueryParser.getQueryParser().parseSelectExpression(bindings.next());
+ parsedBindings.add(binding);
+ } catch (QueryParserException err) {
+ throw new TeiidComponentException(err);
+ }
+ }
+ return parsedBindings;
+ }
+
public static TempMetadataStore resolveCommand(Command currentCommand, QueryMetadataInterface metadata, boolean resolveNullLiterals)
throws QueryResolverException, TeiidComponentException {
@@ -295,7 +402,7 @@
result = (Command)result.clone();
} else {
result = qnode.getCommand();
-
+ List bindings = null;
if (result == null) {
try {
result = QueryParser.getQueryParser().parseCommand(qnode.getQuery());
@@ -303,33 +410,17 @@
throw new QueryResolverException(e, "ERR.015.008.0011", QueryPlugin.Util.getString("ERR.015.008.0011", qnode.getGroupName())); //$NON-NLS-1$ //$NON-NLS-2$
}
- //Handle bindings and references
- List bindings = qnode.getBindings();
- if (bindings != null){
- BindVariableVisitor.bindReferences(result, bindings, qmi);
- }
+ bindings = qnode.getBindings();
}
- QueryResolver.resolveCommand(result, qmi);
+ if (bindings != null && !bindings.isEmpty()) {
+ QueryResolver.resolveCommand(result, virtualGroup, Command.TYPE_QUERY, qmi);
+ } else {
+ QueryResolver.resolveCommand(result, qmi);
+ }
Request.validateWithVisitor(new ValidationVisitor(), qmi, result);
qmi.addToMetadataCache(virtualGroup.getMetadataID(), "transformation/" + cacheString, result.clone()); //$NON-NLS-1$
}
return result;
}
- public static void buildExternalGroups(Map<GroupSymbol, List<ElementSymbol>> externalMetadata, Command currentCommand) {
- TempMetadataStore rootExternalStore = new TempMetadataStore();
- for(Map.Entry<GroupSymbol, List<ElementSymbol>> entry : externalMetadata.entrySet()) {
- GroupSymbol group = entry.getKey();
- List<ElementSymbol> elements = entry.getValue();
- rootExternalStore.addTempGroup(group.getName(), elements);
- currentCommand.addExternalGroupToContext(group);
- }
- Map tempMetadata = currentCommand.getTemporaryMetadata();
- if(tempMetadata == null) {
- currentCommand.setTemporaryMetadata(rootExternalStore.getData());
- } else {
- tempMetadata.putAll(rootExternalStore.getData());
- }
- }
-
}
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/command/DeleteResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/command/DeleteResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/command/DeleteResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -30,14 +30,11 @@
import org.teiid.core.TeiidComponentException;
import org.teiid.query.metadata.QueryMetadataInterface;
import org.teiid.query.metadata.TempMetadataAdapter;
-import org.teiid.query.metadata.TempMetadataStore;
import org.teiid.query.resolver.ProcedureContainerResolver;
import org.teiid.query.resolver.QueryResolver;
import org.teiid.query.resolver.util.ResolverVisitor;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Delete;
-import org.teiid.query.sql.lang.GroupContext;
-import org.teiid.query.sql.lang.ProcedureContainer;
import org.teiid.query.sql.symbol.GroupSymbol;
@@ -74,12 +71,4 @@
return metadata.getDeletePlan(group.getMetadataID());
}
- @Override
- public GroupContext findChildCommandMetadata(ProcedureContainer container,
- TempMetadataStore discoveredMetadata, QueryMetadataInterface metadata) throws QueryMetadataException,
- QueryResolverException, TeiidComponentException {
- //defect 16451: don't expose input and changing variables to delete procedures
- return null;
- }
-
}
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/command/ExecResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/command/ExecResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/command/ExecResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -50,7 +50,6 @@
import org.teiid.query.sql.lang.SPParameter;
import org.teiid.query.sql.lang.StoredProcedure;
import org.teiid.query.sql.lang.SubqueryContainer;
-import org.teiid.query.sql.symbol.ElementSymbol;
import org.teiid.query.sql.symbol.Expression;
import org.teiid.query.sql.symbol.GroupSymbol;
import org.teiid.query.sql.visitor.ValueIteratorProviderCollectorVisitor;
@@ -221,36 +220,6 @@
storedProcedureCommand.setGroup(procGroup);
}
- @Override
- public GroupContext findChildCommandMetadata(ProcedureContainer container,
- TempMetadataStore discoveredMetadata, QueryMetadataInterface metadata) throws QueryMetadataException,
- QueryResolverException, TeiidComponentException {
-
- StoredProcedure storedProcedureCommand = (StoredProcedure) container;
-
- // Create temporary metadata that defines a group based on either the stored proc
- // name or the stored query name - this will be used later during planning
- String procName = metadata.getFullName(storedProcedureCommand.getProcedureID());
-
- GroupContext context = new GroupContext();
-
- // Look through parameters to find input elements - these become child metadata
- List<ElementSymbol> tempElements = new ArrayList<ElementSymbol>(storedProcedureCommand.getParameters().size());
- boolean[] updatable = new boolean[storedProcedureCommand.getParameters().size()];
- int i = 0;
- for (SPParameter param : storedProcedureCommand.getParameters()) {
- if(param.getParameterType() != ParameterInfo.RESULT_SET) {
- ElementSymbol symbol = param.getParameterSymbol();
- tempElements.add(symbol);
- updatable[i++] = param.getParameterType() != ParameterInfo.IN;
- }
- }
-
- ProcedureContainerResolver.addScalarGroup(procName, discoveredMetadata, context, tempElements, updatable);
-
- return context;
- }
-
/**
* @see org.teiid.query.resolver.ProcedureContainerResolver#resolveProceduralCommand(org.teiid.query.sql.lang.Command, org.teiid.query.metadata.TempMetadataAdapter)
*/
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/command/SimpleQueryResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/command/SimpleQueryResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/command/SimpleQueryResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -148,11 +148,7 @@
QueryResolver.setChildMetadata(queryExpression, query);
- try {
- QueryResolver.resolveCommand(queryExpression, metadata.getMetadata(), false);
- } catch (TeiidException err) {
- throw new TeiidRuntimeException(err);
- }
+ QueryResolver.resolveCommand(queryExpression, metadata.getMetadata(), false);
if (!discoveredGroups.add(obj.getGroupSymbol())) {
throw new QueryResolverException(QueryPlugin.Util.getString("SimpleQueryResolver.duplicate_with", obj.getGroupSymbol())); //$NON-NLS-1$
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/command/UpdateProcedureResolver.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/command/UpdateProcedureResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/command/UpdateProcedureResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -86,30 +86,12 @@
// virtual group on procedure
GroupSymbol virtualGroup = procCommand.getVirtualGroup();
-
- // not set by user command resolver in case of modeler
- if(virtualGroup == null) {
- for (GroupSymbol groupSymbol : procCommand.getAllExternalGroups()) {
- String groupName = groupSymbol.getName();
- if(!groupName.equalsIgnoreCase(ProcedureReservedWords.INPUT) &&
- !groupName.equalsIgnoreCase(ProcedureReservedWords.INPUTS) &&
- !groupName.equalsIgnoreCase(ProcedureReservedWords.CHANGING) ) {
- // set the groupSymbol on the procedure
- ResolverUtil.resolveGroup(groupSymbol, metadata);
- procCommand.setVirtualGroup(groupSymbol);
- virtualGroup = groupSymbol;
- break;
- }
- }
- } else if (!metadata.isVirtualGroup(virtualGroup.getMetadataID())) {
+
+ if (!metadata.isVirtualGroup(virtualGroup.getMetadataID())) {
+ //if this is a compensating procedure, just return
return;
}
- // If still haven't found virtual group, the external metadata is bad
- if(virtualGroup == null) {
- throw new QueryResolverException("ERR.015.008.0012", QueryPlugin.Util.getString("ERR.015.008.0012")); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
ResolveVirtualGroupCriteriaVisitor.resolveCriteria(procCommand, virtualGroup, metadata);
// get a symbol map between virtual elements and the elements that define
@@ -215,19 +197,16 @@
if (subCommand instanceof StoredProcedure) {
StoredProcedure sp = (StoredProcedure)subCommand;
for (SPParameter param : sp.getParameters()) {
- if (!(param.getExpression() instanceof ElementSymbol)) {
- continue;
- }
switch (param.getParameterType()) {
case ParameterInfo.OUT:
case ParameterInfo.RETURN_VALUE:
- if (param.getExpression() instanceof ElementSymbol && !metadata.elementSupports(((ElementSymbol)param.getExpression()).getMetadataID(), SupportConstants.Element.UPDATE)) {
+ if (!isAssignable(metadata, param)) {
throw new QueryResolverException(QueryPlugin.Util.getString("UpdateProcedureResolver.only_variables", param.getExpression())); //$NON-NLS-1$
}
sp.setCallableStatement(true);
break;
case ParameterInfo.INOUT:
- if (param.getExpression() instanceof ElementSymbol && !metadata.elementSupports(((ElementSymbol)param.getExpression()).getMetadataID(), SupportConstants.Element.UPDATE)) {
+ if (!isAssignable(metadata, param)) {
continue;
}
sp.setCallableStatement(true);
@@ -347,6 +326,16 @@
}
}
+ private boolean isAssignable(TempMetadataAdapter metadata, SPParameter param)
+ throws TeiidComponentException, QueryMetadataException {
+ if (!(param.getExpression() instanceof ElementSymbol)) {
+ return false;
+ }
+ ElementSymbol symbol = (ElementSymbol)param.getExpression();
+
+ return metadata.elementSupports(symbol.getMetadataID(), SupportConstants.Element.UPDATE);
+ }
+
private TempMetadataStore resolveEmbeddedCommand(TempMetadataAdapter metadata, GroupContext groupContext,
Command cmd) throws TeiidComponentException,
QueryResolverException {
Modified: trunk/engine/src/main/java/org/teiid/query/resolver/util/BindVariableVisitor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/resolver/util/BindVariableVisitor.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/resolver/util/BindVariableVisitor.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -22,27 +22,18 @@
package org.teiid.query.resolver.util;
-import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
-import org.teiid.api.exception.query.QueryMetadataException;
-import org.teiid.api.exception.query.QueryParserException;
-import org.teiid.api.exception.query.QueryResolverException;
import org.teiid.client.metadata.ParameterInfo;
-import org.teiid.core.TeiidComponentException;
import org.teiid.core.util.ArgCheck;
import org.teiid.query.QueryPlugin;
-import org.teiid.query.metadata.QueryMetadataInterface;
-import org.teiid.query.parser.QueryParser;
import org.teiid.query.sql.LanguageObject;
import org.teiid.query.sql.LanguageVisitor;
import org.teiid.query.sql.lang.SPParameter;
import org.teiid.query.sql.lang.StoredProcedure;
import org.teiid.query.sql.navigator.DeepPreOrderNavigator;
import org.teiid.query.sql.symbol.ElementSymbol;
-import org.teiid.query.sql.symbol.Expression;
-import org.teiid.query.sql.symbol.GroupSymbol;
import org.teiid.query.sql.symbol.Reference;
@@ -61,47 +52,19 @@
*/
public class BindVariableVisitor extends LanguageVisitor {
- private List bindings;
- private QueryMetadataInterface metadata;
+ private List<ElementSymbol> bindings;
- private TeiidComponentException componentException;
- private QueryResolverException resolverException;
-
/**
* Constructor
* @param bindings List of String binding expressions from query
* transformation node
- * @param metadata source of metadata
*/
- public BindVariableVisitor(List bindings, QueryMetadataInterface metadata) {
+ public BindVariableVisitor(List<ElementSymbol> bindings) {
ArgCheck.isNotNull(bindings, QueryPlugin.Util.getString("ERR.015.008.0049")); //$NON-NLS-1$
this.bindings = bindings;
- this.metadata = metadata;
}
- public TeiidComponentException getComponentException() {
- return this.componentException;
- }
-
- public QueryResolverException getResolverException() {
- return this.resolverException;
- }
-
- private void handleException(TeiidComponentException e) {
- this.componentException = e;
-
- // Abort the validation process
- setAbort(true);
- }
-
- private void handleException(QueryResolverException e) {
- this.resolverException = e;
-
- // Abort the validation process
- setAbort(true);
- }
-
/**
* Visit a Reference object and bind it based on the bindings
* @see org.teiid.query.sql.LanguageVisitor#visit(Reference)
@@ -113,25 +76,15 @@
private void bindReference(Reference obj) {
int index = obj.getIndex();
- String binding = (String) bindings.get(index);
- try {
- bindReference(obj, binding);
- } catch(QueryParserException e) {
- handleException(new QueryResolverException(QueryPlugin.Util.getString("ERR.015.008.0022"), e.getMessage())); //$NON-NLS-1$
- } catch(QueryMetadataException e) {
- handleException(new TeiidComponentException(e, e.getMessage()));
- } catch(QueryResolverException e) {
- handleException(e);
- } catch(TeiidComponentException e) {
- handleException(e);
- }
+ ElementSymbol binding = bindings.get(index);
+ obj.setExpression(binding);
}
public void visit(StoredProcedure storedProcedure){
//collect reference for physical stored procedure
- Iterator paramsIter = storedProcedure.getParameters().iterator();
+ Iterator<SPParameter> paramsIter = storedProcedure.getParameters().iterator();
while(paramsIter.hasNext()){
- SPParameter param = (SPParameter)paramsIter.next();
+ SPParameter param = paramsIter.next();
if(param.getParameterType() == ParameterInfo.IN || param.getParameterType() == ParameterInfo.INOUT){
if(param.getExpression() instanceof Reference){
bindReference((Reference)param.getExpression());
@@ -140,48 +93,17 @@
}
}
- private void bindReference(Reference reference, String binding)
- throws QueryParserException, QueryResolverException,
- QueryMetadataException, TeiidComponentException {
-
- // Parse and resolve ref
- Expression expr = QueryParser.getQueryParser().parseExpression(binding);
-
- if(!(expr instanceof ElementSymbol)) {
- throw new QueryResolverException("ERR.015.008.0025", QueryPlugin.Util.getString("ERR.015.008.0025", expr)); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- ElementSymbol element = (ElementSymbol) expr;
-
- GroupSymbol groupSymbol = new GroupSymbol(metadata.getGroupName(element.getName()));
- ResolverUtil.resolveGroup(groupSymbol, metadata);
-
- ResolverVisitor.resolveLanguageObject(element, Arrays.asList(groupSymbol), metadata);
-
- reference.setExpression(element);
- }
-
/**
* Convenient static method for using this visitor
* @param obj LanguageObject which has References to be bound
* @param bindings List of String binding expressions from query
* transformation node
- * @param metadata source of metadata
* @param boundReferencesMap Map to be filled with String group name to List of References
*/
- public static void bindReferences(LanguageObject obj, List bindings, QueryMetadataInterface metadata)
- throws QueryResolverException, TeiidComponentException {
+ public static void bindReferences(LanguageObject obj, List<ElementSymbol> bindings) {
- BindVariableVisitor visitor = new BindVariableVisitor(bindings, metadata);
+ BindVariableVisitor visitor = new BindVariableVisitor(bindings);
DeepPreOrderNavigator.doVisit(obj, visitor);
-
- if(visitor.getComponentException() != null) {
- throw visitor.getComponentException();
- }
-
- if(visitor.getResolverException() != null) {
- throw visitor.getResolverException();
- }
}
}
Modified: trunk/engine/src/main/java/org/teiid/query/sql/lang/StoredProcedure.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/sql/lang/StoredProcedure.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/sql/lang/StoredProcedure.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -188,18 +188,18 @@
return null;
}
- public List getResultSetColumns(){
+ public List<ElementSymbol> getResultSetColumns(){
SPParameter resultSetParameter = getResultSetParameter();
if(resultSetParameter != null){
- List result = new LinkedList();
- for (Iterator i = resultSetParameter.getResultSetColumns().iterator(); i.hasNext();) {
- ElementSymbol symbol = (ElementSymbol)((ElementSymbol)i.next()).clone();
+ List<ElementSymbol> result = new LinkedList<ElementSymbol>();
+ for (Iterator<ElementSymbol> i = resultSetParameter.getResultSetColumns().iterator(); i.hasNext();) {
+ ElementSymbol symbol = (ElementSymbol)i.next().clone();
symbol.setGroupSymbol(getGroup());
result.add(symbol);
}
return result;
}
- return Collections.EMPTY_LIST;
+ return Collections.emptyList();
}
public void acceptVisitor(LanguageVisitor visitor) {
Modified: trunk/engine/src/main/java/org/teiid/query/sql/proc/CreateUpdateProcedureCommand.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/sql/proc/CreateUpdateProcedureCommand.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/java/org/teiid/query/sql/proc/CreateUpdateProcedureCommand.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -33,7 +33,9 @@
import org.teiid.query.sql.LanguageVisitor;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Query;
+import org.teiid.query.sql.lang.StoredProcedure;
import org.teiid.query.sql.symbol.GroupSymbol;
+import org.teiid.query.sql.symbol.SingleElementSymbol;
import org.teiid.query.sql.visitor.SQLStringVisitor;
@@ -233,7 +235,14 @@
//user may have not entered any query yet
return Collections.EMPTY_LIST;
}
- setProjectedSymbols(this.resultsCommand.getProjectedSymbols());
+ List<? extends SingleElementSymbol> symbols = this.resultsCommand.getProjectedSymbols();
+ if (this.resultsCommand instanceof StoredProcedure) {
+ StoredProcedure sp = (StoredProcedure)this.resultsCommand;
+ if (sp.isCallableStatement()) {
+ symbols = sp.getResultSetColumns();
+ }
+ }
+ setProjectedSymbols(symbols);
return this.projectedSymbols;
}
this.projectedSymbols = Command.getUpdateCommandSymbol();
Modified: trunk/engine/src/main/resources/org/teiid/query/i18n.properties
===================================================================
--- trunk/engine/src/main/resources/org/teiid/query/i18n.properties 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/main/resources/org/teiid/query/i18n.properties 2011-02-28 20:23:19 UTC (rev 2951)
@@ -93,7 +93,6 @@
ERR.015.008.0009= {1} is not allowed on the view {0}: a procedure must be defined to handle the {1}.
ERR.015.008.0010= INSERT statement must have the same number of elements and values specified. This statement has {0} elements and {1} values.
ERR.015.008.0011= Error parsing query plan transformation for {0}
-ERR.015.008.0012= Unable to resolve update procedure as the virtual group context is ambiguous.
ERR.015.008.0013= Error parsing query plan transformation for {0}
ERR.015.008.0015= Unknown statement type: {0}
ERR.015.008.0019= Unable to resolve element: {0}
Modified: trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/optimizer/TestOptimizer.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -74,7 +74,7 @@
import org.teiid.query.processor.relational.UnionAllNode;
import org.teiid.query.processor.relational.SortUtility.Mode;
import org.teiid.query.resolver.QueryResolver;
-import org.teiid.query.resolver.util.BindVariableVisitor;
+import org.teiid.query.resolver.TestResolver;
import org.teiid.query.rewriter.QueryRewriter;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.symbol.GroupSymbol;
@@ -196,11 +196,14 @@
public static Command helpGetCommand(String sql, QueryMetadataInterface md, List bindings) throws TeiidComponentException, TeiidProcessingException {
if(DEBUG) System.out.println("\n####################################\n" + sql); //$NON-NLS-1$
- Command command = QueryParser.getQueryParser().parseCommand(sql);
+ Command command = null;
+ if (bindings != null && !bindings.isEmpty()) {
+ command = TestResolver.helpResolveWithBindings(sql, md, bindings);
+ } else {
+ command = QueryParser.getQueryParser().parseCommand(sql);
+ QueryResolver.resolveCommand(command, md);
+ }
- // resolve
- QueryResolver.resolveCommand(command, md);
-
ValidatorReport repo = Validator.validate(command, md);
Collection failures = new ArrayList();
@@ -209,11 +212,6 @@
fail("Exception during validation (" + repo); //$NON-NLS-1$
}
- // bind variables
- if(bindings != null) {
- BindVariableVisitor.bindReferences(command, bindings, md);
- }
-
// rewrite
command = QueryRewriter.rewrite(command, md, new CommandContext());
Modified: trunk/engine/src/test/java/org/teiid/query/resolver/TestProcedureResolving.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/resolver/TestProcedureResolving.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/resolver/TestProcedureResolving.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -25,8 +25,6 @@
import static org.junit.Assert.*;
import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import org.junit.Test;
@@ -41,12 +39,8 @@
import org.teiid.query.metadata.TempMetadataAdapter;
import org.teiid.query.metadata.TempMetadataStore;
import org.teiid.query.parser.QueryParser;
-import org.teiid.query.resolver.ProcedureContainerResolver;
-import org.teiid.query.resolver.QueryResolver;
-import org.teiid.query.resolver.util.ResolverUtil;
import org.teiid.query.sql.ProcedureReservedWords;
import org.teiid.query.sql.lang.Command;
-import org.teiid.query.sql.lang.GroupContext;
import org.teiid.query.sql.lang.Insert;
import org.teiid.query.sql.lang.ProcedureContainer;
import org.teiid.query.sql.proc.AssignmentStatement;
@@ -101,27 +95,6 @@
}
}
- public static Map getProcedureExternalMetadata(GroupSymbol virtualGroup, QueryMetadataInterface metadata)
- throws QueryMetadataException, TeiidComponentException {
- Map externalMetadata = new HashMap();
-
- //TODO: it doesn't seem like these should be in the
- List<ElementSymbol> elements = ResolverUtil.resolveElementsInGroup(virtualGroup, metadata);
- externalMetadata.put(virtualGroup, elements);
-
- TempMetadataStore tms = new TempMetadataStore();
-
- TempMetadataAdapter tma = new TempMetadataAdapter(metadata, tms);
-
- GroupContext gc = ProcedureContainerResolver.createChildMetadata(tms, metadata, virtualGroup);
-
- for (GroupSymbol symbol : gc.getAllGroups()) {
- externalMetadata.put(symbol, ResolverUtil.resolveElementsInGroup(symbol, tma));
- }
-
- return externalMetadata;
- }
-
@Test public void testDefect13029_CorrectlySetUpdateProcedureTempGroupIDs() throws Exception {
StringBuffer proc = new StringBuffer("CREATE VIRTUAL PROCEDURE") //$NON-NLS-1$
.append("\nBEGIN") //$NON-NLS-1$
@@ -843,9 +816,7 @@
Command procCommand = QueryParser.getQueryParser().parseCommand(procedure);
GroupSymbol virtualGroup = new GroupSymbol("vm1.g1"); //$NON-NLS-1$
virtualGroup.setMetadataID(metadata.getGroupID("vm1.g1")); //$NON-NLS-1$
- Map externalMetadata = getProcedureExternalMetadata(virtualGroup, metadata);
- QueryResolver.buildExternalGroups(externalMetadata, procCommand);
- QueryResolver.resolveCommand(procCommand, metadata);
+ QueryResolver.resolveCommand(procCommand, virtualGroup, Command.TYPE_UPDATE, metadata);
}
// special variable CHANGING compared against integer no implicit conversion available
@@ -881,9 +852,7 @@
GroupSymbol virtualGroup = new GroupSymbol("vm1.g1"); //$NON-NLS-1$
virtualGroup.setMetadataID(metadata.getGroupID("vm1.g1")); //$NON-NLS-1$
- Map externalMetadata = getProcedureExternalMetadata(virtualGroup, metadata);
- QueryResolver.buildExternalGroups(externalMetadata, procCommand);
- QueryResolver.resolveCommand(procCommand, metadata);
+ QueryResolver.resolveCommand(procCommand, virtualGroup, Command.TYPE_INSERT, metadata);
}
// special variable CHANGING compared against integer no implicit conversion available
@@ -900,9 +869,7 @@
GroupSymbol virtualGroup = new GroupSymbol("vm1.g1"); //$NON-NLS-1$
virtualGroup.setMetadataID(metadata.getGroupID("vm1.g1")); //$NON-NLS-1$
- Map externalMetadata = getProcedureExternalMetadata(virtualGroup, metadata);
- QueryResolver.buildExternalGroups(externalMetadata, procCommand);
- QueryResolver.resolveCommand(procCommand, metadata);
+ QueryResolver.resolveCommand(procCommand, virtualGroup, Command.TYPE_UPDATE, metadata);
}
// TranslateCriteria on criteria of the if statement
@@ -1046,18 +1013,6 @@
FakeMetadataObject.Props.UPDATE_PROCEDURE);
}
- // no user command provided - should throw resolver exception
- @Test public void testCreateUpdateProcedure56() throws Exception {
- String procedure = "CREATE PROCEDURE "; //$NON-NLS-1$
- procedure = procedure + "BEGIN\n"; //$NON-NLS-1$
- procedure = procedure + "DECLARE string var1;\n"; //$NON-NLS-1$
- procedure = procedure + "var1 = 1+ROWS_UPDATED;"; //$NON-NLS-1$
- procedure = procedure + "ROWS_UPDATED =0;\n"; //$NON-NLS-1$
- procedure = procedure + "END\n"; //$NON-NLS-1$
-
- TestResolver.helpResolveException(procedure, FakeMetadataFactory.example1Cached(), "Error Code:ERR.015.008.0012 Message:Unable to resolve update procedure as the virtual group context is ambiguous."); //$NON-NLS-1$
- }
-
@Test public void testDefect14912_CreateUpdateProcedure57_FunctionWithElementParamInAssignmentStatement() {
// Tests that the function params are resolved before the function for assignment statements
String procedure = "CREATE PROCEDURE "; //$NON-NLS-1$
Modified: trunk/engine/src/test/java/org/teiid/query/resolver/TestResolver.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/resolver/TestResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/resolver/TestResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -57,7 +57,6 @@
import org.teiid.query.metadata.TempMetadataStore;
import org.teiid.query.optimizer.FakeFunctionMetadataSource;
import org.teiid.query.parser.QueryParser;
-import org.teiid.query.resolver.util.BindVariableVisitor;
import org.teiid.query.sql.LanguageObject;
import org.teiid.query.sql.ProcedureReservedWords;
import org.teiid.query.sql.lang.BatchedUpdateCommand;
@@ -228,26 +227,16 @@
return criteria;
}
- private Command helpResolve(String sql, List bindings) {
+ public static Command helpResolveWithBindings(String sql, QueryMetadataInterface metadata, List bindings) throws QueryResolverException, TeiidComponentException {
// parse
Command command = helpParse(sql);
- // apply bindings
- if(bindings != null) {
- try {
- BindVariableVisitor.bindReferences(command, bindings, metadata);
- } catch(TeiidException e) {
- fail("Exception during binding (" + e.getClass().getName() + "): " + e.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
-
+ QueryNode qn = new QueryNode("x", sql);
+ qn.setBindings(bindings);
// resolve
- try {
- QueryResolver.resolveCommand(command, metadata);
- } catch(TeiidException e) {
- fail("Exception during resolution (" + e.getClass().getName() + "): " + e.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$
- }
+ QueryResolver.addBindingMetadata(command, metadata, qn);
+ QueryResolver.resolveCommand(command, metadata);
CheckSymbolsAreResolvedVisitor vis = new CheckSymbolsAreResolvedVisitor();
DeepPreOrderNavigator.doVisit(command, vis);
@@ -832,12 +821,12 @@
helpResolveException("SELECT dayofmonth('2002-01-01') FROM pm1.g1", "Error Code:ERR.015.008.0040 Message:The function 'dayofmonth('2002-01-01')' is a valid function form, but the arguments do not match a known type signature and cannot be converted using implicit type conversions."); //$NON-NLS-1$ //$NON-NLS-2$
}
- @Test public void testResolveParameters() {
+ @Test public void testResolveParameters() throws Exception {
List bindings = new ArrayList();
bindings.add("pm1.g2.e1"); //$NON-NLS-1$
bindings.add("pm1.g2.e2"); //$NON-NLS-1$
- Query resolvedQuery = (Query) helpResolve("SELECT pm1.g1.e1, ? FROM pm1.g1 WHERE pm1.g1.e1 = ?", bindings); //$NON-NLS-1$
+ Query resolvedQuery = (Query) helpResolveWithBindings("SELECT pm1.g1.e1, ? FROM pm1.g1 WHERE pm1.g1.e1 = ?", metadata, bindings); //$NON-NLS-1$
helpCheckFrom(resolvedQuery, new String[] { "pm1.g1" }); //$NON-NLS-1$
helpCheckSelect(resolvedQuery, new String[] { "pm1.g1.e1", "expr" }); //$NON-NLS-1$ //$NON-NLS-2$
@@ -847,18 +836,18 @@
}
- @Test public void testResolveParametersInsert() {
+ @Test public void testResolveParametersInsert() throws Exception {
List bindings = new ArrayList();
bindings.add("pm1.g2.e1"); //$NON-NLS-1$
- helpResolve("INSERT INTO pm1.g1 (e1) VALUES (?)", bindings); //$NON-NLS-1$
+ helpResolveWithBindings("INSERT INTO pm1.g1 (e1) VALUES (?)", metadata, bindings); //$NON-NLS-1$
}
- @Test public void testResolveParametersExec() {
+ @Test public void testResolveParametersExec() throws Exception {
List bindings = new ArrayList();
bindings.add("pm1.g2.e1"); //$NON-NLS-1$
- Query resolvedQuery = (Query)helpResolve("SELECT * FROM (exec pm1.sq2(?)) as a", bindings); //$NON-NLS-1$
+ Query resolvedQuery = (Query)helpResolveWithBindings("SELECT * FROM (exec pm1.sq2(?)) as a", metadata, bindings); //$NON-NLS-1$
//verify the type of the reference is resolved
List refs = ReferenceCollectorVisitor.getReferences(resolvedQuery);
Reference ref = (Reference)refs.get(0);
@@ -967,65 +956,6 @@
assertEquals("Did not get expected type", DataTypeManager.DefaultDataClasses.INTEGER, elem2.getType()); //$NON-NLS-1$
}
- @Test public void testStoredQueryTransformationWithVariable() throws Exception {
- Command command = QueryParser.getQueryParser().parseCommand("SELECT * FROM pm1.g1 WHERE pm1.sq5.in1 = 5"); //$NON-NLS-1$
-
- // Construct command metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.in1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.STRING);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- // Verify results
- helpCheckFrom((Query)command, new String[] { "pm1.g1" }); //$NON-NLS-1$
- Collection vars = getVariables(command);
- assertEquals("Did not find variable in resolved query", 1, vars.size()); //$NON-NLS-1$
- }
-
- @Test public void testStoredQueryTransformationWithVariable2() throws Exception {
- Command command = QueryParser.getQueryParser().parseCommand("SELECT * FROM pm1.g1 WHERE in1 = 5"); //$NON-NLS-1$
-
- // Construct command metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.in1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.STRING);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- // Verify results
- helpCheckFrom((Query)command, new String[] { "pm1.g1" }); //$NON-NLS-1$
- Collection vars = getVariables(command);
- assertEquals("Did not find variable in resolved query", 1, vars.size()); //$NON-NLS-1$
- }
-
- @Test public void testStoredQueryTransformationWithVariable3() throws Exception {
- Command command = QueryParser.getQueryParser().parseCommand("SELECT * FROM pm1.g1 WHERE in1 = 5 UNION SELECT * FROM pm1.g1"); //$NON-NLS-1$
-
- // Construct command metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.in1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.STRING);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- // Verify results
- Collection vars = getVariables(command);
- assertEquals("Did not find variable in resolved query", 1, vars.size()); //$NON-NLS-1$
- }
-
@Test public void testStoredQueryTransformationWithVariable4() throws Exception {
Command command = QueryParser.getQueryParser().parseCommand("EXEC pm1.sq2(pm1.sq2.in)"); //$NON-NLS-1$
@@ -2231,27 +2161,6 @@
assertFalse(groups.contains(inputSet));
}
- @Test public void testDefect15872() throws Exception {
- String sql = "CREATE VIRTUAL PROCEDURE " //$NON-NLS-1$
- + "BEGIN " //$NON-NLS-1$
- +"SELECT * FROM pm1.g1 where model.table.param=e1; " //$NON-NLS-1$
- +"end "; //$NON-NLS-1$
- Command command = helpParse(sql);
- Map externalMetadata = new HashMap();
- GroupSymbol procGroup = new GroupSymbol("model.table"); //$NON-NLS-1$
- List procPrarms = new ArrayList();
- ElementSymbol param = new ElementSymbol("model.table.param"); //$NON-NLS-1$
- param.setType(String.class);
- procPrarms.add(param);
- externalMetadata.put(procGroup, procPrarms);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
- CreateUpdateProcedureCommand proc = (CreateUpdateProcedureCommand)command;
- Query query = (Query)proc.getSubCommands().get(0);
- ElementSymbol inElement = (ElementSymbol)((CompareCriteria)query.getCriteria()).getLeftExpression();
- assertNotNull("Input parameter does not have group", inElement.getGroupSymbol()); //$NON-NLS-1$
- }
-
@Test public void testInputToInputsConversion() throws Exception {
String procedure = "CREATE PROCEDURE "; //$NON-NLS-1$
procedure = procedure + "BEGIN\n"; //$NON-NLS-1$
@@ -2498,26 +2407,6 @@
helpResolve(sql);
}
-
- @Test public void testDefect23342() throws Exception {
- String sql = "CREATE VIRTUAL PROCEDURE " //$NON-NLS-1$
- + "BEGIN " //$NON-NLS-1$
- + "IF (param = '1')" //$NON-NLS-1$
- + " BEGIN " //$NON-NLS-1$
- +"SELECT * FROM pm1.g1 where model.table.param=e1; " //$NON-NLS-1$
- +" END " //$NON-NLS-1$
- +"end "; //$NON-NLS-1$
- Command command = helpParse(sql);
- Map externalMetadata = new HashMap();
- GroupSymbol proc = new GroupSymbol("model.table"); //$NON-NLS-1$
- List procPrarms = new ArrayList();
- ElementSymbol param = new ElementSymbol("model.table.param"); //$NON-NLS-1$
- param.setType(DataTypeManager.DefaultDataClasses.STRING);
- procPrarms.add(param);
- externalMetadata.put(proc, procPrarms);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
- }
@Test public void testBatchedUpdateResolver() throws Exception {
String update1 = "update pm1.g1 set e1 =1"; //$NON-NLS-1$
Modified: trunk/engine/src/test/java/org/teiid/query/resolver/TestXMLResolver.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/resolver/TestXMLResolver.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/resolver/TestXMLResolver.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -22,15 +22,10 @@
package org.teiid.query.resolver;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
+import junit.framework.TestCase;
-import org.teiid.core.types.DataTypeManager;
import org.teiid.query.analysis.AnalysisRecord;
import org.teiid.query.parser.QueryParser;
-import org.teiid.query.resolver.QueryResolver;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.CompareCriteria;
import org.teiid.query.sql.lang.Criteria;
@@ -43,9 +38,7 @@
import org.teiid.query.sql.util.ElementSymbolOptimizer;
import org.teiid.query.unittest.FakeMetadataFactory;
-import junit.framework.TestCase;
-
public class TestXMLResolver extends TestCase {
public Command helpResolve(String sql) {
@@ -387,26 +380,6 @@
helpResolveException("SELECT * FROM vm1.doc1, vm1.doc2"); //$NON-NLS-1$
}
- public void testXMLQueryWithParam1() throws Exception {
- Command command = QueryParser.getQueryParser().parseCommand("select * from xmltest.doc4 where xmltest.doc4.root.node3 = pm1.sq5.in1"); //$NON-NLS-1$
-
- // resolve
- // Construct command metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.in1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.STRING);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, FakeMetadataFactory.example1Cached());
-
- // Verify results
- Collection vars = TestResolver.getVariables(command);
- assertEquals("Did not find variable in resolved query", 1, vars.size()); //$NON-NLS-1$
- }
-
public void testXMLWithOrderBy1() {
helpResolveException("select * from xmltest.doc4 order by node1"); //$NON-NLS-1$
}
Modified: trunk/engine/src/test/java/org/teiid/query/sql/proc/TestCreateUpdateProcedureCommand.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/sql/proc/TestCreateUpdateProcedureCommand.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/sql/proc/TestCreateUpdateProcedureCommand.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -27,20 +27,23 @@
import java.util.HashMap;
import java.util.HashSet;
+import junit.framework.TestCase;
+
import org.teiid.core.util.UnitTestUtil;
+import org.teiid.query.resolver.TestResolver;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.Option;
import org.teiid.query.sql.lang.Query;
-import org.teiid.query.sql.proc.CreateUpdateProcedureCommand;
+import org.teiid.query.sql.lang.StoredProcedure;
import org.teiid.query.sql.symbol.GroupSymbol;
+import org.teiid.query.unittest.RealMetadataFactory;
-import junit.framework.TestCase;
-
/**
*
* @author gchadalavadaDec 9, 2002
*/
+@SuppressWarnings("nls")
public class TestCreateUpdateProcedureCommand extends TestCase {
// ################################## FRAMEWORK ################################
@@ -194,4 +197,13 @@
UnitTestUtil.helpTestEquivalence(0, s1, s2);
}
+ public void testProjectedSymbols() {
+ CreateUpdateProcedureCommand cupc = new CreateUpdateProcedureCommand();
+ cupc.setUpdateProcedure(false);
+ StoredProcedure sp = (StoredProcedure)TestResolver.helpResolve("call TEIIDSP9(p1=>1, p2=>?)", RealMetadataFactory.exampleBQTCached(), null);
+ sp.setCallableStatement(true);
+ cupc.setResultsCommand(sp);
+ assertEquals(1, cupc.getProjectedSymbols().size());
+ }
+
}
Modified: trunk/engine/src/test/java/org/teiid/query/sql/util/TestElementSymbolOptimizer.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/sql/util/TestElementSymbolOptimizer.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/sql/util/TestElementSymbolOptimizer.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -22,25 +22,20 @@
package org.teiid.query.sql.util;
-import java.util.*;
+import junit.framework.TestCase;
+
import org.teiid.api.exception.query.QueryMetadataException;
import org.teiid.api.exception.query.QueryParserException;
import org.teiid.api.exception.query.QueryResolverException;
import org.teiid.core.TeiidComponentException;
-import org.teiid.core.types.DataTypeManager;
import org.teiid.query.metadata.QueryMetadataInterface;
import org.teiid.query.parser.QueryParser;
import org.teiid.query.resolver.QueryResolver;
import org.teiid.query.sql.lang.Command;
-import org.teiid.query.sql.symbol.ElementSymbol;
-import org.teiid.query.sql.symbol.GroupSymbol;
-import org.teiid.query.sql.util.ElementSymbolOptimizer;
import org.teiid.query.unittest.FakeMetadataFactory;
-import junit.framework.*;
-
/**
*/
public class TestElementSymbolOptimizer extends TestCase {
@@ -53,22 +48,15 @@
super(name);
}
- public Command helpResolve(String sql, QueryMetadataInterface metadata, Map externalMetadata) throws QueryParserException, QueryResolverException, TeiidComponentException {
+ public Command helpResolve(String sql, QueryMetadataInterface metadata) throws QueryParserException, QueryResolverException, TeiidComponentException {
Command command = QueryParser.getQueryParser().parseCommand(sql);
- QueryResolver.buildExternalGroups(externalMetadata, command);
QueryResolver.resolveCommand(command, metadata);
return command;
}
-
public void helpTestOptimize(String sql, QueryMetadataInterface metadata, String expected) throws QueryMetadataException, TeiidComponentException, QueryParserException, QueryResolverException {
- this.helpTestOptimize(sql, metadata, expected, Collections.EMPTY_MAP);
- }
-
-
- public void helpTestOptimize(String sql, QueryMetadataInterface metadata, String expected, Map externalMetadata) throws QueryMetadataException, TeiidComponentException, QueryParserException, QueryResolverException {
- Command command = helpResolve(sql, metadata, externalMetadata);
+ Command command = helpResolve(sql, metadata);
ElementSymbolOptimizer.optimizeElements(command, metadata);
String actual = command.toString();
@@ -127,7 +115,7 @@
}
public void helpTestFullyQualify(String sql, QueryMetadataInterface metadata, String expected) throws QueryParserException, QueryResolverException, TeiidComponentException {
- Command command = helpResolve(sql, metadata, Collections.EMPTY_MAP);
+ Command command = helpResolve(sql, metadata);
ElementSymbolOptimizer.fullyQualifyElements(command);
String actual = command.toString();
@@ -163,30 +151,6 @@
FakeMetadataFactory.example1Cached(),
"SELECT e1 FROM (EXEC pm1.sq1()) AS x WHERE e2 = 3"); //$NON-NLS-1$
}
-
- public void testStoredQuerySubquery3() throws Exception {
-
- // Set up external metadata - stored query pm1.sq3 with
- // params in and in2
- Map externalMetadata = new HashMap();
- GroupSymbol gs = new GroupSymbol("SYSTEM.DESCRIBE"); //$NON-NLS-1$
- List<ElementSymbol> elements = new ArrayList<ElementSymbol>(2);
- elements.add(new ElementSymbol("SYSTEM.DESCRIBE.entity")); //$NON-NLS-1$
- elements.get(0).setType(DataTypeManager.DefaultDataClasses.STRING);
- externalMetadata.put(gs, elements);
-
-
- helpTestOptimize("select nvl(entities.entityType, '') as Description " + //$NON-NLS-1$
- "from (SELECT 'Model' AS entityType, pm1.g1.e1 AS entityName FROM pm1.g1 " + //$NON-NLS-1$
- "UNION ALL SELECT 'Group', pm1.g2.e1 FROM pm1.g2) as entities " + //$NON-NLS-1$
- "WHERE ucase(entities.entityName) = ucase(SYSTEM.DESCRIBE.entity)", //$NON-NLS-1$
- FakeMetadataFactory.example1Cached(),
- "SELECT nvl(entityType, '') AS Description " + //$NON-NLS-1$
- "FROM (SELECT 'Model' AS entityType, e1 AS entityName FROM pm1.g1 " + //$NON-NLS-1$
- "UNION ALL SELECT 'Group', e1 FROM pm1.g2) AS entities " + //$NON-NLS-1$
- "WHERE ucase(entityName) = ucase(entity)", //$NON-NLS-1$
- externalMetadata);
- }
public void testOptimizeOrderBy() throws Exception {
helpTestOptimize("SELECT pm1.g1.e1 FROM pm1.g1 order by pm1.g1.e1", //$NON-NLS-1$
Modified: trunk/engine/src/test/java/org/teiid/query/validator/TestValidator.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/validator/TestValidator.java 2011-02-28 15:56:45 UTC (rev 2950)
+++ trunk/engine/src/test/java/org/teiid/query/validator/TestValidator.java 2011-02-28 20:23:19 UTC (rev 2951)
@@ -27,12 +27,9 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
-import java.util.Map;
import java.util.Set;
import org.junit.Ignore;
@@ -51,14 +48,11 @@
import org.teiid.query.mapping.xml.MappingDocument;
import org.teiid.query.mapping.xml.MappingElement;
import org.teiid.query.metadata.QueryMetadataInterface;
-import org.teiid.query.metadata.StoredProcedureInfo;
import org.teiid.query.parser.QueryParser;
import org.teiid.query.resolver.QueryResolver;
import org.teiid.query.sql.LanguageObject;
import org.teiid.query.sql.lang.Command;
import org.teiid.query.sql.lang.ProcedureContainer;
-import org.teiid.query.sql.lang.SPParameter;
-import org.teiid.query.sql.symbol.ElementSymbol;
import org.teiid.query.sql.symbol.GroupSymbol;
import org.teiid.query.sql.visitor.SQLStringVisitor;
import org.teiid.query.unittest.FakeMetadataFacade;
@@ -70,39 +64,6 @@
@SuppressWarnings("nls")
public class TestValidator {
- public static Map getStoredProcedureExternalMetadata(GroupSymbol virtualProc, QueryMetadataInterface metadata)
- throws QueryMetadataException, TeiidComponentException {
-
- Map externalMetadata = new HashMap();
-
- StoredProcedureInfo info = metadata.getStoredProcedureInfoForProcedure(virtualProc.getName());
- if(info!=null) {
- virtualProc.setMetadataID(info.getProcedureID());
-
- // List of ElementSymbols - Map Values
- List paramList = info.getParameters();
- Iterator iter = paramList.iterator();
- // Create Symbol List from parameter list
- List symbolList = new ArrayList();
- while(iter.hasNext()) {
- SPParameter param = (SPParameter) iter.next();
- if(param.getParameterType() == ParameterInfo.IN ||
- param.getParameterType() == ParameterInfo.INOUT) {
- // Create Element Symbol
- ElementSymbol eSymbol = new ElementSymbol(param.getName());
- eSymbol.setMetadataID(param);
- eSymbol.setType(param.getClassType());
- symbolList.add(eSymbol);
- }
- }
- // Create external Metadata Map
- externalMetadata = new HashMap();
- externalMetadata.put(virtualProc, symbolList);
- }
-
- return externalMetadata;
- }
-
public static FakeMetadataFacade exampleMetadata() {
// Create metadata objects
FakeMetadataObject modelObj = FakeMetadataFactory.createPhysicalModel("test"); //$NON-NLS-1$
@@ -320,23 +281,31 @@
// ################################## TEST HELPERS ################################
static Command helpResolve(String sql, QueryMetadataInterface metadata) {
- return helpResolve(sql, metadata, Collections.EMPTY_MAP);
- }
-
- public static Command helpResolve(String sql, QueryMetadataInterface metadata, Map externalMetadata) {
- Command command = null;
+ Command command = null;
try {
command = QueryParser.getQueryParser().parseCommand(sql);
- QueryResolver.buildExternalGroups(externalMetadata, command);
QueryResolver.resolveCommand(command, metadata);
} catch(Exception e) {
throw new TeiidRuntimeException(e);
}
return command;
- }
+ }
+
+ static Command helpResolve(String sql, GroupSymbol container, int type, QueryMetadataInterface metadata) {
+ Command command = null;
+
+ try {
+ command = QueryParser.getQueryParser().parseCommand(sql);
+ QueryResolver.resolveCommand(command, container, type, metadata);
+ } catch(Exception e) {
+ throw new TeiidRuntimeException(e);
+ }
+ return command;
+ }
+
static ValidatorReport helpValidate(String sql, String[] expectedStringArray, QueryMetadataInterface metadata) {
Command command = helpResolve(sql, metadata);
@@ -600,44 +569,6 @@
helpValidate("INSERT INTO test.group (e0) VALUES (null)", new String[] {"e0"}, exampleMetadata()); //$NON-NLS-1$ //$NON-NLS-2$
}
- @Test public void testInsert2() throws Exception {
- QueryMetadataInterface metadata = exampleMetadata();
-
- Command command = QueryParser.getQueryParser().parseCommand("INSERT INTO test.group (e0) VALUES (p1)"); //$NON-NLS-1$
-
- // Create external metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.p1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.INTEGER);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- helpRunValidator(command, new String[] {}, metadata);
- }
-
- @Test public void testInsert3() throws Exception {
- QueryMetadataInterface metadata = exampleMetadata();
-
- Command command = QueryParser.getQueryParser().parseCommand("INSERT INTO test.group (e0) VALUES (p1+2)"); //$NON-NLS-1$
-
- // Create external metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.p1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.INTEGER);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- helpRunValidator(command, new String[] {}, metadata);
- }
-
// non-null, no-default elements not left
@Test public void testInsert4() throws Exception {
QueryMetadataInterface metadata = exampleMetadata1();
@@ -690,43 +621,6 @@
helpValidate("UPDATE test.group SET e0=1, e0=2", new String[] {"e0"}, exampleMetadata()); //$NON-NLS-1$ //$NON-NLS-2$
}
- @Test public void testUpdate4() throws Exception {
- QueryMetadataInterface metadata = exampleMetadata();
-
- Command command = QueryParser.getQueryParser().parseCommand("UPDATE test.group SET e0=p1"); //$NON-NLS-1$
-
- // Create external metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.p1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.INTEGER);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
-
- helpRunValidator(command, new String[] {}, metadata);
- }
-
- @Test public void testUpdate5() throws Exception {
- QueryMetadataInterface metadata = exampleMetadata();
-
- Command command = QueryParser.getQueryParser().parseCommand("UPDATE test.group SET e0=p1+2"); //$NON-NLS-1$
-
- // Create external metadata
- GroupSymbol sqGroup = new GroupSymbol("pm1.sq5"); //$NON-NLS-1$
- ArrayList sqParams = new ArrayList();
- ElementSymbol in = new ElementSymbol("pm1.sq5.p1"); //$NON-NLS-1$
- in.setType(DataTypeManager.DefaultDataClasses.INTEGER);
- sqParams.add(in);
- Map externalMetadata = new HashMap();
- externalMetadata.put(sqGroup, sqParams);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
- helpRunValidator(command, new String[] {}, metadata);
- }
-
@Test public void testValidateUpdateElements1() throws Exception {
QueryMetadataInterface metadata = exampleMetadata();
@@ -1605,9 +1499,7 @@
Command command = new QueryParser().parseCommand(procSql);
GroupSymbol group = new GroupSymbol(procName);
- Map externalMetadata = getStoredProcedureExternalMetadata(group, metadata);
- QueryResolver.buildExternalGroups(externalMetadata, command);
- QueryResolver.resolveCommand(command, metadata);
+ QueryResolver.resolveCommand(command, group, Command.TYPE_STORED_PROCEDURE, metadata);
// Validate
return Validator.validate(command, metadata);
@@ -1718,10 +1610,9 @@
@Test public void testCase4237() {
FakeMetadataFacade metadata = helpCreateCase4237VirtualProcedureMetadata();
- Map externalMetadata = helpCreateCase4237ExternalMetadata(metadata);
String sql = "CREATE VIRTUAL PROCEDURE BEGIN EXEC pm1.sp(vm1.sp.in1); END"; //$NON-NLS-1$
- Command command = helpResolve(sql, metadata, externalMetadata);
+ Command command = helpResolve(sql, new GroupSymbol("vm1.sp"), Command.TYPE_STORED_PROCEDURE, metadata);
helpRunValidator(command, new String[0], metadata);
}
@@ -1732,41 +1623,13 @@
@Test public void testCase4237InlineView() {
FakeMetadataFacade metadata = helpCreateCase4237VirtualProcedureMetadata();
- Map externalMetadata = helpCreateCase4237ExternalMetadata(metadata);
String sql = "CREATE VIRTUAL PROCEDURE BEGIN SELECT * FROM (EXEC pm1.sp(vm1.sp.in1)) AS FOO; END"; //$NON-NLS-1$
- Command command = helpResolve(sql, metadata, externalMetadata);
+ Command command = helpResolve(sql, new GroupSymbol("vm1.sp"), Command.TYPE_STORED_PROCEDURE, metadata);
helpRunValidator(command, new String[0], metadata);
}
/**
- * Set up external metadata describing the virtual procedure and parameters
- * @param metadata FakeMetadataFacade
- * @return external metadata Map
- */
- private Map helpCreateCase4237ExternalMetadata(FakeMetadataFacade metadata) {
- GroupSymbol sp = new GroupSymbol("vm1.sp");//$NON-NLS-1$
- FakeMetadataObject spObj = metadata.getStore().findObject("vm1.sp", FakeMetadataObject.PROCEDURE);//$NON-NLS-1$
- sp.setMetadataID(spObj);
- ElementSymbol param = new ElementSymbol("vm1.sp.in1");//$NON-NLS-1$
- List paramIDs = (List)spObj.getProperty(FakeMetadataObject.Props.PARAMS);
- Iterator i = paramIDs.iterator();
- while (i.hasNext()) {
- FakeMetadataObject paramID = (FakeMetadataObject)i.next();
- if (paramID.getProperty(FakeMetadataObject.Props.DIRECTION).equals(new Integer(ParameterInfo.IN))) {
- param.setMetadataID(paramID);
- param.setType(DataTypeManager.getDataTypeClass((String)paramID.getProperty(FakeMetadataObject.Props.TYPE)));
- break;
- }
- }
-
- Map externalMetadata = new HashMap();
- externalMetadata.put(sp, Arrays.asList(new ElementSymbol[] { param }));
-
- return externalMetadata;
- }
-
- /**
* Create fake metadata for this case. Need a physical stored procedure and
* a virtual stored procedure which calls the physical one.
* @return
13 years, 10 months
teiid SVN: r2950 - trunk/documentation/client-developers-guide/src/main/docbook/en-US/content.
by teiid-commits@lists.jboss.org
Author: rareddy
Date: 2011-02-28 10:56:45 -0500 (Mon, 28 Feb 2011)
New Revision: 2950
Modified:
trunk/documentation/client-developers-guide/src/main/docbook/en-US/content/jdbc-connection.xml
Log:
fixing a typo.
Modified: trunk/documentation/client-developers-guide/src/main/docbook/en-US/content/jdbc-connection.xml
===================================================================
--- trunk/documentation/client-developers-guide/src/main/docbook/en-US/content/jdbc-connection.xml 2011-02-28 04:10:39 UTC (rev 2949)
+++ trunk/documentation/client-developers-guide/src/main/docbook/en-US/content/jdbc-connection.xml 2011-02-28 15:56:45 UTC (rev 2950)
@@ -489,7 +489,7 @@
</para>
<section id="failover">
<title>Fail Over</title>
- <para>Post connection fail over will be sued if you're using an admin connection (such as what is used by AdminShell) or if the autoFailover connection property is set to true.
+ <para>Post connection fail over will be used, if you're using an admin connection (such as what is used by AdminShell) or if the <emphasis>autoFailover</emphasis> connection property on JDBC URL is set to true.
Post connection failover works by sending a ping, at most every second, to test the connection prior to use. If the ping fails, a new instance will be selected prior to the operation being attempted.
This is not true "transparent application failover" as the client will not restart the transaction/query/recreate session scoped temp tables, etc. So this feature should be used with caution by non-admin connections.</para>
</section>
13 years, 10 months
teiid SVN: r2949 - trunk/documentation/reference/src/main/docbook/en-US/content.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-27 23:10:39 -0500 (Sun, 27 Feb 2011)
New Revision: 2949
Modified:
trunk/documentation/reference/src/main/docbook/en-US/content/scalar_functions.xml
Log:
updating xpathValue doc based on forum posting
Modified: trunk/documentation/reference/src/main/docbook/en-US/content/scalar_functions.xml
===================================================================
--- trunk/documentation/reference/src/main/docbook/en-US/content/scalar_functions.xml 2011-02-25 20:40:17 UTC (rev 2948)
+++ trunk/documentation/reference/src/main/docbook/en-US/content/scalar_functions.xml 2011-02-28 04:10:39 UTC (rev 2949)
@@ -2062,7 +2062,16 @@
string value for the first matching result.</para>
<para><synopsis>XPATHVALUE(doc, xpath)</synopsis></para>
<para>Doc and xpath in {string, clob, xml}. Return value is a string.</para>
- <para>An attempt is made to provide a meaningful result for non-text nodes.</para>
+ <para>Matching a non-text node will still produce a string result, which includes all descendent text nodes.</para>
+ <example>
+ <title>Sample xpathValue Ignoring Namespaces</title>
+ <para>XML value:</para>
+ <programlisting language="XML"><![CDATA[<?xml version="1.0" ?><ns1:return xmlns:ns1="http://com.test.ws/exampleWebService">Hello<x> World</x></return>]]></programlisting>
+ <para>Function:</para>
+ <programlisting language="SQL">xpathValue(value, '/*[local-name()="return"])</programlisting>
+ <para>Results in 'Hello World'</para>
+ </example>
+ <para>See also <xref linkend="xmlquery"/></para>
</section>
</section>
<section>
13 years, 10 months
teiid SVN: r2948 - trunk/engine/src/test/java/org/teiid/dqp/internal/process.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-25 15:40:17 -0500 (Fri, 25 Feb 2011)
New Revision: 2948
Modified:
trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPCore.java
Log:
ensuring that timing issues will not affect unit test
Modified: trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPCore.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPCore.java 2011-02-25 05:57:52 UTC (rev 2947)
+++ trunk/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPCore.java 2011-02-25 20:40:17 UTC (rev 2948)
@@ -210,7 +210,7 @@
Thread.sleep(100);
}
assertEquals(ThreadState.IDLE, item.getThreadState());
- assertEquals(46, item.resultsBuffer.getRowCount());
+ assertTrue(item.resultsBuffer.getManagedRowCount() < 44);
//pull the rest of the results
for (int j = 0; j < 48; j++) {
item = core.getRequestWorkItem(DQPWorkContext.getWorkContext().getRequestID(reqMsg.getExecutionId()));
13 years, 10 months
teiid SVN: r2947 - in trunk: adminshell and 36 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-25 00:57:52 -0500 (Fri, 25 Feb 2011)
New Revision: 2947
Modified:
trunk/adminshell/pom.xml
trunk/api/pom.xml
trunk/build/pom.xml
trunk/cache-jbosscache/pom.xml
trunk/client/pom.xml
trunk/common-core/pom.xml
trunk/connectors/connector-file/pom.xml
trunk/connectors/connector-ldap/pom.xml
trunk/connectors/connector-salesforce/pom.xml
trunk/connectors/connector-ws/pom.xml
trunk/connectors/pom.xml
trunk/connectors/salesforce-api/pom.xml
trunk/connectors/sandbox/pom.xml
trunk/connectors/sandbox/translator-yahoo/pom.xml
trunk/connectors/translator-file/pom.xml
trunk/connectors/translator-jdbc/pom.xml
trunk/connectors/translator-ldap/pom.xml
trunk/connectors/translator-loopback/pom.xml
trunk/connectors/translator-olap/pom.xml
trunk/connectors/translator-salesforce/pom.xml
trunk/connectors/translator-ws/pom.xml
trunk/console/pom.xml
trunk/documentation/admin-guide/pom.xml
trunk/documentation/caching-guide/pom.xml
trunk/documentation/client-developers-guide/pom.xml
trunk/documentation/developer-guide/pom.xml
trunk/documentation/pom.xml
trunk/documentation/quick-start-example/pom.xml
trunk/documentation/reference/pom.xml
trunk/engine/pom.xml
trunk/hibernate-dialect/pom.xml
trunk/jboss-integration/pom.xml
trunk/metadata/pom.xml
trunk/pom.xml
trunk/runtime/pom.xml
trunk/test-integration/common/pom.xml
trunk/test-integration/db/pom.xml
trunk/test-integration/pom.xml
Log:
[maven-release-plugin] prepare for next development iteration
Modified: trunk/adminshell/pom.xml
===================================================================
--- trunk/adminshell/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/adminshell/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-adminshell</artifactId>
Modified: trunk/api/pom.xml
===================================================================
--- trunk/api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/api/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-api</artifactId>
Modified: trunk/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/build/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid</artifactId>
Modified: trunk/cache-jbosscache/pom.xml
===================================================================
--- trunk/cache-jbosscache/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/cache-jbosscache/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-cache-jbosscache</artifactId>
Modified: trunk/client/pom.xml
===================================================================
--- trunk/client/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/client/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-client</artifactId>
Modified: trunk/common-core/pom.xml
===================================================================
--- trunk/common-core/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/common-core/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-common-core</artifactId>
Modified: trunk/connectors/connector-file/pom.xml
===================================================================
--- trunk/connectors/connector-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/connector-file/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-file</artifactId>
Modified: trunk/connectors/connector-ldap/pom.xml
===================================================================
--- trunk/connectors/connector-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/connector-ldap/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-ldap</artifactId>
Modified: trunk/connectors/connector-salesforce/pom.xml
===================================================================
--- trunk/connectors/connector-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/connector-salesforce/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-salesforce</artifactId>
Modified: trunk/connectors/connector-ws/pom.xml
===================================================================
--- trunk/connectors/connector-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/connector-ws/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-ws</artifactId>
Modified: trunk/connectors/pom.xml
===================================================================
--- trunk/connectors/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/connectors/salesforce-api/pom.xml
===================================================================
--- trunk/connectors/salesforce-api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/salesforce-api/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>salesforce-api</artifactId>
Modified: trunk/connectors/sandbox/pom.xml
===================================================================
--- trunk/connectors/sandbox/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/sandbox/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid.connectors</groupId>
Modified: trunk/connectors/sandbox/translator-yahoo/pom.xml
===================================================================
--- trunk/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>sandbox</artifactId>
<groupId>org.jboss.teiid.connectors</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-yahoo</artifactId>
Modified: trunk/connectors/translator-file/pom.xml
===================================================================
--- trunk/connectors/translator-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-file/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-file</artifactId>
Modified: trunk/connectors/translator-jdbc/pom.xml
===================================================================
--- trunk/connectors/translator-jdbc/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-jdbc/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-jdbc</artifactId>
Modified: trunk/connectors/translator-ldap/pom.xml
===================================================================
--- trunk/connectors/translator-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-ldap/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-ldap</artifactId>
Modified: trunk/connectors/translator-loopback/pom.xml
===================================================================
--- trunk/connectors/translator-loopback/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-loopback/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-loopback</artifactId>
Modified: trunk/connectors/translator-olap/pom.xml
===================================================================
--- trunk/connectors/translator-olap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-olap/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-olap</artifactId>
Modified: trunk/connectors/translator-salesforce/pom.xml
===================================================================
--- trunk/connectors/translator-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-salesforce/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-salesforce</artifactId>
Modified: trunk/connectors/translator-ws/pom.xml
===================================================================
--- trunk/connectors/translator-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/connectors/translator-ws/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-ws</artifactId>
Modified: trunk/console/pom.xml
===================================================================
--- trunk/console/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/console/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: trunk/documentation/admin-guide/pom.xml
===================================================================
--- trunk/documentation/admin-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/admin-guide/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>admin-guide</artifactId>
Modified: trunk/documentation/caching-guide/pom.xml
===================================================================
--- trunk/documentation/caching-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/caching-guide/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>caching-guide</artifactId>
Modified: trunk/documentation/client-developers-guide/pom.xml
===================================================================
--- trunk/documentation/client-developers-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/client-developers-guide/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>client-developers-guide</artifactId>
Modified: trunk/documentation/developer-guide/pom.xml
===================================================================
--- trunk/documentation/developer-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/developer-guide/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>developer-guide</artifactId>
Modified: trunk/documentation/pom.xml
===================================================================
--- trunk/documentation/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/documentation/quick-start-example/pom.xml
===================================================================
--- trunk/documentation/quick-start-example/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/quick-start-example/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>quick-start-example</artifactId>
Modified: trunk/documentation/reference/pom.xml
===================================================================
--- trunk/documentation/reference/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/documentation/reference/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>reference</artifactId>
Modified: trunk/engine/pom.xml
===================================================================
--- trunk/engine/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/engine/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-engine</artifactId>
Modified: trunk/hibernate-dialect/pom.xml
===================================================================
--- trunk/hibernate-dialect/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/hibernate-dialect/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-hibernate-dialect</artifactId>
Modified: trunk/jboss-integration/pom.xml
===================================================================
--- trunk/jboss-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/jboss-integration/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/metadata/pom.xml
===================================================================
--- trunk/metadata/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/metadata/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-metadata</artifactId>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -5,15 +5,15 @@
<artifactId>teiid-parent</artifactId>
<packaging>pom</packaging>
<name>Teiid</name>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
<description>Federated SQL and XML query engine.</description>
<properties>
<ant.version>1.7.0</ant.version>
<site.url>http://www.jboss.org/teiid</site.url>
</properties>
<scm>
- <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</developerConnection>
+ <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/trunk</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/trunk</developerConnection>
</scm>
<licenses>
<license>
Modified: trunk/runtime/pom.xml
===================================================================
--- trunk/runtime/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/runtime/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/test-integration/common/pom.xml
===================================================================
--- trunk/test-integration/common/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/test-integration/common/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-test-integration</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>test-integration-common</artifactId>
Modified: trunk/test-integration/db/pom.xml
===================================================================
--- trunk/test-integration/db/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/test-integration/db/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -9,7 +9,7 @@
<parent>
<artifactId>teiid-test-integration</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: trunk/test-integration/pom.xml
===================================================================
--- trunk/test-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
+++ trunk/test-integration/pom.xml 2011-02-25 05:57:52 UTC (rev 2947)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1</version>
+ <version>7.4.0.Alpha2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-test-integration</artifactId>
13 years, 10 months
teiid SVN: r2946 - in tags: teiid-parent-7.4.0.Alpha1 and 45 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-25 00:57:19 -0500 (Fri, 25 Feb 2011)
New Revision: 2946
Added:
tags/teiid-parent-7.4.0.Alpha1/
tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml
tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java
tags/teiid-parent-7.4.0.Alpha1/api/pom.xml
tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml
tags/teiid-parent-7.4.0.Alpha1/build/pom.xml
tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml
tags/teiid-parent-7.4.0.Alpha1/client/pom.xml
tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java
tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml
tags/teiid-parent-7.4.0.Alpha1/console/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml
tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml
tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml
tags/teiid-parent-7.4.0.Alpha1/pom.xml
tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml
tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml
Removed:
tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml
tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java
tags/teiid-parent-7.4.0.Alpha1/api/pom.xml
tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml
tags/teiid-parent-7.4.0.Alpha1/build/pom.xml
tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml
tags/teiid-parent-7.4.0.Alpha1/client/pom.xml
tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java
tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml
tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml
tags/teiid-parent-7.4.0.Alpha1/console/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml
tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml
tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml
tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java
tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml
tags/teiid-parent-7.4.0.Alpha1/pom.xml
tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java
tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml
tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml
Log:
[maven-release-plugin] copy for tag teiid-parent-7.4.0.Alpha1
Deleted: tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml
===================================================================
--- trunk/adminshell/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-adminshell</artifactId>
- <name>Adminshell</name>
- <description>Adminshell for Teiid</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
- <version>1.7.2</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.4</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>jline</groupId>
- <artifactId>jline</artifactId>
- <version>0.9.94</version>
- <scope>compile</scope>
- <exclusions>
- <exclusion>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.fusesource.jansi</groupId>
- <artifactId>jansi</artifactId>
- <version>1.2.1</version>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>commons-cli</groupId>
- <artifactId>commons-cli</artifactId>
- <version>1.2</version>
- <scope>compile</scope>
- </dependency>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml (from rev 2945, trunk/adminshell/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/adminshell/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-adminshell</artifactId>
+ <name>Adminshell</name>
+ <description>Adminshell for Teiid</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>1.7.2</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>jline</groupId>
+ <artifactId>jline</artifactId>
+ <version>0.9.94</version>
+ <scope>compile</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.fusesource.jansi</groupId>
+ <artifactId>jansi</artifactId>
+ <version>1.2.1</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-cli</groupId>
+ <artifactId>commons-cli</artifactId>
+ <version>1.2</version>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java
===================================================================
--- trunk/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,420 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General public static
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General public static License for more details.
- *
- * You should have received a copy of the GNU Lesser General public static
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.adminshell;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Properties;
-import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import org.teiid.adminapi.Admin;
-import org.teiid.adminapi.AdminException;
-import org.teiid.adminapi.AdminFactory;
-import org.teiid.adminapi.CacheStatistics;
-import org.teiid.adminapi.PropertyDefinition;
-import org.teiid.adminapi.Request;
-import org.teiid.adminapi.Session;
-import org.teiid.adminapi.Transaction;
-import org.teiid.adminapi.Translator;
-import org.teiid.adminapi.VDB;
-import org.teiid.adminapi.WorkerPoolStatistics;
-import org.teiid.adminapi.VDB.ConnectionType;
-import org.teiid.adminshell.Help.Doc;
-
-
-/**
- * Contextual shell wrapper around the AdminAPI, see {@link Admin}
- */
-public class AdminShell {
-
- protected static Logger log = Logger.getLogger(AdminShell.class.getName());
-
- static Properties p;
- private static int connectionCount = 1;
- static Admin internalAdmin;
- private static String currentName;
- private static HashMap<String, Admin> connections = new HashMap<String, Admin>();
- private static Help help = new Help(AdminShell.class);
-
- @Doc(text="Get a named Admin connection to the specified server")
- public static void connectAsAdmin(
- @Doc(text = "url - URL in the format \"mm[s]://host:port\"") String url,
- @Doc(text = "username") String username,
- @Doc(text = "password") String password,
- @Doc(text = "connection name") String connectionName) throws AdminException {
- internalAdmin = AdminFactory.getInstance().createAdmin(username, password.toCharArray(), url);
- currentName = connectionName;
- Admin old = connections.put(connectionName, internalAdmin);
- if (old != null) {
- System.out.println("Closing previous admin associated with " + connectionName); //$NON-NLS-1$
- old.close();
- }
- }
-
- @Doc(text = "Connect as Admin using the defaults from connection.properties")
- @SuppressWarnings("nls")
- public static void connectAsAdmin() throws AdminException {
- loadConnectionProperties();
- connectAsAdmin(p.getProperty("admin.url", "mm://localhost:31443"), p.getProperty("admin.user", "admin"),
- p.getProperty("admin.password", "admin"), "conn-" + connectionCount++);
- }
-
- static void loadConnectionProperties() {
- if (p != null) {
- return;
- }
- Properties props = new Properties();
- FileInputStream fis = null;
- try {
- fis = new FileInputStream("connection.properties"); //$NON-NLS-1$
- props.load(fis);
- } catch (IOException e) {
- log.log(Level.WARNING, "Could not load default connection properties.", e); //$NON-NLS-1$
- } finally {
- if (fis != null) {
- try {
- fis.close();
- } catch (IOException e) {
- }
- }
- }
- p = props;
- }
-
- @Doc(text = "Adds a mapped role to the specified data role")
- public static void addDataRoleMapping(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion,
- @Doc(text = "dataRole name") String policyName,
- @Doc(text = "mapped role name") String role) throws AdminException {
- getAdmin().addDataRoleMapping(vdbName, vdbVersion, policyName, role);
- }
-
- @Doc(text = "Assign a translator and data source to a source Model")
- public static void assignToModel(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion,
- @Doc(text = "model name") String modelName,
- @Doc(text = "source name") String sourceName,
- @Doc(text = "translator name") String translatorName,
- @Doc(text = "jndi name") String jndiName)
- throws AdminException {
- getAdmin().assignToModel(vdbName, vdbVersion, modelName, sourceName, translatorName, jndiName);
- }
-
- @Doc(text = "Cancel a request")
- public static void cancelRequest(
- @Doc(text = "session id") String sessionId,
- @Doc(text = "execution id") long executionId)
- throws AdminException {
- getAdmin().cancelRequest(sessionId, executionId);
- }
-
- @Doc(text = "Clear the given cache")
- public static void clearCache(
- @Doc(text = "cache type") String cacheType) throws AdminException {
- getAdmin().clearCache(cacheType);
- }
-
- @Doc(text = "Clear the given cache for a VDB")
- public static void clearCache(
- @Doc(text = "cache type") String cacheType, @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion
- ) throws AdminException {
- getAdmin().clearCache(cacheType, vdbName, vdbVersion);
- }
-
- @Doc(text = "Delete a VDB")
- public static void deleteVDB(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion) throws AdminException {
- getAdmin().deleteVDB(vdbName, vdbVersion);
- }
-
- @Doc(text = "Get all cache type Strings")
- public static Collection<String> getCacheTypes() throws AdminException {
- return getAdmin().getCacheTypes();
- }
-
- @Doc(text = "Change a VDB Connection Type")
- public static void changeVDBConnectionType(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion,
- @Doc(text = "Connection Type (NONE, BY_VERSION, or ANY") String type)
- throws AdminException {
- getAdmin().changeVDBConnectionType(vdbName, vdbVersion, ConnectionType.valueOf(type));
- }
-
- @Doc(text = "Get all translator instances")
- public static Collection<Translator> getTranslators()
- throws AdminException {
- return getAdmin().getTranslators();
- }
-
- @Doc(text = "Get the specified ConnectionFactory")
- public static Translator getTranslator(
- @Doc(text = "deployed name") String deployedName)
- throws AdminException {
- return getAdmin().getTranslator(deployedName);
- }
-
- @Doc(text = "Get all PropertyDefinitions for the given template")
- public static Collection<PropertyDefinition> getTemplatePropertyDefinitions(
- @Doc(text = "template name") String templateName) throws AdminException {
- return getAdmin().getTemplatePropertyDefinitions(templateName);
- }
-
- @Doc(text = "Get all Request instances")
- public static Collection<Request> getRequests() throws AdminException {
- return getAdmin().getRequests();
- }
-
- @Doc(text = "Get all Request instances for the given session")
- public static Collection<Request> getRequestsForSession(
- @Doc(text = "session id") String sessionId)
- throws AdminException {
- return getAdmin().getRequestsForSession(sessionId);
- }
-
- @Doc(text = "Get all Session instances")
- public static Collection<Session> getSessions() throws AdminException {
- return getAdmin().getSessions();
- }
-
- @Doc(text = "Get all Transaction instances")
- public static Collection<Transaction> getTransactions() throws AdminException {
- return getAdmin().getTransactions();
- }
-
- @Doc(text = "Get a specific VDB")
- public static VDB getVDB(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vbdVersion) throws AdminException {
- return getAdmin().getVDB(vdbName, vbdVersion);
- }
-
- @Doc(text = "Get all VDB instances")
- public static Set<VDB> getVDBs() throws AdminException {
- return getAdmin().getVDBs();
- }
-
- @Doc(text = "Get thread pool statistics for Teiid")
- public static WorkerPoolStatistics getWorkerPoolStats()
- throws AdminException {
- return getAdmin().getWorkerPoolStats();
- }
-
- @Doc(text = "Get cache statistics for given cache type")
- public static CacheStatistics getCacheStats(@Doc(text = "cacheType") String identifier)
- throws AdminException {
- return getAdmin().getCacheStats(identifier);
- }
-
- @Doc(text = "Remove a mapped role for the data role")
- public static void removeDataRoleMapping(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int vdbVersion,
- @Doc(text = "dataRole name") String policyName,
- @Doc(text = "mapped role name") String role) throws AdminException {
- getAdmin()
- .removeDataRoleMapping(vdbName, vdbVersion, policyName, role);
- }
-
- @Doc(text = "Set the any authenticated flag for the data role")
- public static void setAnyAuthenticatedForDataRole(
- @Doc(text = "vdb name")String vdbName,
- @Doc(text = "vdb version")int vdbVersion,
- @Doc(text = "dataRole name")String dataRole,
- @Doc(text = "any authenticated") boolean anyAuthenticated) throws AdminException {
- getAdmin().setAnyAuthenticatedForDataRole(vdbName, vdbVersion, dataRole, anyAuthenticated);
- }
-
- @Doc(text = "Terminate a session and associated requests")
- public static void terminateSession(
- @Doc(text = "session id") String sessionId) throws AdminException {
- getAdmin().terminateSession(sessionId);
- }
-
- @Doc(text = "Terminate a transaction")
- public static void terminateTransaction(
- @Doc(text = "transaction id") String transactionId)
- throws AdminException {
- getAdmin().terminateTransaction(transactionId);
- }
-
- @Doc(text = "Merge two vdbs")
- public static void mergeVDBs(
- @Doc(text = "source vdb name") String sourceVDBName,
- @Doc(text = "source vdb version") int sourceVDBVersion,
- @Doc(text = "target vdb name") String targetVDBName,
- @Doc(text = "target vdb version") int targetVDBVersion) throws AdminException {
- getAdmin().mergeVDBs(sourceVDBName, sourceVDBVersion, targetVDBName, targetVDBVersion);
- }
-
- @Doc(text = "Checks if a translator exists")
- public static boolean hasTranslator(@Doc(text = "deployed name") String factoryName) throws AdminException {
- Collection<Translator> bindings = getAdmin().getTranslators();
-
- for (Translator binding:bindings) {
- if (binding.getName().equals(factoryName)) {
- return true;
- }
- }
- return false;
- }
-
- @Doc(text = "Checks if a VDB exists")
- public static boolean hasVDB(
- @Doc(text = "vdb name") String vdbName) throws AdminException {
- Collection<VDB> vdbs = getAdmin().getVDBs();
- for (VDB vdb:vdbs) {
- if (vdb.getName().equals(vdbName)) {
- return true;
- }
- }
- return false;
- }
-
- @Doc(text = "Checks if a specific VDB version exists")
- public static boolean hasVDB(
- @Doc(text = "vdb name") String vdbName,
- @Doc(text = "vdb version") int version) throws AdminException {
- Collection<VDB> vdbs = getAdmin().getVDBs();
- for (VDB vdb:vdbs) {
- if (vdb.getName().equals(vdbName) && vdb.getVersion() == version) {
- return true;
- }
- }
- return false;
- }
-
- /*private static void writeFile(String deployedName, String fileName,
- InputStream contents) throws IOException, AdminProcessingException {
- if (contents == null) {
- throw new AdminProcessingException(deployedName + " not found for exporting");//$NON-NLS-1$
- }
- ObjectConverterUtil.write(contents, fileName);
- }*/
-
- @Doc(text = "Deploy a VDB from file")
- public static void deployVDB(
- @Doc(text = "file name") String vdbFile) throws AdminException, FileNotFoundException {
- File file = new File(vdbFile);
- FileInputStream fis = new FileInputStream(file);
- try {
- getAdmin().deployVDB(file.getName(), fis);
- } finally {
- try {
- fis.close();
- } catch (IOException e) {
- }
- }
- }
- @Doc(text = "Create a data source from supplied properties")
- public static void createDataSource(@Doc(text = "deployed name")String deploymentName, @Doc(text = "template name")String templateName, @Doc(text = "properties")Properties properties) throws AdminException {
- getAdmin().createDataSource(deploymentName, templateName, properties);
- }
-
- @Doc(text = "Delete data source")
- public static void deleteDataSource(@Doc(text = "deployed name")String deployedName) throws AdminException{
- getAdmin().deleteDataSource(deployedName);
- }
-
- @Doc(text = "Available data sources")
- public static Collection<String> getDataSourceNames() throws AdminException{
- return getAdmin().getDataSourceNames();
- }
-
- @Doc(text = "Available data source template names")
- public static Set<String> getDataSourceTemplateNames() throws AdminException{
- return getAdmin().getDataSourceTemplateNames();
- }
-
- @Doc(text = "Get the current org.teiid.adminapi.Admin instance for direct use. Note: Used for advanced usecases to bypass AdminShell methods")
- public static Admin getAdmin() {
- if (internalAdmin == null) {
- throw new NullPointerException("Not connected. You must call a \"connectAsAdmin\" method or choose an active connection via \"useConnection\"."); //$NON-NLS-1$
- }
- return internalAdmin;
- }
-
- @Doc(text = "Disconnect the current connection for the server")
- public static void disconnect() {
- if (internalAdmin != null) {
- internalAdmin.close();
- internalAdmin = null;
- connections.remove(currentName);
- currentName = null;
- }
- }
-
- @Doc(text = "Disconnect all connections from the server")
- public static void disconnectAll() {
- for (Admin admin : connections.values()) {
- admin.close();
- }
- connections.clear();
- internalAdmin = null;
- currentName = null;
- }
-
- @Doc(text = "Use another connection")
- public static void useConnection(
- @Doc(text = "connection name") String name) {
- Admin admin = connections.get(name);
- if (admin == null) {
- System.out.println("Warning: connection is not active for " + name); //$NON-NLS-1$
- return;
- }
- internalAdmin = admin;
- currentName = name;
- }
-
- @Doc(text = "Returns the current connection name")
- public static String getConnectionName() {
- return currentName;
- }
-
- @Doc(text = "Return all connection names")
- public static Collection<String> getAllConnections() {
- return connections.keySet();
- }
-
- @Doc(text = "Show help for all admin methods")
- public static void adminHelp() {
- help.help();
- }
-
- @Doc(text = "Show help for the given admin method")
- public static void adminHelp(
- @Doc(text = "method name") String method) {
- help.help(method);
- }
-
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java (from rev 2942, trunk/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/adminshell/src/main/java/org/teiid/adminshell/AdminShell.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,426 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General public static
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General public static License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General public static
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.adminshell;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Properties;
+import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+import org.teiid.adminapi.Admin;
+import org.teiid.adminapi.AdminException;
+import org.teiid.adminapi.AdminFactory;
+import org.teiid.adminapi.CacheStatistics;
+import org.teiid.adminapi.PropertyDefinition;
+import org.teiid.adminapi.Request;
+import org.teiid.adminapi.Session;
+import org.teiid.adminapi.Transaction;
+import org.teiid.adminapi.Translator;
+import org.teiid.adminapi.VDB;
+import org.teiid.adminapi.WorkerPoolStatistics;
+import org.teiid.adminapi.VDB.ConnectionType;
+import org.teiid.adminshell.Help.Doc;
+
+
+/**
+ * Contextual shell wrapper around the AdminAPI, see {@link Admin}
+ */
+public class AdminShell {
+
+ protected static Logger log = Logger.getLogger(AdminShell.class.getName());
+
+ static Properties p;
+ private static int connectionCount = 1;
+ static Admin internalAdmin;
+ private static String currentName;
+ private static HashMap<String, Admin> connections = new HashMap<String, Admin>();
+ private static Help help = new Help(AdminShell.class);
+
+ @Doc(text="Get a named Admin connection to the specified server")
+ public static void connectAsAdmin(
+ @Doc(text = "url - URL in the format \"mm[s]://host:port\"") String url,
+ @Doc(text = "username") String username,
+ @Doc(text = "password") String password,
+ @Doc(text = "connection name") String connectionName) throws AdminException {
+ internalAdmin = AdminFactory.getInstance().createAdmin(username, password.toCharArray(), url);
+ currentName = connectionName;
+ Admin old = connections.put(connectionName, internalAdmin);
+ if (old != null) {
+ System.out.println("Closing previous admin associated with " + connectionName); //$NON-NLS-1$
+ old.close();
+ }
+ }
+
+ @Doc(text = "Connect as Admin using the defaults from connection.properties")
+ @SuppressWarnings("nls")
+ public static void connectAsAdmin() throws AdminException {
+ loadConnectionProperties();
+ connectAsAdmin(p.getProperty("admin.url", "mm://localhost:31443"), p.getProperty("admin.user", "admin"),
+ p.getProperty("admin.password", "admin"), "conn-" + connectionCount++);
+ }
+
+ static void loadConnectionProperties() {
+ if (p != null) {
+ return;
+ }
+ Properties props = new Properties();
+ FileInputStream fis = null;
+ try {
+ fis = new FileInputStream("connection.properties"); //$NON-NLS-1$
+ props.load(fis);
+ } catch (IOException e) {
+ log.log(Level.WARNING, "Could not load default connection properties.", e); //$NON-NLS-1$
+ } finally {
+ if (fis != null) {
+ try {
+ fis.close();
+ } catch (IOException e) {
+ }
+ }
+ }
+ p = props;
+ }
+
+ @Doc(text = "Adds a mapped role to the specified data role")
+ public static void addDataRoleMapping(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion,
+ @Doc(text = "dataRole name") String policyName,
+ @Doc(text = "mapped role name") String role) throws AdminException {
+ getAdmin().addDataRoleMapping(vdbName, vdbVersion, policyName, role);
+ }
+
+ @Doc(text = "Assign a translator and data source to a source Model")
+ public static void assignToModel(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion,
+ @Doc(text = "model name") String modelName,
+ @Doc(text = "source name") String sourceName,
+ @Doc(text = "translator name") String translatorName,
+ @Doc(text = "jndi name") String jndiName)
+ throws AdminException {
+ getAdmin().assignToModel(vdbName, vdbVersion, modelName, sourceName, translatorName, jndiName);
+ }
+
+ @Doc(text = "Cancel a request")
+ public static void cancelRequest(
+ @Doc(text = "session id") String sessionId,
+ @Doc(text = "execution id") long executionId)
+ throws AdminException {
+ getAdmin().cancelRequest(sessionId, executionId);
+ }
+
+ @Doc(text = "Clear the given cache")
+ public static void clearCache(
+ @Doc(text = "cache type") String cacheType) throws AdminException {
+ getAdmin().clearCache(cacheType);
+ }
+
+ @Doc(text = "Clear the given cache for a VDB")
+ public static void clearCache(
+ @Doc(text = "cache type") String cacheType, @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion
+ ) throws AdminException {
+ getAdmin().clearCache(cacheType, vdbName, vdbVersion);
+ }
+
+ @Doc(text = "Delete a VDB")
+ public static void deleteVDB(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion) throws AdminException {
+ getAdmin().deleteVDB(vdbName, vdbVersion);
+ }
+
+ @Doc(text = "Get all cache type Strings")
+ public static Collection<String> getCacheTypes() throws AdminException {
+ return getAdmin().getCacheTypes();
+ }
+
+ @Doc(text = "Change a VDB Connection Type")
+ public static void changeVDBConnectionType(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion,
+ @Doc(text = "Connection Type (NONE, BY_VERSION, or ANY") String type)
+ throws AdminException {
+ getAdmin().changeVDBConnectionType(vdbName, vdbVersion, ConnectionType.valueOf(type));
+ }
+
+ @Doc(text = "Get all translator instances")
+ public static Collection<Translator> getTranslators()
+ throws AdminException {
+ return getAdmin().getTranslators();
+ }
+
+ @Doc(text = "Get the specified ConnectionFactory")
+ public static Translator getTranslator(
+ @Doc(text = "deployed name") String deployedName)
+ throws AdminException {
+ return getAdmin().getTranslator(deployedName);
+ }
+
+ @Doc(text = "Get all PropertyDefinitions for the given template")
+ public static Collection<PropertyDefinition> getTemplatePropertyDefinitions(
+ @Doc(text = "template name") String templateName) throws AdminException {
+ return getAdmin().getTemplatePropertyDefinitions(templateName);
+ }
+
+ @Doc(text = "Get all Request instances")
+ public static Collection<Request> getRequests() throws AdminException {
+ return getAdmin().getRequests();
+ }
+
+ @Doc(text = "Get all Request instances for the given session")
+ public static Collection<Request> getRequestsForSession(
+ @Doc(text = "session id") String sessionId)
+ throws AdminException {
+ return getAdmin().getRequestsForSession(sessionId);
+ }
+
+ @Doc(text = "Get all Session instances")
+ public static Collection<Session> getSessions() throws AdminException {
+ return getAdmin().getSessions();
+ }
+
+ @Doc(text = "Get all Transaction instances")
+ public static Collection<Transaction> getTransactions() throws AdminException {
+ return getAdmin().getTransactions();
+ }
+
+ @Doc(text = "Get a specific VDB")
+ public static VDB getVDB(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vbdVersion) throws AdminException {
+ return getAdmin().getVDB(vdbName, vbdVersion);
+ }
+
+ @Doc(text = "Get all VDB instances")
+ public static Set<VDB> getVDBs() throws AdminException {
+ return getAdmin().getVDBs();
+ }
+
+ @Doc(text = "Get thread pool statistics for Teiid")
+ public static WorkerPoolStatistics getWorkerPoolStats()
+ throws AdminException {
+ return getAdmin().getWorkerPoolStats();
+ }
+
+ @Doc(text = "Get cache statistics for given cache type")
+ public static CacheStatistics getCacheStats(@Doc(text = "cacheType") String identifier)
+ throws AdminException {
+ return getAdmin().getCacheStats(identifier);
+ }
+
+ @Doc(text = "Remove a mapped role for the data role")
+ public static void removeDataRoleMapping(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int vdbVersion,
+ @Doc(text = "dataRole name") String policyName,
+ @Doc(text = "mapped role name") String role) throws AdminException {
+ getAdmin()
+ .removeDataRoleMapping(vdbName, vdbVersion, policyName, role);
+ }
+
+ @Doc(text = "Set the any authenticated flag for the data role")
+ public static void setAnyAuthenticatedForDataRole(
+ @Doc(text = "vdb name")String vdbName,
+ @Doc(text = "vdb version")int vdbVersion,
+ @Doc(text = "dataRole name")String dataRole,
+ @Doc(text = "any authenticated") boolean anyAuthenticated) throws AdminException {
+ getAdmin().setAnyAuthenticatedForDataRole(vdbName, vdbVersion, dataRole, anyAuthenticated);
+ }
+
+ @Doc(text = "Terminate a session and associated requests")
+ public static void terminateSession(
+ @Doc(text = "session id") String sessionId) throws AdminException {
+ getAdmin().terminateSession(sessionId);
+ }
+
+ @Doc(text = "Terminate a transaction")
+ public static void terminateTransaction(
+ @Doc(text = "transaction id") String transactionId)
+ throws AdminException {
+ getAdmin().terminateTransaction(transactionId);
+ }
+
+ @Doc(text = "Merge two vdbs")
+ public static void mergeVDBs(
+ @Doc(text = "source vdb name") String sourceVDBName,
+ @Doc(text = "source vdb version") int sourceVDBVersion,
+ @Doc(text = "target vdb name") String targetVDBName,
+ @Doc(text = "target vdb version") int targetVDBVersion) throws AdminException {
+ getAdmin().mergeVDBs(sourceVDBName, sourceVDBVersion, targetVDBName, targetVDBVersion);
+ }
+
+ @Doc(text = "Checks if a translator exists")
+ public static boolean hasTranslator(@Doc(text = "deployed name") String factoryName) throws AdminException {
+ Collection<Translator> bindings = getAdmin().getTranslators();
+
+ for (Translator binding:bindings) {
+ if (binding.getName().equals(factoryName)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Doc(text = "Checks if a VDB exists")
+ public static boolean hasVDB(
+ @Doc(text = "vdb name") String vdbName) throws AdminException {
+ Collection<VDB> vdbs = getAdmin().getVDBs();
+ for (VDB vdb:vdbs) {
+ if (vdb.getName().equals(vdbName)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Doc(text = "Checks if a specific VDB version exists")
+ public static boolean hasVDB(
+ @Doc(text = "vdb name") String vdbName,
+ @Doc(text = "vdb version") int version) throws AdminException {
+ Collection<VDB> vdbs = getAdmin().getVDBs();
+ for (VDB vdb:vdbs) {
+ if (vdb.getName().equals(vdbName) && vdb.getVersion() == version) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /*private static void writeFile(String deployedName, String fileName,
+ InputStream contents) throws IOException, AdminProcessingException {
+ if (contents == null) {
+ throw new AdminProcessingException(deployedName + " not found for exporting");//$NON-NLS-1$
+ }
+ ObjectConverterUtil.write(contents, fileName);
+ }*/
+
+ @Doc(text = "Deploy a VDB from file")
+ public static void deployVDB(
+ @Doc(text = "file name") String vdbFile) throws AdminException, FileNotFoundException {
+ File file = new File(vdbFile);
+ FileInputStream fis = new FileInputStream(file);
+ try {
+ getAdmin().deployVDB(file.getName(), fis);
+ } finally {
+ try {
+ fis.close();
+ } catch (IOException e) {
+ }
+ }
+ }
+ @Doc(text = "Create a data source from supplied properties")
+ public static void createDataSource(@Doc(text = "deployed name")String deploymentName, @Doc(text = "template name")String templateName, @Doc(text = "properties")Properties properties) throws AdminException {
+ getAdmin().createDataSource(deploymentName, templateName, properties);
+ }
+
+ @Doc(text = "Delete data source")
+ public static void deleteDataSource(@Doc(text = "deployed name")String deployedName) throws AdminException{
+ getAdmin().deleteDataSource(deployedName);
+ }
+
+ @Doc(text = "Available data sources")
+ public static Collection<String> getDataSourceNames() throws AdminException{
+ return getAdmin().getDataSourceNames();
+ }
+
+ @Doc(text = "Available data source template names")
+ public static Set<String> getDataSourceTemplateNames() throws AdminException{
+ return getAdmin().getDataSourceTemplateNames();
+ }
+
+ @Doc(text = "Get the current org.teiid.adminapi.Admin instance for direct use. Note: Used for advanced usecases to bypass AdminShell methods")
+ public static Admin getAdmin() {
+ if (internalAdmin == null) {
+ throw new NullPointerException("Not connected. You must call a \"connectAsAdmin\" method or choose an active connection via \"useConnection\"."); //$NON-NLS-1$
+ }
+ return internalAdmin;
+ }
+
+ @Doc(text = "Disconnect the current connection for the server")
+ public static void disconnect() {
+ if (internalAdmin != null) {
+ internalAdmin.close();
+ internalAdmin = null;
+ connections.remove(currentName);
+ currentName = null;
+ }
+ }
+
+ @Doc(text = "Disconnect all connections from the server")
+ public static void disconnectAll() {
+ for (Admin admin : connections.values()) {
+ admin.close();
+ }
+ connections.clear();
+ internalAdmin = null;
+ currentName = null;
+ }
+
+ @Doc(text = "Use another connection")
+ public static void useConnection(
+ @Doc(text = "connection name") String name) {
+ Admin admin = connections.get(name);
+ if (admin == null) {
+ System.out.println("Warning: connection is not active for " + name); //$NON-NLS-1$
+ return;
+ }
+ internalAdmin = admin;
+ currentName = name;
+ }
+
+ @Doc(text = "Returns the current connection name")
+ public static String getConnectionName() {
+ return currentName;
+ }
+
+ @Doc(text = "Return all connection names")
+ public static Collection<String> getAllConnections() {
+ return connections.keySet();
+ }
+
+ @Doc(text = "Show help for all admin methods")
+ public static void adminHelp() {
+ help.help();
+ }
+
+ @Doc(text = "Show help for the given admin method")
+ public static void adminHelp(
+ @Doc(text = "method name") String method) {
+ help.help(method);
+ }
+
+ @Doc(text = "Tell the engine that the given source is available. Pending dynamic vdb metadata loads will be resumed.")
+ public static void markDataSourceAvailable(
+ @Doc(text = "jndi name") String name) throws AdminException {
+ getAdmin().markDataSourceAvailable(name);
+ }
+
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/api/pom.xml
===================================================================
--- trunk/api/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-api</artifactId>
- <name>Teiid Translator API</name>
- <description>API for creating Translators and other common extenders in Teiid</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- </dependencies>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/api/pom.xml (from rev 2945, trunk/api/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/api/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-api</artifactId>
+ <name>Teiid Translator API</name>
+ <description>API for creating Translators and other common extenders in Teiid</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ </dependencies>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml
===================================================================
--- trunk/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,230 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
- <!-- Teiid Services -->
- <bean name="SessionService" class="org.teiid.services.SessionServiceImpl">
- <property name="VDBRepository"><inject bean="VDBRepository"/></property>
- <property name="securityHelper"><inject bean="SecurityHelper"/></property>
- <!-- Comma separated list of domains to be used to login into Teiid using JDBC connection-->
- <property name="securityDomains">teiid-security</property>
- <!-- security domain to be used with Admin API (please do not change this, as this should be same as profile service) -->
- <property name="adminSecurityDomain">jmx-console</property>
- <!-- Maximum number of sessions allowed by the system (default 5000) -->
- <property name="sessionMaxLimit">5000</property>
- <!-- Max allowed time before the session is terminated by the system, 0 indicates unlimited (default 0) -->
- <property name="sessionExpirationTimeLimit">0</property>
- </bean>
-
- <bean name="BufferService" class="org.teiid.services.BufferServiceImpl">
- <!-- Use disk for buffer management -->
- <property name="useDisk">true</property>
- <!-- Directory location for the buffer files -->
- <property name="diskDirectory">${jboss.server.temp.dir}/teiid</property>
- <!-- The max row count of a batch sent internally within the query processor. Should be <= the connectorBatchSize. (default 512) -->
- <property name="processorBatchSize">512</property>
- <!-- The max row count of a batch from a connector. Should be even multiple of processorBatchSize. (default 1024) -->
- <property name="connectorBatchSize">1024</property>
- <!--
- The number of batch columns to allow in memory (default 16384).
- This value should be set lower or higher depending on the available memory to Teiid in the VM.
- 16384 is considered a good default for a dedicated 32-bit VM running Teiid with a 1 gig heap.
- -->
- <property name="maxReserveBatchColumns">16384</property>
- <!--
- The number of batch columns guaranteed to a processing operation. Set this value lower if the workload typically
- processes larger numbers of concurrent queries with large intermediate results from operations such as sorting,
- grouping, etc. (default 128)
- -->
- <property name="maxProcessingBatchesColumns">128</property>
- <!-- Max File size in MB (default 2GB)-->
- <property name="maxFileSize">2048</property>
- <!-- Max storage space, in MB, to be used for buffer files (default 50G) -->
- <property name="maxBufferSpace">51200</property>
- <!-- Max open buffer files (default 64) -->
- <property name="maxOpenFiles">64</property>
- </bean>
-
- <bean name="CacheFactory" class="org.teiid.cache.jboss.ClusterableCacheFactory">
- <property name="enabled">true</property>
- <property name="cacheManager">java:TeiidCacheManager</property>
- <property name="resultsetCacheName">teiid-resultset-cache</property>
- </bean>
-
- <!-- Configuration for result set caching.
- There will be 2 caches with these settings.
- One cache holds results that are specific to sessions.
- The other cache holds vdb scoped results and can
- be replicated.
- -->
- <bean name="ResultsetCacheConfig" class="org.teiid.cache.CacheConfiguration">
- <property name="name">ResultSetCacheConfig</property>
- <property name="enabled">true</property>
- <!-- Max Entries allowed for ResultSet Cache (default 1024) -->
- <property name="maxEntries">1024</property>
- <!-- Max age in seconds (default 7200 - 2 hours) -->
- <property name="maxAgeInSeconds">7200</property>
- <!-- Allowed values are LRU, EXPIRATION.
- Setting this value to LRU will cause cache hint TTL values
- to be ignored. (default EXPIRATION) -->
- <property name="type">EXPIRATION</property>
- <property name="location">resultset</property>
- </bean>
-
- <bean name="RuntimeEngineDeployer" class="org.teiid.jboss.deployers.RuntimeEngineDeployer">
- <property name="jndiName">teiid/engine-deployer</property>
- <property name="profileService"><inject bean="ProfileService"/></property>
- <property name="jdbcSocketConfiguration"><inject bean="JdbcSocketConfiguration"/></property>
- <property name="adminSocketConfiguration"><inject bean="AdminSocketConfiguration"/></property>
- <property name="odbcSocketConfiguration"><inject bean="OdbcSocketConfiguration"/></property>
- <property name="workManager"><inject bean="WorkManager"/></property>
- <property name="XATerminator"><inject bean="TransactionManager" property="XATerminator"/></property>
- <property name="transactionManager"><inject bean="TransactionManager" property="transactionManager"/></property>
- <property name="sessionService"><inject bean="SessionService"/></property>
- <property name="bufferService"><inject bean="BufferService"/></property>
- <property name="securityHelper"><inject bean="SecurityHelper"/></property>
- <property name="VDBRepository"><inject bean="VDBRepository"/></property>
- <property name="cacheFactory"><inject bean="CacheFactory"/></property>
- <property name="resultsetCacheConfig"><inject bean="ResultsetCacheConfig"/></property>
-
- <!-- Process pool maximum thread count. (default 64) -->
- <property name="maxThreads">64</property>
- <!-- Max active plans (default 20). Increase this value on highly concurrent systems - but ensure that the underlying pools can handle the increased load without timeouts. -->
- <property name="maxActivePlans">20</property>
- <!-- Query processor time slice, in milliseconds. (default 2000) -->
- <property name="timeSliceInMilli">2000</property>
- <!-- Maximum allowed fetch size, set via JDBC. User requested value ignored above this value. (default 20480) -->
- <property name="maxRowsFetchSize">20480</property>
- <!-- The max lob chunk size in KB transferred each time when processing blobs, clobs (100KB default) -->
- <property name="lobChunkSizeInKB">100</property>
- <!-- The maximum number of query plans that are cached.
- This includes both user plans and internal prepared plans.
- Note: this is a memory based cache. (default 512) -->
- <property name="preparedPlanCacheMaxCount">512</property>
- <!-- Turn on role checking based upon the data roles defined in VDBs. (default true) -->
- <property name="useDataRoles">true</property>
- <!-- Sets whether temporary table usage is enabled by default (default true) -->
- <property name="allowCreateTemporaryTablesByDefault">true</property>
- <!-- Long running query threshold, after which a alert can be generated by tooling if configured-->
- <property name="queryThresholdInSecs">600</property>
- <!-- Maximum rows allowed from a source query. -1 indicates no limit. (default -1)-->
- <property name="maxSourceRows">-1</property>
- <!-- Indicates if an exception should be thrown if the specified value for Maximum Source Rows is exceeded; only up to the maximum rows will be consumed. -->
- <property name="exceptionOnMaxSourceRows">true</property>
- <!-- Maximum size of lob allowed through ODBC connection in bytes (default 5MB) -->
- <property name="maxODBCLobSizeAllowed">5242880</property>
- </bean>
-
- <!-- JDBC Socket connection properties (SSL see below) -->
- <bean name="JdbcSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
- <property name="name">JdbcSocketConfiguration</property>
- <property name="enabled">true</property>
- <property name="bindAddress">${jboss.bind.address}</property>
- <property name="portNumber">31000</property>
- <!-- Max number of threads dedicated to initial request processing (default 15) -->
- <property name="maxSocketThreads">15</property>
- <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="inputBufferSize">0</property>
- <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="outputBufferSize">0</property>
- <property name="SSLConfiguration"><inject bean="JdbcSslConfiguration"/></property>
- </bean>
-
- <bean name="JdbcSslConfiguration" class="org.teiid.transport.SSLConfiguration">
- <!-- can be one of disabled, login, or enabled
- disabled = no transport or message level security will be used
- login = only the login traffic will be encrypted at a message level
- using 128 bit AES with an ephemerial DH key exchange.
- No other config values are needed in this mode
- enabled = traffic will be secured using this configuration
- -->
- <property name="mode">login</property>
- <property name="keystoreFilename">cert.keystore</property>
- <property name="keystorePassword">passwd</property>
- <property name="keystoreType">JKS</property>
- <property name="sslProtocol">SSLv3</property>
- <property name="keymanagementAlgorithm">false</property>
- <property name="truststoreFilename">cert.truststore</property>
- <property name="truststorePassword">passwd</property>
- <!-- 1-way, 2-way, anonymous -->
- <property name="authenticationMode">1-way</property>
- </bean>
-
- <!-- Admin Socket connection settings (SSL see below) -->
- <bean name="AdminSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
- <property name="name">AdminSocketConfiguration</property>
- <property name="enabled">true</property>
- <property name="bindAddress">${jboss.bind.address}</property>
- <property name="portNumber">31443</property>
- <!-- Max number of threads dedicated to Admin and initial request processing (default 4) -->
- <property name="maxSocketThreads">4</property>
- <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="inputBufferSize">0</property>
- <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="outputBufferSize">0</property>
- <property name="SSLConfiguration"><inject bean="AdminSslConfiguration"/></property>
- </bean>
-
- <bean name="AdminSslConfiguration" class="org.teiid.transport.SSLConfiguration">
- <!-- can be one of disabled, login, or enabled
- disabled = no transport or message level security will be used
- login = only the login traffic will be encrypted at a message level
- using 128 bit AES with an ephemerial DH key exchange.
- No other config values are needed in this mode
- enabled = traffic will be secured using this configuration
- -->
- <property name="mode">enabled</property>
- <property name="keystoreFilename">cert.keystore</property>
- <property name="keystorePassword">passwd</property>
- <property name="keystoreType">JKS</property>
- <property name="sslProtocol">SSLv3</property>
- <property name="keymanagementAlgorithm">false</property>
- <property name="truststoreFilename">cert.truststore</property>
- <property name="truststorePassword">passwd</property>
- <!-- 1-way, 2-way, anonymous -->
- <property name="authenticationMode">anonymous</property>
- </bean>
-
- <!-- JDBC Socket connection properties (SSL see below) -->
- <bean name="OdbcSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
- <property name="name">OdbcSocketConfiguration</property>
- <property name="enabled">true</property>
- <property name="bindAddress">${jboss.bind.address}</property>
- <property name="portNumber">35432</property>
- <!-- Max number of threads dedicated to initial request processing (default 15) -->
- <property name="maxSocketThreads">15</property>
- <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="inputBufferSize">0</property>
- <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
- <property name="outputBufferSize">0</property>
- <property name="SSLConfiguration"><inject bean="OdbcSslConfiguration"/></property>
- </bean>
-
- <bean name="OdbcSslConfiguration" class="org.teiid.transport.SSLConfiguration">
- <!-- can be one of disabled or enabled
- disabled = no transport or message level security will be used
- enabled = traffic will be secured using this configuration
- -->
- <property name="mode">disabled</property>
- <property name="keystoreFilename">cert.keystore</property>
- <property name="keystorePassword">passwd</property>
- <property name="keystoreType">JKS</property>
- <property name="sslProtocol">SSLv3</property>
- <property name="keymanagementAlgorithm">false</property>
- <property name="truststoreFilename">cert.truststore</property>
- <property name="truststorePassword">passwd</property>
- <!-- 1-way, 2-way, anonymous -->
- <property name="authenticationMode">1-way</property>
- </bean>
-
- <!-- teiid's default security domain, replace this with your own if needs to be any other JAAS domain -->
- <application-policy xmlns="urn:jboss:security-beans:1.0" name="teiid-security">
- <authentication>
- <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule" flag="required">
- <!-- property files can found under conf/props directory -->
- <module-option name="usersProperties">props/teiid-security-users.properties</module-option>
- <module-option name="rolesProperties">props/teiid-security-roles.properties</module-option>
- </login-module>
- </authentication>
- </application-policy>
-
-</deployment>
Copied: tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml (from rev 2941, trunk/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/build/kits/jboss-container/deploy/teiid/teiid-jboss-beans.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,231 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <!-- Teiid Services -->
+ <bean name="SessionService" class="org.teiid.services.SessionServiceImpl">
+ <property name="VDBRepository"><inject bean="VDBRepository"/></property>
+ <property name="securityHelper"><inject bean="SecurityHelper"/></property>
+ <!-- Comma separated list of domains to be used to login into Teiid using JDBC connection-->
+ <property name="securityDomains">teiid-security</property>
+ <!-- security domain to be used with Admin API (please do not change this, as this should be same as profile service) -->
+ <property name="adminSecurityDomain">jmx-console</property>
+ <!-- Maximum number of sessions allowed by the system (default 5000) -->
+ <property name="sessionMaxLimit">5000</property>
+ <!-- Max allowed time before the session is terminated by the system, 0 indicates unlimited (default 0) -->
+ <property name="sessionExpirationTimeLimit">0</property>
+ </bean>
+
+ <bean name="BufferService" class="org.teiid.services.BufferServiceImpl">
+ <!-- Use disk for buffer management -->
+ <property name="useDisk">true</property>
+ <!-- Directory location for the buffer files -->
+ <property name="diskDirectory">${jboss.server.temp.dir}/teiid</property>
+ <!-- The max row count of a batch sent internally within the query processor. Should be <= the connectorBatchSize. (default 512) -->
+ <property name="processorBatchSize">512</property>
+ <!-- The max row count of a batch from a connector. Should be even multiple of processorBatchSize. (default 1024) -->
+ <property name="connectorBatchSize">1024</property>
+ <!--
+ The number of batch columns to allow in memory (default 16384).
+ This value should be set lower or higher depending on the available memory to Teiid in the VM.
+ 16384 is considered a good default for a dedicated 32-bit VM running Teiid with a 1 gig heap.
+ -->
+ <property name="maxReserveBatchColumns">16384</property>
+ <!--
+ The number of batch columns guaranteed to a processing operation. Set this value lower if the workload typically
+ processes larger numbers of concurrent queries with large intermediate results from operations such as sorting,
+ grouping, etc. (default 128)
+ -->
+ <property name="maxProcessingBatchesColumns">128</property>
+ <!-- Max File size in MB (default 2GB)-->
+ <property name="maxFileSize">2048</property>
+ <!-- Max storage space, in MB, to be used for buffer files (default 50G) -->
+ <property name="maxBufferSpace">51200</property>
+ <!-- Max open buffer files (default 64) -->
+ <property name="maxOpenFiles">64</property>
+ </bean>
+
+ <bean name="CacheFactory" class="org.teiid.cache.jboss.ClusterableCacheFactory">
+ <property name="enabled">true</property>
+ <property name="cacheManager">java:TeiidCacheManager</property>
+ <property name="resultsetCacheName">teiid-resultset-cache</property>
+ </bean>
+
+ <!-- Configuration for result set caching.
+ There will be 2 caches with these settings.
+ One cache holds results that are specific to sessions.
+ The other cache holds vdb scoped results and can
+ be replicated.
+ -->
+ <bean name="ResultsetCacheConfig" class="org.teiid.cache.CacheConfiguration">
+ <property name="name">ResultSetCacheConfig</property>
+ <property name="enabled">true</property>
+ <!-- Max Entries allowed for ResultSet Cache (default 1024) -->
+ <property name="maxEntries">1024</property>
+ <!-- Max age in seconds (default 7200 - 2 hours) -->
+ <property name="maxAgeInSeconds">7200</property>
+ <!-- Allowed values are LRU, EXPIRATION.
+ Setting this value to LRU will cause cache hint TTL values
+ to be ignored. (default EXPIRATION) -->
+ <property name="type">EXPIRATION</property>
+ <property name="location">resultset</property>
+ </bean>
+
+ <bean name="RuntimeEngineDeployer" class="org.teiid.jboss.deployers.RuntimeEngineDeployer">
+ <property name="jndiName">teiid/engine-deployer</property>
+ <property name="profileService"><inject bean="ProfileService"/></property>
+ <property name="jdbcSocketConfiguration"><inject bean="JdbcSocketConfiguration"/></property>
+ <property name="adminSocketConfiguration"><inject bean="AdminSocketConfiguration"/></property>
+ <property name="odbcSocketConfiguration"><inject bean="OdbcSocketConfiguration"/></property>
+ <property name="workManager"><inject bean="WorkManager"/></property>
+ <property name="XATerminator"><inject bean="TransactionManager" property="XATerminator"/></property>
+ <property name="transactionManager"><inject bean="TransactionManager" property="transactionManager"/></property>
+ <property name="sessionService"><inject bean="SessionService"/></property>
+ <property name="bufferService"><inject bean="BufferService"/></property>
+ <property name="securityHelper"><inject bean="SecurityHelper"/></property>
+ <property name="VDBRepository"><inject bean="VDBRepository"/></property>
+ <property name="VDBStatusChecker"><inject bean="VDBStatusChecker"/></property>
+ <property name="cacheFactory"><inject bean="CacheFactory"/></property>
+ <property name="resultsetCacheConfig"><inject bean="ResultsetCacheConfig"/></property>
+
+ <!-- Process pool maximum thread count. (default 64) -->
+ <property name="maxThreads">64</property>
+ <!-- Max active plans (default 20). Increase this value on highly concurrent systems - but ensure that the underlying pools can handle the increased load without timeouts. -->
+ <property name="maxActivePlans">20</property>
+ <!-- Query processor time slice, in milliseconds. (default 2000) -->
+ <property name="timeSliceInMilli">2000</property>
+ <!-- Maximum allowed fetch size, set via JDBC. User requested value ignored above this value. (default 20480) -->
+ <property name="maxRowsFetchSize">20480</property>
+ <!-- The max lob chunk size in KB transferred each time when processing blobs, clobs (100KB default) -->
+ <property name="lobChunkSizeInKB">100</property>
+ <!-- The maximum number of query plans that are cached.
+ This includes both user plans and internal prepared plans.
+ Note: this is a memory based cache. (default 512) -->
+ <property name="preparedPlanCacheMaxCount">512</property>
+ <!-- Turn on role checking based upon the data roles defined in VDBs. (default true) -->
+ <property name="useDataRoles">true</property>
+ <!-- Sets whether temporary table usage is enabled by default (default true) -->
+ <property name="allowCreateTemporaryTablesByDefault">true</property>
+ <!-- Long running query threshold, after which a alert can be generated by tooling if configured-->
+ <property name="queryThresholdInSecs">600</property>
+ <!-- Maximum rows allowed from a source query. -1 indicates no limit. (default -1)-->
+ <property name="maxSourceRows">-1</property>
+ <!-- Indicates if an exception should be thrown if the specified value for Maximum Source Rows is exceeded; only up to the maximum rows will be consumed. -->
+ <property name="exceptionOnMaxSourceRows">true</property>
+ <!-- Maximum size of lob allowed through ODBC connection in bytes (default 5MB) -->
+ <property name="maxODBCLobSizeAllowed">5242880</property>
+ </bean>
+
+ <!-- JDBC Socket connection properties (SSL see below) -->
+ <bean name="JdbcSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
+ <property name="name">JdbcSocketConfiguration</property>
+ <property name="enabled">true</property>
+ <property name="bindAddress">${jboss.bind.address}</property>
+ <property name="portNumber">31000</property>
+ <!-- Max number of threads dedicated to initial request processing (default 15) -->
+ <property name="maxSocketThreads">15</property>
+ <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="inputBufferSize">0</property>
+ <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="outputBufferSize">0</property>
+ <property name="SSLConfiguration"><inject bean="JdbcSslConfiguration"/></property>
+ </bean>
+
+ <bean name="JdbcSslConfiguration" class="org.teiid.transport.SSLConfiguration">
+ <!-- can be one of disabled, login, or enabled
+ disabled = no transport or message level security will be used
+ login = only the login traffic will be encrypted at a message level
+ using 128 bit AES with an ephemerial DH key exchange.
+ No other config values are needed in this mode
+ enabled = traffic will be secured using this configuration
+ -->
+ <property name="mode">login</property>
+ <property name="keystoreFilename">cert.keystore</property>
+ <property name="keystorePassword">passwd</property>
+ <property name="keystoreType">JKS</property>
+ <property name="sslProtocol">SSLv3</property>
+ <property name="keymanagementAlgorithm">false</property>
+ <property name="truststoreFilename">cert.truststore</property>
+ <property name="truststorePassword">passwd</property>
+ <!-- 1-way, 2-way, anonymous -->
+ <property name="authenticationMode">1-way</property>
+ </bean>
+
+ <!-- Admin Socket connection settings (SSL see below) -->
+ <bean name="AdminSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
+ <property name="name">AdminSocketConfiguration</property>
+ <property name="enabled">true</property>
+ <property name="bindAddress">${jboss.bind.address}</property>
+ <property name="portNumber">31443</property>
+ <!-- Max number of threads dedicated to Admin and initial request processing (default 4) -->
+ <property name="maxSocketThreads">4</property>
+ <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="inputBufferSize">0</property>
+ <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="outputBufferSize">0</property>
+ <property name="SSLConfiguration"><inject bean="AdminSslConfiguration"/></property>
+ </bean>
+
+ <bean name="AdminSslConfiguration" class="org.teiid.transport.SSLConfiguration">
+ <!-- can be one of disabled, login, or enabled
+ disabled = no transport or message level security will be used
+ login = only the login traffic will be encrypted at a message level
+ using 128 bit AES with an ephemerial DH key exchange.
+ No other config values are needed in this mode
+ enabled = traffic will be secured using this configuration
+ -->
+ <property name="mode">enabled</property>
+ <property name="keystoreFilename">cert.keystore</property>
+ <property name="keystorePassword">passwd</property>
+ <property name="keystoreType">JKS</property>
+ <property name="sslProtocol">SSLv3</property>
+ <property name="keymanagementAlgorithm">false</property>
+ <property name="truststoreFilename">cert.truststore</property>
+ <property name="truststorePassword">passwd</property>
+ <!-- 1-way, 2-way, anonymous -->
+ <property name="authenticationMode">anonymous</property>
+ </bean>
+
+ <!-- JDBC Socket connection properties (SSL see below) -->
+ <bean name="OdbcSocketConfiguration" class="org.teiid.transport.SocketConfiguration">
+ <property name="name">OdbcSocketConfiguration</property>
+ <property name="enabled">true</property>
+ <property name="bindAddress">${jboss.bind.address}</property>
+ <property name="portNumber">35432</property>
+ <!-- Max number of threads dedicated to initial request processing (default 15) -->
+ <property name="maxSocketThreads">15</property>
+ <!-- SO_RCVBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="inputBufferSize">0</property>
+ <!-- SO_SNDBUF size, 0 indicates that system default should be used (default 0) -->
+ <property name="outputBufferSize">0</property>
+ <property name="SSLConfiguration"><inject bean="OdbcSslConfiguration"/></property>
+ </bean>
+
+ <bean name="OdbcSslConfiguration" class="org.teiid.transport.SSLConfiguration">
+ <!-- can be one of disabled or enabled
+ disabled = no transport or message level security will be used
+ enabled = traffic will be secured using this configuration
+ -->
+ <property name="mode">disabled</property>
+ <property name="keystoreFilename">cert.keystore</property>
+ <property name="keystorePassword">passwd</property>
+ <property name="keystoreType">JKS</property>
+ <property name="sslProtocol">SSLv3</property>
+ <property name="keymanagementAlgorithm">false</property>
+ <property name="truststoreFilename">cert.truststore</property>
+ <property name="truststorePassword">passwd</property>
+ <!-- 1-way, 2-way, anonymous -->
+ <property name="authenticationMode">1-way</property>
+ </bean>
+
+ <!-- teiid's default security domain, replace this with your own if needs to be any other JAAS domain -->
+ <application-policy xmlns="urn:jboss:security-beans:1.0" name="teiid-security">
+ <authentication>
+ <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule" flag="required">
+ <!-- property files can found under conf/props directory -->
+ <module-option name="usersProperties">props/teiid-security-users.properties</module-option>
+ <module-option name="rolesProperties">props/teiid-security-roles.properties</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+</deployment>
Deleted: tags/teiid-parent-7.4.0.Alpha1/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/build/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,93 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid</artifactId>
- <name>Build</name>
- <description>Teiid Build</description>
- <build>
- <outputDirectory>target/kits</outputDirectory>
- <resources>
- <resource>
- <directory>kits</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- <include>**/*.sh</include>
- <include>**/*.bat</include>
- <include>**/*.html</include>
- </includes>
- </resource>
- <resource>
- <directory>kits</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- <exclude>**/*.sh</exclude>
- <exclude>**/*.bat</exclude>
- <exclude>**/*.html</exclude>
- </excludes>
- </resource>
- </resources>
- <pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- </plugin>
- </plugins>
- </pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
-
- <configuration>
- <descriptors>
- <descriptor>assembly/client-jar.xml</descriptor>
- <descriptor>assembly/jboss-container/dist.xml</descriptor>
- <descriptor>assembly/adminshell/adminshell-dist.xml</descriptor>
- </descriptors>
- </configuration>
-
- <executions>
- <execution>
- <id>create-assemblies</id>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <profiles>
- <profile>
- <!--
- This profile is activated manually, as in "mvn ... -P release ..."
- -->
- <id>release</id>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>assembly/src.xml</descriptor>
- <descriptor>assembly/docs.xml</descriptor>
- <descriptor>assembly/client-jar.xml</descriptor>
- <descriptor>assembly/jboss-container/dist.xml</descriptor>
- <descriptor>assembly/adminshell/adminshell-dist.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/build/pom.xml (from rev 2945, trunk/build/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/build/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/build/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,93 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid</artifactId>
+ <name>Build</name>
+ <description>Teiid Build</description>
+ <build>
+ <outputDirectory>target/kits</outputDirectory>
+ <resources>
+ <resource>
+ <directory>kits</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ <include>**/*.sh</include>
+ <include>**/*.bat</include>
+ <include>**/*.html</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>kits</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ <exclude>**/*.sh</exclude>
+ <exclude>**/*.bat</exclude>
+ <exclude>**/*.html</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+
+ <configuration>
+ <descriptors>
+ <descriptor>assembly/client-jar.xml</descriptor>
+ <descriptor>assembly/jboss-container/dist.xml</descriptor>
+ <descriptor>assembly/adminshell/adminshell-dist.xml</descriptor>
+ </descriptors>
+ </configuration>
+
+ <executions>
+ <execution>
+ <id>create-assemblies</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <!--
+ This profile is activated manually, as in "mvn ... -P release ..."
+ -->
+ <id>release</id>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>assembly/src.xml</descriptor>
+ <descriptor>assembly/docs.xml</descriptor>
+ <descriptor>assembly/client-jar.xml</descriptor>
+ <descriptor>assembly/jboss-container/dist.xml</descriptor>
+ <descriptor>assembly/adminshell/adminshell-dist.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml
===================================================================
--- trunk/cache-jbosscache/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-cache-jbosscache</artifactId>
- <name>JBoss Cache</name>
- <description>JBossCache provider.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml (from rev 2945, trunk/cache-jbosscache/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/cache-jbosscache/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-cache-jbosscache</artifactId>
+ <name>JBoss Cache</name>
+ <description>JBossCache provider.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/client/pom.xml
===================================================================
--- trunk/client/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/client/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-client</artifactId>
- <name>Client</name>
- <description>Contains the packages related to communication, administrative api,
- sessioning and transport level messaging.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- </dependency>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/client/pom.xml (from rev 2945, trunk/client/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/client/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/client/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-client</artifactId>
+ <name>Client</name>
+ <description>Contains the packages related to communication, administrative api,
+ sessioning and transport level messaging.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java
===================================================================
--- trunk/client/src/main/java/org/teiid/adminapi/Admin.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,291 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.adminapi;
-
-import java.io.InputStream;
-import java.util.Collection;
-import java.util.Properties;
-import java.util.Set;
-
-import org.teiid.adminapi.VDB.ConnectionType;
-
-public interface Admin {
-
- public enum Cache {PREPARED_PLAN_CACHE, QUERY_SERVICE_RESULT_SET_CACHE};
-
- /**
- * Assign a {@link Translator} and Data source to a {@link VDB}'s Model
- *
- * @param vdbName Name of the VDB
- * @param vdbVersion Version of the VDB
- * @param modelName Name of the Model to map Connection Factory
- * @param sourceName sourceName for the model
- * @param translatorName
- * @param dsName data source name that can found in the JNDI map.
- * @throws AdminException
- */
- void assignToModel(String vdbName, int vdbVersion, String modelName, String sourceName, String translatorName, String dsName) throws AdminException;
-
- /**
- * Change the {@link ConnectionType} of the {@link VDB}.
- * @param vdbName Name of the VDB
- * @param vdbVersion Version of the VDB
- * @param type
- * @throws AdminException
- */
- void changeVDBConnectionType(String vdbName, int vdbVersion, ConnectionType type) throws AdminException;
-
- /**
- * Deploy a {@link VDB} file.
- * @param name Name of the VDB file to save under
- * @param VDB VDB.
- * @throws AdminException
- *
- * @return the {@link VDB} representing the current property values and runtime state.
- */
- public void deployVDB(String fileName, InputStream vdb) throws AdminException;
-
-
- /**
- * Delete the VDB with the given name and version
- * @param vdbName
- * @param version
- * @throws AdminException
- */
- void deleteVDB(String vdbName, int vdbVersion) throws AdminException;
-
- /**
- * Get the VDBs that currently deployed in the system
- *
- * @return Collection of {@link VDB}s. There could be multiple VDBs with the
- * same name in the Collection but they will differ by VDB version.
- * @throws AdminException
- */
- Set<VDB> getVDBs() throws AdminException;
-
- /**
- * Get the VDB
- * @param vdbName
- * @param vbdVersion
- * @throws AdminException
- * @return
- */
- VDB getVDB(String vdbName, int vbdVersion) throws AdminException;
-
- /**
- * Get the translators that are available in the configuration
- *
- * @return Collection of {@link Translator}
- * @throws AdminException
- */
- Collection<Translator> getTranslators() throws AdminException;
-
- /**
- * Get the translator by the given the deployed name.
- * @param deployedName - name of the deployed translator
- * @return null if not found
- * @throws AdminException
- */
- Translator getTranslator(String deployedName) throws AdminException;
-
- /**
- * Get the Worker Pool statistics in runtime engine.
- *
- * @return {@link WorkerPoolStatistics}
- * @throws AdminException
- */
- WorkerPoolStatistics getWorkerPoolStats() throws AdminException;
-
- /**
- * Get the Caches that correspond to the specified identifier pattern
- * @return Collection of {@link String}
- * @throws AdminException
- */
- Collection<String> getCacheTypes() throws AdminException;
-
- /**
- * Get all the current Sessions.
- * @return Collection of {@link Session}
- * @throws AdminException
- */
- Collection<Session> getSessions() throws AdminException;
-
- /**
- * Get the all Requests that are currently in process
- * @return Collection of {@link Request}
- * @throws AdminException
- */
- Collection<Request> getRequests() throws AdminException;
-
- /**
- * Get the Requests for the given session
- * @return Collection of {@link Request}
- * @throws AdminException
- */
- Collection<Request> getRequestsForSession(String sessionId) throws AdminException;
-
-
- /**
- * Get all of the available configuration Properties for the specified connector
- * @param templateName - Name of the connector
- * @return
- * @throws AdminException
- */
- Collection<PropertyDefinition> getTemplatePropertyDefinitions(String templateName) throws AdminException;
-
-
- /**
- * Get all transaction matching the identifier.
- * @return
- * @throws AdminException
- */
- Collection<Transaction> getTransactions() throws AdminException;
-
- /**
- * Clear the cache or caches specified by the cacheIdentifier.
- * @param cacheType Cache Type
- * No wild cards currently supported, must be explicit
- * @throws AdminException
- */
- void clearCache(String cacheType) throws AdminException;
-
- /**
- * Clear the cache of the given VDB for provided cache type
- * @param cacheType Cache Type
- * No wild cards currently supported, must be explicit
- * @param vdbName - Name of the VDB
- * @param vdbVersion - VDB version
- * @throws AdminException
- */
- void clearCache(String cacheType, String vdbName, int vdbVersion) throws AdminException;
-
-
- /**
- * Get the Cache Statistics for the given type
- * @param cacheType Cache Type
- * @return {@link CacheStatistics}
- * @throws AdminException
- */
- CacheStatistics getCacheStats(String cacheType) throws AdminException;
-
- /**
- * Terminate the Session
- *
- * @param identifier Session Identifier {@link org.teiid.adminapi.Session}.
- * No wild cards currently supported, must be explicit
- * @throws AdminException
- */
- void terminateSession(String sessionId) throws AdminException;
-
- /**
- * Cancel Request
- *
- * @param sessionId session Identifier for the request.
- * @param executionId request Identifier
- *
- * @throws AdminException
- */
- void cancelRequest(String sessionId, long executionId) throws AdminException;
-
- /**
- * Mark the given global transaction as rollback only.
- * @param transactionId
- * @throws AdminException
- */
- void terminateTransaction(String transactionId) throws AdminException;
-
- /**
- * Closes the admin connection
- */
- void close();
-
- /**
- * Assign a Role name to the Data Role in a given VDB
- *
- * @param vdbName
- * @param vdbVersion
- * @param dataRole
- * @param mappedRoleName
- */
- void addDataRoleMapping(String vdbName, int vdbVersion, String dataRole, String mappedRoleName) throws AdminException;
-
- /**
- * Remove a Role name to the Data Role in a given VDB
- *
- * @param vdbName
- * @param vdbVersion
- * @param dataRole
- * @param mappedRoleName
- */
- void removeDataRoleMapping(String vdbName, int vdbVersion, String dataRole, String mappedRoleName) throws AdminException;
-
- /**
- * Set the any authenticated flag on the Data Role in a given VDB
- *
- * @param vdbName
- * @param vdbVersion
- * @param dataRole
- * @param anyAuthenticated
- */
- void setAnyAuthenticatedForDataRole(String vdbName, int vdbVersion, String dataRole, boolean anyAuthenticated) throws AdminException;
-
- /**
- * Merge the Source VDB into Target VDB. Both Source and Target VDBs must be present for this method to
- * succeed. The changes will not be persistent between server restarts.
- * @param sourceVDBName
- * @param sourceVDBVersion
- * @param targetVDBName
- * @param targetVDBVersion
- */
- void mergeVDBs(String sourceVDBName, int sourceVDBVersion, String targetVDBName, int targetVDBVersion) throws AdminException;
-
-
- /**
- * Creates a JCA data source
- * @param deploymentName - name of the source
- * @param templateName - template of data source
- * @param properties - properties
- * @throws AdminException
- */
- void createDataSource(String deploymentName, String templateName, Properties properties) throws AdminException;
-
- /**
- * Delete data source.
- * @param deployedName
- * @throws AdminException
- */
- void deleteDataSource(String deployedName) throws AdminException;
-
- /**
- * Returns the all names of all the data sources available in the configuration.
- */
- Collection<String> getDataSourceNames() throws AdminException;
-
- /**
- * Get the Datasource templates available in the configuration.
- *
- * @return Set of template names.
- * @throws AdminException
- */
- Set<String> getDataSourceTemplateNames() throws AdminException;
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java (from rev 2942, trunk/client/src/main/java/org/teiid/adminapi/Admin.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/client/src/main/java/org/teiid/adminapi/Admin.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,298 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.adminapi;
+
+import java.io.InputStream;
+import java.util.Collection;
+import java.util.Properties;
+import java.util.Set;
+
+import org.teiid.adminapi.VDB.ConnectionType;
+
+public interface Admin {
+
+ public enum Cache {PREPARED_PLAN_CACHE, QUERY_SERVICE_RESULT_SET_CACHE};
+
+ /**
+ * Assign a {@link Translator} and Data source to a {@link VDB}'s Model
+ *
+ * @param vdbName Name of the VDB
+ * @param vdbVersion Version of the VDB
+ * @param modelName Name of the Model to map Connection Factory
+ * @param sourceName sourceName for the model
+ * @param translatorName
+ * @param dsName data source name that can found in the JNDI map.
+ * @throws AdminException
+ */
+ void assignToModel(String vdbName, int vdbVersion, String modelName, String sourceName, String translatorName, String dsName) throws AdminException;
+
+ /**
+ * Change the {@link ConnectionType} of the {@link VDB}.
+ * @param vdbName Name of the VDB
+ * @param vdbVersion Version of the VDB
+ * @param type
+ * @throws AdminException
+ */
+ void changeVDBConnectionType(String vdbName, int vdbVersion, ConnectionType type) throws AdminException;
+
+ /**
+ * Deploy a {@link VDB} file.
+ * @param name Name of the VDB file to save under
+ * @param VDB VDB.
+ * @throws AdminException
+ *
+ * @return the {@link VDB} representing the current property values and runtime state.
+ */
+ public void deployVDB(String fileName, InputStream vdb) throws AdminException;
+
+
+ /**
+ * Delete the VDB with the given name and version
+ * @param vdbName
+ * @param version
+ * @throws AdminException
+ */
+ void deleteVDB(String vdbName, int vdbVersion) throws AdminException;
+
+ /**
+ * Get the VDBs that currently deployed in the system
+ *
+ * @return Collection of {@link VDB}s. There could be multiple VDBs with the
+ * same name in the Collection but they will differ by VDB version.
+ * @throws AdminException
+ */
+ Set<VDB> getVDBs() throws AdminException;
+
+ /**
+ * Get the VDB
+ * @param vdbName
+ * @param vbdVersion
+ * @throws AdminException
+ * @return
+ */
+ VDB getVDB(String vdbName, int vbdVersion) throws AdminException;
+
+ /**
+ * Get the translators that are available in the configuration
+ *
+ * @return Collection of {@link Translator}
+ * @throws AdminException
+ */
+ Collection<Translator> getTranslators() throws AdminException;
+
+ /**
+ * Get the translator by the given the deployed name.
+ * @param deployedName - name of the deployed translator
+ * @return null if not found
+ * @throws AdminException
+ */
+ Translator getTranslator(String deployedName) throws AdminException;
+
+ /**
+ * Get the Worker Pool statistics in runtime engine.
+ *
+ * @return {@link WorkerPoolStatistics}
+ * @throws AdminException
+ */
+ WorkerPoolStatistics getWorkerPoolStats() throws AdminException;
+
+ /**
+ * Get the Caches that correspond to the specified identifier pattern
+ * @return Collection of {@link String}
+ * @throws AdminException
+ */
+ Collection<String> getCacheTypes() throws AdminException;
+
+ /**
+ * Get all the current Sessions.
+ * @return Collection of {@link Session}
+ * @throws AdminException
+ */
+ Collection<Session> getSessions() throws AdminException;
+
+ /**
+ * Get the all Requests that are currently in process
+ * @return Collection of {@link Request}
+ * @throws AdminException
+ */
+ Collection<Request> getRequests() throws AdminException;
+
+ /**
+ * Get the Requests for the given session
+ * @return Collection of {@link Request}
+ * @throws AdminException
+ */
+ Collection<Request> getRequestsForSession(String sessionId) throws AdminException;
+
+
+ /**
+ * Get all of the available configuration Properties for the specified connector
+ * @param templateName - Name of the connector
+ * @return
+ * @throws AdminException
+ */
+ Collection<PropertyDefinition> getTemplatePropertyDefinitions(String templateName) throws AdminException;
+
+
+ /**
+ * Get all transaction matching the identifier.
+ * @return
+ * @throws AdminException
+ */
+ Collection<Transaction> getTransactions() throws AdminException;
+
+ /**
+ * Clear the cache or caches specified by the cacheIdentifier.
+ * @param cacheType Cache Type
+ * No wild cards currently supported, must be explicit
+ * @throws AdminException
+ */
+ void clearCache(String cacheType) throws AdminException;
+
+ /**
+ * Clear the cache of the given VDB for provided cache type
+ * @param cacheType Cache Type
+ * No wild cards currently supported, must be explicit
+ * @param vdbName - Name of the VDB
+ * @param vdbVersion - VDB version
+ * @throws AdminException
+ */
+ void clearCache(String cacheType, String vdbName, int vdbVersion) throws AdminException;
+
+
+ /**
+ * Get the Cache Statistics for the given type
+ * @param cacheType Cache Type
+ * @return {@link CacheStatistics}
+ * @throws AdminException
+ */
+ CacheStatistics getCacheStats(String cacheType) throws AdminException;
+
+ /**
+ * Terminate the Session
+ *
+ * @param identifier Session Identifier {@link org.teiid.adminapi.Session}.
+ * No wild cards currently supported, must be explicit
+ * @throws AdminException
+ */
+ void terminateSession(String sessionId) throws AdminException;
+
+ /**
+ * Cancel Request
+ *
+ * @param sessionId session Identifier for the request.
+ * @param executionId request Identifier
+ *
+ * @throws AdminException
+ */
+ void cancelRequest(String sessionId, long executionId) throws AdminException;
+
+ /**
+ * Mark the given global transaction as rollback only.
+ * @param transactionId
+ * @throws AdminException
+ */
+ void terminateTransaction(String transactionId) throws AdminException;
+
+ /**
+ * Closes the admin connection
+ */
+ void close();
+
+ /**
+ * Assign a Role name to the Data Role in a given VDB
+ *
+ * @param vdbName
+ * @param vdbVersion
+ * @param dataRole
+ * @param mappedRoleName
+ */
+ void addDataRoleMapping(String vdbName, int vdbVersion, String dataRole, String mappedRoleName) throws AdminException;
+
+ /**
+ * Remove a Role name to the Data Role in a given VDB
+ *
+ * @param vdbName
+ * @param vdbVersion
+ * @param dataRole
+ * @param mappedRoleName
+ */
+ void removeDataRoleMapping(String vdbName, int vdbVersion, String dataRole, String mappedRoleName) throws AdminException;
+
+ /**
+ * Set the any authenticated flag on the Data Role in a given VDB
+ *
+ * @param vdbName
+ * @param vdbVersion
+ * @param dataRole
+ * @param anyAuthenticated
+ */
+ void setAnyAuthenticatedForDataRole(String vdbName, int vdbVersion, String dataRole, boolean anyAuthenticated) throws AdminException;
+
+ /**
+ * Merge the Source VDB into Target VDB. Both Source and Target VDBs must be present for this method to
+ * succeed. The changes will not be persistent between server restarts.
+ * @param sourceVDBName
+ * @param sourceVDBVersion
+ * @param targetVDBName
+ * @param targetVDBVersion
+ */
+ void mergeVDBs(String sourceVDBName, int sourceVDBVersion, String targetVDBName, int targetVDBVersion) throws AdminException;
+
+
+ /**
+ * Creates a JCA data source
+ * @param deploymentName - name of the source
+ * @param templateName - template of data source
+ * @param properties - properties
+ * @throws AdminException
+ */
+ void createDataSource(String deploymentName, String templateName, Properties properties) throws AdminException;
+
+ /**
+ * Delete data source.
+ * @param deployedName
+ * @throws AdminException
+ */
+ void deleteDataSource(String deployedName) throws AdminException;
+
+ /**
+ * Returns the all names of all the data sources available in the configuration.
+ */
+ Collection<String> getDataSourceNames() throws AdminException;
+
+ /**
+ * Get the Datasource templates available in the configuration.
+ *
+ * @return Set of template names.
+ * @throws AdminException
+ */
+ Set<String> getDataSourceTemplateNames() throws AdminException;
+
+ /**
+ * Tell the engine that the given source is available. Pending dynamic vdb metadata loads will be resumed.
+ * @param jndiName
+ * @throws AdminException
+ */
+ void markDataSourceAvailable(String jndiName) throws AdminException;
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml
===================================================================
--- trunk/common-core/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-common-core</artifactId>
- <name>Common Core</name>
- <description>Core shared library</description>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <phase>process-resources</phase>
- <configuration>
- <tasks>
- <tstamp />
- <replace dir="${project.build.outputDirectory}" token="@build-date@" value="${DSTAMP}">
- <include name="**/*.properties" />
- </replace>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml (from rev 2945, trunk/common-core/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/common-core/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-common-core</artifactId>
+ <name>Common Core</name>
+ <description>Core shared library</description>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>process-resources</phase>
+ <configuration>
+ <tasks>
+ <tstamp />
+ <replace dir="${project.build.outputDirectory}" token="@build-date@" value="${DSTAMP}">
+ <include name="**/*.properties" />
+ </replace>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml
===================================================================
--- trunk/connectors/connector-file/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>connector-file</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>File Connector</name>
- <packaging>rar</packaging>
- <description>This connector reads data from files.</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>build_jar</id>
- <phase>process-classes</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- <execution>
- <id>deploy_jar</id>
- <phase>package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classifier>lib</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml (from rev 2945, trunk/connectors/connector-file/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>connector-file</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>File Connector</name>
+ <packaging>rar</packaging>
+ <description>This connector reads data from files.</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build_jar</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>deploy_jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <classifier>lib</classifier>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml
===================================================================
--- trunk/connectors/connector-ldap/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,57 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>connector-ldap</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>LDAP Connector</name>
- <description>LDAP Connector</description>
- <packaging>rar</packaging>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>build_jar</id>
- <phase>process-classes</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- <execution>
- <id>deploy_jar</id>
- <phase>package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classifier>lib</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml (from rev 2945, trunk/connectors/connector-ldap/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,57 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>connector-ldap</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>LDAP Connector</name>
+ <description>LDAP Connector</description>
+ <packaging>rar</packaging>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build_jar</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>deploy_jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <classifier>lib</classifier>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml
===================================================================
--- trunk/connectors/connector-salesforce/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>connector-salesforce</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Salesforce Connector</name>
- <packaging>rar</packaging>
- <description>Integrates the query engine with Salesforce.com.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid.connectors</groupId>
- <artifactId>salesforce-api</artifactId>
- <version>${project.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid.connectors</groupId>
- <artifactId>translator-salesforce</artifactId>
- <version>${project.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>build_jar</id>
- <phase>process-classes</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- <execution>
- <id>deploy_jar</id>
- <phase>package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classifier>lib</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml (from rev 2945, trunk/connectors/connector-salesforce/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>connector-salesforce</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Salesforce Connector</name>
+ <packaging>rar</packaging>
+ <description>Integrates the query engine with Salesforce.com.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <artifactId>salesforce-api</artifactId>
+ <version>${project.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <artifactId>translator-salesforce</artifactId>
+ <version>${project.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build_jar</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>deploy_jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <classifier>lib</classifier>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml
===================================================================
--- trunk/connectors/connector-ws/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>connector-ws</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Web Service Connector</name>
- <packaging>rar</packaging>
- <description>This connector reads data from Web Services</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.cxf</groupId>
- <artifactId>cxf-rt-frontend-jaxws</artifactId>
- <version>2.2.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.cxf</groupId>
- <artifactId>cxf-rt-transports-http</artifactId>
- <version>2.2.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.cxf</groupId>
- <artifactId>cxf-rt-ws-security</artifactId>
- <version>2.2.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.cxf</groupId>
- <artifactId>cxf-rt-ws-policy</artifactId>
- <version>2.2.2</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>build_jar</id>
- <phase>process-classes</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- <execution>
- <id>deploy_jar</id>
- <phase>package</phase>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classifier>lib</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml (from rev 2945, trunk/connectors/connector-ws/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/connector-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>connector-ws</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Web Service Connector</name>
+ <packaging>rar</packaging>
+ <description>This connector reads data from Web Services</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-frontend-jaxws</artifactId>
+ <version>2.2.2</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-transports-http</artifactId>
+ <version>2.2.2</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-ws-security</artifactId>
+ <version>2.2.2</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-ws-policy</artifactId>
+ <version>2.2.2</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build_jar</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>deploy_jar</id>
+ <phase>package</phase>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <classifier>lib</classifier>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml
===================================================================
--- trunk/connectors/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,91 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>connectors</artifactId>
- <packaging>pom</packaging>
- <name>Connectors</name>
- <description>This project is aggregator for all the supported connectors.</description>
- <dependencies>
-
- <!-- Internal Test Dependencies -->
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
-
- <!-- External dependencies -->
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <modules>
- <module>translator-jdbc</module>
- <module>translator-ldap</module>
- <module>translator-loopback</module>
- <module>translator-file</module>
- <module>translator-salesforce</module>
- <module>connector-file</module>
- <module>connector-salesforce</module>
- <module>connector-ldap</module>
- <module>salesforce-api</module>
- <module>connector-ws</module>
- <module>sandbox</module>
- <module>translator-ws</module>
- <module>translator-olap</module>
- </modules>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml (from rev 2945, trunk/connectors/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>connectors</artifactId>
+ <packaging>pom</packaging>
+ <name>Connectors</name>
+ <description>This project is aggregator for all the supported connectors.</description>
+ <dependencies>
+
+ <!-- Internal Test Dependencies -->
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- External dependencies -->
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <modules>
+ <module>translator-jdbc</module>
+ <module>translator-ldap</module>
+ <module>translator-loopback</module>
+ <module>translator-file</module>
+ <module>translator-salesforce</module>
+ <module>connector-file</module>
+ <module>connector-salesforce</module>
+ <module>connector-ldap</module>
+ <module>salesforce-api</module>
+ <module>connector-ws</module>
+ <module>sandbox</module>
+ <module>translator-ws</module>
+ <module>translator-olap</module>
+ </modules>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml
===================================================================
--- trunk/connectors/salesforce-api/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,14 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>salesforce-api</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Salesforce API</name>
- <description>The java API for the Salesforce.com partner web service API</description>
- <dependencies>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml (from rev 2945, trunk/connectors/salesforce-api/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/salesforce-api/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,14 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>salesforce-api</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Salesforce API</name>
+ <description>The java API for the Salesforce.com partner web service API</description>
+ <dependencies>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml
===================================================================
--- trunk/connectors/sandbox/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid.connectors</groupId>
- <artifactId>sandbox</artifactId>
- <packaging>pom</packaging>
- <name>Sandbox</name>
- <description>Experimental connectors in progress</description>
- <modules>
- <module>translator-yahoo</module>
- </modules>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml (from rev 2945, trunk/connectors/sandbox/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <artifactId>sandbox</artifactId>
+ <packaging>pom</packaging>
+ <name>Sandbox</name>
+ <description>Experimental connectors in progress</description>
+ <modules>
+ <module>translator-yahoo</module>
+ </modules>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml
===================================================================
--- trunk/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>sandbox</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-yahoo</artifactId>
- <groupId>org.jboss.teiid.connectors.sandbox</groupId>
- <name>Yahoo Translator</name>
- <description>Test translator used to query ticker symbols from Yahoo website</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml (from rev 2945, trunk/connectors/sandbox/translator-yahoo/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>sandbox</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-yahoo</artifactId>
+ <groupId>org.jboss.teiid.connectors.sandbox</groupId>
+ <name>Yahoo Translator</name>
+ <description>Test translator used to query ticker symbols from Yahoo website</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml
===================================================================
--- trunk/connectors/translator-file/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-file</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>File Translator</name>
- <description>This translator provides access to the file system.</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml (from rev 2945, trunk/connectors/translator-file/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-file/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-file</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>File Translator</name>
+ <description>This translator provides access to the file system.</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml
===================================================================
--- trunk/connectors/translator-jdbc/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-jdbc</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>JDBC Translator</name>
-
- <description>This project contains translators for a JDBC source. Currently this is an aggregator for all the JDBC translators relational databases.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml (from rev 2945, trunk/connectors/translator-jdbc/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-jdbc/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-jdbc</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>JDBC Translator</name>
+
+ <description>This project contains translators for a JDBC source. Currently this is an aggregator for all the JDBC translators relational databases.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml
===================================================================
--- trunk/connectors/translator-ldap/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,52 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-ldap</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>LDAP Translator</name>
- <description>LDAP Translator</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml (from rev 2945, trunk/connectors/translator-ldap/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ldap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,52 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-ldap</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>LDAP Translator</name>
+ <description>LDAP Translator</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml
===================================================================
--- trunk/connectors/translator-loopback/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-loopback</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Loopback Translator</name>
- <description>Loopback Translator</description>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml (from rev 2945, trunk/connectors/translator-loopback/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-loopback/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-loopback</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Loopback Translator</name>
+ <description>Loopback Translator</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml
===================================================================
--- trunk/connectors/translator-olap/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-olap</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>OLAP Translator</name>
- <description>This translator provides access to Query Analysis Cubes</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.olap4j</groupId>
- <artifactId>olap4j</artifactId>
- <version>0.9.8.343</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml (from rev 2945, trunk/connectors/translator-olap/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-olap/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-olap</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>OLAP Translator</name>
+ <description>This translator provides access to Query Analysis Cubes</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.olap4j</groupId>
+ <artifactId>olap4j</artifactId>
+ <version>0.9.8.343</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml
===================================================================
--- trunk/connectors/translator-salesforce/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-salesforce</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Salesforce Translator</name>
- <description>Integrates the query engine with Salesforce.com.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid.connectors</groupId>
- <artifactId>salesforce-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml (from rev 2945, trunk/connectors/translator-salesforce/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-salesforce/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-salesforce</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Salesforce Translator</name>
+ <description>Integrates the query engine with Salesforce.com.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <artifactId>salesforce-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml
===================================================================
--- trunk/connectors/translator-ws/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>connectors</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>translator-ws</artifactId>
- <groupId>org.jboss.teiid.connectors</groupId>
- <name>Web service Translator</name>
- <description>This translator provides access to Web Services.</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>false</filtering>
- <excludes>
- <exclude>**/*.xml</exclude>
- <exclude>**/*.properties</exclude>
- </excludes>
- </resource>
- </resources>
- </build>
-
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml (from rev 2945, trunk/connectors/translator-ws/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/connectors/translator-ws/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>connectors</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>translator-ws</artifactId>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <name>Web service Translator</name>
+ <description>This translator provides access to Web Services.</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ <excludes>
+ <exclude>**/*.xml</exclude>
+ <exclude>**/*.properties</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ </build>
+
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/console/pom.xml
===================================================================
--- trunk/console/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/console/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,175 +0,0 @@
-<?xml version="1.0"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-console</artifactId>
- <name>Console</name>
- <description>This project is for the RHQ plugin that supports the TEIID Console </description>
-
- <properties>
- <!--
- <org.jboss.jopr.as4.version>1.2.0.GA</org.jboss.jopr.as4.version>
- -->
- <org.jboss.jopr.as5.version>1.2.0.GA</org.jboss.jopr.as5.version>
- <jopr.jboss.as5.plugin.version>1.4.0.B01</jopr.jboss.as5.plugin.version>
- <org.rhq.version>1.3.0.GA</org.rhq.version>
- <apache.ant.version>1.7.0</apache.ant.version>
- <teiid.version>${project.version}</teiid.version>
-
-
- </properties>
-
- <dependencies>
- <!--
- Below are the core modules that are required dependencies of all
- plugins
- -->
- <dependency>
- <groupId>org.rhq</groupId>
- <artifactId>rhq-core-domain</artifactId>
- <version>${org.rhq.version}</version>
- <scope>provided</scope>
- <!--
- provided by the agent/plugin-container
- -->
- </dependency>
-
-
- <dependency>
- <groupId>org.rhq</groupId>
- <artifactId>rhq-core-plugin-api</artifactId>
- <version>${org.rhq.version}</version>
- <scope>provided</scope> <!-- provided by the agent/plugin-container -->
- </dependency>
-
- <dependency>
- <groupId>org.rhq</groupId>
- <artifactId>rhq-core-native-system</artifactId>
- <version>${org.rhq.version}</version>
- <scope>provided</scope> <!-- provided by the agent/plugin-container -->
- </dependency>
-
- <dependency>
- <groupId>org.rhq</groupId>
- <artifactId>rhq-jmx-plugin</artifactId>
- <version>${org.rhq.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.rhq</groupId>
- <artifactId>rhq-core-util</artifactId>
- <version>${org.rhq.version}</version>
- </dependency>
-
- <dependency>
- <groupId>mc4j</groupId>
- <artifactId>org-mc4j-ems</artifactId>
- <version>1.2.6</version>
- </dependency>
-
- <!--
- TODO: This is a fix for the Javac bug requiring annotations to be
- available when compiling dependent classes. It is fixed in JDK 6.
- -->
- <dependency>
- <groupId>javax.persistence</groupId>
- <artifactId>persistence-api</artifactId>
- <version>1.0</version>
- <scope>provided</scope> <!-- provided by the agent/plugin-container -->
- </dependency>
-
-
- <!--
- TODO: This is a fix for the Javac bug requiring annotations to be
- available when compiling dependent classes; it is fixed in JDK 6.
- -->
- <dependency>
- <groupId>jboss.jboss-embeddable-ejb3</groupId>
- <artifactId>hibernate-all</artifactId>
- <version>1.0.0.Alpha9</version>
- <scope>provided</scope> <!-- provided by the agent/plugin-container -->
- </dependency>
-
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <type>test-jar</type>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.jopr</groupId>
- <artifactId>jopr-embedded-jbas5</artifactId>
- <type>war</type>
- <version>${org.jboss.jopr.as5.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-profileservice-spi</artifactId>
- <version>5.1.0.CR2</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.on</groupId>
- <artifactId>jopr-jboss-as-5-plugin</artifactId>
- <version>${jopr.jboss.as5.plugin.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-io</artifactId>
- <version>1.3.2</version>
- </dependency>
-
-
- </dependencies>
-
-
-
- <build>
- <outputDirectory>target/classes</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <filtering>true</filtering>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.properties</include>
- </includes>
- </resource>
- </resources>
- </build>
-
-
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/console/pom.xml (from rev 2945, trunk/console/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/console/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/console/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,175 @@
+<?xml version="1.0"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-console</artifactId>
+ <name>Console</name>
+ <description>This project is for the RHQ plugin that supports the TEIID Console </description>
+
+ <properties>
+ <!--
+ <org.jboss.jopr.as4.version>1.2.0.GA</org.jboss.jopr.as4.version>
+ -->
+ <org.jboss.jopr.as5.version>1.2.0.GA</org.jboss.jopr.as5.version>
+ <jopr.jboss.as5.plugin.version>1.4.0.B01</jopr.jboss.as5.plugin.version>
+ <org.rhq.version>1.3.0.GA</org.rhq.version>
+ <apache.ant.version>1.7.0</apache.ant.version>
+ <teiid.version>${project.version}</teiid.version>
+
+
+ </properties>
+
+ <dependencies>
+ <!--
+ Below are the core modules that are required dependencies of all
+ plugins
+ -->
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-domain</artifactId>
+ <version>${org.rhq.version}</version>
+ <scope>provided</scope>
+ <!--
+ provided by the agent/plugin-container
+ -->
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-plugin-api</artifactId>
+ <version>${org.rhq.version}</version>
+ <scope>provided</scope> <!-- provided by the agent/plugin-container -->
+ </dependency>
+
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-native-system</artifactId>
+ <version>${org.rhq.version}</version>
+ <scope>provided</scope> <!-- provided by the agent/plugin-container -->
+ </dependency>
+
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-jmx-plugin</artifactId>
+ <version>${org.rhq.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.rhq</groupId>
+ <artifactId>rhq-core-util</artifactId>
+ <version>${org.rhq.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>mc4j</groupId>
+ <artifactId>org-mc4j-ems</artifactId>
+ <version>1.2.6</version>
+ </dependency>
+
+ <!--
+ TODO: This is a fix for the Javac bug requiring annotations to be
+ available when compiling dependent classes. It is fixed in JDK 6.
+ -->
+ <dependency>
+ <groupId>javax.persistence</groupId>
+ <artifactId>persistence-api</artifactId>
+ <version>1.0</version>
+ <scope>provided</scope> <!-- provided by the agent/plugin-container -->
+ </dependency>
+
+
+ <!--
+ TODO: This is a fix for the Javac bug requiring annotations to be
+ available when compiling dependent classes; it is fixed in JDK 6.
+ -->
+ <dependency>
+ <groupId>jboss.jboss-embeddable-ejb3</groupId>
+ <artifactId>hibernate-all</artifactId>
+ <version>1.0.0.Alpha9</version>
+ <scope>provided</scope> <!-- provided by the agent/plugin-container -->
+ </dependency>
+
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <type>test-jar</type>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jopr</groupId>
+ <artifactId>jopr-embedded-jbas5</artifactId>
+ <type>war</type>
+ <version>${org.jboss.jopr.as5.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-profileservice-spi</artifactId>
+ <version>5.1.0.CR2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.on</groupId>
+ <artifactId>jopr-jboss-as-5-plugin</artifactId>
+ <version>${jopr.jboss.as5.plugin.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>1.3.2</version>
+ </dependency>
+
+
+ </dependencies>
+
+
+
+ <build>
+ <outputDirectory>target/classes</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </resource>
+ </resources>
+ </build>
+
+
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml
===================================================================
--- trunk/documentation/admin-guide/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>admin-guide</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Admin Guide</name>
- <description>The Teiid Admin manual</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>admin_guide.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_admin_guide.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xincludeSupported>true</xincludeSupported>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml (from rev 2945, trunk/documentation/admin-guide/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/admin-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>admin-guide</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Admin Guide</name>
+ <description>The Teiid Admin manual</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>admin_guide.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_admin_guide.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml
===================================================================
--- trunk/documentation/caching-guide/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>caching-guide</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Teiid Caching Guide</name>
- <description>The Teiid Caching Guide</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>main.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_caching_guide.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xincludeSupported>true</xincludeSupported>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml (from rev 2945, trunk/documentation/caching-guide/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/caching-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>caching-guide</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Teiid Caching Guide</name>
+ <description>The Teiid Caching Guide</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>main.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_caching_guide.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml
===================================================================
--- trunk/documentation/client-developers-guide/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>client-developers-guide</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Teiid Client Developers Guide</name>
- <description>The Client Developers Guide</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>main.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_client_developers_guide.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xincludeSupported>true</xincludeSupported>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml (from rev 2945, trunk/documentation/client-developers-guide/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/client-developers-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>client-developers-guide</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Teiid Client Developers Guide</name>
+ <description>The Client Developers Guide</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>main.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_client_developers_guide.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml
===================================================================
--- trunk/documentation/developer-guide/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>developer-guide</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Developer's Guide</name>
- <description>The Teiid Developer's Guide</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>Developer_Guide.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_developer_guide.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xincludeSupported>true</xincludeSupported>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml (from rev 2945, trunk/documentation/developer-guide/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/developer-guide/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>developer-guide</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Developer's Guide</name>
+ <description>The Teiid Developer's Guide</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>Developer_Guide.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_developer_guide.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml
===================================================================
--- trunk/documentation/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,21 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <packaging>pom</packaging>
- <name>Documents</name>
- <description>Teiid Documentation Aggregator</description>
- <modules>
- <module>admin-guide</module>
- <module>reference</module>
- <module>developer-guide</module>
- <module>quick-start-example</module>
- <module>client-developers-guide</module>
- <module>caching-guide</module>
- </modules>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml (from rev 2945, trunk/documentation/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,21 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <packaging>pom</packaging>
+ <name>Documents</name>
+ <description>Teiid Documentation Aggregator</description>
+ <modules>
+ <module>admin-guide</module>
+ <module>reference</module>
+ <module>developer-guide</module>
+ <module>quick-start-example</module>
+ <module>client-developers-guide</module>
+ <module>caching-guide</module>
+ </modules>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml
===================================================================
--- trunk/documentation/quick-start-example/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>quick-start-example</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Quick Start Guide</name>
- <description>The Teiid Quick Start guide</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>quick_start_example.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_quick_start_example.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xincludeSupported>true</xincludeSupported>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml (from rev 2945, trunk/documentation/quick-start-example/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/quick-start-example/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>quick-start-example</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Quick Start Guide</name>
+ <description>The Teiid Quick Start guide</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>quick_start_example.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_quick_start_example.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xincludeSupported>true</xincludeSupported>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml
===================================================================
--- trunk/documentation/reference/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,77 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>reference</artifactId>
- <groupId>org.jboss.teiid.documentation</groupId>
- <packaging>jdocbook</packaging>
- <name>Teiid Reference</name>
- <description>The Teiid reference manual</description>
- <build>
- <plugins>
- <plugin>
- <groupId>org.jboss.maven.plugins</groupId>
- <artifactId>maven-jdocbook-plugin</artifactId>
- <version>2.1.2</version>
- <extensions>true</extensions>
- <dependencies>
- <dependency>
- <groupId>net.sf.docbook</groupId>
- <artifactId>docbook</artifactId>
- <version>1.74.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-docbook-xslt</artifactId>
- <version>1.1.0</version>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossorg-jdocbook-style</artifactId>
- <version>1.1.0</version>
- <type>jdocbook-style</type>
- </dependency>
- </dependencies>
- <configuration>
- <sourceDocumentName>Reference.xml</sourceDocumentName>
- <imageResource>
- <directory>${basedir}/src/main/docbook/en-US</directory>
- <excludes>
- <exclude>*.xml</exclude>
- <exclude>**/*.xml</exclude>
- <exclude>*.zargo</exclude>
- <exclude>**/*.zargo</exclude>
- </excludes>
- </imageResource>
- <formats>
- <format>
- <formatName>pdf</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
- <finalName>teiid_reference.pdf</finalName>
- </format>
- <format>
- <formatName>html_single</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- <format>
- <formatName>html</formatName>
- <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
- <finalName>index.html</finalName>
- </format>
- </formats>
- <options>
- <xmlTransformerType>saxon</xmlTransformerType>
- <docbookVersion>1.72.0</docbookVersion>
- <xincludeSupported>true</xincludeSupported>
- <localeSeparator>-</localeSeparator>
- <useRelativeImageUris>false</useRelativeImageUris>
- </options>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml (from rev 2945, trunk/documentation/reference/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/documentation/reference/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,77 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>documentation</artifactId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>reference</artifactId>
+ <groupId>org.jboss.teiid.documentation</groupId>
+ <packaging>jdocbook</packaging>
+ <name>Teiid Reference</name>
+ <description>The Teiid reference manual</description>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jboss.maven.plugins</groupId>
+ <artifactId>maven-jdocbook-plugin</artifactId>
+ <version>2.1.2</version>
+ <extensions>true</extensions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.docbook</groupId>
+ <artifactId>docbook</artifactId>
+ <version>1.74.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-docbook-xslt</artifactId>
+ <version>1.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossorg-jdocbook-style</artifactId>
+ <version>1.1.0</version>
+ <type>jdocbook-style</type>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <sourceDocumentName>Reference.xml</sourceDocumentName>
+ <imageResource>
+ <directory>${basedir}/src/main/docbook/en-US</directory>
+ <excludes>
+ <exclude>*.xml</exclude>
+ <exclude>**/*.xml</exclude>
+ <exclude>*.zargo</exclude>
+ <exclude>**/*.zargo</exclude>
+ </excludes>
+ </imageResource>
+ <formats>
+ <format>
+ <formatName>pdf</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/pdf.xsl</stylesheetResource>
+ <finalName>teiid_reference.pdf</finalName>
+ </format>
+ <format>
+ <formatName>html_single</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml-single.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ <format>
+ <formatName>html</formatName>
+ <stylesheetResource>classpath:/xslt/org/jboss/xhtml.xsl</stylesheetResource>
+ <finalName>index.html</finalName>
+ </format>
+ </formats>
+ <options>
+ <xmlTransformerType>saxon</xmlTransformerType>
+ <docbookVersion>1.72.0</docbookVersion>
+ <xincludeSupported>true</xincludeSupported>
+ <localeSeparator>-</localeSeparator>
+ <useRelativeImageUris>false</useRelativeImageUris>
+ </options>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml
===================================================================
--- trunk/engine/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-engine</artifactId>
- <name>Engine</name>
- <description>Relational, procedural, and xml core engine.</description>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>javacc-maven-plugin</artifactId>
- <version>2.4</version>
- <executions>
- <execution>
- <id>javacc</id>
- <goals>
- <goal>javacc</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <type>test-jar</type>
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs-spi</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>net.sourceforge.saxon</groupId>
- <artifactId>saxon</artifactId>
- </dependency>
-
- <dependency>
- <groupId>net.sourceforge.saxon</groupId>
- <classifier>dom</classifier>
- <artifactId>saxon</artifactId>
- </dependency>
-
- <dependency>
- <groupId>com.googlecode.json-simple</groupId>
- <artifactId>json-simple</artifactId>
- </dependency>
-
- </dependencies>
-
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml (from rev 2945, trunk/engine/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/engine/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-engine</artifactId>
+ <name>Engine</name>
+ <description>Relational, procedural, and xml core engine.</description>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>javacc-maven-plugin</artifactId>
+ <version>2.4</version>
+ <executions>
+ <execution>
+ <id>javacc</id>
+ <goals>
+ <goal>javacc</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <type>test-jar</type>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>net.sourceforge.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>net.sourceforge.saxon</groupId>
+ <classifier>dom</classifier>
+ <artifactId>saxon</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>com.googlecode.json-simple</groupId>
+ <artifactId>json-simple</artifactId>
+ </dependency>
+
+ </dependencies>
+
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml
===================================================================
--- trunk/hibernate-dialect/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,18 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-hibernate-dialect</artifactId>
- <name>Hibernate Dialect</name>
- <description>Teiid Hibernate Dialect</description>
- <dependencies>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>3.5.2-Final</version>
- </dependency>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml (from rev 2945, trunk/hibernate-dialect/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/hibernate-dialect/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,18 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-hibernate-dialect</artifactId>
+ <name>Hibernate Dialect</name>
+ <description>Teiid Hibernate Dialect</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <version>3.5.2-Final</version>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml
===================================================================
--- trunk/jboss-integration/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,146 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-jboss-integration</artifactId>
- <name>teiid-jboss-integration</name>
- <description>JBoss specific integration layer for teiid</description>
-
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-runtime</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-cache-jbosscache</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-profileservice-spi</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-connector</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-aop-mc-int</artifactId>
- <version>2.0.6.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.security</groupId>
- <artifactId>jbosssx</artifactId>
- <version>2.0.3.SP1</version>
- <scope>provided</scope>
- </dependency>
- <!-- these for just running profile service remotely -->
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.naming</groupId>
- <artifactId>jnp-client</artifactId>
- <version>5.0.3.GA</version>
- <scope>test</scope>
- </dependency>
-<!--
- <dependency>
- <groupId>org.jboss.aop</groupId>
- <artifactId>jboss-aop</artifactId>
- <classifier>client</classifier>
- <version>2.1.1.GA</version>
- <scope>test</scope>
- </dependency>
--->
-
- <dependency>
- <groupId>org.jboss.remoting</groupId>
- <artifactId>jboss-remoting</artifactId>
- <version>2.5.1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.aspects</groupId>
- <artifactId>jboss-security-aspects</artifactId>
- <version>1.0.0.GA</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.aspects</groupId>
- <artifactId>jboss-remoting-aspects</artifactId>
- <version>1.0.1.GA</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>oswego-concurrent</groupId>
- <artifactId>concurrent</artifactId>
- <version>1.3.4-jboss-update1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-server</artifactId>
- <version>5.1.0.GA</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-profileservice</artifactId>
- <version>5.1.0.GA</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
-</project>
Copied: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml (from rev 2945, trunk/jboss-integration/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,146 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-jboss-integration</artifactId>
+ <name>teiid-jboss-integration</name>
+ <description>JBoss specific integration layer for teiid</description>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-runtime</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-cache-jbosscache</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-profileservice-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-connector</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ <version>2.0.6.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.security</groupId>
+ <artifactId>jbosssx</artifactId>
+ <version>2.0.3.SP1</version>
+ <scope>provided</scope>
+ </dependency>
+ <!-- these for just running profile service remotely -->
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.naming</groupId>
+ <artifactId>jnp-client</artifactId>
+ <version>5.0.3.GA</version>
+ <scope>test</scope>
+ </dependency>
+<!--
+ <dependency>
+ <groupId>org.jboss.aop</groupId>
+ <artifactId>jboss-aop</artifactId>
+ <classifier>client</classifier>
+ <version>2.1.1.GA</version>
+ <scope>test</scope>
+ </dependency>
+-->
+
+ <dependency>
+ <groupId>org.jboss.remoting</groupId>
+ <artifactId>jboss-remoting</artifactId>
+ <version>2.5.1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.aspects</groupId>
+ <artifactId>jboss-security-aspects</artifactId>
+ <version>1.0.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.aspects</groupId>
+ <artifactId>jboss-remoting-aspects</artifactId>
+ <version>1.0.1.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>oswego-concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ <version>1.3.4-jboss-update1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-server</artifactId>
+ <version>5.1.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-profileservice</artifactId>
+ <version>5.1.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+</project>
Deleted: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java
===================================================================
--- trunk/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,737 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.adminapi.jboss;
-
-import java.io.InputStream;
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-
-import org.jboss.deployers.spi.management.ManagementView;
-import org.jboss.deployers.spi.management.deploy.DeploymentManager;
-import org.jboss.managed.api.ComponentType;
-import org.jboss.managed.api.DeploymentTemplateInfo;
-import org.jboss.managed.api.ManagedComponent;
-import org.jboss.managed.api.ManagedObject;
-import org.jboss.managed.api.ManagedProperty;
-import org.jboss.managed.plugins.DefaultFieldsImpl;
-import org.jboss.managed.plugins.WritethroughManagedPropertyImpl;
-import org.jboss.metatype.api.types.CollectionMetaType;
-import org.jboss.metatype.api.types.EnumMetaType;
-import org.jboss.metatype.api.types.SimpleMetaType;
-import org.jboss.metatype.api.values.CollectionValueSupport;
-import org.jboss.metatype.api.values.MetaValue;
-import org.jboss.metatype.api.values.MetaValueFactory;
-import org.jboss.metatype.api.values.SimpleValue;
-import org.jboss.metatype.api.values.SimpleValueSupport;
-import org.jboss.profileservice.spi.NoSuchDeploymentException;
-import org.jboss.profileservice.spi.ProfileKey;
-import org.jboss.virtual.VFS;
-import org.teiid.adminapi.AdminComponentException;
-import org.teiid.adminapi.AdminException;
-import org.teiid.adminapi.AdminObject;
-import org.teiid.adminapi.AdminProcessingException;
-import org.teiid.adminapi.CacheStatistics;
-import org.teiid.adminapi.PropertyDefinition;
-import org.teiid.adminapi.Request;
-import org.teiid.adminapi.Session;
-import org.teiid.adminapi.Transaction;
-import org.teiid.adminapi.Translator;
-import org.teiid.adminapi.VDB;
-import org.teiid.adminapi.WorkerPoolStatistics;
-import org.teiid.adminapi.VDB.ConnectionType;
-import org.teiid.adminapi.impl.CacheStatisticsMetadata;
-import org.teiid.adminapi.impl.PropertyDefinitionMetadata;
-import org.teiid.adminapi.impl.RequestMetadata;
-import org.teiid.adminapi.impl.SessionMetadata;
-import org.teiid.adminapi.impl.TransactionMetadata;
-import org.teiid.adminapi.impl.TranslatorMetaData;
-import org.teiid.adminapi.impl.VDBMetaData;
-import org.teiid.adminapi.impl.WorkerPoolStatisticsMetadata;
-import org.teiid.jboss.IntegrationPlugin;
-
-public class Admin implements org.teiid.adminapi.Admin, Serializable {
- private static final String CONNECTOR_PREFIX = "connector-"; //$NON-NLS-1$
- private static final ProfileKey DEFAULT_PROFILE_KEY = new ProfileKey(ProfileKey.DEFAULT);
- private static final long serialVersionUID = 7081309086056911304L;
- private static ComponentType VDBTYPE = new ComponentType("teiid", "vdb");//$NON-NLS-1$ //$NON-NLS-2$
- private static ComponentType DQPTYPE = new ComponentType("teiid", "dqp");//$NON-NLS-1$ //$NON-NLS-2$
- private static String DQPNAME = "RuntimeEngineDeployer"; //$NON-NLS-1$
- private static ComponentType TRANSLATOR_TYPE = new ComponentType("teiid", "translator");//$NON-NLS-1$ //$NON-NLS-2$
-
- private static final String[] DS_TYPES = {"XA", "NoTx", "LocalTx"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- private static final String[] CF_TYPES = {"NoTx", "Tx"}; //$NON-NLS-1$ //$NON-NLS-2$
-
-
- private ManagementView view;
- private DeploymentManager deploymentMgr;
-
-
- static {
- VFS.init();
- }
-
- public Admin(ManagementView view, DeploymentManager deployMgr) {
- this.view = view;
- this.view.load();
-
- this.deploymentMgr = deployMgr;
- try {
- this.deploymentMgr.loadProfile(DEFAULT_PROFILE_KEY);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
-
- private ManagementView getView() throws AdminProcessingException {
- if (this.view == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("admin_connection_closed")); //$NON-NLS-1$
- }
- this.view.load();
- return this.view;
- }
-
- private DeploymentManager getDeploymentManager() throws AdminProcessingException{
- if (this.deploymentMgr == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("admin_connection_closed")); //$NON-NLS-1$
- }
- return this.deploymentMgr;
- }
-
- public void close() {
- this.view = null;
- this.deploymentMgr = null;
- }
-
-// private DQPManagement getDQPManagement() throws Exception {
-// final ManagedComponent mc = getView().getComponent(DQPManagementView.class.getName(), DQPTYPE);
-//
-// return (DQPManagement)Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {DQPManagement.class}, new InvocationHandler() {
-// @Override
-// public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
-//
-// MetaValue value = ManagedUtil.executeOperation(mc, method.getName());
-// Class returnType = method.getReturnType();
-// if (returnType.equals(Void.class)) {
-// return value;
-// }
-// return null;
-// }
-// });
-// }
-
- @Override
- public Collection<Translator> getTranslators() throws AdminException {
- ArrayList<Translator> factories = new ArrayList<Translator>();
- try {
- Set<ManagedComponent> mcSet = getView().getComponentsForType(TRANSLATOR_TYPE);
- for (ManagedComponent mc:mcSet) {
- factories.add(AdminObjectBuilder.buildAO(mc, TranslatorMetaData.class));
- }
- } catch (Exception e) {
- throw new AdminComponentException(e);
- }
- return factories;
- }
-
- @Override
- public Translator getTranslator(String deployedName) throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(deployedName, TRANSLATOR_TYPE);
- if (mc != null) {
- return AdminObjectBuilder.buildAO(mc, TranslatorMetaData.class);
- }
- return null;
- } catch(Exception e) {
- throw new AdminProcessingException(e.getMessage(), e);
- }
- }
-
- boolean matches(String regEx, String value) {
- regEx = regEx.replaceAll(AdminObject.ESCAPED_WILDCARD, ".*"); //$NON-NLS-1$
- regEx = regEx.replaceAll(AdminObject.ESCAPED_DELIMITER, ""); //$NON-NLS-1$
- return value.matches(regEx);
- }
-
- @Override
- public void deployVDB(String fileName, InputStream vdb) throws AdminException {
- if (!fileName.endsWith(".vdb") && !fileName.endsWith("-vdb.xml")) {//$NON-NLS-1$ //$NON-NLS-2$
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("bad_vdb_extension")); //$NON-NLS-1$
- }
- ManagedUtil.deployArchive(getDeploymentManager(), fileName, vdb, false);
- }
-
-
- @Override
- public void deleteVDB(String vdbName, int vdbVersion) throws AdminException {
- ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
- if (mc != null) {
- ManagedUtil.removeArchive(getDeploymentManager(), mc.getDeployment().getName());
- }
- }
-
- @Override
- public VDB getVDB(String vdbName, int vdbVersion) throws AdminException{
- ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
- if (mc != null) {
- return AdminObjectBuilder.buildAO(mc, VDBMetaData.class);
- }
- return null;
- }
-
- private ManagedComponent getVDBManagedComponent(String vdbName, int vdbVersion) throws AdminException{
- try {
- Set<ManagedComponent> vdbComponents = getView().getComponentsForType(VDBTYPE);
- for (ManagedComponent mc: vdbComponents) {
- String name = ManagedUtil.getSimpleValue(mc, "name", String.class);//$NON-NLS-1$
- int version = ManagedUtil.getSimpleValue(mc, "version", Integer.class);//$NON-NLS-1$
- if (name.equalsIgnoreCase(vdbName) && version == vdbVersion) {
- return mc;
- }
- }
- return null;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Set<VDB> getVDBs() throws AdminException {
- try {
- Set<VDB> vdbs = new HashSet<VDB>();
- Set<ManagedComponent> vdbComponents = getView().getComponentsForType(VDBTYPE);
- for (ManagedComponent mc: vdbComponents) {
- vdbs.add(AdminObjectBuilder.buildAO(mc, VDBMetaData.class));
- }
- return vdbs;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Collection<Session> getSessions() throws AdminException {
- try {
- Collection<Session> sessionList = new ArrayList<Session>();
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getActiveSessions");//$NON-NLS-1$
- MetaValue[] sessions = ((CollectionValueSupport)value).getElements();
- for (MetaValue mv:sessions) {
- sessionList.add((SessionMetadata)MetaValueFactory.getInstance().unwrap(mv, SessionMetadata.class));
- }
- return sessionList;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void terminateSession(String sessionId) throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "terminateSession", SimpleValueSupport.wrap(sessionId));//$NON-NLS-1$
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Collection<Request> getRequests() throws AdminException {
- try {
- Collection<Request> requestList = new ArrayList<Request>();
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getRequests");//$NON-NLS-1$
- MetaValue[] requests = ((CollectionValueSupport)value).getElements();
- for (MetaValue mv:requests) {
- requestList.add((RequestMetadata)MetaValueFactory.getInstance().unwrap(mv, RequestMetadata.class));
- }
- return requestList;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Collection<Request> getRequestsForSession(String sessionId) throws AdminException {
- try {
- Collection<Request> requestList = new ArrayList<Request>();
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getRequestsForSession", SimpleValueSupport.wrap(sessionId));//$NON-NLS-1$
- MetaValue[] requests = ((CollectionValueSupport)value).getElements();
- for (MetaValue mv:requests) {
- requestList.add((RequestMetadata)MetaValueFactory.getInstance().unwrap(mv, RequestMetadata.class));
- }
- return requestList;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void cancelRequest(String sessionId, long executionId) throws AdminException{
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "cancelRequest", SimpleValueSupport.wrap(sessionId), SimpleValueSupport.wrap(executionId));//$NON-NLS-1$
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Collection<String> getCacheTypes() throws AdminException {
- try {
- Collection<String> requestList = new ArrayList<String>();
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getCacheTypes");//$NON-NLS-1$
- MetaValue[] requests = ((CollectionValueSupport)value).getElements();
- for (MetaValue mv:requests) {
- requestList.add(ManagedUtil.stringValue(mv));
- }
- return requestList;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void clearCache(String cacheType) throws AdminException{
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "clearCache", SimpleValueSupport.wrap(cacheType));//$NON-NLS-1$
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void clearCache(String cacheType, String vdbName, int version) throws AdminException{
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "clearCache", SimpleValueSupport.wrap(cacheType), //$NON-NLS-1$
- SimpleValueSupport.wrap(vdbName), SimpleValueSupport.wrap(version));
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public Collection<Transaction> getTransactions() throws AdminException {
- try {
- Collection<Transaction> txnList = new ArrayList<Transaction>();
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getTransactions");//$NON-NLS-1$
- MetaValue[] requests = ((CollectionValueSupport)value).getElements();
- for (MetaValue mv:requests) {
- txnList.add((TransactionMetadata)MetaValueFactory.getInstance().unwrap(mv, TransactionMetadata.class));
- }
- return txnList;
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void terminateTransaction(String xid) throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "terminateTransaction", MetaValueFactory.getInstance().create(xid));//$NON-NLS-1$
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public WorkerPoolStatistics getWorkerPoolStats() throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getWorkerPoolStatistics");//$NON-NLS-1$
- return (WorkerPoolStatistics)MetaValueFactory.getInstance().unwrap(value, WorkerPoolStatisticsMetadata.class);
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
-
- @Override
- public Collection<PropertyDefinition> getTemplatePropertyDefinitions(String templateName) throws AdminException {
-
- DeploymentTemplateInfo info = null;
-
- try {
-
- try {
- info = getView().getTemplate(templateName);
- } catch (Exception e) {
- // ignore..
- }
-
- if (info == null && !templateName.startsWith(TranslatorMetaData.TRANSLATOR_PREFIX)) {
- info = getView().getTemplate(TranslatorMetaData.TRANSLATOR_PREFIX+templateName);
- }
- if(info == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("template_not_found", templateName)); //$NON-NLS-1$
- }
-
- ArrayList<PropertyDefinition> props = new ArrayList<PropertyDefinition>();
- Map<String, ManagedProperty> propertyMap = info.getProperties();
-
- for (ManagedProperty mp:propertyMap.values()) {
- if (!includeInTemplate(mp)) {
- continue;
- }
- PropertyDefinitionMetadata p = new PropertyDefinitionMetadata();
- p.setName(mp.getName());
- p.setDescription(mp.getDescription());
- p.setDisplayName(mp.getMappedName());
- if (mp.getDefaultValue() != null) {
- p.setDefaultValue(((SimpleValueSupport)mp.getDefaultValue()).getValue());
- }
- p.setPropertyTypeClassName(mp.getMetaType().getTypeName());
- p.setModifiable(!mp.isReadOnly());
-
- if (mp.getField("masked", Boolean.class) != null) {//$NON-NLS-1$
- p.setMasked(mp.getField("masked", Boolean.class));//$NON-NLS-1$
- }
- else {
- p.setMasked(false);
- }
-
- if (mp.getField("advanced", Boolean.class) != null) {//$NON-NLS-1$
- p.setAdvanced(mp.getField("advanced", Boolean.class));//$NON-NLS-1$
- }
- else {
- p.setAdvanced(true);
- }
- if (mp.getLegalValues() != null) {
- HashSet<String> values = new HashSet<String>();
- for (MetaValue value:mp.getLegalValues()) {
- values.add(ManagedUtil.stringValue(value));
- }
- p.setAllowedValues(values);
- }
-
- p.setRequired(mp.isMandatory());
- props.add(p);
- };
- return props;
- } catch (NoSuchDeploymentException e) {
- throw new AdminComponentException(e.getMessage(), e);
- } catch(Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- private boolean includeInTemplate(ManagedProperty mp) {
- Boolean teiidProperty = mp.getField("teiid-property", Boolean.class);//$NON-NLS-1$
- if ( teiidProperty != null && teiidProperty.booleanValue()) {
- return true;
- }
- if (mp.isMandatory() && mp.getDefaultValue() == null) {
- return true;
- }
- return false;
- }
-
- @Override
- public void changeVDBConnectionType(String vdbName, int vdbVersion,
- ConnectionType type) throws AdminException {
- ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
- if (mc == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
- }
-
- ManagedProperty connectionTypeProperty = mc.getProperty("connectionType"); //$NON-NLS-1$
- if (connectionTypeProperty != null) {
- connectionTypeProperty.setValue(ManagedUtil.wrap(new EnumMetaType(ConnectionType.values()), type != null ?type.name():ConnectionType.BY_VERSION.name()));
- }
-
- try {
- getView().updateComponent(mc);
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void assignToModel(String vdbName, int vdbVersion, String modelName, String sourceName, String translatorName, String dsName) throws AdminException {
- ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
- if (mc == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
- }
-
- ManagedProperty mp = mc.getProperty("models");//$NON-NLS-1$
- List<ManagedObject> models = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(mp.getValue());
- ManagedObject managedModel = null;
- if (models != null && !models.isEmpty()) {
- for(ManagedObject mo:models) {
- String name = ManagedUtil.getSimpleValue(mo, "name", String.class); //$NON-NLS-1$
- if (modelName.equals(name)) {
- managedModel = mo;
- }
- }
- }
-
- if (managedModel == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("model_not_found", modelName, vdbName, vdbVersion)); //$NON-NLS-1$
- }
-
- ManagedProperty sourceMappings = managedModel.getProperty("sourceMappings");//$NON-NLS-1$
- if (sourceMappings != null){
- List<ManagedObject> mappings = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(sourceMappings.getValue());
- for (ManagedObject mo:mappings) {
- String sName = ManagedUtil.getSimpleValue(mo, "name", String.class);//$NON-NLS-1$
- if (sName.equals(sourceName)) {
-
- ManagedProperty translatorProperty = mo.getProperty("translatorName"); //$NON-NLS-1$
- if (translatorProperty == null) {
- translatorProperty = new WritethroughManagedPropertyImpl(mo, new DefaultFieldsImpl("translatorName")); //$NON-NLS-1$
- }
- translatorProperty.setValue(ManagedUtil.wrap(SimpleMetaType.STRING, translatorName));
-
- // set the jndi name for the ds.
- ManagedProperty jndiProperty = mo.getProperty("connectionJndiName"); //$NON-NLS-1$
- if (jndiProperty == null) {
- jndiProperty = new WritethroughManagedPropertyImpl(mo, new DefaultFieldsImpl("connectionJndiName")); //$NON-NLS-1$
- }
- jndiProperty.setValue(ManagedUtil.wrap(SimpleMetaType.STRING, dsName));
- }
- }
- } else {
- //TODO: this can be in the default situation when no source mappings are specified
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("sourcename_not_found", sourceName, vdbName, vdbVersion, modelName)); //$NON-NLS-1$
- }
-
- try {
- getView().updateComponent(mc);
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- private void manageRoleToDataPolicy(String vdbName, int vdbVersion, String policyName, String role, boolean add) throws AdminException {
- ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
- if (mc == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
- }
-
- ManagedProperty mp = mc.getProperty("dataPolicies");//$NON-NLS-1$
- List<ManagedObject> policies = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(mp.getValue());
- ManagedObject managedPolicy = null;
- if (policies != null && !policies.isEmpty()) {
- for(ManagedObject mo:policies) {
- String name = ManagedUtil.getSimpleValue(mo, "name", String.class); //$NON-NLS-1$
- if (policyName.equals(name)) {
- managedPolicy = mo;
- }
- }
- }
-
- if (managedPolicy == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("policy_not_found", policyName, vdbName, vdbVersion)); //$NON-NLS-1$
- }
-
- if (role != null) {
- ManagedProperty mappedRoleNames = managedPolicy.getProperty("mappedRoleNames");//$NON-NLS-1$
- CollectionValueSupport roleCollection = (CollectionValueSupport)mappedRoleNames.getValue();
- ArrayList<MetaValue> modifiedRoleNames = new ArrayList<MetaValue>();
- if (roleCollection != null) {
- MetaValue[] roleNames = roleCollection.getElements();
- for (MetaValue mv:roleNames) {
- String existing = (String)((SimpleValueSupport)mv).getValue();
- if (!existing.equals(role)) {
- modifiedRoleNames.add(mv);
- }
- }
- }
- else {
- roleCollection = new CollectionValueSupport(new CollectionMetaType("java.util.List", SimpleMetaType.STRING)); //$NON-NLS-1$
- mappedRoleNames.setValue(roleCollection);
- }
-
- if (add) {
- modifiedRoleNames.add(ManagedUtil.wrap(SimpleMetaType.STRING, role));
- }
-
- roleCollection.setElements(modifiedRoleNames.toArray(new MetaValue[modifiedRoleNames.size()]));
- } else {
- ManagedProperty anyAuthenticated = managedPolicy.getProperty("anyAuthenticated");//$NON-NLS-1$
- anyAuthenticated.setValue(SimpleValueSupport.wrap(add));
- }
-
- try {
- getView().updateComponent(mc);
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
-
- @Override
- public void addDataRoleMapping(String vdbName, int vdbVersion, String policyName, String role) throws AdminException {
- manageRoleToDataPolicy(vdbName, vdbVersion, policyName, role, true);
- }
-
- @Override
- public void removeDataRoleMapping(String vdbName, int vdbVersion, String policyName, String role) throws AdminException{
- manageRoleToDataPolicy(vdbName, vdbVersion, policyName, role, false);
- }
-
- @Override
- public void setAnyAuthenticatedForDataRole(String vdbName, int vdbVersion,
- String dataRole, boolean anyAuthenticated) throws AdminException {
- manageRoleToDataPolicy(vdbName, vdbVersion, dataRole, null, anyAuthenticated);
- }
-
- @Override
- public void mergeVDBs(String sourceVDBName, int sourceVDBVersion, String targetVDBName, int targetVDBVersion) throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- ManagedUtil.executeOperation(mc, "mergeVDBs", //$NON-NLS-1$
- SimpleValueSupport.wrap(sourceVDBName),
- SimpleValueSupport.wrap(sourceVDBVersion),
- SimpleValueSupport.wrap(targetVDBName),
- SimpleValueSupport.wrap(targetVDBVersion));
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- private ManagedComponent getDatasource(String deployedName) throws Exception {
- ManagedComponent mc = null;
- for (String type:DS_TYPES) {
- ComponentType ct = new ComponentType("DataSource", type); //$NON-NLS-1$
- mc = getView().getComponent(deployedName, ct);
- if (mc != null) {
- return mc;
- }
- }
- for (String type:CF_TYPES) {
- ComponentType ct = new ComponentType("ConnectionFactory", type); //$NON-NLS-1$
- mc = getView().getComponent(deployedName, ct);
- if (mc != null) {
- return mc;
- }
- }
- return mc;
- }
-
-
- @Override
- public void createDataSource(String deploymentName, String templateName, Properties properties) throws AdminException {
- try {
- ManagedComponent mc = getDatasource(deploymentName);
- if (mc != null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("datasource_exists",deploymentName)); //$NON-NLS-1$;
- }
-
- DeploymentTemplateInfo info = getView().getTemplate(templateName);
- if(info == null) {
- throw new AdminProcessingException(IntegrationPlugin.Util.getString("datasource_template_not_found", templateName)); //$NON-NLS-1$
- }
-
- // template properties specific to the template
- Map<String, ManagedProperty> propertyMap = info.getProperties();
-
- // walk through the supplied properties and assign properly to template
- for (String key:properties.stringPropertyNames()) {
- ManagedProperty mp = propertyMap.get(key);
- if (mp != null) {
- String value = properties.getProperty(key);
- if (!ManagedUtil.sameValue(mp.getDefaultValue(), value)){
- mp.setValue(SimpleValueSupport.wrap(value));
- }
- }
- }
- info.getProperties().get("jndi-name").setValue(SimpleValueSupport.wrap(deploymentName)); //$NON-NLS-1$
- getView().applyTemplate(deploymentName, info);
- } catch (NoSuchDeploymentException e) {
- throw new AdminComponentException(e.getMessage(), e);
- } catch(Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-
- @Override
- public void deleteDataSource(String deployedName) throws AdminException {
- try {
- ManagedComponent mc = getDatasource(deployedName);
- if (mc != null) {
- ManagedUtil.removeArchive(getDeploymentManager(),mc.getDeployment().getName());
- }
- } catch (Exception e) {
- throw new AdminComponentException(e);
- }
- }
-
- @Override
- public Collection<String> getDataSourceNames() throws AdminException {
- ArrayList<String> names = new ArrayList<String>();
- try {
- for (String type:DS_TYPES) {
- ComponentType ct = new ComponentType("DataSource", type); //$NON-NLS-1$
- Set<ManagedComponent> mcs = getView().getComponentsForType(ct);
- for (ManagedComponent mc:mcs) {
- names.add(((SimpleValue)mc.getProperty("jndi-name").getValue()).getValue().toString()); //$NON-NLS-1$
- }
- }
- for (String type:CF_TYPES) {
- ComponentType ct = new ComponentType("ConnectionFactory", type); //$NON-NLS-1$
- Set<ManagedComponent> mcs = getView().getComponentsForType(ct);
- for (ManagedComponent mc:mcs) {
- names.add(((SimpleValue)mc.getProperty("jndi-name").getValue()).getValue().toString()); //$NON-NLS-1$
- }
- }
- } catch (Exception e) {
- throw new AdminComponentException(e);
- }
- return names;
- }
-
- @Override
- public Set<String> getDataSourceTemplateNames() throws AdminException{
- Set<String> names = getView().getTemplateNames();
- HashSet<String> matched = new HashSet<String>();
- for(String name:names) {
- if (name.startsWith(CONNECTOR_PREFIX)) {
- matched.add(name);
- }
- }
- return matched;
- }
-
- @Override
- public CacheStatistics getCacheStats(String cacheType) throws AdminException {
- try {
- ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
- MetaValue value = ManagedUtil.executeOperation(mc, "getCacheStatistics", SimpleValueSupport.wrap(cacheType));//$NON-NLS-1$
- return (CacheStatistics)MetaValueFactory.getInstance().unwrap(value, CacheStatisticsMetadata.class);
- } catch (Exception e) {
- throw new AdminComponentException(e.getMessage(), e);
- }
- }
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java (from rev 2941, trunk/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/Admin.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,745 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.adminapi.jboss;
+
+import java.io.InputStream;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+import org.jboss.deployers.spi.management.ManagementView;
+import org.jboss.deployers.spi.management.deploy.DeploymentManager;
+import org.jboss.managed.api.ComponentType;
+import org.jboss.managed.api.DeploymentTemplateInfo;
+import org.jboss.managed.api.ManagedComponent;
+import org.jboss.managed.api.ManagedObject;
+import org.jboss.managed.api.ManagedProperty;
+import org.jboss.managed.plugins.DefaultFieldsImpl;
+import org.jboss.managed.plugins.WritethroughManagedPropertyImpl;
+import org.jboss.metatype.api.types.CollectionMetaType;
+import org.jboss.metatype.api.types.EnumMetaType;
+import org.jboss.metatype.api.types.SimpleMetaType;
+import org.jboss.metatype.api.values.CollectionValueSupport;
+import org.jboss.metatype.api.values.MetaValue;
+import org.jboss.metatype.api.values.MetaValueFactory;
+import org.jboss.metatype.api.values.SimpleValue;
+import org.jboss.metatype.api.values.SimpleValueSupport;
+import org.jboss.profileservice.spi.NoSuchDeploymentException;
+import org.jboss.profileservice.spi.ProfileKey;
+import org.jboss.virtual.VFS;
+import org.teiid.adminapi.AdminComponentException;
+import org.teiid.adminapi.AdminException;
+import org.teiid.adminapi.AdminObject;
+import org.teiid.adminapi.AdminProcessingException;
+import org.teiid.adminapi.CacheStatistics;
+import org.teiid.adminapi.PropertyDefinition;
+import org.teiid.adminapi.Request;
+import org.teiid.adminapi.Session;
+import org.teiid.adminapi.Transaction;
+import org.teiid.adminapi.Translator;
+import org.teiid.adminapi.VDB;
+import org.teiid.adminapi.WorkerPoolStatistics;
+import org.teiid.adminapi.VDB.ConnectionType;
+import org.teiid.adminapi.impl.CacheStatisticsMetadata;
+import org.teiid.adminapi.impl.PropertyDefinitionMetadata;
+import org.teiid.adminapi.impl.RequestMetadata;
+import org.teiid.adminapi.impl.SessionMetadata;
+import org.teiid.adminapi.impl.TransactionMetadata;
+import org.teiid.adminapi.impl.TranslatorMetaData;
+import org.teiid.adminapi.impl.VDBMetaData;
+import org.teiid.adminapi.impl.WorkerPoolStatisticsMetadata;
+import org.teiid.deployers.VDBStatusChecker;
+import org.teiid.jboss.IntegrationPlugin;
+
+public class Admin implements org.teiid.adminapi.Admin, Serializable {
+ private static final String CONNECTOR_PREFIX = "connector-"; //$NON-NLS-1$
+ private static final ProfileKey DEFAULT_PROFILE_KEY = new ProfileKey(ProfileKey.DEFAULT);
+ private static final long serialVersionUID = 7081309086056911304L;
+ private static ComponentType VDBTYPE = new ComponentType("teiid", "vdb");//$NON-NLS-1$ //$NON-NLS-2$
+ private static ComponentType DQPTYPE = new ComponentType("teiid", "dqp");//$NON-NLS-1$ //$NON-NLS-2$
+ private static String DQPNAME = "RuntimeEngineDeployer"; //$NON-NLS-1$
+ private static ComponentType TRANSLATOR_TYPE = new ComponentType("teiid", "translator");//$NON-NLS-1$ //$NON-NLS-2$
+
+ private static final String[] DS_TYPES = {"XA", "NoTx", "LocalTx"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ private static final String[] CF_TYPES = {"NoTx", "Tx"}; //$NON-NLS-1$ //$NON-NLS-2$
+
+
+ private ManagementView view;
+ private DeploymentManager deploymentMgr;
+
+ final private VDBStatusChecker statusChecker;
+
+ static {
+ VFS.init();
+ }
+
+ public Admin(ManagementView view, DeploymentManager deployMgr, VDBStatusChecker statusChecker) {
+ this.view = view;
+ this.statusChecker = statusChecker;
+ this.view.load();
+
+ this.deploymentMgr = deployMgr;
+ try {
+ this.deploymentMgr.loadProfile(DEFAULT_PROFILE_KEY);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ private ManagementView getView() throws AdminProcessingException {
+ if (this.view == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("admin_connection_closed")); //$NON-NLS-1$
+ }
+ this.view.load();
+ return this.view;
+ }
+
+ private DeploymentManager getDeploymentManager() throws AdminProcessingException{
+ if (this.deploymentMgr == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("admin_connection_closed")); //$NON-NLS-1$
+ }
+ return this.deploymentMgr;
+ }
+
+ public void close() {
+ this.view = null;
+ this.deploymentMgr = null;
+ }
+
+// private DQPManagement getDQPManagement() throws Exception {
+// final ManagedComponent mc = getView().getComponent(DQPManagementView.class.getName(), DQPTYPE);
+//
+// return (DQPManagement)Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {DQPManagement.class}, new InvocationHandler() {
+// @Override
+// public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+//
+// MetaValue value = ManagedUtil.executeOperation(mc, method.getName());
+// Class returnType = method.getReturnType();
+// if (returnType.equals(Void.class)) {
+// return value;
+// }
+// return null;
+// }
+// });
+// }
+
+ @Override
+ public Collection<Translator> getTranslators() throws AdminException {
+ ArrayList<Translator> factories = new ArrayList<Translator>();
+ try {
+ Set<ManagedComponent> mcSet = getView().getComponentsForType(TRANSLATOR_TYPE);
+ for (ManagedComponent mc:mcSet) {
+ factories.add(AdminObjectBuilder.buildAO(mc, TranslatorMetaData.class));
+ }
+ } catch (Exception e) {
+ throw new AdminComponentException(e);
+ }
+ return factories;
+ }
+
+ @Override
+ public Translator getTranslator(String deployedName) throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(deployedName, TRANSLATOR_TYPE);
+ if (mc != null) {
+ return AdminObjectBuilder.buildAO(mc, TranslatorMetaData.class);
+ }
+ return null;
+ } catch(Exception e) {
+ throw new AdminProcessingException(e.getMessage(), e);
+ }
+ }
+
+ boolean matches(String regEx, String value) {
+ regEx = regEx.replaceAll(AdminObject.ESCAPED_WILDCARD, ".*"); //$NON-NLS-1$
+ regEx = regEx.replaceAll(AdminObject.ESCAPED_DELIMITER, ""); //$NON-NLS-1$
+ return value.matches(regEx);
+ }
+
+ @Override
+ public void deployVDB(String fileName, InputStream vdb) throws AdminException {
+ if (!fileName.endsWith(".vdb") && !fileName.endsWith("-vdb.xml")) {//$NON-NLS-1$ //$NON-NLS-2$
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("bad_vdb_extension")); //$NON-NLS-1$
+ }
+ ManagedUtil.deployArchive(getDeploymentManager(), fileName, vdb, false);
+ }
+
+
+ @Override
+ public void deleteVDB(String vdbName, int vdbVersion) throws AdminException {
+ ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
+ if (mc != null) {
+ ManagedUtil.removeArchive(getDeploymentManager(), mc.getDeployment().getName());
+ }
+ }
+
+ @Override
+ public VDB getVDB(String vdbName, int vdbVersion) throws AdminException{
+ ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
+ if (mc != null) {
+ return AdminObjectBuilder.buildAO(mc, VDBMetaData.class);
+ }
+ return null;
+ }
+
+ private ManagedComponent getVDBManagedComponent(String vdbName, int vdbVersion) throws AdminException{
+ try {
+ Set<ManagedComponent> vdbComponents = getView().getComponentsForType(VDBTYPE);
+ for (ManagedComponent mc: vdbComponents) {
+ String name = ManagedUtil.getSimpleValue(mc, "name", String.class);//$NON-NLS-1$
+ int version = ManagedUtil.getSimpleValue(mc, "version", Integer.class);//$NON-NLS-1$
+ if (name.equalsIgnoreCase(vdbName) && version == vdbVersion) {
+ return mc;
+ }
+ }
+ return null;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Set<VDB> getVDBs() throws AdminException {
+ try {
+ Set<VDB> vdbs = new HashSet<VDB>();
+ Set<ManagedComponent> vdbComponents = getView().getComponentsForType(VDBTYPE);
+ for (ManagedComponent mc: vdbComponents) {
+ vdbs.add(AdminObjectBuilder.buildAO(mc, VDBMetaData.class));
+ }
+ return vdbs;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Collection<Session> getSessions() throws AdminException {
+ try {
+ Collection<Session> sessionList = new ArrayList<Session>();
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getActiveSessions");//$NON-NLS-1$
+ MetaValue[] sessions = ((CollectionValueSupport)value).getElements();
+ for (MetaValue mv:sessions) {
+ sessionList.add((SessionMetadata)MetaValueFactory.getInstance().unwrap(mv, SessionMetadata.class));
+ }
+ return sessionList;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void terminateSession(String sessionId) throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "terminateSession", SimpleValueSupport.wrap(sessionId));//$NON-NLS-1$
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Collection<Request> getRequests() throws AdminException {
+ try {
+ Collection<Request> requestList = new ArrayList<Request>();
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getRequests");//$NON-NLS-1$
+ MetaValue[] requests = ((CollectionValueSupport)value).getElements();
+ for (MetaValue mv:requests) {
+ requestList.add((RequestMetadata)MetaValueFactory.getInstance().unwrap(mv, RequestMetadata.class));
+ }
+ return requestList;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Collection<Request> getRequestsForSession(String sessionId) throws AdminException {
+ try {
+ Collection<Request> requestList = new ArrayList<Request>();
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getRequestsForSession", SimpleValueSupport.wrap(sessionId));//$NON-NLS-1$
+ MetaValue[] requests = ((CollectionValueSupport)value).getElements();
+ for (MetaValue mv:requests) {
+ requestList.add((RequestMetadata)MetaValueFactory.getInstance().unwrap(mv, RequestMetadata.class));
+ }
+ return requestList;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void cancelRequest(String sessionId, long executionId) throws AdminException{
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "cancelRequest", SimpleValueSupport.wrap(sessionId), SimpleValueSupport.wrap(executionId));//$NON-NLS-1$
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Collection<String> getCacheTypes() throws AdminException {
+ try {
+ Collection<String> requestList = new ArrayList<String>();
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getCacheTypes");//$NON-NLS-1$
+ MetaValue[] requests = ((CollectionValueSupport)value).getElements();
+ for (MetaValue mv:requests) {
+ requestList.add(ManagedUtil.stringValue(mv));
+ }
+ return requestList;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void clearCache(String cacheType) throws AdminException{
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "clearCache", SimpleValueSupport.wrap(cacheType));//$NON-NLS-1$
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void clearCache(String cacheType, String vdbName, int version) throws AdminException{
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "clearCache", SimpleValueSupport.wrap(cacheType), //$NON-NLS-1$
+ SimpleValueSupport.wrap(vdbName), SimpleValueSupport.wrap(version));
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public Collection<Transaction> getTransactions() throws AdminException {
+ try {
+ Collection<Transaction> txnList = new ArrayList<Transaction>();
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getTransactions");//$NON-NLS-1$
+ MetaValue[] requests = ((CollectionValueSupport)value).getElements();
+ for (MetaValue mv:requests) {
+ txnList.add((TransactionMetadata)MetaValueFactory.getInstance().unwrap(mv, TransactionMetadata.class));
+ }
+ return txnList;
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void terminateTransaction(String xid) throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "terminateTransaction", MetaValueFactory.getInstance().create(xid));//$NON-NLS-1$
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public WorkerPoolStatistics getWorkerPoolStats() throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getWorkerPoolStatistics");//$NON-NLS-1$
+ return (WorkerPoolStatistics)MetaValueFactory.getInstance().unwrap(value, WorkerPoolStatisticsMetadata.class);
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+
+ @Override
+ public Collection<PropertyDefinition> getTemplatePropertyDefinitions(String templateName) throws AdminException {
+
+ DeploymentTemplateInfo info = null;
+
+ try {
+
+ try {
+ info = getView().getTemplate(templateName);
+ } catch (Exception e) {
+ // ignore..
+ }
+
+ if (info == null && !templateName.startsWith(TranslatorMetaData.TRANSLATOR_PREFIX)) {
+ info = getView().getTemplate(TranslatorMetaData.TRANSLATOR_PREFIX+templateName);
+ }
+ if(info == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("template_not_found", templateName)); //$NON-NLS-1$
+ }
+
+ ArrayList<PropertyDefinition> props = new ArrayList<PropertyDefinition>();
+ Map<String, ManagedProperty> propertyMap = info.getProperties();
+
+ for (ManagedProperty mp:propertyMap.values()) {
+ if (!includeInTemplate(mp)) {
+ continue;
+ }
+ PropertyDefinitionMetadata p = new PropertyDefinitionMetadata();
+ p.setName(mp.getName());
+ p.setDescription(mp.getDescription());
+ p.setDisplayName(mp.getMappedName());
+ if (mp.getDefaultValue() != null) {
+ p.setDefaultValue(((SimpleValueSupport)mp.getDefaultValue()).getValue());
+ }
+ p.setPropertyTypeClassName(mp.getMetaType().getTypeName());
+ p.setModifiable(!mp.isReadOnly());
+
+ if (mp.getField("masked", Boolean.class) != null) {//$NON-NLS-1$
+ p.setMasked(mp.getField("masked", Boolean.class));//$NON-NLS-1$
+ }
+ else {
+ p.setMasked(false);
+ }
+
+ if (mp.getField("advanced", Boolean.class) != null) {//$NON-NLS-1$
+ p.setAdvanced(mp.getField("advanced", Boolean.class));//$NON-NLS-1$
+ }
+ else {
+ p.setAdvanced(true);
+ }
+ if (mp.getLegalValues() != null) {
+ HashSet<String> values = new HashSet<String>();
+ for (MetaValue value:mp.getLegalValues()) {
+ values.add(ManagedUtil.stringValue(value));
+ }
+ p.setAllowedValues(values);
+ }
+
+ p.setRequired(mp.isMandatory());
+ props.add(p);
+ };
+ return props;
+ } catch (NoSuchDeploymentException e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ } catch(Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ private boolean includeInTemplate(ManagedProperty mp) {
+ Boolean teiidProperty = mp.getField("teiid-property", Boolean.class);//$NON-NLS-1$
+ if ( teiidProperty != null && teiidProperty.booleanValue()) {
+ return true;
+ }
+ if (mp.isMandatory() && mp.getDefaultValue() == null) {
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public void changeVDBConnectionType(String vdbName, int vdbVersion,
+ ConnectionType type) throws AdminException {
+ ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
+ if (mc == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
+ }
+
+ ManagedProperty connectionTypeProperty = mc.getProperty("connectionType"); //$NON-NLS-1$
+ if (connectionTypeProperty != null) {
+ connectionTypeProperty.setValue(ManagedUtil.wrap(new EnumMetaType(ConnectionType.values()), type != null ?type.name():ConnectionType.BY_VERSION.name()));
+ }
+
+ try {
+ getView().updateComponent(mc);
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void assignToModel(String vdbName, int vdbVersion, String modelName, String sourceName, String translatorName, String dsName) throws AdminException {
+ ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
+ if (mc == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
+ }
+
+ ManagedProperty mp = mc.getProperty("models");//$NON-NLS-1$
+ List<ManagedObject> models = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(mp.getValue());
+ ManagedObject managedModel = null;
+ if (models != null && !models.isEmpty()) {
+ for(ManagedObject mo:models) {
+ String name = ManagedUtil.getSimpleValue(mo, "name", String.class); //$NON-NLS-1$
+ if (modelName.equals(name)) {
+ managedModel = mo;
+ }
+ }
+ }
+
+ if (managedModel == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("model_not_found", modelName, vdbName, vdbVersion)); //$NON-NLS-1$
+ }
+
+ ManagedProperty sourceMappings = managedModel.getProperty("sourceMappings");//$NON-NLS-1$
+ if (sourceMappings != null){
+ List<ManagedObject> mappings = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(sourceMappings.getValue());
+ for (ManagedObject mo:mappings) {
+ String sName = ManagedUtil.getSimpleValue(mo, "name", String.class);//$NON-NLS-1$
+ if (sName.equals(sourceName)) {
+
+ ManagedProperty translatorProperty = mo.getProperty("translatorName"); //$NON-NLS-1$
+ if (translatorProperty == null) {
+ translatorProperty = new WritethroughManagedPropertyImpl(mo, new DefaultFieldsImpl("translatorName")); //$NON-NLS-1$
+ }
+ translatorProperty.setValue(ManagedUtil.wrap(SimpleMetaType.STRING, translatorName));
+
+ // set the jndi name for the ds.
+ ManagedProperty jndiProperty = mo.getProperty("connectionJndiName"); //$NON-NLS-1$
+ if (jndiProperty == null) {
+ jndiProperty = new WritethroughManagedPropertyImpl(mo, new DefaultFieldsImpl("connectionJndiName")); //$NON-NLS-1$
+ }
+ jndiProperty.setValue(ManagedUtil.wrap(SimpleMetaType.STRING, dsName));
+ }
+ }
+ } else {
+ //TODO: this can be in the default situation when no source mappings are specified
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("sourcename_not_found", sourceName, vdbName, vdbVersion, modelName)); //$NON-NLS-1$
+ }
+
+ try {
+ getView().updateComponent(mc);
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ private void manageRoleToDataPolicy(String vdbName, int vdbVersion, String policyName, String role, boolean add) throws AdminException {
+ ManagedComponent mc = getVDBManagedComponent(vdbName, vdbVersion);
+ if (mc == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("vdb_not_found", vdbName, vdbVersion)); //$NON-NLS-1$
+ }
+
+ ManagedProperty mp = mc.getProperty("dataPolicies");//$NON-NLS-1$
+ List<ManagedObject> policies = (List<ManagedObject>)MetaValueFactory.getInstance().unwrap(mp.getValue());
+ ManagedObject managedPolicy = null;
+ if (policies != null && !policies.isEmpty()) {
+ for(ManagedObject mo:policies) {
+ String name = ManagedUtil.getSimpleValue(mo, "name", String.class); //$NON-NLS-1$
+ if (policyName.equals(name)) {
+ managedPolicy = mo;
+ }
+ }
+ }
+
+ if (managedPolicy == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("policy_not_found", policyName, vdbName, vdbVersion)); //$NON-NLS-1$
+ }
+
+ if (role != null) {
+ ManagedProperty mappedRoleNames = managedPolicy.getProperty("mappedRoleNames");//$NON-NLS-1$
+ CollectionValueSupport roleCollection = (CollectionValueSupport)mappedRoleNames.getValue();
+ ArrayList<MetaValue> modifiedRoleNames = new ArrayList<MetaValue>();
+ if (roleCollection != null) {
+ MetaValue[] roleNames = roleCollection.getElements();
+ for (MetaValue mv:roleNames) {
+ String existing = (String)((SimpleValueSupport)mv).getValue();
+ if (!existing.equals(role)) {
+ modifiedRoleNames.add(mv);
+ }
+ }
+ }
+ else {
+ roleCollection = new CollectionValueSupport(new CollectionMetaType("java.util.List", SimpleMetaType.STRING)); //$NON-NLS-1$
+ mappedRoleNames.setValue(roleCollection);
+ }
+
+ if (add) {
+ modifiedRoleNames.add(ManagedUtil.wrap(SimpleMetaType.STRING, role));
+ }
+
+ roleCollection.setElements(modifiedRoleNames.toArray(new MetaValue[modifiedRoleNames.size()]));
+ } else {
+ ManagedProperty anyAuthenticated = managedPolicy.getProperty("anyAuthenticated");//$NON-NLS-1$
+ anyAuthenticated.setValue(SimpleValueSupport.wrap(add));
+ }
+
+ try {
+ getView().updateComponent(mc);
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+
+ @Override
+ public void addDataRoleMapping(String vdbName, int vdbVersion, String policyName, String role) throws AdminException {
+ manageRoleToDataPolicy(vdbName, vdbVersion, policyName, role, true);
+ }
+
+ @Override
+ public void removeDataRoleMapping(String vdbName, int vdbVersion, String policyName, String role) throws AdminException{
+ manageRoleToDataPolicy(vdbName, vdbVersion, policyName, role, false);
+ }
+
+ @Override
+ public void setAnyAuthenticatedForDataRole(String vdbName, int vdbVersion,
+ String dataRole, boolean anyAuthenticated) throws AdminException {
+ manageRoleToDataPolicy(vdbName, vdbVersion, dataRole, null, anyAuthenticated);
+ }
+
+ @Override
+ public void mergeVDBs(String sourceVDBName, int sourceVDBVersion, String targetVDBName, int targetVDBVersion) throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ ManagedUtil.executeOperation(mc, "mergeVDBs", //$NON-NLS-1$
+ SimpleValueSupport.wrap(sourceVDBName),
+ SimpleValueSupport.wrap(sourceVDBVersion),
+ SimpleValueSupport.wrap(targetVDBName),
+ SimpleValueSupport.wrap(targetVDBVersion));
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ private ManagedComponent getDatasource(String deployedName) throws Exception {
+ ManagedComponent mc = null;
+ for (String type:DS_TYPES) {
+ ComponentType ct = new ComponentType("DataSource", type); //$NON-NLS-1$
+ mc = getView().getComponent(deployedName, ct);
+ if (mc != null) {
+ return mc;
+ }
+ }
+ for (String type:CF_TYPES) {
+ ComponentType ct = new ComponentType("ConnectionFactory", type); //$NON-NLS-1$
+ mc = getView().getComponent(deployedName, ct);
+ if (mc != null) {
+ return mc;
+ }
+ }
+ return mc;
+ }
+
+
+ @Override
+ public void createDataSource(String deploymentName, String templateName, Properties properties) throws AdminException {
+ try {
+ ManagedComponent mc = getDatasource(deploymentName);
+ if (mc != null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("datasource_exists",deploymentName)); //$NON-NLS-1$;
+ }
+
+ DeploymentTemplateInfo info = getView().getTemplate(templateName);
+ if(info == null) {
+ throw new AdminProcessingException(IntegrationPlugin.Util.getString("datasource_template_not_found", templateName)); //$NON-NLS-1$
+ }
+
+ // template properties specific to the template
+ Map<String, ManagedProperty> propertyMap = info.getProperties();
+
+ // walk through the supplied properties and assign properly to template
+ for (String key:properties.stringPropertyNames()) {
+ ManagedProperty mp = propertyMap.get(key);
+ if (mp != null) {
+ String value = properties.getProperty(key);
+ if (!ManagedUtil.sameValue(mp.getDefaultValue(), value)){
+ mp.setValue(SimpleValueSupport.wrap(value));
+ }
+ }
+ }
+ info.getProperties().get("jndi-name").setValue(SimpleValueSupport.wrap(deploymentName)); //$NON-NLS-1$
+ getView().applyTemplate(deploymentName, info);
+ } catch (NoSuchDeploymentException e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ } catch(Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void deleteDataSource(String deployedName) throws AdminException {
+ try {
+ ManagedComponent mc = getDatasource(deployedName);
+ if (mc != null) {
+ ManagedUtil.removeArchive(getDeploymentManager(),mc.getDeployment().getName());
+ }
+ } catch (Exception e) {
+ throw new AdminComponentException(e);
+ }
+ }
+
+ @Override
+ public Collection<String> getDataSourceNames() throws AdminException {
+ ArrayList<String> names = new ArrayList<String>();
+ try {
+ for (String type:DS_TYPES) {
+ ComponentType ct = new ComponentType("DataSource", type); //$NON-NLS-1$
+ Set<ManagedComponent> mcs = getView().getComponentsForType(ct);
+ for (ManagedComponent mc:mcs) {
+ names.add(((SimpleValue)mc.getProperty("jndi-name").getValue()).getValue().toString()); //$NON-NLS-1$
+ }
+ }
+ for (String type:CF_TYPES) {
+ ComponentType ct = new ComponentType("ConnectionFactory", type); //$NON-NLS-1$
+ Set<ManagedComponent> mcs = getView().getComponentsForType(ct);
+ for (ManagedComponent mc:mcs) {
+ names.add(((SimpleValue)mc.getProperty("jndi-name").getValue()).getValue().toString()); //$NON-NLS-1$
+ }
+ }
+ } catch (Exception e) {
+ throw new AdminComponentException(e);
+ }
+ return names;
+ }
+
+ @Override
+ public Set<String> getDataSourceTemplateNames() throws AdminException{
+ Set<String> names = getView().getTemplateNames();
+ HashSet<String> matched = new HashSet<String>();
+ for(String name:names) {
+ if (name.startsWith(CONNECTOR_PREFIX)) {
+ matched.add(name);
+ }
+ }
+ return matched;
+ }
+
+ @Override
+ public CacheStatistics getCacheStats(String cacheType) throws AdminException {
+ try {
+ ManagedComponent mc = getView().getComponent(DQPNAME, DQPTYPE);
+ MetaValue value = ManagedUtil.executeOperation(mc, "getCacheStatistics", SimpleValueSupport.wrap(cacheType));//$NON-NLS-1$
+ return (CacheStatistics)MetaValueFactory.getInstance().unwrap(value, CacheStatisticsMetadata.class);
+ } catch (Exception e) {
+ throw new AdminComponentException(e.getMessage(), e);
+ }
+ }
+
+ @Override
+ public void markDataSourceAvailable(String name) throws AdminException {
+ statusChecker.dataSourceAdded(name);
+ }
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java
===================================================================
--- trunk/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,197 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.adminapi.jboss;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationHandler;
-import java.lang.reflect.Method;
-import java.lang.reflect.Proxy;
-import java.util.Properties;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-import javax.security.auth.callback.Callback;
-import javax.security.auth.callback.CallbackHandler;
-import javax.security.auth.callback.NameCallback;
-import javax.security.auth.callback.PasswordCallback;
-import javax.security.auth.callback.UnsupportedCallbackException;
-import javax.security.auth.login.Configuration;
-import javax.security.auth.login.LoginContext;
-import javax.security.auth.login.LoginException;
-
-import org.jboss.deployers.spi.management.ManagementView;
-import org.jboss.deployers.spi.management.deploy.DeploymentManager;
-import org.jboss.profileservice.spi.ProfileService;
-import org.teiid.adminapi.AdminComponentException;
-
-public class AdminProvider {
-
- public static Admin getLocal(final ProfileService profileService) {
- ProfileConnection pc = new ProfileConnection(profileService);
- return new Admin(pc.getManagementView(), pc.getDeploymentManager());
- }
-
- public static Admin getLocal() throws AdminComponentException {
- ProfileConnection pc = new ProfileConnection();
- return new Admin(pc.getManagementView(), pc.getDeploymentManager());
- }
-
- public static Admin getRemote(String provideURL, String userid, String password) throws AdminComponentException {
- ProfileConnection pc = new ProfileConnection(provideURL, userid, password);
- return new Admin(pc.getManagementView(), pc.getDeploymentManager());
- }
-
- /**
- * Connection to profile service from a remote VM or local connection
- */
- static private class ProfileConnection {
- private static final String PROFILE_SERVICE_JNDI_NAME = "ProfileService"; //$NON-NLS-1$
- private static final String SECURE_PROFILE_SERVICE_JNDI_NAME = "SecureProfileService/remote"; //$NON-NLS-1$
- private static final String NAMING_CONTEXT_FACTORY = "org.jnp.interfaces.NamingContextFactory"; //$NON-NLS-1$
- private static final String JNP_TIMEOUT_JNP_INIT_PROP = "jnp.timeout"; //$NON-NLS-1$
- private static final String JNP_SOTIMEOUT_JNP_INIT_PROP = "jnp.sotimeout"; //$NON-NLS-1$
- private static final String JNP_DISABLE_DISCOVERY_JNP_INIT_PROP = "jnp.disableDiscovery"; //$NON-NLS-1$
-
- /**
- * This is the timeout (in milliseconds) for the initial attempt to establish the remote connection.
- */
- private static final int JNP_TIMEOUT = 60 * 1000; // 60 seconds
-
- /**
- * This is the timeout (in milliseconds) for methods invoked on the remote ProfileService. NOTE: This timeout comes
- * into play if the JBossAS instance has gone down since the original JNP connection was made.
- */
- private static final int JNP_SO_TIMEOUT = 60 * 1000; // 60 seconds
-
- /**
- * A flag indicating that the discovery process should not attempt to automatically discover (via multicast) naming
- * servers running the JBoss HA-JNDI service if it fails to connect to the specified jnp URL.
- */
- private static final boolean JNP_DISABLE_DISCOVERY = true;
-
- private ProfileService profileService;
- private String userName;
- private String password;
-
- public ProfileConnection() throws AdminComponentException {
- this.profileService = connect(null, null, null);
- }
-
- public ProfileConnection(final ProfileService profileService) {
- this.profileService = profileService;
- }
-
- public ProfileConnection(String providerURL, String user, String password) throws AdminComponentException {
- this.userName = user;
- this.password = password;
- this.profileService = connect(providerURL, user, password);
- }
-
- public ManagementView getManagementView() {
- return this.profileService.getViewManager();
- }
-
- public DeploymentManager getDeploymentManager() {
- return this.profileService.getDeploymentManager();
- }
-
- private ProfileService connect(String providerURL, String user, String password) throws AdminComponentException {
- ClassLoader originalContextClassLoader = Thread.currentThread().getContextClassLoader();
- try {
- // local connection
- if (providerURL == null) {
- InitialContext ic = new InitialContext();
- return (ProfileService)ic.lookup(PROFILE_SERVICE_JNDI_NAME);
- }
-
- Properties env = new Properties();
- env.setProperty(Context.PROVIDER_URL, providerURL);
-
- // un-authenticated remote login
- env.setProperty(Context.INITIAL_CONTEXT_FACTORY, NAMING_CONTEXT_FACTORY);
- env.setProperty(Context.SECURITY_PRINCIPAL, user);
- env.setProperty(Context.SECURITY_CREDENTIALS, password);
- env.put(Context.URL_PKG_PREFIXES, "org.jnp.interfaces"); //$NON-NLS-1$
- env.setProperty(JNP_DISABLE_DISCOVERY_JNP_INIT_PROP, "true"); //$NON-NLS-1$
- env.setProperty(JNP_TIMEOUT_JNP_INIT_PROP, String.valueOf(JNP_TIMEOUT));
- env.setProperty(JNP_SOTIMEOUT_JNP_INIT_PROP, String.valueOf(JNP_SO_TIMEOUT));
- env.setProperty(JNP_DISABLE_DISCOVERY_JNP_INIT_PROP, String.valueOf(JNP_DISABLE_DISCOVERY));
- env.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces"); //$NON-NLS-1$ //$NON-NLS-2$
- InitialContext ic = new InitialContext(env);
-
- try {
- return (ProfileService)ic.lookup(PROFILE_SERVICE_JNDI_NAME);
- } catch(NamingException e) {
- ProfileService ps = (ProfileService)ic.lookup(SECURE_PROFILE_SERVICE_JNDI_NAME);
- return (ProfileService)Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {ProfileService.class}, new JaasSecurityHandler(ps, this.userName, this.password));
- }
- } catch(NamingException e) {
- throw new AdminComponentException(e);
- } finally {
- Thread.currentThread().setContextClassLoader(originalContextClassLoader);
- }
- }
- }
-
- static class JaasSecurityHandler implements InvocationHandler {
- private Object target;
- private LoginContext loginContext;
-
- public JaasSecurityHandler(Object target, final String username, final String password) {
- this.target = target;
- Configuration jaasConfig = new JBossConfiguration();
- try {
- this.loginContext = new LoginContext(JBossConfiguration.JBOSS_ENTRY_NAME, null, new CallbackHandler() {
-
- @Override
- public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
- for (Callback callback : callbacks) {
- if (callback instanceof NameCallback) {
- NameCallback nameCallback = (NameCallback)callback;
- nameCallback.setName(username);
- }
- else if (callback instanceof PasswordCallback) {
- PasswordCallback passwordCallback = (PasswordCallback)callback;
- passwordCallback.setPassword(password.toCharArray());
- }
- else {
- throw new UnsupportedCallbackException(callback, "Unrecognized Callback: " + callback); //$NON-NLS-1$
- }
- }
-
- }
- }, jaasConfig);
- }
- catch (LoginException e) {
- throw new RuntimeException(e);
- }
- }
-
- public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
- this.loginContext.login();
- Object returnValue = method.invoke(this.target, args);
- this.loginContext.logout();
- return returnValue;
- }
- }
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java (from rev 2941, trunk/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/adminapi/jboss/AdminProvider.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,198 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.adminapi.jboss;
+
+import java.io.IOException;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import java.util.Properties;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.NameCallback;
+import javax.security.auth.callback.PasswordCallback;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import javax.security.auth.login.Configuration;
+import javax.security.auth.login.LoginContext;
+import javax.security.auth.login.LoginException;
+
+import org.jboss.deployers.spi.management.ManagementView;
+import org.jboss.deployers.spi.management.deploy.DeploymentManager;
+import org.jboss.profileservice.spi.ProfileService;
+import org.teiid.adminapi.AdminComponentException;
+import org.teiid.deployers.VDBStatusChecker;
+
+public class AdminProvider {
+
+ public static Admin getLocal(final ProfileService profileService, VDBStatusChecker vdbStatusChecker) {
+ ProfileConnection pc = new ProfileConnection(profileService);
+ return new Admin(pc.getManagementView(), pc.getDeploymentManager(), vdbStatusChecker);
+ }
+
+ public static Admin getLocal(VDBStatusChecker vdbStatusChecker) throws AdminComponentException {
+ ProfileConnection pc = new ProfileConnection();
+ return new Admin(pc.getManagementView(), pc.getDeploymentManager(), vdbStatusChecker);
+ }
+
+ public static Admin getRemote(String provideURL, String userid, String password, VDBStatusChecker vdbStatusChecker) throws AdminComponentException {
+ ProfileConnection pc = new ProfileConnection(provideURL, userid, password);
+ return new Admin(pc.getManagementView(), pc.getDeploymentManager(), vdbStatusChecker);
+ }
+
+ /**
+ * Connection to profile service from a remote VM or local connection
+ */
+ static private class ProfileConnection {
+ private static final String PROFILE_SERVICE_JNDI_NAME = "ProfileService"; //$NON-NLS-1$
+ private static final String SECURE_PROFILE_SERVICE_JNDI_NAME = "SecureProfileService/remote"; //$NON-NLS-1$
+ private static final String NAMING_CONTEXT_FACTORY = "org.jnp.interfaces.NamingContextFactory"; //$NON-NLS-1$
+ private static final String JNP_TIMEOUT_JNP_INIT_PROP = "jnp.timeout"; //$NON-NLS-1$
+ private static final String JNP_SOTIMEOUT_JNP_INIT_PROP = "jnp.sotimeout"; //$NON-NLS-1$
+ private static final String JNP_DISABLE_DISCOVERY_JNP_INIT_PROP = "jnp.disableDiscovery"; //$NON-NLS-1$
+
+ /**
+ * This is the timeout (in milliseconds) for the initial attempt to establish the remote connection.
+ */
+ private static final int JNP_TIMEOUT = 60 * 1000; // 60 seconds
+
+ /**
+ * This is the timeout (in milliseconds) for methods invoked on the remote ProfileService. NOTE: This timeout comes
+ * into play if the JBossAS instance has gone down since the original JNP connection was made.
+ */
+ private static final int JNP_SO_TIMEOUT = 60 * 1000; // 60 seconds
+
+ /**
+ * A flag indicating that the discovery process should not attempt to automatically discover (via multicast) naming
+ * servers running the JBoss HA-JNDI service if it fails to connect to the specified jnp URL.
+ */
+ private static final boolean JNP_DISABLE_DISCOVERY = true;
+
+ private ProfileService profileService;
+ private String userName;
+ private String password;
+
+ public ProfileConnection() throws AdminComponentException {
+ this.profileService = connect(null, null, null);
+ }
+
+ public ProfileConnection(final ProfileService profileService) {
+ this.profileService = profileService;
+ }
+
+ public ProfileConnection(String providerURL, String user, String password) throws AdminComponentException {
+ this.userName = user;
+ this.password = password;
+ this.profileService = connect(providerURL, user, password);
+ }
+
+ public ManagementView getManagementView() {
+ return this.profileService.getViewManager();
+ }
+
+ public DeploymentManager getDeploymentManager() {
+ return this.profileService.getDeploymentManager();
+ }
+
+ private ProfileService connect(String providerURL, String user, String password) throws AdminComponentException {
+ ClassLoader originalContextClassLoader = Thread.currentThread().getContextClassLoader();
+ try {
+ // local connection
+ if (providerURL == null) {
+ InitialContext ic = new InitialContext();
+ return (ProfileService)ic.lookup(PROFILE_SERVICE_JNDI_NAME);
+ }
+
+ Properties env = new Properties();
+ env.setProperty(Context.PROVIDER_URL, providerURL);
+
+ // un-authenticated remote login
+ env.setProperty(Context.INITIAL_CONTEXT_FACTORY, NAMING_CONTEXT_FACTORY);
+ env.setProperty(Context.SECURITY_PRINCIPAL, user);
+ env.setProperty(Context.SECURITY_CREDENTIALS, password);
+ env.put(Context.URL_PKG_PREFIXES, "org.jnp.interfaces"); //$NON-NLS-1$
+ env.setProperty(JNP_DISABLE_DISCOVERY_JNP_INIT_PROP, "true"); //$NON-NLS-1$
+ env.setProperty(JNP_TIMEOUT_JNP_INIT_PROP, String.valueOf(JNP_TIMEOUT));
+ env.setProperty(JNP_SOTIMEOUT_JNP_INIT_PROP, String.valueOf(JNP_SO_TIMEOUT));
+ env.setProperty(JNP_DISABLE_DISCOVERY_JNP_INIT_PROP, String.valueOf(JNP_DISABLE_DISCOVERY));
+ env.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces"); //$NON-NLS-1$ //$NON-NLS-2$
+ InitialContext ic = new InitialContext(env);
+
+ try {
+ return (ProfileService)ic.lookup(PROFILE_SERVICE_JNDI_NAME);
+ } catch(NamingException e) {
+ ProfileService ps = (ProfileService)ic.lookup(SECURE_PROFILE_SERVICE_JNDI_NAME);
+ return (ProfileService)Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {ProfileService.class}, new JaasSecurityHandler(ps, this.userName, this.password));
+ }
+ } catch(NamingException e) {
+ throw new AdminComponentException(e);
+ } finally {
+ Thread.currentThread().setContextClassLoader(originalContextClassLoader);
+ }
+ }
+ }
+
+ static class JaasSecurityHandler implements InvocationHandler {
+ private Object target;
+ private LoginContext loginContext;
+
+ public JaasSecurityHandler(Object target, final String username, final String password) {
+ this.target = target;
+ Configuration jaasConfig = new JBossConfiguration();
+ try {
+ this.loginContext = new LoginContext(JBossConfiguration.JBOSS_ENTRY_NAME, null, new CallbackHandler() {
+
+ @Override
+ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
+ for (Callback callback : callbacks) {
+ if (callback instanceof NameCallback) {
+ NameCallback nameCallback = (NameCallback)callback;
+ nameCallback.setName(username);
+ }
+ else if (callback instanceof PasswordCallback) {
+ PasswordCallback passwordCallback = (PasswordCallback)callback;
+ passwordCallback.setPassword(password.toCharArray());
+ }
+ else {
+ throw new UnsupportedCallbackException(callback, "Unrecognized Callback: " + callback); //$NON-NLS-1$
+ }
+ }
+
+ }
+ }, jaasConfig);
+ }
+ catch (LoginException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ this.loginContext.login();
+ Object returnValue = method.invoke(this.target, args);
+ this.loginContext.logout();
+ return returnValue;
+ }
+ }
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
===================================================================
--- trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,601 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.jboss.deployers;
-
-import java.io.Serializable;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.Proxy;
-import java.sql.Blob;
-import java.sql.Clob;
-import java.sql.SQLException;
-import java.sql.SQLXML;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Date;
-import java.util.List;
-import java.util.Properties;
-import java.util.concurrent.Callable;
-import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-import javax.resource.spi.XATerminator;
-import javax.resource.spi.work.WorkManager;
-import javax.security.auth.login.LoginException;
-import javax.transaction.TransactionManager;
-
-import org.jboss.managed.api.ManagedOperation.Impact;
-import org.jboss.managed.api.annotation.ManagementComponent;
-import org.jboss.managed.api.annotation.ManagementObject;
-import org.jboss.managed.api.annotation.ManagementOperation;
-import org.jboss.managed.api.annotation.ManagementParameter;
-import org.jboss.managed.api.annotation.ManagementProperties;
-import org.jboss.managed.api.annotation.ManagementProperty;
-import org.jboss.managed.api.annotation.ViewUse;
-import org.jboss.profileservice.spi.ProfileService;
-import org.jboss.util.naming.Util;
-import org.teiid.adminapi.Admin;
-import org.teiid.adminapi.AdminComponentException;
-import org.teiid.adminapi.AdminException;
-import org.teiid.adminapi.AdminProcessingException;
-import org.teiid.adminapi.Admin.Cache;
-import org.teiid.adminapi.impl.CacheStatisticsMetadata;
-import org.teiid.adminapi.impl.DQPManagement;
-import org.teiid.adminapi.impl.RequestMetadata;
-import org.teiid.adminapi.impl.SessionMetadata;
-import org.teiid.adminapi.impl.WorkerPoolStatisticsMetadata;
-import org.teiid.adminapi.jboss.AdminProvider;
-import org.teiid.cache.CacheFactory;
-import org.teiid.client.DQP;
-import org.teiid.client.RequestMessage;
-import org.teiid.client.ResultsMessage;
-import org.teiid.client.security.ILogon;
-import org.teiid.client.security.InvalidSessionException;
-import org.teiid.client.util.ExceptionUtil;
-import org.teiid.client.util.ResultsFuture;
-import org.teiid.core.ComponentNotFoundException;
-import org.teiid.core.TeiidComponentException;
-import org.teiid.core.TeiidRuntimeException;
-import org.teiid.deployers.VDBLifeCycleListener;
-import org.teiid.deployers.VDBRepository;
-import org.teiid.dqp.internal.process.DQPConfiguration;
-import org.teiid.dqp.internal.process.DQPCore;
-import org.teiid.dqp.internal.process.DQPWorkContext;
-import org.teiid.dqp.internal.process.TransactionServerImpl;
-import org.teiid.dqp.service.BufferService;
-import org.teiid.dqp.service.SessionService;
-import org.teiid.dqp.service.SessionServiceException;
-import org.teiid.dqp.service.TransactionService;
-import org.teiid.jboss.IntegrationPlugin;
-import org.teiid.logging.Log4jListener;
-import org.teiid.logging.LogConstants;
-import org.teiid.logging.LogManager;
-import org.teiid.logging.MessageLevel;
-import org.teiid.net.TeiidURL;
-import org.teiid.security.SecurityHelper;
-import org.teiid.transport.ClientServiceRegistry;
-import org.teiid.transport.ClientServiceRegistryImpl;
-import org.teiid.transport.LogonImpl;
-import org.teiid.transport.ODBCSocketListener;
-import org.teiid.transport.SocketConfiguration;
-import org.teiid.transport.SocketListener;
-
-
-@ManagementObject(name="RuntimeEngineDeployer", isRuntime=true, componentType=@ManagementComponent(type="teiid",subtype="dqp"), properties=ManagementProperties.EXPLICIT)
-public class RuntimeEngineDeployer extends DQPConfiguration implements DQPManagement, Serializable , ClientServiceRegistry {
- private static final long serialVersionUID = -4676205340262775388L;
-
- private transient SocketConfiguration jdbcSocketConfiguration;
- private transient SocketConfiguration adminSocketConfiguration;
- private transient SocketConfiguration odbcSocketConfiguration;
- private transient SocketListener jdbcSocket;
- private transient SocketListener adminSocket;
- private transient SocketListener odbcSocket;
- private transient TransactionServerImpl transactionServerImpl = new TransactionServerImpl();
-
- private transient DQPCore dqpCore = new DQPCore();
- private transient SessionService sessionService;
- private transient ILogon logon;
- private transient Admin admin;
- private transient ClientServiceRegistryImpl csr = new ClientServiceRegistryImpl();
- private transient VDBRepository vdbRepository;
-
- private transient ProfileService profileService;
- private transient String jndiName;
-
- public RuntimeEngineDeployer() {
- // TODO: this does not belong here
- LogManager.setLogListener(new Log4jListener());
- }
-
- @Override
- public <T> T getClientService(Class<T> iface)
- throws ComponentNotFoundException {
- return this.csr.getClientService(iface);
- }
-
- @Override
- public SecurityHelper getSecurityHelper() {
- return this.csr.getSecurityHelper();
- }
-
- public void start() {
- dqpCore.setTransactionService((TransactionService)LogManager.createLoggingProxy(LogConstants.CTX_TXN_LOG, transactionServerImpl, new Class[] {TransactionService.class}, MessageLevel.DETAIL));
-
- // create the necessary services
- createClientServices();
-
- int offset = 0;
- String portBinding = System.getProperty("jboss.service.binding.set"); //$NON-NLS-1$
- if (portBinding != null && portBinding.startsWith("ports-")) { //$NON-NLS-1$
- if (portBinding.equals("ports-default")) { //$NON-NLS-1$
- offset = 0;
- }
- else {
- try {
- offset = Integer.parseInt(portBinding.substring(portBinding.length()-2))*100;
- } catch (NumberFormatException e) {
- offset = 0;
- }
- }
- }
-
- this.csr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
- DQP dqpProxy = proxyService(DQP.class, this.dqpCore, LogConstants.CTX_DQP);
- this.csr.registerClientService(DQP.class, dqpProxy, LogConstants.CTX_DQP);
- Admin adminProxy = proxyService(Admin.class, admin, LogConstants.CTX_ADMIN_API);
- this.csr.registerClientService(Admin.class, adminProxy, LogConstants.CTX_ADMIN_API);
-
- ClientServiceRegistryImpl jdbcCsr = new ClientServiceRegistryImpl();
- jdbcCsr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
- jdbcCsr.registerClientService(DQP.class, dqpProxy, LogConstants.CTX_DQP);
-
- if (this.jdbcSocketConfiguration.getEnabled()) {
- this.jdbcSocket = new SocketListener(this.jdbcSocketConfiguration, jdbcCsr, this.dqpCore.getBufferManager(), offset);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid JDBC = ",(this.jdbcSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.jdbcSocketConfiguration.getHostAddress().getHostName()+":"+(this.jdbcSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- } else {
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "jdbc connections")); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- ClientServiceRegistryImpl adminCsr = new ClientServiceRegistryImpl(Type.Admin);
- adminCsr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
- adminCsr.registerClientService(Admin.class, adminProxy, LogConstants.CTX_ADMIN_API);
-
- if (this.adminSocketConfiguration.getEnabled()) {
- this.adminSocket = new SocketListener(this.adminSocketConfiguration, adminCsr, this.dqpCore.getBufferManager(), offset);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid Admin", (this.adminSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.adminSocketConfiguration.getHostAddress().getHostName()+":"+(this.adminSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- } else {
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "admin connections")); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
- if (this.odbcSocketConfiguration.getEnabled()) {
- this.vdbRepository.odbcEnabled();
- this.odbcSocket = new ODBCSocketListener(this.odbcSocketConfiguration, this.dqpCore.getBufferManager(), offset, getMaxODBCLobSizeAllowed());
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("odbc_enabled","Teiid ODBC - SSL=", (this.odbcSocketConfiguration.getSSLConfiguration().isSslEnabled()?"ON":"OFF")+" Host = "+this.odbcSocketConfiguration.getHostAddress().getHostName()+" Port = "+(this.odbcSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
- } else {
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("odbc_not_enabled")); //$NON-NLS-1$
- }
-
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_started", getRuntimeVersion(), new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
- if (jndiName != null) {
- final InitialContext ic ;
- try {
- ic = new InitialContext() ;
- Util.bind(ic, jndiName, this) ;
- } catch (final NamingException ne) {
- // Add jndi_failed to bundle
- LogManager.logError(LogConstants.CTX_RUNTIME, ne, IntegrationPlugin.Util.getString("jndi_failed", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
- }
- }
-
- // add vdb life cycle listeners
- this.vdbRepository.addListener(new VDBLifeCycleListener() {
-
- @Override
- public void removed(String name, int version) {
-
- }
-
- @Override
- public void added(String name, int version) {
- // terminate all the previous sessions
- try {
- Collection<SessionMetadata> sessions = sessionService.getActiveSessions();
- for (SessionMetadata session:sessions) {
- if (name.equalsIgnoreCase(session.getVDBName()) && version == session.getVDBVersion()){
- sessionService.terminateSession(session.getSessionId(), null);
- }
- }
- } catch (SessionServiceException e) {
- //ignore
- }
-
- // dump the caches.
- dqpCore.clearCache(Cache.PREPARED_PLAN_CACHE.toString(), name, version);
- dqpCore.clearCache(Cache.QUERY_SERVICE_RESULT_SET_CACHE.toString(), name, version);
- }
- });
- }
-
- public void stop() {
- if (jndiName != null) {
- final InitialContext ic ;
- try {
- ic = new InitialContext() ;
- Util.unbind(ic, jndiName) ;
- } catch (final NamingException ne) {
- }
- }
-
- try {
- this.dqpCore.stop();
- } catch(TeiidRuntimeException e) {
- // this bean is already shutdown
- }
-
- // Stop socket transport(s)
- if (this.jdbcSocket != null) {
- this.jdbcSocket.stop();
- this.jdbcSocket = null;
- }
-
- if (this.adminSocket != null) {
- this.adminSocket.stop();
- this.adminSocket = null;
- }
-
- if (this.odbcSocket != null) {
- this.odbcSocket.stop();
- this.odbcSocket = null;
- }
- LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_stopped", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
- }
-
- private void createClientServices() {
-
- this.dqpCore.start(this);
-
- this.logon = new LogonImpl(this.sessionService, "teiid-cluster"); //$NON-NLS-1$
- if (profileService != null) {
- this.admin = AdminProvider.getLocal(profileService);
- } else {
- try {
- this.admin = AdminProvider.getLocal();
- } catch (AdminComponentException e) {
- throw new TeiidRuntimeException(e.getCause());
- }
- }
- }
-
- /**
- * Creates an proxy to validate the incoming session
- */
- private <T> T proxyService(final Class<T> iface, final T instance, String context) {
-
- return iface.cast(Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {iface}, new LogManager.LoggingProxy(instance, context, MessageLevel.TRACE) {
-
- public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
- Throwable exception = null;
- try {
- sessionService.validateSession(DQPWorkContext.getWorkContext().getSessionId());
- return super.invoke(proxy, method, args);
- } catch (InvocationTargetException e) {
- exception = e.getTargetException();
- } catch(Throwable t){
- exception = t;
- }
- throw ExceptionUtil.convertException(method, exception);
- }
- }));
- }
-
- public void setJdbcSocketConfiguration(SocketConfiguration socketConfig) {
- this.jdbcSocketConfiguration = socketConfig;
- }
-
- public void setAdminSocketConfiguration(SocketConfiguration socketConfig) {
- this.adminSocketConfiguration = socketConfig;
- }
-
- public void setOdbcSocketConfiguration(SocketConfiguration socketConfig) {
- this.odbcSocketConfiguration = socketConfig;
- }
-
- public void setXATerminator(XATerminator xaTerminator){
- this.transactionServerImpl.setXaTerminator(xaTerminator);
- }
-
- public void setTransactionManager(TransactionManager transactionManager) {
- this.transactionServerImpl.setTransactionManager(transactionManager);
- }
-
- public void setWorkManager(WorkManager mgr) {
- this.transactionServerImpl.setWorkManager(mgr);
- }
-
- public void setSessionService(SessionService service) {
- this.sessionService = service;
- service.setDqp(this.dqpCore);
- }
-
- public void setBufferService(BufferService service) {
- this.dqpCore.setBufferService(service);
- }
-
- public void setSecurityHelper(SecurityHelper helper) {
- this.csr.setSecurityHelper(helper);
- }
-
- public void setVDBRepository(VDBRepository repo) {
- this.vdbRepository = repo;
- }
-
- public void setProfileService(final ProfileService profileService) {
- this.profileService = profileService ;
- }
-
- public void setJndiName(final String jndiName) {
- this.jndiName = jndiName ;
- }
-
- @Override
- @ManagementOperation(description="Requests for perticular session", impact=Impact.ReadOnly,params={@ManagementParameter(name="sessionId",description="The session Identifier")})
- public List<RequestMetadata> getRequestsForSession(String sessionId) {
- return this.dqpCore.getRequestsForSession(sessionId);
- }
-
- @Override
- @ManagementOperation(description="Requests using a certain VDB", impact=Impact.ReadOnly,params={@ManagementParameter(name="vdbName",description="VDB Name"), @ManagementParameter(name="vdbVersion",description="VDB Version")})
- public List<RequestMetadata> getRequestsUsingVDB(String vdbName, int vdbVersion) throws AdminException {
- List<RequestMetadata> requests = new ArrayList<RequestMetadata>();
- try {
- Collection<SessionMetadata> sessions = this.sessionService.getActiveSessions();
- for (SessionMetadata session:sessions) {
- if (session.getVDBName().equals(vdbName) && session.getVDBVersion() == vdbVersion) {
- requests.addAll(this.dqpCore.getRequestsForSession(session.getSessionId()));
- }
- }
- } catch (SessionServiceException e) {
- throw new AdminComponentException(e);
- }
- return requests;
- }
-
-
- @Override
- @ManagementOperation(description="Active requests", impact=Impact.ReadOnly)
- public List<RequestMetadata> getRequests() {
- return this.dqpCore.getRequests();
- }
-
- @Override
- @ManagementOperation(description="Long running requests", impact=Impact.ReadOnly)
- public List<RequestMetadata> getLongRunningRequests() {
- return this.dqpCore.getLongRunningRequests();
- }
-
-
- @Override
- @ManagementOperation(description="Get thread statistics worker pool", impact=Impact.ReadOnly,params={@ManagementParameter(name="identifier",description="Get thread statistics worker pool")})
- public WorkerPoolStatisticsMetadata getWorkerPoolStatistics(){
- return this.dqpCore.getWorkerPoolStatistics();
- }
-
- @Override
- @ManagementOperation(description="Terminate a Session",params={@ManagementParameter(name="terminateeId",description="The session to be terminated")})
- public void terminateSession(String terminateeId) {
- this.sessionService.terminateSession(terminateeId, DQPWorkContext.getWorkContext().getSessionId());
- }
-
- @Override
- @ManagementOperation(description="Cancel a Request",params={@ManagementParameter(name="sessionId",description="The session Identifier"), @ManagementParameter(name="executionId",description="The Execution Identifier")})
- public boolean cancelRequest(String sessionId, long executionId) throws AdminException {
- try {
- return this.dqpCore.cancelRequest(sessionId, executionId);
- } catch (TeiidComponentException e) {
- throw new AdminComponentException(e);
- }
- }
-
- @Override
- @ManagementOperation(description="Get Cache types in the system", impact=Impact.ReadOnly)
- public Collection<String> getCacheTypes(){
- return this.dqpCore.getCacheTypes();
- }
-
- @Override
- @ManagementOperation(description="Clear the caches in the system", impact=Impact.ReadOnly)
- public void clearCache(String cacheType) {
- this.dqpCore.clearCache(cacheType);
- }
-
- @Override
- @ManagementOperation(description="Clear the caches in the system for a VDB", params={@ManagementParameter(name="cacheType",description="Type of Cache"), @ManagementParameter(name="vdbName",description="VDB Name"),@ManagementParameter(name="version",description="VDB Version")}, impact=Impact.ReadOnly)
- public void clearCache(String cacheType, String vdbName, int version) {
- this.dqpCore.clearCache(cacheType, vdbName, version);
- }
-
- @Override
- @ManagementOperation(description="Get the cache statistics", impact=Impact.ReadOnly)
- public CacheStatisticsMetadata getCacheStatistics(String cacheType) {
- return this.dqpCore.getCacheStatistics(cacheType);
- }
-
- @Override
- @ManagementOperation(description="Active sessions", impact=Impact.ReadOnly)
- public Collection<SessionMetadata> getActiveSessions() throws AdminException {
- try {
- return this.sessionService.getActiveSessions();
- } catch (SessionServiceException e) {
- throw new AdminComponentException(e);
- }
- }
-
- @Override
- @ManagementProperty(description="Active session count", use={ViewUse.STATISTIC}, readOnly=true)
- public int getActiveSessionsCount() throws AdminException{
- try {
- return this.sessionService.getActiveSessionsCount();
- } catch (SessionServiceException e) {
- throw new AdminComponentException(e);
- }
- }
-
- @Override
- @ManagementOperation(description="Active Transactions", impact=Impact.ReadOnly)
- public Collection<org.teiid.adminapi.Transaction> getTransactions() {
- return this.dqpCore.getTransactions();
- }
-
- @Override
- @ManagementOperation(description="Terminate the transaction", impact=Impact.ReadOnly)
- public void terminateTransaction(String xid) throws AdminException {
- this.dqpCore.terminateTransaction(xid);
- }
-
- @Override
- @ManagementOperation(description="Merge Two VDBs",params={@ManagementParameter(name="sourceVDBName"),@ManagementParameter(name="sourceVDBName"), @ManagementParameter(name="targetVDBName"), @ManagementParameter(name="targetVDBVersion")})
- public void mergeVDBs(String sourceVDBName, int sourceVDBVersion,
- String targetVDBName, int targetVDBVersion) throws AdminException {
- this.vdbRepository.mergeVDBs(sourceVDBName, sourceVDBVersion, targetVDBName, targetVDBVersion);
- }
-
- public void setCacheFactory(CacheFactory factory) {
- this.dqpCore.setCacheFactory(factory);
- }
-
- @Override
- @ManagementOperation(description="Execute a sql query", params={@ManagementParameter(name="vdbName"),@ManagementParameter(name="vdbVersion"), @ManagementParameter(name="command"), @ManagementParameter(name="timoutInMilli")})
- public List<List> executeQuery(final String vdbName, final int version, final String command, final long timoutInMilli) throws AdminException {
- Properties properties = new Properties();
- properties.setProperty(TeiidURL.JDBC.VDB_NAME, vdbName);
- properties.setProperty(TeiidURL.JDBC.VDB_VERSION, String.valueOf(version));
-
- String user = "JOPR ADMIN"; //$NON-NLS-1$
- LogManager.logDetail(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("admin_executing", user, command)); //$NON-NLS-1$
-
- SessionMetadata session = null;
- try {
- session = this.sessionService.createSession(user, null, "JOPR", properties, false, false); //$NON-NLS-1$
- } catch (SessionServiceException e1) {
- throw new AdminProcessingException(e1);
- } catch (LoginException e1) {
- throw new AdminProcessingException(e1);
- }
-
- final long requestID = 0L;
-
- DQPWorkContext context = new DQPWorkContext();
- context.setSession(session);
-
- try {
- return context.runInContext(new Callable<List<List>>() {
- @Override
- public List<List> call() throws Exception {
- ArrayList<List> results = new ArrayList<List>();
-
- long start = System.currentTimeMillis();
- RequestMessage request = new RequestMessage(command);
- request.setExecutionId(0L);
- request.setRowLimit(getMaxRowsFetchSize()); // this would limit the number of rows that are returned.
- Future<ResultsMessage> message = dqpCore.executeRequest(requestID, request);
- ResultsMessage rm = message.get(timoutInMilli, TimeUnit.MILLISECONDS);
-
- if (rm.getException() != null) {
- throw new AdminProcessingException(rm.getException());
- }
-
- if (rm.isUpdateResult()) {
- results.addAll(new ArrayList(Arrays.asList("update count"))); //$NON-NLS-1$
- results.addAll(Arrays.asList(rm.getResults()));
- }
- else {
- results.addAll(new ArrayList(Arrays.asList(rm.getColumnNames())));
- results.addAll(Arrays.asList(fixResults(rm.getResults())));
-
- while (rm.getFinalRow() == -1 || rm.getLastRow() < rm.getFinalRow()) {
- long elapsed = System.currentTimeMillis() - start;
- message = dqpCore.processCursorRequest(requestID, rm.getLastRow()+1, 1024);
- rm = message.get(timoutInMilli-elapsed, TimeUnit.MILLISECONDS);
- results.addAll(Arrays.asList(fixResults(rm.getResults())));
- }
- }
-
- long elapsed = System.currentTimeMillis() - start;
- ResultsFuture<?> response = dqpCore.closeRequest(requestID);
- response.get(timoutInMilli-elapsed, TimeUnit.MILLISECONDS);
- return results;
- }
- });
- } catch (Throwable t) {
- throw new AdminProcessingException(t);
- } finally {
- try {
- sessionService.closeSession(session.getSessionId());
- } catch (InvalidSessionException e) { //ignore
- }
- }
- }
-
- /**
- * Managed Object framework has bug that does not currently allow
- * sending a NULL in the Collection Value, so sending literal string "null".
- * If you send them as Array Value, the MO is packaged as composite object and would like
- * all the elements in array to be same type which is not the case with results.
- */
- List[] fixResults(List[] rows) throws SQLException {
- List[] newResults = new List[rows.length];
-
- for(int i = 0; i < rows.length; i++) {
- List row = rows[i];
- ArrayList newRow = new ArrayList();
- for (Object col:row) {
- if (col == null) {
- newRow.add("null"); //$NON-NLS-1$
- }
- else {
- if (col instanceof Number || col instanceof String || col instanceof Character) {
- newRow.add(col);
- }
- else if (col instanceof Blob) {
- newRow.add("blob"); //$NON-NLS-1$
- }
- else if (col instanceof Clob) {
- newRow.add("clob"); //$NON-NLS-1$
- }
- else if (col instanceof SQLXML) {
- SQLXML xml = (SQLXML)col;
- newRow.add(xml.getString());
- }
- else {
- newRow.add(col.toString());
- }
- }
- }
- newResults[i] = newRow;
- }
- return newResults;
- }
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java (from rev 2944, trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,607 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.jboss.deployers;
+
+import java.io.Serializable;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import java.sql.Blob;
+import java.sql.Clob;
+import java.sql.SQLException;
+import java.sql.SQLXML;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Date;
+import java.util.List;
+import java.util.Properties;
+import java.util.concurrent.Callable;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import javax.resource.spi.XATerminator;
+import javax.resource.spi.work.WorkManager;
+import javax.security.auth.login.LoginException;
+import javax.transaction.TransactionManager;
+
+import org.jboss.managed.api.ManagedOperation.Impact;
+import org.jboss.managed.api.annotation.ManagementComponent;
+import org.jboss.managed.api.annotation.ManagementObject;
+import org.jboss.managed.api.annotation.ManagementOperation;
+import org.jboss.managed.api.annotation.ManagementParameter;
+import org.jboss.managed.api.annotation.ManagementProperties;
+import org.jboss.managed.api.annotation.ManagementProperty;
+import org.jboss.managed.api.annotation.ViewUse;
+import org.jboss.profileservice.spi.ProfileService;
+import org.jboss.util.naming.Util;
+import org.teiid.adminapi.Admin;
+import org.teiid.adminapi.AdminComponentException;
+import org.teiid.adminapi.AdminException;
+import org.teiid.adminapi.AdminProcessingException;
+import org.teiid.adminapi.Admin.Cache;
+import org.teiid.adminapi.impl.CacheStatisticsMetadata;
+import org.teiid.adminapi.impl.DQPManagement;
+import org.teiid.adminapi.impl.RequestMetadata;
+import org.teiid.adminapi.impl.SessionMetadata;
+import org.teiid.adminapi.impl.WorkerPoolStatisticsMetadata;
+import org.teiid.adminapi.jboss.AdminProvider;
+import org.teiid.cache.CacheFactory;
+import org.teiid.client.DQP;
+import org.teiid.client.RequestMessage;
+import org.teiid.client.ResultsMessage;
+import org.teiid.client.security.ILogon;
+import org.teiid.client.security.InvalidSessionException;
+import org.teiid.client.util.ExceptionUtil;
+import org.teiid.client.util.ResultsFuture;
+import org.teiid.core.ComponentNotFoundException;
+import org.teiid.core.TeiidComponentException;
+import org.teiid.core.TeiidRuntimeException;
+import org.teiid.deployers.VDBLifeCycleListener;
+import org.teiid.deployers.VDBRepository;
+import org.teiid.deployers.VDBStatusChecker;
+import org.teiid.dqp.internal.process.DQPConfiguration;
+import org.teiid.dqp.internal.process.DQPCore;
+import org.teiid.dqp.internal.process.DQPWorkContext;
+import org.teiid.dqp.internal.process.TransactionServerImpl;
+import org.teiid.dqp.service.BufferService;
+import org.teiid.dqp.service.SessionService;
+import org.teiid.dqp.service.SessionServiceException;
+import org.teiid.dqp.service.TransactionService;
+import org.teiid.jboss.IntegrationPlugin;
+import org.teiid.logging.Log4jListener;
+import org.teiid.logging.LogConstants;
+import org.teiid.logging.LogManager;
+import org.teiid.logging.MessageLevel;
+import org.teiid.net.TeiidURL;
+import org.teiid.security.SecurityHelper;
+import org.teiid.transport.ClientServiceRegistry;
+import org.teiid.transport.ClientServiceRegistryImpl;
+import org.teiid.transport.LogonImpl;
+import org.teiid.transport.ODBCSocketListener;
+import org.teiid.transport.SocketConfiguration;
+import org.teiid.transport.SocketListener;
+
+
+@ManagementObject(name="RuntimeEngineDeployer", isRuntime=true, componentType=@ManagementComponent(type="teiid",subtype="dqp"), properties=ManagementProperties.EXPLICIT)
+public class RuntimeEngineDeployer extends DQPConfiguration implements DQPManagement, Serializable , ClientServiceRegistry {
+ private static final long serialVersionUID = -4676205340262775388L;
+
+ private transient SocketConfiguration jdbcSocketConfiguration;
+ private transient SocketConfiguration adminSocketConfiguration;
+ private transient SocketConfiguration odbcSocketConfiguration;
+ private transient SocketListener jdbcSocket;
+ private transient SocketListener adminSocket;
+ private transient SocketListener odbcSocket;
+ private transient TransactionServerImpl transactionServerImpl = new TransactionServerImpl();
+
+ private transient DQPCore dqpCore = new DQPCore();
+ private transient SessionService sessionService;
+ private transient ILogon logon;
+ private transient Admin admin;
+ private transient ClientServiceRegistryImpl csr = new ClientServiceRegistryImpl();
+ private transient VDBRepository vdbRepository;
+ private transient VDBStatusChecker vdbStatusChecker;
+
+ private transient ProfileService profileService;
+ private transient String jndiName;
+
+ public RuntimeEngineDeployer() {
+ // TODO: this does not belong here
+ LogManager.setLogListener(new Log4jListener());
+ }
+
+ @Override
+ public <T> T getClientService(Class<T> iface)
+ throws ComponentNotFoundException {
+ return this.csr.getClientService(iface);
+ }
+
+ @Override
+ public SecurityHelper getSecurityHelper() {
+ return this.csr.getSecurityHelper();
+ }
+
+ public void start() {
+ dqpCore.setTransactionService((TransactionService)LogManager.createLoggingProxy(LogConstants.CTX_TXN_LOG, transactionServerImpl, new Class[] {TransactionService.class}, MessageLevel.DETAIL));
+
+ // create the necessary services
+ createClientServices();
+
+ int offset = 0;
+ String portBinding = System.getProperty("jboss.service.binding.set"); //$NON-NLS-1$
+ if (portBinding != null && portBinding.startsWith("ports-")) { //$NON-NLS-1$
+ if (portBinding.equals("ports-default")) { //$NON-NLS-1$
+ offset = 0;
+ }
+ else {
+ try {
+ offset = Integer.parseInt(portBinding.substring(portBinding.length()-2))*100;
+ } catch (NumberFormatException e) {
+ offset = 0;
+ }
+ }
+ }
+
+ this.csr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
+ DQP dqpProxy = proxyService(DQP.class, this.dqpCore, LogConstants.CTX_DQP);
+ this.csr.registerClientService(DQP.class, dqpProxy, LogConstants.CTX_DQP);
+ Admin adminProxy = proxyService(Admin.class, admin, LogConstants.CTX_ADMIN_API);
+ this.csr.registerClientService(Admin.class, adminProxy, LogConstants.CTX_ADMIN_API);
+
+ ClientServiceRegistryImpl jdbcCsr = new ClientServiceRegistryImpl();
+ jdbcCsr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
+ jdbcCsr.registerClientService(DQP.class, dqpProxy, LogConstants.CTX_DQP);
+
+ if (this.jdbcSocketConfiguration.getEnabled()) {
+ this.jdbcSocket = new SocketListener(this.jdbcSocketConfiguration, jdbcCsr, this.dqpCore.getBufferManager(), offset);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid JDBC = ",(this.jdbcSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.jdbcSocketConfiguration.getHostAddress().getHostName()+":"+(this.jdbcSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
+ } else {
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "jdbc connections")); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+ ClientServiceRegistryImpl adminCsr = new ClientServiceRegistryImpl(Type.Admin);
+ adminCsr.registerClientService(ILogon.class, logon, LogConstants.CTX_SECURITY);
+ adminCsr.registerClientService(Admin.class, adminProxy, LogConstants.CTX_ADMIN_API);
+
+ if (this.adminSocketConfiguration.getEnabled()) {
+ this.adminSocket = new SocketListener(this.adminSocketConfiguration, adminCsr, this.dqpCore.getBufferManager(), offset);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_enabled","Teiid Admin", (this.adminSocketConfiguration.getSSLConfiguration().isSslEnabled()?"mms://":"mm://")+this.adminSocketConfiguration.getHostAddress().getHostName()+":"+(this.adminSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
+ } else {
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("socket_not_enabled", "admin connections")); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+ if (this.odbcSocketConfiguration.getEnabled()) {
+ this.vdbRepository.odbcEnabled();
+ this.odbcSocket = new ODBCSocketListener(this.odbcSocketConfiguration, this.dqpCore.getBufferManager(), offset, getMaxODBCLobSizeAllowed());
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("odbc_enabled","Teiid ODBC - SSL=", (this.odbcSocketConfiguration.getSSLConfiguration().isSslEnabled()?"ON":"OFF")+" Host = "+this.odbcSocketConfiguration.getHostAddress().getHostName()+" Port = "+(this.odbcSocketConfiguration.getPortNumber()+offset))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
+ } else {
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("odbc_not_enabled")); //$NON-NLS-1$
+ }
+
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_started", getRuntimeVersion(), new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
+ if (jndiName != null) {
+ final InitialContext ic ;
+ try {
+ ic = new InitialContext() ;
+ Util.bind(ic, jndiName, this) ;
+ } catch (final NamingException ne) {
+ // Add jndi_failed to bundle
+ LogManager.logError(LogConstants.CTX_RUNTIME, ne, IntegrationPlugin.Util.getString("jndi_failed", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
+ }
+ }
+
+ // add vdb life cycle listeners
+ this.vdbRepository.addListener(new VDBLifeCycleListener() {
+
+ @Override
+ public void removed(String name, int version) {
+
+ }
+
+ @Override
+ public void added(String name, int version) {
+ // terminate all the previous sessions
+ try {
+ Collection<SessionMetadata> sessions = sessionService.getActiveSessions();
+ for (SessionMetadata session:sessions) {
+ if (name.equalsIgnoreCase(session.getVDBName()) && version == session.getVDBVersion()){
+ sessionService.terminateSession(session.getSessionId(), null);
+ }
+ }
+ } catch (SessionServiceException e) {
+ //ignore
+ }
+
+ // dump the caches.
+ dqpCore.clearCache(Cache.PREPARED_PLAN_CACHE.toString(), name, version);
+ dqpCore.clearCache(Cache.QUERY_SERVICE_RESULT_SET_CACHE.toString(), name, version);
+ }
+ });
+ }
+
+ public void stop() {
+ if (jndiName != null) {
+ final InitialContext ic ;
+ try {
+ ic = new InitialContext() ;
+ Util.unbind(ic, jndiName) ;
+ } catch (final NamingException ne) {
+ }
+ }
+
+ try {
+ this.dqpCore.stop();
+ } catch(TeiidRuntimeException e) {
+ // this bean is already shutdown
+ }
+
+ // Stop socket transport(s)
+ if (this.jdbcSocket != null) {
+ this.jdbcSocket.stop();
+ this.jdbcSocket = null;
+ }
+
+ if (this.adminSocket != null) {
+ this.adminSocket.stop();
+ this.adminSocket = null;
+ }
+
+ if (this.odbcSocket != null) {
+ this.odbcSocket.stop();
+ this.odbcSocket = null;
+ }
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("engine_stopped", new Date(System.currentTimeMillis()).toString())); //$NON-NLS-1$
+ }
+
+ private void createClientServices() {
+
+ this.dqpCore.start(this);
+
+ this.logon = new LogonImpl(this.sessionService, "teiid-cluster"); //$NON-NLS-1$
+ if (profileService != null) {
+ this.admin = AdminProvider.getLocal(profileService, vdbStatusChecker);
+ } else {
+ try {
+ this.admin = AdminProvider.getLocal(vdbStatusChecker);
+ } catch (AdminComponentException e) {
+ throw new TeiidRuntimeException(e.getCause());
+ }
+ }
+ }
+
+ /**
+ * Creates an proxy to validate the incoming session
+ */
+ private <T> T proxyService(final Class<T> iface, final T instance, String context) {
+
+ return iface.cast(Proxy.newProxyInstance(this.getClass().getClassLoader(), new Class[] {iface}, new LogManager.LoggingProxy(instance, context, MessageLevel.TRACE) {
+
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ Throwable exception = null;
+ try {
+ sessionService.validateSession(DQPWorkContext.getWorkContext().getSessionId());
+ return super.invoke(proxy, method, args);
+ } catch (InvocationTargetException e) {
+ exception = e.getTargetException();
+ } catch(Throwable t){
+ exception = t;
+ }
+ throw ExceptionUtil.convertException(method, exception);
+ }
+ }));
+ }
+
+ public void setJdbcSocketConfiguration(SocketConfiguration socketConfig) {
+ this.jdbcSocketConfiguration = socketConfig;
+ }
+
+ public void setAdminSocketConfiguration(SocketConfiguration socketConfig) {
+ this.adminSocketConfiguration = socketConfig;
+ }
+
+ public void setOdbcSocketConfiguration(SocketConfiguration socketConfig) {
+ this.odbcSocketConfiguration = socketConfig;
+ }
+
+ public void setXATerminator(XATerminator xaTerminator){
+ this.transactionServerImpl.setXaTerminator(xaTerminator);
+ }
+
+ public void setTransactionManager(TransactionManager transactionManager) {
+ this.transactionServerImpl.setTransactionManager(transactionManager);
+ }
+
+ public void setWorkManager(WorkManager mgr) {
+ this.transactionServerImpl.setWorkManager(mgr);
+ }
+
+ public void setSessionService(SessionService service) {
+ this.sessionService = service;
+ service.setDqp(this.dqpCore);
+ }
+
+ public void setBufferService(BufferService service) {
+ this.dqpCore.setBufferService(service);
+ }
+
+ public void setSecurityHelper(SecurityHelper helper) {
+ this.csr.setSecurityHelper(helper);
+ }
+
+ public void setVDBRepository(VDBRepository repo) {
+ this.vdbRepository = repo;
+ }
+
+ public void setVDBStatusChecker(VDBStatusChecker vdbStatusChecker) {
+ this.vdbStatusChecker = vdbStatusChecker;
+ }
+
+ public void setProfileService(final ProfileService profileService) {
+ this.profileService = profileService ;
+ }
+
+ public void setJndiName(final String jndiName) {
+ this.jndiName = jndiName ;
+ }
+
+ @Override
+ @ManagementOperation(description="Requests for perticular session", impact=Impact.ReadOnly,params={@ManagementParameter(name="sessionId",description="The session Identifier")})
+ public List<RequestMetadata> getRequestsForSession(String sessionId) {
+ return this.dqpCore.getRequestsForSession(sessionId);
+ }
+
+ @Override
+ @ManagementOperation(description="Requests using a certain VDB", impact=Impact.ReadOnly,params={@ManagementParameter(name="vdbName",description="VDB Name"), @ManagementParameter(name="vdbVersion",description="VDB Version")})
+ public List<RequestMetadata> getRequestsUsingVDB(String vdbName, int vdbVersion) throws AdminException {
+ List<RequestMetadata> requests = new ArrayList<RequestMetadata>();
+ try {
+ Collection<SessionMetadata> sessions = this.sessionService.getActiveSessions();
+ for (SessionMetadata session:sessions) {
+ if (session.getVDBName().equals(vdbName) && session.getVDBVersion() == vdbVersion) {
+ requests.addAll(this.dqpCore.getRequestsForSession(session.getSessionId()));
+ }
+ }
+ } catch (SessionServiceException e) {
+ throw new AdminComponentException(e);
+ }
+ return requests;
+ }
+
+
+ @Override
+ @ManagementOperation(description="Active requests", impact=Impact.ReadOnly)
+ public List<RequestMetadata> getRequests() {
+ return this.dqpCore.getRequests();
+ }
+
+ @Override
+ @ManagementOperation(description="Long running requests", impact=Impact.ReadOnly)
+ public List<RequestMetadata> getLongRunningRequests() {
+ return this.dqpCore.getLongRunningRequests();
+ }
+
+
+ @Override
+ @ManagementOperation(description="Get thread statistics worker pool", impact=Impact.ReadOnly,params={@ManagementParameter(name="identifier",description="Get thread statistics worker pool")})
+ public WorkerPoolStatisticsMetadata getWorkerPoolStatistics(){
+ return this.dqpCore.getWorkerPoolStatistics();
+ }
+
+ @Override
+ @ManagementOperation(description="Terminate a Session",params={@ManagementParameter(name="terminateeId",description="The session to be terminated")})
+ public void terminateSession(String terminateeId) {
+ this.sessionService.terminateSession(terminateeId, DQPWorkContext.getWorkContext().getSessionId());
+ }
+
+ @Override
+ @ManagementOperation(description="Cancel a Request",params={@ManagementParameter(name="sessionId",description="The session Identifier"), @ManagementParameter(name="executionId",description="The Execution Identifier")})
+ public boolean cancelRequest(String sessionId, long executionId) throws AdminException {
+ try {
+ return this.dqpCore.cancelRequest(sessionId, executionId);
+ } catch (TeiidComponentException e) {
+ throw new AdminComponentException(e);
+ }
+ }
+
+ @Override
+ @ManagementOperation(description="Get Cache types in the system", impact=Impact.ReadOnly)
+ public Collection<String> getCacheTypes(){
+ return this.dqpCore.getCacheTypes();
+ }
+
+ @Override
+ @ManagementOperation(description="Clear the caches in the system", impact=Impact.ReadOnly)
+ public void clearCache(String cacheType) {
+ this.dqpCore.clearCache(cacheType);
+ }
+
+ @Override
+ @ManagementOperation(description="Clear the caches in the system for a VDB", params={@ManagementParameter(name="cacheType",description="Type of Cache"), @ManagementParameter(name="vdbName",description="VDB Name"),@ManagementParameter(name="version",description="VDB Version")}, impact=Impact.ReadOnly)
+ public void clearCache(String cacheType, String vdbName, int version) {
+ this.dqpCore.clearCache(cacheType, vdbName, version);
+ }
+
+ @Override
+ @ManagementOperation(description="Get the cache statistics", impact=Impact.ReadOnly)
+ public CacheStatisticsMetadata getCacheStatistics(String cacheType) {
+ return this.dqpCore.getCacheStatistics(cacheType);
+ }
+
+ @Override
+ @ManagementOperation(description="Active sessions", impact=Impact.ReadOnly)
+ public Collection<SessionMetadata> getActiveSessions() throws AdminException {
+ try {
+ return this.sessionService.getActiveSessions();
+ } catch (SessionServiceException e) {
+ throw new AdminComponentException(e);
+ }
+ }
+
+ @Override
+ @ManagementProperty(description="Active session count", use={ViewUse.STATISTIC}, readOnly=true)
+ public int getActiveSessionsCount() throws AdminException{
+ try {
+ return this.sessionService.getActiveSessionsCount();
+ } catch (SessionServiceException e) {
+ throw new AdminComponentException(e);
+ }
+ }
+
+ @Override
+ @ManagementOperation(description="Active Transactions", impact=Impact.ReadOnly)
+ public Collection<org.teiid.adminapi.Transaction> getTransactions() {
+ return this.dqpCore.getTransactions();
+ }
+
+ @Override
+ @ManagementOperation(description="Terminate the transaction", impact=Impact.ReadOnly)
+ public void terminateTransaction(String xid) throws AdminException {
+ this.dqpCore.terminateTransaction(xid);
+ }
+
+ @Override
+ @ManagementOperation(description="Merge Two VDBs",params={@ManagementParameter(name="sourceVDBName"),@ManagementParameter(name="sourceVDBName"), @ManagementParameter(name="targetVDBName"), @ManagementParameter(name="targetVDBVersion")})
+ public void mergeVDBs(String sourceVDBName, int sourceVDBVersion,
+ String targetVDBName, int targetVDBVersion) throws AdminException {
+ this.vdbRepository.mergeVDBs(sourceVDBName, sourceVDBVersion, targetVDBName, targetVDBVersion);
+ }
+
+ public void setCacheFactory(CacheFactory factory) {
+ this.dqpCore.setCacheFactory(factory);
+ }
+
+ @Override
+ @ManagementOperation(description="Execute a sql query", params={@ManagementParameter(name="vdbName"),@ManagementParameter(name="vdbVersion"), @ManagementParameter(name="command"), @ManagementParameter(name="timoutInMilli")})
+ public List<List> executeQuery(final String vdbName, final int version, final String command, final long timoutInMilli) throws AdminException {
+ Properties properties = new Properties();
+ properties.setProperty(TeiidURL.JDBC.VDB_NAME, vdbName);
+ properties.setProperty(TeiidURL.JDBC.VDB_VERSION, String.valueOf(version));
+
+ String user = "JOPR ADMIN"; //$NON-NLS-1$
+ LogManager.logDetail(LogConstants.CTX_RUNTIME, IntegrationPlugin.Util.getString("admin_executing", user, command)); //$NON-NLS-1$
+
+ SessionMetadata session = null;
+ try {
+ session = this.sessionService.createSession(user, null, "JOPR", properties, false, false); //$NON-NLS-1$
+ } catch (SessionServiceException e1) {
+ throw new AdminProcessingException(e1);
+ } catch (LoginException e1) {
+ throw new AdminProcessingException(e1);
+ }
+
+ final long requestID = 0L;
+
+ DQPWorkContext context = new DQPWorkContext();
+ context.setSession(session);
+
+ try {
+ return context.runInContext(new Callable<List<List>>() {
+ @Override
+ public List<List> call() throws Exception {
+ ArrayList<List> results = new ArrayList<List>();
+
+ long start = System.currentTimeMillis();
+ RequestMessage request = new RequestMessage(command);
+ request.setExecutionId(0L);
+ request.setRowLimit(getMaxRowsFetchSize()); // this would limit the number of rows that are returned.
+ Future<ResultsMessage> message = dqpCore.executeRequest(requestID, request);
+ ResultsMessage rm = message.get(timoutInMilli, TimeUnit.MILLISECONDS);
+
+ if (rm.getException() != null) {
+ throw new AdminProcessingException(rm.getException());
+ }
+
+ if (rm.isUpdateResult()) {
+ results.addAll(new ArrayList(Arrays.asList("update count"))); //$NON-NLS-1$
+ results.addAll(Arrays.asList(rm.getResults()));
+ }
+ else {
+ results.addAll(new ArrayList(Arrays.asList(rm.getColumnNames())));
+ results.addAll(Arrays.asList(fixResults(rm.getResults())));
+
+ while (rm.getFinalRow() == -1 || rm.getLastRow() < rm.getFinalRow()) {
+ long elapsed = System.currentTimeMillis() - start;
+ message = dqpCore.processCursorRequest(requestID, rm.getLastRow()+1, 1024);
+ rm = message.get(timoutInMilli-elapsed, TimeUnit.MILLISECONDS);
+ results.addAll(Arrays.asList(fixResults(rm.getResults())));
+ }
+ }
+
+ long elapsed = System.currentTimeMillis() - start;
+ ResultsFuture<?> response = dqpCore.closeRequest(requestID);
+ response.get(timoutInMilli-elapsed, TimeUnit.MILLISECONDS);
+ return results;
+ }
+ });
+ } catch (Throwable t) {
+ throw new AdminProcessingException(t);
+ } finally {
+ try {
+ sessionService.closeSession(session.getSessionId());
+ } catch (InvalidSessionException e) { //ignore
+ }
+ }
+ }
+
+ /**
+ * Managed Object framework has bug that does not currently allow
+ * sending a NULL in the Collection Value, so sending literal string "null".
+ * If you send them as Array Value, the MO is packaged as composite object and would like
+ * all the elements in array to be same type which is not the case with results.
+ */
+ List[] fixResults(List[] rows) throws SQLException {
+ List[] newResults = new List[rows.length];
+
+ for(int i = 0; i < rows.length; i++) {
+ List row = rows[i];
+ ArrayList newRow = new ArrayList();
+ for (Object col:row) {
+ if (col == null) {
+ newRow.add("null"); //$NON-NLS-1$
+ }
+ else {
+ if (col instanceof Number || col instanceof String || col instanceof Character) {
+ newRow.add(col);
+ }
+ else if (col instanceof Blob) {
+ newRow.add("blob"); //$NON-NLS-1$
+ }
+ else if (col instanceof Clob) {
+ newRow.add("clob"); //$NON-NLS-1$
+ }
+ else if (col instanceof SQLXML) {
+ SQLXML xml = (SQLXML)col;
+ newRow.add(xml.getString());
+ }
+ else {
+ newRow.add(col.toString());
+ }
+ }
+ }
+ newResults[i] = newRow;
+ }
+ return newResults;
+ }
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml
===================================================================
--- trunk/metadata/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-metadata</artifactId>
- <name>Metadata</name>
- <description>Provides vdb metadata from index files.</description>
-
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- </dependency>
-
- </dependencies>
-
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml (from rev 2945, trunk/metadata/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/metadata/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-metadata</artifactId>
+ <name>Metadata</name>
+ <description>Provides vdb metadata from index files.</description>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ </dependency>
+
+ </dependencies>
+
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/pom.xml
===================================================================
--- trunk/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,493 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-parent</artifactId>
- <packaging>pom</packaging>
- <name>Teiid</name>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- <description>Federated SQL and XML query engine.</description>
- <properties>
- <ant.version>1.7.0</ant.version>
- <site.url>http://www.jboss.org/teiid</site.url>
- </properties>
- <scm>
- <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/trunk</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/trunk</developerConnection>
- </scm>
- <licenses>
- <license>
- <name>GNU Lesser General Public License</name>
- <url>http://www.gnu.org/licenses/lgpl.html</url>
- <distribution>repo</distribution>
- <comments>A business-friendly OSS license</comments>
- </license>
- </licenses>
- <url>${site.url}</url>
- <developers>
- <developer>
- <name>Steve Hawkins</name>
- <id>steve</id>
- <email>shawkins(a)redhat.com</email>
- <organization>Red Hat</organization>
- <roles>
- <role>Project Lead</role>
- </roles>
- <timezone>-6</timezone>
- </developer>
- <developer>
- <name>Ramesh Reddy</name>
- <id>ramesh</id>
- <email>rareddy(a)redhat.com</email>
- <organization>Red Hat</organization>
- <roles>
- <role>Project Lead</role>
- </roles>
- <timezone>-6</timezone>
- </developer>
- <developer>
- <name>Van Halbert</name>
- <id>van</id>
- <email>vhalbert(a)redhat.com</email>
- <organization>Red Hat</organization>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>-6</timezone>
- </developer>
- <developer>
- <name>Ted Jones</name>
- <id>ted</id>
- <email>tejones(a)redhat.com</email>
- <organization>Red Hat</organization>
- <roles>
- <role>Developer</role>
- </roles>
- <timezone>-6</timezone>
- </developer>
- </developers>
- <profiles>
- <profile>
- <!--
- This profile is activated manually, as in "mvn ... -P release ..."
- -->
- <id>release</id>
- <modules>
- <module>documentation</module>
- <module>build</module>
- </modules>
- </profile>
- <profile>
- <!--
- This is to enable faster build for development time.
- -->
- <id>dev</id>
- <modules>
- <module>build</module>
- </modules>
- </profile>
- </profiles>
- <build>
- <!-- This section defines the default plugin settings inherited by child projects. -->
- <pluginManagement>
- <plugins>
- <!-- Fixes how test resources of a project can be used in projects dependent on it -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- </plugin>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-beta-6-m1-jboss</version>
- </plugin>
- </plugins>
- </pluginManagement>
- <plugins>
- <!-- Specify the compiler options and settings -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.6</source>
- <target>1.6</target>
- <showDeprecation>false</showDeprecation>
- <showWarnings>false</showWarnings>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <includes>
- <include>**/*TestCase.java</include>
- <include>**/*Test.java</include>
- <include>**/Test*.java</include>
- </includes>
- <excludes>
- <exclude>**/Abstract*TestCase.java</exclude>
- <!-- hack to prevent anonymous inner classes in Tests from being run as tests -->
- <include>**/Test*$*.java</include>
- </excludes>
- <systemProperties>
- <property>
- <name>user.dir</name>
- <value>${basedir}/target</value>
- </property>
- <property>
- <name>java.io.tmpdir</name>
- <value>${basedir}/target</value>
- </property>
- </systemProperties>
- </configuration>
- </plugin>
- <!--
- Build a test-jar for each project, so that src/test/* resources and classes can be used
- in other projects. Also customize how the jar files are assembled.
- -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <goals>
- <goal>test-jar</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <archive>
- <manifest>
- <addDefaultSpecificationEntries> true</addDefaultSpecificationEntries>
- <addDefaultImplementationEntries> true</addDefaultImplementationEntries>
- </manifest>
- <manifestEntries>
- <Implementation-URL>${pom.url}</Implementation-URL>
- </manifestEntries>
- </archive>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-source-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-sources</id>
- <goals>
- <goal>jar</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>2.5</version>
- </plugin>
- </plugins>
- </build>
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <aggregate>true</aggregate>
- <maxmemory>512m</maxmemory>
- <excludePackageNames>*.internal</excludePackageNames>
- </configuration>
- </plugin>
- </plugins>
- </reporting>
- <repositories>
- <repository>
- <id>jboss-public-repository</id>
- <name>JBoss Public Maven Repository Group</name>
- <url>http://repository.jboss.org/nexus/content/groups/public/</url>
- </repository>
- </repositories>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.4</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <version>1.5</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <dependencyManagement>
- <dependencies>
- <!--
- Declare all dependency versions and default scopes here, but not optional.
- Each module should declare it's direct dependency and possibily overwrite scope/optional.
- -->
-
- <!-- Internal dependencies -->
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-console</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-console</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- <type>test-jar</type>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-txn-jbossts</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-cache-jbosscache</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-jboss-integration</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-runtime</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <!-- External dependencies -->
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <version>1.5</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- <version>1.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <version>1.2.14</version>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>1.1</version>
- <exclusions>
- <exclusion>
- <groupId>logkit</groupId>
- <artifactId>logkit</artifactId>
- </exclusion>
- <exclusion>
- <groupId>avalon-framework</groupId>
- <artifactId>avalon-framework</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>jgroups</groupId>
- <artifactId>jgroups</artifactId>
- <version>2.6.10.GA</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- <version>3.1.0.GA</version>
- <exclusions>
- <exclusion>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </exclusion>
- <exclusion>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <version>2.1.0.SP1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-metatype</artifactId>
- <version>2.1.0.SP1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-profileservice-spi</artifactId>
- <version>5.1.0.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <version>2.1.2.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs-spi</artifactId>
- <version>2.0.7.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <version>2.0.7.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-connector</artifactId>
- <version>5.1.0.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- <version>2.0.2.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.remoting</groupId>
- <artifactId>jboss-remoting</artifactId>
- <version>2.5.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>net.sourceforge.saxon</groupId>
- <artifactId>saxon</artifactId>
- <version>9.1.0.8</version>
- </dependency>
- <dependency>
- <groupId>net.sourceforge.saxon</groupId>
- <artifactId>saxon</artifactId>
- <classifier>dom</classifier>
- <version>9.1.0.8</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.netty</groupId>
- <artifactId>netty</artifactId>
- <version>3.2.1.Final</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>${ant.version}</version>
- </dependency>
- <dependency>
- <groupId>com.googlecode.json-simple</groupId>
- <artifactId>json-simple</artifactId>
- <version>1.1</version>
- </dependency>
- </dependencies>
- </dependencyManagement>
- <modules>
- <module>common-core</module>
- <module>api</module>
- <module>client</module>
- <module>engine</module>
- <module>connectors</module>
- <module>console</module>
- <module>metadata</module>
- <module>runtime</module>
- <module>adminshell</module>
- <module>cache-jbosscache</module>
- <module>hibernate-dialect</module>
- <module>jboss-integration</module>
- <module>test-integration</module>
- </modules>
- <distributionManagement>
- <repository>
- <id>jboss-releases-repository</id>
- <name>JBoss Releases Repository</name>
- <url>https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/</url>
- </repository>
- <snapshotRepository>
- <id>jboss-snapshots-repository</id>
- <name>JBoss Snapshots Repository</name>
- <url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
- </snapshotRepository>
- </distributionManagement>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/pom.xml (from rev 2945, trunk/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,493 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-parent</artifactId>
+ <packaging>pom</packaging>
+ <name>Teiid</name>
+ <version>7.4.0.Alpha1</version>
+ <description>Federated SQL and XML query engine.</description>
+ <properties>
+ <ant.version>1.7.0</ant.version>
+ <site.url>http://www.jboss.org/teiid</site.url>
+ </properties>
+ <scm>
+ <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</developerConnection>
+ </scm>
+ <licenses>
+ <license>
+ <name>GNU Lesser General Public License</name>
+ <url>http://www.gnu.org/licenses/lgpl.html</url>
+ <distribution>repo</distribution>
+ <comments>A business-friendly OSS license</comments>
+ </license>
+ </licenses>
+ <url>${site.url}</url>
+ <developers>
+ <developer>
+ <name>Steve Hawkins</name>
+ <id>steve</id>
+ <email>shawkins(a)redhat.com</email>
+ <organization>Red Hat</organization>
+ <roles>
+ <role>Project Lead</role>
+ </roles>
+ <timezone>-6</timezone>
+ </developer>
+ <developer>
+ <name>Ramesh Reddy</name>
+ <id>ramesh</id>
+ <email>rareddy(a)redhat.com</email>
+ <organization>Red Hat</organization>
+ <roles>
+ <role>Project Lead</role>
+ </roles>
+ <timezone>-6</timezone>
+ </developer>
+ <developer>
+ <name>Van Halbert</name>
+ <id>van</id>
+ <email>vhalbert(a)redhat.com</email>
+ <organization>Red Hat</organization>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>-6</timezone>
+ </developer>
+ <developer>
+ <name>Ted Jones</name>
+ <id>ted</id>
+ <email>tejones(a)redhat.com</email>
+ <organization>Red Hat</organization>
+ <roles>
+ <role>Developer</role>
+ </roles>
+ <timezone>-6</timezone>
+ </developer>
+ </developers>
+ <profiles>
+ <profile>
+ <!--
+ This profile is activated manually, as in "mvn ... -P release ..."
+ -->
+ <id>release</id>
+ <modules>
+ <module>documentation</module>
+ <module>build</module>
+ </modules>
+ </profile>
+ <profile>
+ <!--
+ This is to enable faster build for development time.
+ -->
+ <id>dev</id>
+ <modules>
+ <module>build</module>
+ </modules>
+ </profile>
+ </profiles>
+ <build>
+ <!-- This section defines the default plugin settings inherited by child projects. -->
+ <pluginManagement>
+ <plugins>
+ <!-- Fixes how test resources of a project can be used in projects dependent on it -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-6-m1-jboss</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <plugins>
+ <!-- Specify the compiler options and settings -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ <showDeprecation>false</showDeprecation>
+ <showWarnings>false</showWarnings>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <includes>
+ <include>**/*TestCase.java</include>
+ <include>**/*Test.java</include>
+ <include>**/Test*.java</include>
+ </includes>
+ <excludes>
+ <exclude>**/Abstract*TestCase.java</exclude>
+ <!-- hack to prevent anonymous inner classes in Tests from being run as tests -->
+ <include>**/Test*$*.java</include>
+ </excludes>
+ <systemProperties>
+ <property>
+ <name>user.dir</name>
+ <value>${basedir}/target</value>
+ </property>
+ <property>
+ <name>java.io.tmpdir</name>
+ <value>${basedir}/target</value>
+ </property>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ <!--
+ Build a test-jar for each project, so that src/test/* resources and classes can be used
+ in other projects. Also customize how the jar files are assembled.
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultSpecificationEntries> true</addDefaultSpecificationEntries>
+ <addDefaultImplementationEntries> true</addDefaultImplementationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-URL>${pom.url}</Implementation-URL>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.5</version>
+ </plugin>
+ </plugins>
+ </build>
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <aggregate>true</aggregate>
+ <maxmemory>512m</maxmemory>
+ <excludePackageNames>*.internal</excludePackageNames>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+ <repositories>
+ <repository>
+ <id>jboss-public-repository</id>
+ <name>JBoss Public Maven Repository Group</name>
+ <url>http://repository.jboss.org/nexus/content/groups/public/</url>
+ </repository>
+ </repositories>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <version>1.5</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <dependencyManagement>
+ <dependencies>
+ <!--
+ Declare all dependency versions and default scopes here, but not optional.
+ Each module should declare it's direct dependency and possibily overwrite scope/optional.
+ -->
+
+ <!-- Internal dependencies -->
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-console</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-console</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ <type>test-jar</type>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-txn-jbossts</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-cache-jbosscache</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-jboss-integration</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-runtime</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <!-- External dependencies -->
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <version>1.5</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ <version>1.1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.14</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1</version>
+ <exclusions>
+ <exclusion>
+ <groupId>logkit</groupId>
+ <artifactId>logkit</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>avalon-framework</groupId>
+ <artifactId>avalon-framework</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>jgroups</groupId>
+ <artifactId>jgroups</artifactId>
+ <version>2.6.10.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ <version>3.1.0.GA</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <version>2.1.0.SP1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-metatype</artifactId>
+ <version>2.1.0.SP1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-profileservice-spi</artifactId>
+ <version>5.1.0.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <version>2.1.2.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs-spi</artifactId>
+ <version>2.0.7.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <version>2.0.7.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-connector</artifactId>
+ <version>5.1.0.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ <version>2.0.2.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.remoting</groupId>
+ <artifactId>jboss-remoting</artifactId>
+ <version>2.5.1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>net.sourceforge.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ <version>9.1.0.8</version>
+ </dependency>
+ <dependency>
+ <groupId>net.sourceforge.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ <classifier>dom</classifier>
+ <version>9.1.0.8</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.netty</groupId>
+ <artifactId>netty</artifactId>
+ <version>3.2.1.Final</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>${ant.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.googlecode.json-simple</groupId>
+ <artifactId>json-simple</artifactId>
+ <version>1.1</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+ <modules>
+ <module>common-core</module>
+ <module>api</module>
+ <module>client</module>
+ <module>engine</module>
+ <module>connectors</module>
+ <module>console</module>
+ <module>metadata</module>
+ <module>runtime</module>
+ <module>adminshell</module>
+ <module>cache-jbosscache</module>
+ <module>hibernate-dialect</module>
+ <module>jboss-integration</module>
+ <module>test-integration</module>
+ </modules>
+ <distributionManagement>
+ <repository>
+ <id>jboss-releases-repository</id>
+ <name>JBoss Releases Repository</name>
+ <url>https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/</url>
+ </repository>
+ <snapshotRepository>
+ <id>jboss-snapshots-repository</id>
+ <name>JBoss Snapshots Repository</name>
+ <url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
+ </snapshotRepository>
+ </distributionManagement>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml
===================================================================
--- trunk/runtime/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-runtime</artifactId>
- <name>Runtime Engine</name>
- <description>Teiid Runtime Engine</description>
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.netty</groupId>
- <artifactId>netty</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs-spi</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-profileservice-spi</artifactId>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml (from rev 2945, trunk/runtime/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-runtime</artifactId>
+ <name>Runtime Engine</name>
+ <description>Teiid Runtime Engine</description>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.netty</groupId>
+ <artifactId>netty</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-profileservice-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,438 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.deployers;
-
-import java.math.BigInteger;
-import java.util.Arrays;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Random;
-import java.util.UUID;
-
-import org.teiid.core.types.DataTypeManager;
-import org.teiid.metadata.AbstractMetadataRecord;
-import org.teiid.metadata.Datatype;
-import org.teiid.metadata.MetadataFactory;
-import org.teiid.metadata.Table;
-import org.teiid.metadata.Table.Type;
-import org.teiid.translator.TranslatorException;
-
-public class PgCatalogMetadataStore extends MetadataFactory {
-
- private static final long serialVersionUID = 5391872008395637166L;
- private Random random;
-
- public PgCatalogMetadataStore(String modelName, Map<String, Datatype> dataTypes, Properties importProperties) throws TranslatorException {
- super(modelName, dataTypes, importProperties);
-
- add_pg_namespace();
- add_pg_class();
- add_pg_attribute();
- add_pg_type();
- add_pg_index();
- add_pg_am();
- add_pg_proc();
- add_pg_trigger();
- add_pg_attrdef();
- add_pg_database();
- add_pg_user();
- }
-
- @Override
- protected void setUUID(AbstractMetadataRecord record) {
- byte[] randomBytes = new byte[8];
- if (random == null) {
- random = new Random(2010);
- }
- random.nextBytes(randomBytes);
- randomBytes[6] &= 0x0f; /* clear version */
- randomBytes[6] |= 0x40; /* set to version 4 */
- long msb = new BigInteger(randomBytes).longValue();
- random.nextBytes(randomBytes);
- randomBytes[0] &= 0x3f; /* clear variant */
- randomBytes[0] |= 0x80; /* set to IETF variant */
- long lsb = new BigInteger(randomBytes).longValue();
- record.setUUID("mmuid:"+new UUID(msb, lsb)); //$NON-NLS-1$
- }
-
- private Table createView(String name) throws TranslatorException {
- Table t = addTable(name);
- t.setSystem(true);
- t.setSupportsUpdate(false);
- t.setVirtual(true);
- t.setTableType(Type.Table);
- return t;
- }
-
- //index access methods
- private Table add_pg_am() throws TranslatorException {
- Table t = createView("pg_am"); //$NON-NLS-1$
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("amname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- String transformation = "SELECT 0 as oid, 'btree' as amname"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
-
- return t;
- }
-
- // column defaul values
- private Table add_pg_attrdef() throws TranslatorException {
- Table t = createView("pg_attrdef"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("adsrc", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("adrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("adnum", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- String transformation = "SELECT 0 as oid, 0 as adsrc, 0 as adrelid, 0 as adnum"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- return t;
- }
-
- // table columns ("attributes")
- private Table add_pg_attribute() throws TranslatorException {
- Table t = createView("pg_attribute"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // OID, The table this column belongs to
- addColumn("attrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // The column name
- addColumn("attname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- // OID, The data type of this column
- addColumn("atttypid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // A copy of pg_type.typlen of this column's type
- addColumn("attlen", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
- // The number of the column. Ordinary columns are numbered from 1 up. System columns,
- // such as oid, have (arbitrary) negative numbers
- addColumn("attnum", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
- // atttypmod records type-specific data supplied at table creation time (for example,
- // the maximum length of a varchar column). It is passed to type-specific input functions and
- // length coercion functions. The value will generally be -1 for types that do not need atttypmod
- addColumn("atttypmod", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // This represents a not-null constraint. It is possible to change this column to enable or disable the constraint
- addColumn("attnotnull", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- // This column has been dropped and is no longer valid. A dropped column is still physically present in the table,
- // but is ignored by the parser and so cannot be accessed via SQL
- addColumn("attisdropped", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- // This column has a default value, in which case there will be a corresponding entry in the pg_attrdef
- // catalog that actually defines the value
- addColumn("atthasdef", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
-
- addPrimaryKey("pk_pg_attr", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
-
- String transformation = "SELECT t1.OID as oid, " + //$NON-NLS-1$
- "st.oid as attrelid, " + //$NON-NLS-1$
- "t1.Name as attname, " + //$NON-NLS-1$
- "pt.oid as atttypid," + //$NON-NLS-1$
- "pt.typlen as attlen, " + //$NON-NLS-1$
- "convert(t1.Position, short) as attnum, " + //$NON-NLS-1$
- "t1.Length as atttypmod, " + //$NON-NLS-1$
- "false as attnotnull, " + //$NON-NLS-1$
- "false as attisdropped, " + //$NON-NLS-1$
- "false as atthasdef " + //$NON-NLS-1$
- "FROM SYS.Columns as t1 LEFT OUTER JOIN " + //$NON-NLS-1$
- "SYS.Tables st ON (st.Name = t1.TableName AND st.SchemaName = t1.SchemaName) LEFT OUTER JOIN " + //$NON-NLS-1$
- "pg_catalog.pg_type pt ON (CASE WHEN (t1.DataType = 'clob' OR t1.DataType = 'blob') THEN 'lo' ELSE t1.DataType END = pt.typname)"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- t.setMaterialized(true);
- return t;
- }
-
- // tables, indexes, sequences ("relations")
- private Table add_pg_class() throws TranslatorException {
- Table t = createView("pg_class"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // Name of the table, index, view, etc
- addColumn("relname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- // The OID of the namespace that contains this relation (pg_namespace.oid)
- addColumn("relnamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // r = ordinary table, i = index, S = sequence, v = view, c = composite type, t = TOAST table
- addColumn("relkind", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
-
- // If this is an index, the access method used (B-tree, hash, etc.)
- addColumn("relam", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // Number of rows in the table. This is only an estimate used by the planner. It is updated
- // by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX
- addColumn("reltuples", DataTypeManager.DefaultDataTypes.FLOAT, t); //$NON-NLS-1$
-
- // Size of the on-disk representation of this table in pages (of size BLCKSZ). This is only an estimate
- // used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX
- addColumn("relpages", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // True if table has (or once had) rules; see pg_rewrite catalog
- addColumn("relhasrules", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
-
- // True if we generate an OID for each row of the relation
- addColumn("relhasoids", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- addPrimaryKey("pk_pg_class", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
-
- String transformation = "SELECT t1.OID as oid, t1.name as relname, " + //$NON-NLS-1$
- "(SELECT OID FROM SYS.Schemas WHERE Name = t1.SchemaName) as relnamespace, " + //$NON-NLS-1$
- "convert((CASE t1.isPhysical WHEN true THEN 'r' ELSE 'v' END), char) as relkind," + //$NON-NLS-1$
- "0 as relam, " + //$NON-NLS-1$
- "convert(0, float) as reltuples, " + //$NON-NLS-1$
- "0 as relpages, " + //$NON-NLS-1$
- "false as relhasrules, " + //$NON-NLS-1$
- "false as relhasoids " + //$NON-NLS-1$
- "FROM SYS.Tables t1"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- t.setMaterialized(true);
- return t;
- }
-
- // additional index information
- private Table add_pg_index() throws TranslatorException {
- Table t = createView("pg_index"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // The OID of the pg_class entry for this index
- addColumn("indexrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // The OID of the pg_class entry for the table this index is for
- addColumn("indrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // If true, the table was last clustered on this index
- addColumn("indisclustered", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- // If true, this is a unique index
- addColumn("indisunique", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- // If true, this index represents the primary key of the table (indisunique should always be true when this is true)
- addColumn("indisprimary", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- // Expression trees (in nodeToString() representation) for index attributes that are not simple
- // column references. This is a list with one element for each zero entry in indkey.
- // NULL if all index attributes are simple references
- addColumn("indexprs", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- // This is an array of indnatts values that indicate which table columns this index indexes.
- addColumn("indkey", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- addPrimaryKey("pk_pg_index", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
-
- String transformation = "SELECT t1.OID as oid, " + //$NON-NLS-1$
- "t1.OID as indexrelid, " + //$NON-NLS-1$
- "(SELECT OID FROM SYS.Tables WHERE SchemaName = t1.SchemaName AND Name = t1.TableName) as indrelid, " + //$NON-NLS-1$
- "false indisclustered, " + //$NON-NLS-1$
- "(CASE t1.KeyType WHEN 'Unique' THEN true ELSE false END) as indisunique, " + //$NON-NLS-1$
- "(CASE t1.KeyType WHEN 'Primary' THEN true ELSE false END) as indisprimary, " + //$NON-NLS-1$
- "'' as indexprs, " + //$NON-NLS-1$
- "0 as indkey " + //$NON-NLS-1$
- "FROM SYS.KeyColumns as t1"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- t.setMaterialized(true);
- return t;
- }
-
- // schemas
- private Table add_pg_namespace() throws TranslatorException {
- Table t = createView("pg_namespace"); //$NON-NLS-1$
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("nspname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- String transformation = "SELECT t1.OID as oid, t1.Name as nspname " + //$NON-NLS-1$
- "FROM SYS.Schemas as t1"; //$NON-NLS-1$
-
- t.setSelectTransformation(transformation);
-
- return t;
- }
-
- // functions and procedures
- private Table add_pg_proc() throws TranslatorException {
- Table t = createView("pg_proc"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // Name of the function or procedure
- addColumn("proname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
-
- // Function returns a set (i.e., multiple values of the specified data type)
- addColumn("proretset", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
-
- // OID of Data type of the return value
- addColumn("prorettype", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- // Number of input arguments
- addColumn("pronargs", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
-
- addColumn("proargtypes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
- addColumn("proargnames", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
- addColumn("proargmodes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
- addColumn("proallargtypes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
-
- // The OID of the namespace that contains this function
- addColumn("pronamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- addPrimaryKey("pk_pg_proc", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
-
- String transformation = "SELECT t1.OID as oid, t1.Name as proname, false as proretset, " + //$NON-NLS-1$
- "(SELECT dt.OID FROM ProcedureParams pp, DataTypes dt WHERE pp.ProcedureName = t1.Name AND pp.SchemaName = t1.SchemaName AND pp.Type = 'ResultSet' AND pp.Position = 1 AND dt.Name = pp.DataType) as prorettype, " + //$NON-NLS-1$
- "convert((SELECT count(*) FROM ProcedureParams pp WHERE pp.ProcedureName = t1.Name AND pp.SchemaName = t1.SchemaName ), short) as pronargs, " + //$NON-NLS-1$
- "null as proargtypes, " + //$NON-NLS-1$
- "null as proargnames, " + //$NON-NLS-1$
- "null as proargmodes, " + //$NON-NLS-1$
- "null as proallargtypes, " + //$NON-NLS-1$
- "(SELECT OID FROM SYS.Schemas WHERE Name = t1.SchemaName) as pronamespace " + //$NON-NLS-1$
- "FROM SYS.Procedures as t1"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- t.setMaterialized(true);
- return t;
- }
-
-
- // triggers
- private Table add_pg_trigger() throws TranslatorException {
- Table t = createView("pg_trigger"); //$NON-NLS-1$
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("tgconstrrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("tgfoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("tgargs", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("tgnargs", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("tgdeferrable", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- addColumn("tginitdeferred", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- addColumn("tgconstrname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- addColumn("tgrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- String transformation = "SELECT 1 as oid, 1 as tgconstrrelid, " +//$NON-NLS-1$
- "1 as tgfoid, " +//$NON-NLS-1$
- "1 as tgargs, " +//$NON-NLS-1$
- "1 as tgnargs, " +//$NON-NLS-1$
- "false as tgdeferrable, " +//$NON-NLS-1$
- "false as tginitdeferred, " +//$NON-NLS-1$
- "'dummy' as tgconstrname, " +//$NON-NLS-1$
- "1 as tgrelid " +//$NON-NLS-1$
- "FROM SYS.Tables WHERE 1=2"; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- return t;
- }
-
- //data types
- private Table add_pg_type() throws TranslatorException {
- Table t = createView("pg_type"); //$NON-NLS-1$
- // Data type name
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // Data type name
- addColumn("typname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- // The OID of the namespace that contains this type
- addColumn("typnamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // For a fixed-size type, typlen is the number of bytes in the internal representation of the type.
- // But for a variable-length type, typlen is negative. -1 indicates a "varlena" type (one that
- // has a length word), -2 indicates a null-terminated C string.
- addColumn("typlen", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
- // typtype is b for a base type, c for a composite type (e.g., a table's row type), d for a domain,
- // e for an enum type, or p for a pseudo-type. See also typrelid and typbasetype
- addColumn("typtype", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
- // if this is a domain (see typtype), then typbasetype identifies the type that this one is based on.
- // Zero if this type is not a domain
- addColumn("typbasetype", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // Domains use typtypmod to record the typmod to be applied to their base type
- // (-1 if base type does not use a typmod). -1 if this type is not a domain
- addColumn("typtypmod", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- addColumn("typrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- String transformation =
- "SELECT 16 as oid, 'boolean' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- //"SELECT 17 as oid, 'blob' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- //" union " + //$NON-NLS-1$
- "SELECT 1043 as oid, 'string' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 25 as oid, 'text' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 1042 as oid, 'char' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 21 as oid, 'short' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(2, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 20 as oid, 'long' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 23 as oid, 'int' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 26 as oid, 'oid' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typname, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 700 as oid, 'float' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 701 as oid, 'double' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- //"SELECT 1009 as oid, 'clob' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- //" union " + //$NON-NLS-1$
- "SELECT 1082 as oid, 'date' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 1083 as oid, 'datetime' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 1114 as oid, 'timestamp' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 1700 as oid, 'decimal' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 142 as oid, 'xml' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
- " union " + //$NON-NLS-1$
- "SELECT 14939 as oid, 'lo' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X"; //$NON-NLS-1$
-
- t.setSelectTransformation(transformation);
- return t;
- }
-
- private Table add_pg_database() throws TranslatorException {
- Table t = createView("pg_database"); //$NON-NLS-1$
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("datname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- addColumn("encoding", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("datlastsysoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- // this is is boolean type but the query coming in is in the form dataallowconn = 't'
- addColumn("datallowconn", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
- addColumn("datconfig", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
- addColumn("datacl", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
- addColumn("datdba", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("dattablespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
-
- String transformation = "SELECT 0 as oid, " + //$NON-NLS-1$
- "'teiid' as datname, " + //$NON-NLS-1$
- "6 as encoding, " + //$NON-NLS-1$
- "100000 as datlastsysoid, " + //$NON-NLS-1$
- "convert('t', char) as datallowconn, " + //$NON-NLS-1$
- "null, " + //$NON-NLS-1$
- "null, " + //$NON-NLS-1$
- "0 as datdba, " + //$NON-NLS-1$
- "0 as dattablespace" ; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- return t;
- }
-
- private Table add_pg_user() throws TranslatorException {
- Table t = createView("pg_user"); //$NON-NLS-1$
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("usename", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- addColumn("usecreatedb", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
- addColumn("usesuper", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
-
- String transformation = "SELECT 0 as oid, " + //$NON-NLS-1$
- "null as usename, " + //$NON-NLS-1$
- "false as usecreatedb, " + //$NON-NLS-1$
- "false as usesuper "; //$NON-NLS-1$
- t.setSelectTransformation(transformation);
- return t;
- }
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java (from rev 2943, trunk/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,438 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.deployers;
+
+import java.math.BigInteger;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Random;
+import java.util.UUID;
+
+import org.teiid.core.types.DataTypeManager;
+import org.teiid.metadata.AbstractMetadataRecord;
+import org.teiid.metadata.Datatype;
+import org.teiid.metadata.MetadataFactory;
+import org.teiid.metadata.Table;
+import org.teiid.metadata.Table.Type;
+import org.teiid.translator.TranslatorException;
+
+public class PgCatalogMetadataStore extends MetadataFactory {
+
+ private static final long serialVersionUID = 5391872008395637166L;
+ private Random random;
+
+ public PgCatalogMetadataStore(String modelName, Map<String, Datatype> dataTypes, Properties importProperties) throws TranslatorException {
+ super(modelName, dataTypes, importProperties);
+
+ add_pg_namespace();
+ add_pg_class();
+ add_pg_attribute();
+ add_pg_type();
+ add_pg_index();
+ add_pg_am();
+ add_pg_proc();
+ add_pg_trigger();
+ add_pg_attrdef();
+ add_pg_database();
+ add_pg_user();
+ }
+
+ @Override
+ protected void setUUID(AbstractMetadataRecord record) {
+ byte[] randomBytes = new byte[8];
+ if (random == null) {
+ random = new Random(2010);
+ }
+ random.nextBytes(randomBytes);
+ randomBytes[6] &= 0x0f; /* clear version */
+ randomBytes[6] |= 0x40; /* set to version 4 */
+ long msb = new BigInteger(randomBytes).longValue();
+ random.nextBytes(randomBytes);
+ randomBytes[0] &= 0x3f; /* clear variant */
+ randomBytes[0] |= 0x80; /* set to IETF variant */
+ long lsb = new BigInteger(randomBytes).longValue();
+ record.setUUID("mmuid:"+new UUID(msb, lsb)); //$NON-NLS-1$
+ }
+
+ private Table createView(String name) throws TranslatorException {
+ Table t = addTable(name);
+ t.setSystem(true);
+ t.setSupportsUpdate(false);
+ t.setVirtual(true);
+ t.setTableType(Type.Table);
+ return t;
+ }
+
+ //index access methods
+ private Table add_pg_am() throws TranslatorException {
+ Table t = createView("pg_am"); //$NON-NLS-1$
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("amname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ String transformation = "SELECT 0 as oid, 'btree' as amname"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+
+ return t;
+ }
+
+ // column defaul values
+ private Table add_pg_attrdef() throws TranslatorException {
+ Table t = createView("pg_attrdef"); //$NON-NLS-1$
+
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("adsrc", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("adrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("adnum", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ String transformation = "SELECT 0 as oid, 0 as adsrc, 0 as adrelid, 0 as adnum"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ return t;
+ }
+
+ // table columns ("attributes")
+ private Table add_pg_attribute() throws TranslatorException {
+ Table t = createView("pg_attribute"); //$NON-NLS-1$
+
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // OID, The table this column belongs to
+ addColumn("attrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // The column name
+ addColumn("attname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ // OID, The data type of this column
+ addColumn("atttypid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // A copy of pg_type.typlen of this column's type
+ addColumn("attlen", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
+ // The number of the column. Ordinary columns are numbered from 1 up. System columns,
+ // such as oid, have (arbitrary) negative numbers
+ addColumn("attnum", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
+ // atttypmod records type-specific data supplied at table creation time (for example,
+ // the maximum length of a varchar column). It is passed to type-specific input functions and
+ // length coercion functions. The value will generally be -1 for types that do not need atttypmod
+ addColumn("atttypmod", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // This represents a not-null constraint. It is possible to change this column to enable or disable the constraint
+ addColumn("attnotnull", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ // This column has been dropped and is no longer valid. A dropped column is still physically present in the table,
+ // but is ignored by the parser and so cannot be accessed via SQL
+ addColumn("attisdropped", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ // This column has a default value, in which case there will be a corresponding entry in the pg_attrdef
+ // catalog that actually defines the value
+ addColumn("atthasdef", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+
+ addPrimaryKey("pk_pg_attr", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
+
+ String transformation = "SELECT t1.OID as oid, " + //$NON-NLS-1$
+ "st.oid as attrelid, " + //$NON-NLS-1$
+ "t1.Name as attname, " + //$NON-NLS-1$
+ "pt.oid as atttypid," + //$NON-NLS-1$
+ "pt.typlen as attlen, " + //$NON-NLS-1$
+ "convert(t1.Position, short) as attnum, " + //$NON-NLS-1$
+ "t1.Length as atttypmod, " + //$NON-NLS-1$
+ "false as attnotnull, " + //$NON-NLS-1$
+ "false as attisdropped, " + //$NON-NLS-1$
+ "false as atthasdef " + //$NON-NLS-1$
+ "FROM SYS.Columns as t1 LEFT OUTER JOIN " + //$NON-NLS-1$
+ "SYS.Tables st ON (st.Name = t1.TableName AND st.SchemaName = t1.SchemaName) LEFT OUTER JOIN " + //$NON-NLS-1$
+ "pg_catalog.pg_type pt ON (CASE WHEN (t1.DataType = 'clob' OR t1.DataType = 'blob') THEN 'lo' ELSE t1.DataType END = pt.typname)"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ t.setMaterialized(true);
+ return t;
+ }
+
+ // tables, indexes, sequences ("relations")
+ private Table add_pg_class() throws TranslatorException {
+ Table t = createView("pg_class"); //$NON-NLS-1$
+
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // Name of the table, index, view, etc
+ addColumn("relname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ // The OID of the namespace that contains this relation (pg_namespace.oid)
+ addColumn("relnamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // r = ordinary table, i = index, S = sequence, v = view, c = composite type, t = TOAST table
+ addColumn("relkind", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
+
+ // If this is an index, the access method used (B-tree, hash, etc.)
+ addColumn("relam", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // Number of rows in the table. This is only an estimate used by the planner. It is updated
+ // by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX
+ addColumn("reltuples", DataTypeManager.DefaultDataTypes.FLOAT, t); //$NON-NLS-1$
+
+ // Size of the on-disk representation of this table in pages (of size BLCKSZ). This is only an estimate
+ // used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX
+ addColumn("relpages", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // True if table has (or once had) rules; see pg_rewrite catalog
+ addColumn("relhasrules", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+
+ // True if we generate an OID for each row of the relation
+ addColumn("relhasoids", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ addPrimaryKey("pk_pg_class", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
+
+ String transformation = "SELECT t1.OID as oid, t1.name as relname, " + //$NON-NLS-1$
+ "(SELECT OID FROM SYS.Schemas WHERE Name = t1.SchemaName) as relnamespace, " + //$NON-NLS-1$
+ "convert((CASE t1.isPhysical WHEN true THEN 'r' ELSE 'v' END), char) as relkind," + //$NON-NLS-1$
+ "0 as relam, " + //$NON-NLS-1$
+ "convert(0, float) as reltuples, " + //$NON-NLS-1$
+ "0 as relpages, " + //$NON-NLS-1$
+ "false as relhasrules, " + //$NON-NLS-1$
+ "false as relhasoids " + //$NON-NLS-1$
+ "FROM SYS.Tables t1"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ t.setMaterialized(true);
+ return t;
+ }
+
+ // additional index information
+ private Table add_pg_index() throws TranslatorException {
+ Table t = createView("pg_index"); //$NON-NLS-1$
+
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // The OID of the pg_class entry for this index
+ addColumn("indexrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // The OID of the pg_class entry for the table this index is for
+ addColumn("indrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // If true, the table was last clustered on this index
+ addColumn("indisclustered", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ // If true, this is a unique index
+ addColumn("indisunique", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ // If true, this index represents the primary key of the table (indisunique should always be true when this is true)
+ addColumn("indisprimary", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ // Expression trees (in nodeToString() representation) for index attributes that are not simple
+ // column references. This is a list with one element for each zero entry in indkey.
+ // NULL if all index attributes are simple references
+ addColumn("indexprs", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ // This is an array of indnatts values that indicate which table columns this index indexes.
+ addColumn("indkey", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ addPrimaryKey("pk_pg_index", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
+
+ String transformation = "SELECT t1.OID as oid, " + //$NON-NLS-1$
+ "t1.OID as indexrelid, " + //$NON-NLS-1$
+ "(SELECT OID FROM SYS.Tables WHERE SchemaName = t1.SchemaName AND Name = t1.TableName) as indrelid, " + //$NON-NLS-1$
+ "false indisclustered, " + //$NON-NLS-1$
+ "(CASE t1.KeyType WHEN 'Unique' THEN true ELSE false END) as indisunique, " + //$NON-NLS-1$
+ "(CASE t1.KeyType WHEN 'Primary' THEN true ELSE false END) as indisprimary, " + //$NON-NLS-1$
+ "'' as indexprs, " + //$NON-NLS-1$
+ "0 as indkey " + //$NON-NLS-1$
+ "FROM SYS.KeyColumns as t1"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ t.setMaterialized(true);
+ return t;
+ }
+
+ // schemas
+ private Table add_pg_namespace() throws TranslatorException {
+ Table t = createView("pg_namespace"); //$NON-NLS-1$
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("nspname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ String transformation = "SELECT t1.OID as oid, t1.Name as nspname " + //$NON-NLS-1$
+ "FROM SYS.Schemas as t1"; //$NON-NLS-1$
+
+ t.setSelectTransformation(transformation);
+
+ return t;
+ }
+
+ // functions and procedures
+ private Table add_pg_proc() throws TranslatorException {
+ Table t = createView("pg_proc"); //$NON-NLS-1$
+
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // Name of the function or procedure
+ addColumn("proname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+
+ // Function returns a set (i.e., multiple values of the specified data type)
+ addColumn("proretset", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+
+ // OID of Data type of the return value
+ addColumn("prorettype", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ // Number of input arguments
+ addColumn("pronargs", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
+
+ addColumn("proargtypes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+ addColumn("proargnames", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+ addColumn("proargmodes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+ addColumn("proallargtypes", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+
+ // The OID of the namespace that contains this function
+ addColumn("pronamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ addPrimaryKey("pk_pg_proc", Arrays.asList("oid"), t); //$NON-NLS-1$ //$NON-NLS-2$
+
+ String transformation = "SELECT t1.OID as oid, t1.Name as proname, false as proretset, " + //$NON-NLS-1$
+ "(SELECT dt.OID FROM ProcedureParams pp, DataTypes dt WHERE pp.ProcedureName = t1.Name AND pp.SchemaName = t1.SchemaName AND pp.Type = 'ResultSet' AND pp.Position = 1 AND dt.Name = pp.DataType) as prorettype, " + //$NON-NLS-1$
+ "convert((SELECT count(*) FROM ProcedureParams pp WHERE pp.ProcedureName = t1.Name AND pp.SchemaName = t1.SchemaName ), short) as pronargs, " + //$NON-NLS-1$
+ "null as proargtypes, " + //$NON-NLS-1$
+ "null as proargnames, " + //$NON-NLS-1$
+ "null as proargmodes, " + //$NON-NLS-1$
+ "null as proallargtypes, " + //$NON-NLS-1$
+ "(SELECT OID FROM SYS.Schemas WHERE Name = t1.SchemaName) as pronamespace " + //$NON-NLS-1$
+ "FROM SYS.Procedures as t1"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ t.setMaterialized(true);
+ return t;
+ }
+
+
+ // triggers
+ private Table add_pg_trigger() throws TranslatorException {
+ Table t = createView("pg_trigger"); //$NON-NLS-1$
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("tgconstrrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("tgfoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("tgargs", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("tgnargs", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("tgdeferrable", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ addColumn("tginitdeferred", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ addColumn("tgconstrname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("tgrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ String transformation = "SELECT 1 as oid, 1 as tgconstrrelid, " +//$NON-NLS-1$
+ "1 as tgfoid, " +//$NON-NLS-1$
+ "1 as tgargs, " +//$NON-NLS-1$
+ "1 as tgnargs, " +//$NON-NLS-1$
+ "false as tgdeferrable, " +//$NON-NLS-1$
+ "false as tginitdeferred, " +//$NON-NLS-1$
+ "'dummy' as tgconstrname, " +//$NON-NLS-1$
+ "1 as tgrelid " +//$NON-NLS-1$
+ "FROM SYS.Tables WHERE 1=2"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ return t;
+ }
+
+ //data types
+ private Table add_pg_type() throws TranslatorException {
+ Table t = createView("pg_type"); //$NON-NLS-1$
+ // Data type name
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // Data type name
+ addColumn("typname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ // The OID of the namespace that contains this type
+ addColumn("typnamespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // For a fixed-size type, typlen is the number of bytes in the internal representation of the type.
+ // But for a variable-length type, typlen is negative. -1 indicates a "varlena" type (one that
+ // has a length word), -2 indicates a null-terminated C string.
+ addColumn("typlen", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
+ // typtype is b for a base type, c for a composite type (e.g., a table's row type), d for a domain,
+ // e for an enum type, or p for a pseudo-type. See also typrelid and typbasetype
+ addColumn("typtype", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
+ // if this is a domain (see typtype), then typbasetype identifies the type that this one is based on.
+ // Zero if this type is not a domain
+ addColumn("typbasetype", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // Domains use typtypmod to record the typmod to be applied to their base type
+ // (-1 if base type does not use a typmod). -1 if this type is not a domain
+ addColumn("typtypmod", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ addColumn("typrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ String transformation =
+ "SELECT 16 as oid, 'boolean' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ //"SELECT 17 as oid, 'blob' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ //" union " + //$NON-NLS-1$
+ "SELECT 1043 as oid, 'string' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 25 as oid, 'text' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 1042 as oid, 'char' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 21 as oid, 'short' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(2, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 20 as oid, 'long' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 23 as oid, 'integer' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 26 as oid, 'oid' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typname, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 700 as oid, 'float' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 701 as oid, 'double' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ //"SELECT 1009 as oid, 'clob' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ //" union " + //$NON-NLS-1$
+ "SELECT 1082 as oid, 'date' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(4, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 1083 as oid, 'datetime' as typname,(SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 1114 as oid, 'timestamp' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(8, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 1700 as oid, 'decimal' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 142 as oid, 'xml' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X" + //$NON-NLS-1$
+ " union " + //$NON-NLS-1$
+ "SELECT 14939 as oid, 'lo' as typname, (SELECT OID FROM SYS.Schemas where Name = 'SYS') as typnamespace, convert(-1, short) as typlen, convert('b', char) as typtype, 0 as typbasetype, -1 as typtypmod, 0 as typrelid FROM (SELECT 1) X"; //$NON-NLS-1$
+
+ t.setSelectTransformation(transformation);
+ return t;
+ }
+
+ private Table add_pg_database() throws TranslatorException {
+ Table t = createView("pg_database"); //$NON-NLS-1$
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("datname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("encoding", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("datlastsysoid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ // this is is boolean type but the query coming in is in the form dataallowconn = 't'
+ addColumn("datallowconn", DataTypeManager.DefaultDataTypes.CHAR, t); //$NON-NLS-1$
+ addColumn("datconfig", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+ addColumn("datacl", DataTypeManager.DefaultDataTypes.OBJECT, t); //$NON-NLS-1$
+ addColumn("datdba", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("dattablespace", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
+ String transformation = "SELECT 0 as oid, " + //$NON-NLS-1$
+ "'teiid' as datname, " + //$NON-NLS-1$
+ "6 as encoding, " + //$NON-NLS-1$
+ "100000 as datlastsysoid, " + //$NON-NLS-1$
+ "convert('t', char) as datallowconn, " + //$NON-NLS-1$
+ "null, " + //$NON-NLS-1$
+ "null, " + //$NON-NLS-1$
+ "0 as datdba, " + //$NON-NLS-1$
+ "0 as dattablespace" ; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ return t;
+ }
+
+ private Table add_pg_user() throws TranslatorException {
+ Table t = createView("pg_user"); //$NON-NLS-1$
+ addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("usename", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("usecreatedb", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+ addColumn("usesuper", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+
+ String transformation = "SELECT 0 as oid, " + //$NON-NLS-1$
+ "null as usename, " + //$NON-NLS-1$
+ "false as usecreatedb, " + //$NON-NLS-1$
+ "false as usesuper "; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ return t;
+ }
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,175 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.deployers;
-
-import java.util.LinkedList;
-
-import org.jboss.util.threadpool.ThreadPool;
-import org.teiid.adminapi.Model;
-import org.teiid.adminapi.VDB;
-import org.teiid.adminapi.impl.ModelMetaData;
-import org.teiid.adminapi.impl.VDBMetaData;
-import org.teiid.dqp.internal.datamgr.ConnectorManager;
-import org.teiid.dqp.internal.datamgr.ConnectorManagerRepository;
-import org.teiid.logging.LogConstants;
-import org.teiid.logging.LogManager;
-import org.teiid.runtime.RuntimePlugin;
-
-
-public class VDBStatusChecker {
- private static final String JAVA_CONTEXT = "java:"; //$NON-NLS-1$
- private VDBRepository vdbRepository;
- private ThreadPool threadPool;
-
- public void translatorAdded(String translatorName) {
- resourceAdded(translatorName, true);
- }
-
- public void translatorRemoved(String translatorName) {
- resourceremoved(translatorName, true);
- }
-
- public void dataSourceAdded(String dataSourceName) {
- if (dataSourceName.startsWith(JAVA_CONTEXT)) {
- dataSourceName = dataSourceName.substring(5);
- }
- resourceAdded(dataSourceName, false);
- }
-
- public void dataSourceRemoved(String dataSourceName) {
- if (dataSourceName.startsWith(JAVA_CONTEXT)) {
- dataSourceName = dataSourceName.substring(5);
- }
- resourceremoved(dataSourceName, false);
- }
-
- public void setVDBRepository(VDBRepository repo) {
- this.vdbRepository = repo;
- }
-
- public void resourceAdded(String resourceName, boolean translator) {
- for (VDBMetaData vdb:this.vdbRepository.getVDBs()) {
- if (vdb.getStatus() == VDB.Status.ACTIVE || vdb.isPreview()) {
- continue;
- }
- LinkedList<Runnable> runnables = new LinkedList<Runnable>();
- synchronized (vdb) {
- ConnectorManagerRepository cmr = vdb.getAttachment(ConnectorManagerRepository.class);
-
- for (Model m:vdb.getModels()) {
- ModelMetaData model = (ModelMetaData)m;
- if (model.getErrors().isEmpty()) {
- continue;
- }
-
- String sourceName = getSourceName(resourceName, model, translator);
- if (sourceName != null) {
- ConnectorManager cm = cmr.getConnectorManager(sourceName);
- String status = cm.getStausMessage();
- if (status != null && status.length() > 0) {
- model.addError(ModelMetaData.ValidationError.Severity.ERROR.name(), status);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, status);
- } else {
- //get the pending metadata load
- Runnable r = model.removeAttachment(Runnable.class);
- if (r != null) {
- runnables.add(r);
- } else {
- model.clearErrors();
- }
- }
- }
- }
-
- boolean valid = true;
- for (Model m:vdb.getModels()) {
- ModelMetaData model = (ModelMetaData)m;
- if (!model.getErrors().isEmpty()) {
- valid = false;
- break;
- }
- }
-
- if (!runnables.isEmpty()) {
- //the task themselves will set the status on completion/failure
- for (Runnable runnable : runnables) {
- this.threadPool.run(runnable);
- }
- } else if (valid) {
- vdb.setStatus(VDB.Status.ACTIVE);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_activated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
- }
- }
- }
- }
-
- public void resourceremoved(String resourceName, boolean translator) {
- for (VDBMetaData vdb:this.vdbRepository.getVDBs()) {
- if (vdb.isPreview()) {
- continue;
- }
- synchronized (vdb) {
- for (Model m:vdb.getModels()) {
- ModelMetaData model = (ModelMetaData)m;
-
- String sourceName = getSourceName(resourceName, model, translator);
- if (sourceName != null) {
- vdb.setStatus(VDB.Status.INACTIVE);
- String msg = null;
- if (translator) {
- msg = RuntimePlugin.Util.getString("translator_not_found", vdb.getName(), vdb.getVersion(), model.getSourceTranslatorName(sourceName)); //$NON-NLS-1$
- }
- else {
- msg = RuntimePlugin.Util.getString("datasource_not_found", vdb.getName(), vdb.getVersion(), model.getSourceTranslatorName(sourceName)); //$NON-NLS-1$
- }
- model.addError(ModelMetaData.ValidationError.Severity.ERROR.name(), msg);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, msg);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_inactivated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
- }
- }
- }
- }
- }
-
- private String getSourceName(String translatorName, ModelMetaData model, boolean translator) {
- for (String sourceName:model.getSourceNames()) {
- if (translator) {
- if (translatorName.equals(model.getSourceTranslatorName(sourceName))) {
- return sourceName;
- }
- } else {
- String jndiName = model.getSourceConnectionJndiName(sourceName);
- if (jndiName.startsWith(JAVA_CONTEXT)) {
- jndiName = jndiName.substring(5);
- }
- if (translatorName.equals(jndiName)) {
- return sourceName;
- }
- }
- }
- return null;
- }
-
- public void setThreadPool(ThreadPool threadPool) {
- this.threadPool = threadPool;
- }
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java (from rev 2941, trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,176 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.deployers;
+
+import java.util.LinkedList;
+
+import org.jboss.util.threadpool.ThreadPool;
+import org.teiid.adminapi.Model;
+import org.teiid.adminapi.VDB;
+import org.teiid.adminapi.impl.ModelMetaData;
+import org.teiid.adminapi.impl.VDBMetaData;
+import org.teiid.dqp.internal.datamgr.ConnectorManager;
+import org.teiid.dqp.internal.datamgr.ConnectorManagerRepository;
+import org.teiid.logging.LogConstants;
+import org.teiid.logging.LogManager;
+import org.teiid.runtime.RuntimePlugin;
+
+
+public class VDBStatusChecker {
+ private static final String JAVA_CONTEXT = "java:"; //$NON-NLS-1$
+ private VDBRepository vdbRepository;
+ private ThreadPool threadPool;
+
+ public void translatorAdded(String translatorName) {
+ resourceAdded(translatorName, true);
+ }
+
+ public void translatorRemoved(String translatorName) {
+ resourceremoved(translatorName, true);
+ }
+
+ public void dataSourceAdded(String dataSourceName) {
+ if (dataSourceName.startsWith(JAVA_CONTEXT)) {
+ dataSourceName = dataSourceName.substring(5);
+ }
+ resourceAdded(dataSourceName, false);
+ }
+
+ public void dataSourceRemoved(String dataSourceName) {
+ if (dataSourceName.startsWith(JAVA_CONTEXT)) {
+ dataSourceName = dataSourceName.substring(5);
+ }
+ resourceremoved(dataSourceName, false);
+ }
+
+ public void setVDBRepository(VDBRepository repo) {
+ this.vdbRepository = repo;
+ }
+
+ public void resourceAdded(String resourceName, boolean translator) {
+ for (VDBMetaData vdb:this.vdbRepository.getVDBs()) {
+ if (vdb.getStatus() == VDB.Status.ACTIVE || vdb.isPreview()) {
+ continue;
+ }
+ LinkedList<Runnable> runnables = new LinkedList<Runnable>();
+ synchronized (vdb) {
+ ConnectorManagerRepository cmr = vdb.getAttachment(ConnectorManagerRepository.class);
+
+ for (Model m:vdb.getModels()) {
+ ModelMetaData model = (ModelMetaData)m;
+ if (model.getErrors().isEmpty()) {
+ continue;
+ }
+
+ String sourceName = getSourceName(resourceName, model, translator);
+ if (sourceName == null) {
+ continue;
+ }
+ ConnectorManager cm = cmr.getConnectorManager(sourceName);
+ String status = cm.getStausMessage();
+ if (status != null && status.length() > 0) {
+ model.addError(ModelMetaData.ValidationError.Severity.ERROR.name(), status);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, status);
+ } else {
+ //get the pending metadata load
+ Runnable r = model.removeAttachment(Runnable.class);
+ if (r != null) {
+ runnables.add(r);
+ } else {
+ model.clearErrors();
+ }
+ }
+ }
+
+ boolean valid = true;
+ for (Model m:vdb.getModels()) {
+ ModelMetaData model = (ModelMetaData)m;
+ if (!model.getErrors().isEmpty()) {
+ valid = false;
+ break;
+ }
+ }
+
+ if (!runnables.isEmpty()) {
+ //the task themselves will set the status on completion/failure
+ for (Runnable runnable : runnables) {
+ this.threadPool.run(runnable);
+ }
+ } else if (valid) {
+ vdb.setStatus(VDB.Status.ACTIVE);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_activated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
+ }
+ }
+ }
+ }
+
+ public void resourceremoved(String resourceName, boolean translator) {
+ for (VDBMetaData vdb:this.vdbRepository.getVDBs()) {
+ if (vdb.isPreview()) {
+ continue;
+ }
+ synchronized (vdb) {
+ for (Model m:vdb.getModels()) {
+ ModelMetaData model = (ModelMetaData)m;
+
+ String sourceName = getSourceName(resourceName, model, translator);
+ if (sourceName != null) {
+ vdb.setStatus(VDB.Status.INACTIVE);
+ String msg = null;
+ if (translator) {
+ msg = RuntimePlugin.Util.getString("translator_not_found", vdb.getName(), vdb.getVersion(), model.getSourceTranslatorName(sourceName)); //$NON-NLS-1$
+ }
+ else {
+ msg = RuntimePlugin.Util.getString("datasource_not_found", vdb.getName(), vdb.getVersion(), model.getSourceTranslatorName(sourceName)); //$NON-NLS-1$
+ }
+ model.addError(ModelMetaData.ValidationError.Severity.ERROR.name(), msg);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, msg);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_inactivated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
+ }
+ }
+ }
+ }
+ }
+
+ private String getSourceName(String translatorName, ModelMetaData model, boolean translator) {
+ for (String sourceName:model.getSourceNames()) {
+ if (translator) {
+ if (translatorName.equals(model.getSourceTranslatorName(sourceName))) {
+ return sourceName;
+ }
+ } else {
+ String jndiName = model.getSourceConnectionJndiName(sourceName);
+ if (jndiName.startsWith(JAVA_CONTEXT)) {
+ jndiName = jndiName.substring(5);
+ }
+ if (translatorName.equals(jndiName)) {
+ return sourceName;
+ }
+ }
+ }
+ return null;
+ }
+
+ public void setThreadPool(ThreadPool threadPool) {
+ this.threadPool = threadPool;
+ }
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,656 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-package org.teiid.odbc;
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.teiid.jdbc.ConnectionImpl;
-import org.teiid.jdbc.TeiidDriver;
-import org.teiid.logging.LogConstants;
-import org.teiid.logging.LogManager;
-import org.teiid.runtime.RuntimePlugin;
-import org.teiid.transport.PGCharsetConverter;
-
-/**
- * While executing the multiple prepared statements I see this bug currently
- * http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1007690&group_id=1...
- */
-public class ODBCServerRemoteImpl implements ODBCServerRemote {
-
- private static final String UNNAMED = "UNNAMED"; //$NON-NLS-1$
- private static Pattern setPattern = Pattern.compile("(SET|set)\\s+(\\w+)\\s+(TO|to)\\s+'(\\w+\\d*)'");//$NON-NLS-1$
-
- private static Pattern pkPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, tc.relname " +//$NON-NLS-1$
- "from pg_catalog.pg_attribute ta, pg_catalog.pg_attribute ia, pg_catalog.pg_class tc, pg_catalog.pg_index i, " +//$NON-NLS-1$
- "pg_catalog.pg_namespace n, pg_catalog.pg_class ic where tc.relname = E'(\\w+)' AND n.nspname = E'(\\w+)'.*" );//$NON-NLS-1$
-
-
- private static Pattern pkKeyPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, NULL .*"); //$NON-NLS-1$
-
- private Pattern fkPattern = Pattern.compile("select\\s+'(\\w+)'::name as PKTABLE_CAT," + //$NON-NLS-1$
- "\\s+n2.nspname as PKTABLE_SCHEM," + //$NON-NLS-1$
- "\\s+c2.relname as PKTABLE_NAME," + //$NON-NLS-1$
- "\\s+a2.attname as PKCOLUMN_NAME," + //$NON-NLS-1$
- "\\s+'(\\w+)'::name as FKTABLE_CAT," + //$NON-NLS-1$
- "\\s+n1.nspname as FKTABLE_SCHEM," + //$NON-NLS-1$
- "\\s+c1.relname as FKTABLE_NAME," + //$NON-NLS-1$
- "\\s+a1.attname as FKCOLUMN_NAME," + //$NON-NLS-1$
- "\\s+i::int2 as KEY_SEQ," + //$NON-NLS-1$
- "\\s+case ref.confupdtype" + //$NON-NLS-1$
- "\\s+when 'c' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'n' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'd' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'r' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+else 3::int2" + //$NON-NLS-1$
- "\\s+end as UPDATE_RULE," + //$NON-NLS-1$
- "\\s+case ref.confdeltype" + //$NON-NLS-1$
- "\\s+when 'c' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'n' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'd' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+when 'r' then (\\d)::int2" + //$NON-NLS-1$
- "\\s+else 3::int2" + //$NON-NLS-1$
- "\\s+end as DELETE_RULE," + //$NON-NLS-1$
- "\\s+ref.conname as FK_NAME," + //$NON-NLS-1$
- "\\s+cn.conname as PK_NAME," + //$NON-NLS-1$
- "\\s+case" + //$NON-NLS-1$
- "\\s+when ref.condeferrable then" + //$NON-NLS-1$
- "\\s+case" + //$NON-NLS-1$
- "\\s+when ref.condeferred then (\\d)::int2" + //$NON-NLS-1$
- "\\s+else (\\d)::int2" + //$NON-NLS-1$
- "\\s+end" + //$NON-NLS-1$
- "\\s+else (\\d)::int2" + //$NON-NLS-1$
- "\\s+end as DEFERRABLITY" + //$NON-NLS-1$
- "\\s+from" + //$NON-NLS-1$
- "\\s+\\(\\(\\(\\(\\(\\(\\( \\(select cn.oid, conrelid, conkey, confrelid, confkey," + //$NON-NLS-1$
- "\\s+generate_series\\(array_lower\\(conkey, 1\\), array_upper\\(conkey, 1\\)\\) as i," + //$NON-NLS-1$
- "\\s+confupdtype, confdeltype, conname," + //$NON-NLS-1$
- "\\s+condeferrable, condeferred" + //$NON-NLS-1$
- "\\s+from pg_catalog.pg_constraint cn," + //$NON-NLS-1$
- "\\s+pg_catalog.pg_class c," + //$NON-NLS-1$
- "\\s+pg_catalog.pg_namespace n" + //$NON-NLS-1$
- "\\s+where contype = 'f' " + //$NON-NLS-1$
- "\\s+and conrelid = c.oid" + //$NON-NLS-1$
- "\\s+and relname = E'(\\w+)'" + //$NON-NLS-1$
- "\\s+and n.oid = c.relnamespace" + //$NON-NLS-1$
- "\\s+and n.nspname = E'(\\w+)'" + //$NON-NLS-1$
- "\\s+\\) ref" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_class c1" + //$NON-NLS-1$
- "\\s+on c1.oid = ref.conrelid\\)" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_namespace n1" + //$NON-NLS-1$
- "\\s+on n1.oid = c1.relnamespace\\)" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_attribute a1" + //$NON-NLS-1$
- "\\s+on a1.attrelid = c1.oid" + //$NON-NLS-1$
- "\\s+and a1.attnum = conkey\\[i\\]\\)" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_class c2" + //$NON-NLS-1$
- "\\s+on c2.oid = ref.confrelid\\)" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_namespace n2" + //$NON-NLS-1$
- "\\s+on n2.oid = c2.relnamespace\\)" + //$NON-NLS-1$
- "\\s+inner join pg_catalog.pg_attribute a2" + //$NON-NLS-1$
- "\\s+on a2.attrelid = c2.oid" + //$NON-NLS-1$
- "\\s+and a2.attnum = confkey\\[i\\]\\)" + //$NON-NLS-1$
- "\\s+left outer join pg_catalog.pg_constraint cn" + //$NON-NLS-1$
- "\\s+on cn.conrelid = ref.confrelid" + //$NON-NLS-1$
- "\\s+and cn.contype = 'p'\\)" + //$NON-NLS-1$
- "\\s+order by ref.oid, ref.i"); //$NON-NLS-1$
-
- private static Pattern procParametersPattern = Pattern.compile("select proname, proretset, prorettype, pronargs, proargtypes, " + //$NON-NLS-1$
- "nspname, p.oid, atttypid, attname, proargnames, proargmodes, proallargtypes from ((pg_catalog.pg_namespace n inner join " + //$NON-NLS-1$
- "pg_catalog.pg_proc p on p.pronamespace = n.oid) inner join pg_type t on t.oid = p.prorettype) left outer join " + //$NON-NLS-1$
- "pg_attribute a on a.attrelid = t.typrelid and attnum > 0 and not attisdropped " + //$NON-NLS-1$
- "where has_function_privilege(p.oid, 'EXECUTE') and nspname like E'(\\w+)' " + //$NON-NLS-1$
- "and proname like E'(\\w+)' " + //$NON-NLS-1$
- "order by nspname, proname, p.oid, attnum"); //$NON-NLS-1$
-
-
-
- private static Pattern deallocatePattern = Pattern.compile("DEALLOCATE \"(\\w+\\d+_*)\""); //$NON-NLS-1$
- private static Pattern releasePattern = Pattern.compile("RELEASE (\\w+\\d+_*)"); //$NON-NLS-1$
- private static Pattern savepointPattern = Pattern.compile("SAVEPOINT (\\w+\\d+_*)"); //$NON-NLS-1$
- private static Pattern rollbackPattern = Pattern.compile("ROLLBACK\\s*(to)*\\s*(\\w+\\d+_*)*"); //$NON-NLS-1$
-
- private ODBCClientRemote client;
- private Properties props;
- private AuthenticationType authType;
- private ConnectionImpl connection;
-
- // TODO: this is unbounded map; need to define some boundaries as to how many stmts each session can have
- private Map<String, Prepared> preparedMap = Collections.synchronizedMap(new HashMap<String, Prepared>());
- private Map<String, Portal> portalMap = Collections.synchronizedMap(new HashMap<String, Portal>());
-
- public ODBCServerRemoteImpl(ODBCClientRemote client, AuthenticationType authType) {
- this.client = client;
- this.authType = authType;
- }
-
- @Override
- public void initialize(Properties props) {
- this.props = props;
-
- this.client.initialized(this.props);
-
- if (this.authType.equals(AuthenticationType.CLEARTEXT)) {
- this.client.useClearTextAuthentication();
- }
- else if (this.authType.equals(AuthenticationType.MD5)) {
- // TODO: implement MD5 auth type
- }
- }
-
- @Override
- public void logon(String databaseName, String user, String password) {
- try {
- java.util.Properties info = new java.util.Properties();
- String url = "jdbc:teiid:"+databaseName+";ApplicationName=ODBC"; //$NON-NLS-1$ //$NON-NLS-2$
- TeiidDriver driver = new TeiidDriver();
- info.put("user", user); //$NON-NLS-1$
- info.put("password", password); //$NON-NLS-1$
- this.connection = (ConnectionImpl)driver.connect(url, info);
- int hash = this.connection.getConnectionId().hashCode();
- this.client.authenticationSucess(hash, hash);
- sync();
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- terminate();
- }
- }
-
- @Override
- public void prepare(String prepareName, String sql, int[] paramType) {
- if (this.connection != null) {
-
- if (prepareName == null || prepareName.length() == 0) {
- prepareName = UNNAMED;
- }
-
- if (sql != null) {
- String modfiedSQL = sql.replaceAll("\\$\\d+", "?");//$NON-NLS-1$ //$NON-NLS-2$
- try {
- // close if the name is already used or the unnamed prepare; otherwise
- // stmt is alive until session ends.
- Prepared previous = this.preparedMap.remove(prepareName);
- if (previous != null) {
- previous.stmt.close();
- }
-
- PreparedStatement stmt = this.connection.prepareStatement(modfiedSQL);
- this.preparedMap.put(prepareName, new Prepared(prepareName, sql, stmt, paramType));
- this.client.prepareCompleted(prepareName);
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- }
- else {
- this.client.errorOccurred(RuntimePlugin.Util.getString("no_active_connection")); //$NON-NLS-1$
- }
- }
-
- @Override
- public void bindParameters(String bindName, String prepareName, int paramCount, Object[] params, int resultCodeCount, int[] resultColumnFormat) {
- // An unnamed portal is destroyed at the end of the transaction, or as soon as
- // the next Bind statement specifying the unnamed portal as destination is issued.
- this.portalMap.remove(UNNAMED);
-
- if (prepareName == null || prepareName.length() == 0) {
- prepareName = UNNAMED;
- }
-
- Prepared previous = this.preparedMap.get(prepareName);
- if (previous == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("bad_binding", prepareName)); //$NON-NLS-1$
- return;
- }
-
- if (bindName == null || bindName.length() == 0) {
- bindName = UNNAMED;
- }
-
- try {
- for (int i = 0; i < paramCount; i++) {
- previous.stmt.setObject(i+1, params[i]);
- }
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
-
- this.portalMap.put(bindName, new Portal(bindName, prepareName, previous.sql, previous.stmt, resultColumnFormat));
- this.client.bindComplete();
- }
-
- @Override
- public void unsupportedOperation(String msg) {
- this.client.errorOccurred(msg);
- sync();
- }
-
- @Override
- public void execute(String bindName, int maxRows) {
- if (bindName == null || bindName.length() == 0) {
- bindName = UNNAMED;
- }
-
- Portal query = this.portalMap.get(bindName);
- if (query == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
- sync();
- }
- else {
- if (query.sql.trim().isEmpty()) {
- this.client.emptyQueryReceived();
- return;
- }
-
- PreparedStatement stmt = query.stmt;
- try {
- // maxRows = 0, means unlimited.
- if (maxRows != 0) {
- stmt.setMaxRows(maxRows);
- }
-
- boolean result = stmt.execute();
- if (result) {
- try {
- ResultSet rs = stmt.getResultSet();
- this.client.sendResults(query.sql, rs, true);
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- } else {
- this.client.sendUpdateCount(query.sql, stmt.getUpdateCount());
- }
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- }
-
- private String fixSQL(String sql) {
- String modified = sql;
- // select current_schema()
- // set client_encoding to 'WIN1252'
- if (sql != null) {
- // selects are coming with "select\t" so using a space after "select" does not always work
- if (sql.startsWith("select") || sql.startsWith("SELECT")) { //$NON-NLS-1$ //$NON-NLS-2$
- modified = sql.replace('\n', ' ');
-
- Matcher m = null;
- if ((m = pkPattern.matcher(modified)).matches()) {
- modified = new StringBuffer("SELECT k.Name AS attname, convert(Position, short) AS attnum, TableName AS relname, SchemaName AS nspname, TableName AS relname") //$NON-NLS-1$
- .append(" FROM SYS.KeyColumns k") //$NON-NLS-1$
- .append(" WHERE ") //$NON-NLS-1$
- .append(" UCASE(SchemaName)").append(" LIKE '").append(m.group(2)).append("'")//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- .append(" AND UCASE(TableName)") .append(" LIKE '").append(m.group(1)).append("'")//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- .append(" AND KeyType LIKE 'Primary'") //$NON-NLS-1$
- .append(" ORDER BY attnum").toString(); //$NON-NLS-1$
- }
- else if ((m = pkKeyPattern.matcher(modified)).matches()) {
- modified = "SELECT NULL, NULL, NULL, NULL, NULL FROM (SELECT 1) as X WHERE 0=1"; //$NON-NLS-1$
- }
- else if ((m = fkPattern.matcher(modified)).matches()){
- modified = "SELECT PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_CAT, FKTABLE_SCHEM, "+//$NON-NLS-1$
- "FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE, DELETE_RULE, FK_NAME, PK_NAME, DEFERRABILITY "+//$NON-NLS-1$
- "FROM SYS.ReferenceKeyColumns WHERE PKTABLE_NAME LIKE '"+m.group(14)+"' and PKTABLE_SCHEM LIKE '"+m.group(15)+"'";//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- }
- else {
- modified = modified.replaceAll("E'", "'"); //$NON-NLS-1$ //$NON-NLS-2$
- modified = modified.replaceAll("::[A-Za-z0-9]*", " "); //$NON-NLS-1$ //$NON-NLS-2$
- modified = modified.replaceAll("'pg_toast'", "'SYS'"); //$NON-NLS-1$ //$NON-NLS-2$
-
- // since teiid can work with multiple schemas at a given time
- // this call resolution is ambiguous
- if (sql.equalsIgnoreCase("select current_schema()")) { //$NON-NLS-1$
- modified = "SELECT ''"; //$NON-NLS-1$
- }
- }
-
- }
- else if (sql.equalsIgnoreCase("show max_identifier_length")){ //$NON-NLS-1$
- modified = "select 63"; //$NON-NLS-1$
- }
- else {
- Matcher m = setPattern.matcher(sql);
- if (m.matches()) {
- if (m.group(2).equalsIgnoreCase("client_encoding")) { //$NON-NLS-1$
- this.client.setEncoding(PGCharsetConverter.getCharset(m.group(4)));
- modified = "SELECT 'SET'"; //$NON-NLS-1$
- }
- }
- else if (modified.equalsIgnoreCase("BEGIN")) { //$NON-NLS-1$
- try {
- this.connection.setAutoCommit(false);
- modified = "SELECT 'BEGIN'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- else if (modified.equalsIgnoreCase("COMMIT")) { //$NON-NLS-1$
- try {
- this.connection.setAutoCommit(true);
- modified = "SELECT 'COMMIT'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- else if ((m = rollbackPattern.matcher(modified)).matches()) {
- try {
- this.connection.rollback(false);
- modified = "SELECT 'ROLLBACK'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- else if ((m = savepointPattern.matcher(modified)).matches()) {
- modified = "SELECT 'SAVEPOINT'"; //$NON-NLS-1$
- }
- else if ((m = releasePattern.matcher(modified)).matches()) {
- modified = "SELECT 'RELEASE'"; //$NON-NLS-1$
- }
- else if ((m = deallocatePattern.matcher(modified)).matches()) {
- closePreparedStatement(m.group(1));
- modified = "SELECT 'DEALLOCATE'"; //$NON-NLS-1$
- }
- }
- if (modified != null && !modified.equalsIgnoreCase(sql)) {
- LogManager.logDetail(LogConstants.CTX_ODBC, "Modified Query:"+modified); //$NON-NLS-1$
- }
- }
- return modified;
- }
-
- @Override
- public void executeQuery(String query) {
-
- //46.2.3 Note that a simple Query message also destroys the unnamed portal.
- this.portalMap.remove(UNNAMED);
- this.preparedMap.remove(UNNAMED);
-
- if (query.trim().length() == 0) {
- this.client.emptyQueryReceived();
- sync();
- return;
- }
-
- try {
- ScriptReader reader = new ScriptReader(new StringReader(query));
- String s = fixSQL(reader.readStatement());
- while (s != null) {
- Statement stmt = null;
- try {
- stmt = this.connection.createStatement();
- boolean result = stmt.execute(s);
- if (result) {
- this.client.sendResults(s, stmt.getResultSet(), true);
- } else {
- this.client.sendUpdateCount(s, stmt.getUpdateCount());
- }
- s = fixSQL(reader.readStatement());
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- break;
- } finally {
- try {
- if (stmt != null) {
- stmt.close();
- }
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- break;
- }
- }
- }
- } catch(IOException e) {
- this.client.errorOccurred(e);
- }
- sync();
- }
-
- @Override
- public void getParameterDescription(String prepareName) {
- if (prepareName == null || prepareName.length() == 0) {
- prepareName = UNNAMED;
- }
- Prepared query = this.preparedMap.get(prepareName);
- if (query == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("no_stmt_found", prepareName)); //$NON-NLS-1$
- sync();
- }
- else {
- try {
- this.client.sendParameterDescription(query.stmt.getParameterMetaData(), query.paramType);
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- }
-
- @Override
- public void getResultSetMetaDataDescription(String bindName) {
- if (bindName == null || bindName.length() == 0) {
- bindName = UNNAMED;
- }
- Portal query = this.portalMap.get(bindName);
- if (query == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
- }
- else {
- try {
- this.client.sendResultSetDescription(query.stmt.getMetaData());
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
- }
-
- @Override
- public void sync() {
- boolean inTxn = false;
- boolean failedTxn = false;
- try {
- if (!this.connection.getAutoCommit()) {
- inTxn = true;
- }
- } catch (SQLException e) {
- failedTxn = true;
- }
- this.client.ready(inTxn, failedTxn);
- }
-
- @Override
- public void cancel() {
- // TODO Auto-generated method stub
- }
-
- @Override
- public void closeBoundStatement(String bindName) {
- if (bindName == null || bindName.length() == 0) {
- bindName = UNNAMED;
- }
- Portal query = this.portalMap.remove(bindName);
- if (query == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
- }
- else {
- try {
- if (this.connection.getAutoCommit()) {
- // After checking the pg's client code I do not see it send a
- // close of the Prepare stmt as per the wire protocol, it only sends
- // bound close. Since it also have issue with
- // http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1007690&group_id=1...
- // treating the prepare and bound as same for now.
- closePreparedStatement(bindName);
- }
- } catch (SQLException e) {
- closePreparedStatement(bindName);
- }
- }
- }
-
- @Override
- public void closePreparedStatement(String preparedName) {
- if (preparedName == null || preparedName.length() == 0) {
- preparedName = UNNAMED;
- }
- Prepared query = this.preparedMap.remove(preparedName);
- if (query == null) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("no_stmt_found", preparedName)); //$NON-NLS-1$
- }
- else {
- // Close all the bound messages off of this prepared
- // TODO: can there be more than one?
- this.portalMap.remove(preparedName);
-
- try {
- query.stmt.close();
- this.client.statementClosed();
- } catch (SQLException e) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("error_closing_stmt", preparedName)); //$NON-NLS-1$
- }
- }
- }
-
- @Override
- public void terminate() {
-
- for (Portal p: this.portalMap.values()) {
- try {
- p.stmt.close();
- } catch (SQLException e) {
- //ignore
- }
- }
-
- for (Prepared p:this.preparedMap.values()) {
- try {
- p.stmt.close();
- } catch (SQLException e) {
- //ignore
- }
- }
-
- try {
- if (this.connection != null) {
- this.connection.close();
- }
- } catch (SQLException e) {
- //ignore
- }
- this.client.terminated();
- }
-
- @Override
- public void flush() {
- this.client.flush();
- }
-
- @Override
- public void functionCall(int oid) {
- this.client.errorOccurred(RuntimePlugin.Util.getString("lo_not_supported")); //$NON-NLS-1$
- sync();
- }
-
- @Override
- public void sslRequest() {
- this.client.sslDenied();
- }
-
- /**
- * Represents a PostgreSQL Prepared object.
- */
- static class Prepared {
-
- public Prepared (String name, String sql, PreparedStatement stmt, int[] paramType) {
- this.name = name;
- this.sql = sql;
- this.stmt = stmt;
- this.paramType = paramType;
- }
-
- /**
- * The object name.
- */
- String name;
-
- /**
- * The SQL statement.
- */
- String sql;
-
- /**
- * The prepared statement.
- */
- PreparedStatement stmt;
-
- /**
- * The list of parameter types (if set).
- */
- int[] paramType;
- }
-
- /**
- * Represents a PostgreSQL Portal object.
- */
- static class Portal {
-
- public Portal(String name, String preparedName, String sql, PreparedStatement stmt, int[] resultColumnformat) {
- this.name = name;
- this.preparedName = preparedName;
- this.sql = sql;
- this.stmt = stmt;
- this.resultColumnFormat = resultColumnformat;
- }
- /**
- * The portal name.
- */
- String name;
-
-
- String preparedName;
-
- /**
- * The SQL statement.
- */
- String sql;
-
- /**
- * The format used in the result set columns (if set).
- */
- int[] resultColumnFormat;
-
- /**
- * The prepared statement.
- */
- PreparedStatement stmt;
- }
-
-
-}
Copied: tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java (from rev 2943, trunk/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,670 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+package org.teiid.odbc;
+
+import java.io.IOException;
+import java.io.StringReader;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.teiid.core.util.ApplicationInfo;
+import org.teiid.jdbc.ConnectionImpl;
+import org.teiid.jdbc.TeiidDriver;
+import org.teiid.logging.LogConstants;
+import org.teiid.logging.LogManager;
+import org.teiid.runtime.RuntimePlugin;
+import org.teiid.transport.PGCharsetConverter;
+
+/**
+ * While executing the multiple prepared statements I see this bug currently
+ * http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1007690&group_id=1...
+ */
+public class ODBCServerRemoteImpl implements ODBCServerRemote {
+
+ private static final String UNNAMED = "UNNAMED"; //$NON-NLS-1$
+ private static Pattern setPattern = Pattern.compile("(SET|set)\\s+(\\w+)\\s+(TO|to)\\s+'(\\w+\\d*)'");//$NON-NLS-1$
+
+ private static Pattern pkPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, tc.relname " +//$NON-NLS-1$
+ "from pg_catalog.pg_attribute ta, pg_catalog.pg_attribute ia, pg_catalog.pg_class tc, pg_catalog.pg_index i, " +//$NON-NLS-1$
+ "pg_catalog.pg_namespace n, pg_catalog.pg_class ic where tc.relname = E'(\\w+)' AND n.nspname = E'(\\w+)'.*" );//$NON-NLS-1$
+
+
+ private static Pattern pkKeyPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, NULL .*"); //$NON-NLS-1$
+
+ private Pattern fkPattern = Pattern.compile("select\\s+'(\\w+)'::name as PKTABLE_CAT," + //$NON-NLS-1$
+ "\\s+n2.nspname as PKTABLE_SCHEM," + //$NON-NLS-1$
+ "\\s+c2.relname as PKTABLE_NAME," + //$NON-NLS-1$
+ "\\s+a2.attname as PKCOLUMN_NAME," + //$NON-NLS-1$
+ "\\s+'(\\w+)'::name as FKTABLE_CAT," + //$NON-NLS-1$
+ "\\s+n1.nspname as FKTABLE_SCHEM," + //$NON-NLS-1$
+ "\\s+c1.relname as FKTABLE_NAME," + //$NON-NLS-1$
+ "\\s+a1.attname as FKCOLUMN_NAME," + //$NON-NLS-1$
+ "\\s+i::int2 as KEY_SEQ," + //$NON-NLS-1$
+ "\\s+case ref.confupdtype" + //$NON-NLS-1$
+ "\\s+when 'c' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'n' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'd' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'r' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+else 3::int2" + //$NON-NLS-1$
+ "\\s+end as UPDATE_RULE," + //$NON-NLS-1$
+ "\\s+case ref.confdeltype" + //$NON-NLS-1$
+ "\\s+when 'c' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'n' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'd' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+when 'r' then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+else 3::int2" + //$NON-NLS-1$
+ "\\s+end as DELETE_RULE," + //$NON-NLS-1$
+ "\\s+ref.conname as FK_NAME," + //$NON-NLS-1$
+ "\\s+cn.conname as PK_NAME," + //$NON-NLS-1$
+ "\\s+case" + //$NON-NLS-1$
+ "\\s+when ref.condeferrable then" + //$NON-NLS-1$
+ "\\s+case" + //$NON-NLS-1$
+ "\\s+when ref.condeferred then (\\d)::int2" + //$NON-NLS-1$
+ "\\s+else (\\d)::int2" + //$NON-NLS-1$
+ "\\s+end" + //$NON-NLS-1$
+ "\\s+else (\\d)::int2" + //$NON-NLS-1$
+ "\\s+end as DEFERRABLITY" + //$NON-NLS-1$
+ "\\s+from" + //$NON-NLS-1$
+ "\\s+\\(\\(\\(\\(\\(\\(\\( \\(select cn.oid, conrelid, conkey, confrelid, confkey," + //$NON-NLS-1$
+ "\\s+generate_series\\(array_lower\\(conkey, 1\\), array_upper\\(conkey, 1\\)\\) as i," + //$NON-NLS-1$
+ "\\s+confupdtype, confdeltype, conname," + //$NON-NLS-1$
+ "\\s+condeferrable, condeferred" + //$NON-NLS-1$
+ "\\s+from pg_catalog.pg_constraint cn," + //$NON-NLS-1$
+ "\\s+pg_catalog.pg_class c," + //$NON-NLS-1$
+ "\\s+pg_catalog.pg_namespace n" + //$NON-NLS-1$
+ "\\s+where contype = 'f' " + //$NON-NLS-1$
+ "\\s+and conrelid = c.oid" + //$NON-NLS-1$
+ "\\s+and relname = E'(\\w+)'" + //$NON-NLS-1$
+ "\\s+and n.oid = c.relnamespace" + //$NON-NLS-1$
+ "\\s+and n.nspname = E'(\\w+)'" + //$NON-NLS-1$
+ "\\s+\\) ref" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_class c1" + //$NON-NLS-1$
+ "\\s+on c1.oid = ref.conrelid\\)" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_namespace n1" + //$NON-NLS-1$
+ "\\s+on n1.oid = c1.relnamespace\\)" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_attribute a1" + //$NON-NLS-1$
+ "\\s+on a1.attrelid = c1.oid" + //$NON-NLS-1$
+ "\\s+and a1.attnum = conkey\\[i\\]\\)" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_class c2" + //$NON-NLS-1$
+ "\\s+on c2.oid = ref.confrelid\\)" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_namespace n2" + //$NON-NLS-1$
+ "\\s+on n2.oid = c2.relnamespace\\)" + //$NON-NLS-1$
+ "\\s+inner join pg_catalog.pg_attribute a2" + //$NON-NLS-1$
+ "\\s+on a2.attrelid = c2.oid" + //$NON-NLS-1$
+ "\\s+and a2.attnum = confkey\\[i\\]\\)" + //$NON-NLS-1$
+ "\\s+left outer join pg_catalog.pg_constraint cn" + //$NON-NLS-1$
+ "\\s+on cn.conrelid = ref.confrelid" + //$NON-NLS-1$
+ "\\s+and cn.contype = 'p'\\)" + //$NON-NLS-1$
+ "\\s+order by ref.oid, ref.i"); //$NON-NLS-1$
+
+ private static Pattern procParametersPattern = Pattern.compile("select proname, proretset, prorettype, pronargs, proargtypes, " + //$NON-NLS-1$
+ "nspname, p.oid, atttypid, attname, proargnames, proargmodes, proallargtypes from ((pg_catalog.pg_namespace n inner join " + //$NON-NLS-1$
+ "pg_catalog.pg_proc p on p.pronamespace = n.oid) inner join pg_type t on t.oid = p.prorettype) left outer join " + //$NON-NLS-1$
+ "pg_attribute a on a.attrelid = t.typrelid and attnum > 0 and not attisdropped " + //$NON-NLS-1$
+ "where has_function_privilege(p.oid, 'EXECUTE') and nspname like E'(\\w+)' " + //$NON-NLS-1$
+ "and proname like E'(\\w+)' " + //$NON-NLS-1$
+ "order by nspname, proname, p.oid, attnum"); //$NON-NLS-1$
+
+
+
+ private static Pattern deallocatePattern = Pattern.compile("DEALLOCATE \"(\\w+\\d+_*)\""); //$NON-NLS-1$
+ private static Pattern releasePattern = Pattern.compile("RELEASE (\\w+\\d+_*)"); //$NON-NLS-1$
+ private static Pattern savepointPattern = Pattern.compile("SAVEPOINT (\\w+\\d+_*)"); //$NON-NLS-1$
+ private static Pattern rollbackPattern = Pattern.compile("ROLLBACK\\s*(to)*\\s*(\\w+\\d+_*)*"); //$NON-NLS-1$
+
+ private ODBCClientRemote client;
+ private Properties props;
+ private AuthenticationType authType;
+ private ConnectionImpl connection;
+
+ // TODO: this is unbounded map; need to define some boundaries as to how many stmts each session can have
+ private Map<String, Prepared> preparedMap = Collections.synchronizedMap(new HashMap<String, Prepared>());
+ private Map<String, Portal> portalMap = Collections.synchronizedMap(new HashMap<String, Portal>());
+
+ public ODBCServerRemoteImpl(ODBCClientRemote client, AuthenticationType authType) {
+ this.client = client;
+ this.authType = authType;
+ }
+
+ @Override
+ public void initialize(Properties props) {
+ this.props = props;
+
+ this.client.initialized(this.props);
+
+ if (this.authType.equals(AuthenticationType.CLEARTEXT)) {
+ this.client.useClearTextAuthentication();
+ }
+ else if (this.authType.equals(AuthenticationType.MD5)) {
+ // TODO: implement MD5 auth type
+ }
+ }
+
+ @Override
+ public void logon(String databaseName, String user, String password) {
+ try {
+ java.util.Properties info = new java.util.Properties();
+ String url = "jdbc:teiid:"+databaseName+";ApplicationName=ODBC"; //$NON-NLS-1$ //$NON-NLS-2$
+ TeiidDriver driver = new TeiidDriver();
+ info.put("user", user); //$NON-NLS-1$
+ info.put("password", password); //$NON-NLS-1$
+ this.connection = (ConnectionImpl)driver.connect(url, info);
+ int hash = this.connection.getConnectionId().hashCode();
+ this.client.authenticationSucess(hash, hash);
+ sync();
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ terminate();
+ }
+ }
+
+ @Override
+ public void prepare(String prepareName, String sql, int[] paramType) {
+ if (this.connection != null) {
+
+ if (prepareName == null || prepareName.length() == 0) {
+ prepareName = UNNAMED;
+ }
+
+ if (sql != null) {
+ String modfiedSQL = sql.replaceAll("\\$\\d+", "?");//$NON-NLS-1$ //$NON-NLS-2$
+ try {
+ // close if the name is already used or the unnamed prepare; otherwise
+ // stmt is alive until session ends.
+ Prepared previous = this.preparedMap.remove(prepareName);
+ if (previous != null) {
+ previous.stmt.close();
+ }
+
+ PreparedStatement stmt = this.connection.prepareStatement(modfiedSQL);
+ this.preparedMap.put(prepareName, new Prepared(prepareName, sql, stmt, paramType));
+ this.client.prepareCompleted(prepareName);
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ }
+ else {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("no_active_connection")); //$NON-NLS-1$
+ }
+ }
+
+ @Override
+ public void bindParameters(String bindName, String prepareName, int paramCount, Object[] params, int resultCodeCount, int[] resultColumnFormat) {
+ // An unnamed portal is destroyed at the end of the transaction, or as soon as
+ // the next Bind statement specifying the unnamed portal as destination is issued.
+ this.portalMap.remove(UNNAMED);
+
+ if (prepareName == null || prepareName.length() == 0) {
+ prepareName = UNNAMED;
+ }
+
+ Prepared previous = this.preparedMap.get(prepareName);
+ if (previous == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("bad_binding", prepareName)); //$NON-NLS-1$
+ return;
+ }
+
+ if (bindName == null || bindName.length() == 0) {
+ bindName = UNNAMED;
+ }
+
+ try {
+ for (int i = 0; i < paramCount; i++) {
+ previous.stmt.setObject(i+1, params[i]);
+ }
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+
+ this.portalMap.put(bindName, new Portal(bindName, prepareName, previous.sql, previous.stmt, resultColumnFormat));
+ this.client.bindComplete();
+ }
+
+ @Override
+ public void unsupportedOperation(String msg) {
+ this.client.errorOccurred(msg);
+ sync();
+ }
+
+ @Override
+ public void execute(String bindName, int maxRows) {
+ if (bindName == null || bindName.length() == 0) {
+ bindName = UNNAMED;
+ }
+
+ Portal query = this.portalMap.get(bindName);
+ if (query == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
+ sync();
+ }
+ else {
+ if (query.sql.trim().isEmpty()) {
+ this.client.emptyQueryReceived();
+ return;
+ }
+
+ PreparedStatement stmt = query.stmt;
+ try {
+ // maxRows = 0, means unlimited.
+ if (maxRows != 0) {
+ stmt.setMaxRows(maxRows);
+ }
+
+ boolean result = stmt.execute();
+ if (result) {
+ try {
+ ResultSet rs = stmt.getResultSet();
+ this.client.sendResults(query.sql, rs, true);
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ } else {
+ this.client.sendUpdateCount(query.sql, stmt.getUpdateCount());
+ }
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ }
+
+ private String fixSQL(String sql) {
+ String modified = sql;
+ // select current_schema()
+ // set client_encoding to 'WIN1252'
+ if (sql != null) {
+ // selects are coming with "select\t" so using a space after "select" does not always work
+ String sqlLower = sql.toLowerCase();
+ if (sqlLower.startsWith("select")) { //$NON-NLS-1$
+ modified = sql.replace('\n', ' ');
+
+ Matcher m = null;
+ if ((m = pkPattern.matcher(modified)).matches()) {
+ modified = new StringBuffer("SELECT k.Name AS attname, convert(Position, short) AS attnum, TableName AS relname, SchemaName AS nspname, TableName AS relname") //$NON-NLS-1$
+ .append(" FROM SYS.KeyColumns k") //$NON-NLS-1$
+ .append(" WHERE ") //$NON-NLS-1$
+ .append(" UCASE(SchemaName)").append(" LIKE '").append(m.group(2)).append("'")//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ .append(" AND UCASE(TableName)") .append(" LIKE '").append(m.group(1)).append("'")//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ .append(" AND KeyType LIKE 'Primary'") //$NON-NLS-1$
+ .append(" ORDER BY attnum").toString(); //$NON-NLS-1$
+ }
+ else if ((m = pkKeyPattern.matcher(modified)).matches()) {
+ modified = "SELECT NULL, NULL, NULL, NULL, NULL FROM (SELECT 1) as X WHERE 0=1"; //$NON-NLS-1$
+ }
+ else if ((m = fkPattern.matcher(modified)).matches()){
+ modified = "SELECT PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_CAT, FKTABLE_SCHEM, "+//$NON-NLS-1$
+ "FKTABLE_NAME, FKCOLUMN_NAME, KEY_SEQ, UPDATE_RULE, DELETE_RULE, FK_NAME, PK_NAME, DEFERRABILITY "+//$NON-NLS-1$
+ "FROM SYS.ReferenceKeyColumns WHERE PKTABLE_NAME LIKE '"+m.group(14)+"' and PKTABLE_SCHEM LIKE '"+m.group(15)+"'";//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
+ else if (modified.equalsIgnoreCase("select version()")) { //$NON-NLS-1$
+ modified = "SELECT 'Teiid "+ApplicationInfo.getInstance().getReleaseNumber()+"'"; //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ else if (modified.startsWith("SELECT name FROM master..sysdatabases")) { //$NON-NLS-1$
+ modified = "SELECT 'Teiid'"; //$NON-NLS-1$
+ }
+ else if (modified.equalsIgnoreCase("select db_name() dbname")) { //$NON-NLS-1$
+ modified = "SELECT current_database()"; //$NON-NLS-1$
+ }
+ else {
+ modified = modified.replaceAll("E'", "'"); //$NON-NLS-1$ //$NON-NLS-2$
+ modified = modified.replaceAll("::[A-Za-z0-9]*", " "); //$NON-NLS-1$ //$NON-NLS-2$
+ modified = modified.replaceAll("'pg_toast'", "'SYS'"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ // since teiid can work with multiple schemas at a given time
+ // this call resolution is ambiguous
+ if (sql.equalsIgnoreCase("select current_schema()")) { //$NON-NLS-1$
+ modified = "SELECT ''"; //$NON-NLS-1$
+ }
+ }
+
+ }
+ else if (sql.equalsIgnoreCase("show max_identifier_length")){ //$NON-NLS-1$
+ modified = "select 63"; //$NON-NLS-1$
+ }
+ else {
+ Matcher m = setPattern.matcher(sql);
+ if (m.matches()) {
+ if (m.group(2).equalsIgnoreCase("client_encoding")) { //$NON-NLS-1$
+ this.client.setEncoding(PGCharsetConverter.getCharset(m.group(4)));
+ }
+ else {
+ this.props.setProperty(m.group(2), m.group(4));
+ }
+ modified = "SELECT 'SET'"; //$NON-NLS-1$
+ }
+ else if (modified.equalsIgnoreCase("BEGIN")) { //$NON-NLS-1$
+ try {
+ this.connection.setAutoCommit(false);
+ modified = "SELECT 'BEGIN'"; //$NON-NLS-1$
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ else if (modified.equalsIgnoreCase("COMMIT")) { //$NON-NLS-1$
+ try {
+ this.connection.setAutoCommit(true);
+ modified = "SELECT 'COMMIT'"; //$NON-NLS-1$
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ else if ((m = rollbackPattern.matcher(modified)).matches()) {
+ try {
+ this.connection.rollback(false);
+ modified = "SELECT 'ROLLBACK'"; //$NON-NLS-1$
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ else if ((m = savepointPattern.matcher(modified)).matches()) {
+ modified = "SELECT 'SAVEPOINT'"; //$NON-NLS-1$
+ }
+ else if ((m = releasePattern.matcher(modified)).matches()) {
+ modified = "SELECT 'RELEASE'"; //$NON-NLS-1$
+ }
+ else if ((m = deallocatePattern.matcher(modified)).matches()) {
+ closePreparedStatement(m.group(1));
+ modified = "SELECT 'DEALLOCATE'"; //$NON-NLS-1$
+ }
+ }
+ if (modified != null && !modified.equalsIgnoreCase(sql)) {
+ LogManager.logDetail(LogConstants.CTX_ODBC, "Modified Query:"+modified); //$NON-NLS-1$
+ }
+ }
+ return modified;
+ }
+
+ @Override
+ public void executeQuery(String query) {
+
+ //46.2.3 Note that a simple Query message also destroys the unnamed portal.
+ this.portalMap.remove(UNNAMED);
+ this.preparedMap.remove(UNNAMED);
+
+ if (query.trim().length() == 0) {
+ this.client.emptyQueryReceived();
+ sync();
+ return;
+ }
+
+ try {
+ ScriptReader reader = new ScriptReader(new StringReader(query));
+ String s = fixSQL(reader.readStatement());
+ while (s != null) {
+ Statement stmt = null;
+ try {
+ stmt = this.connection.createStatement();
+ boolean result = stmt.execute(s);
+ if (result) {
+ this.client.sendResults(s, stmt.getResultSet(), true);
+ } else {
+ this.client.sendUpdateCount(s, stmt.getUpdateCount());
+ }
+ s = fixSQL(reader.readStatement());
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ break;
+ } finally {
+ try {
+ if (stmt != null) {
+ stmt.close();
+ }
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ break;
+ }
+ }
+ }
+ } catch(IOException e) {
+ this.client.errorOccurred(e);
+ }
+ sync();
+ }
+
+ @Override
+ public void getParameterDescription(String prepareName) {
+ if (prepareName == null || prepareName.length() == 0) {
+ prepareName = UNNAMED;
+ }
+ Prepared query = this.preparedMap.get(prepareName);
+ if (query == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("no_stmt_found", prepareName)); //$NON-NLS-1$
+ sync();
+ }
+ else {
+ try {
+ this.client.sendParameterDescription(query.stmt.getParameterMetaData(), query.paramType);
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ }
+
+ @Override
+ public void getResultSetMetaDataDescription(String bindName) {
+ if (bindName == null || bindName.length() == 0) {
+ bindName = UNNAMED;
+ }
+ Portal query = this.portalMap.get(bindName);
+ if (query == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
+ }
+ else {
+ try {
+ this.client.sendResultSetDescription(query.stmt.getMetaData());
+ } catch (SQLException e) {
+ this.client.errorOccurred(e);
+ }
+ }
+ }
+
+ @Override
+ public void sync() {
+ boolean inTxn = false;
+ boolean failedTxn = false;
+ try {
+ if (!this.connection.getAutoCommit()) {
+ inTxn = true;
+ }
+ } catch (SQLException e) {
+ failedTxn = true;
+ }
+ this.client.ready(inTxn, failedTxn);
+ }
+
+ @Override
+ public void cancel() {
+ // TODO Auto-generated method stub
+ }
+
+ @Override
+ public void closeBoundStatement(String bindName) {
+ if (bindName == null || bindName.length() == 0) {
+ bindName = UNNAMED;
+ }
+ Portal query = this.portalMap.remove(bindName);
+ if (query == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("not_bound", bindName)); //$NON-NLS-1$
+ }
+ else {
+ try {
+ if (this.connection.getAutoCommit()) {
+ // After checking the pg's client code I do not see it send a
+ // close of the Prepare stmt as per the wire protocol, it only sends
+ // bound close. Since it also have issue with
+ // http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1007690&group_id=1...
+ // treating the prepare and bound as same for now.
+ closePreparedStatement(bindName);
+ }
+ } catch (SQLException e) {
+ closePreparedStatement(bindName);
+ }
+ }
+ }
+
+ @Override
+ public void closePreparedStatement(String preparedName) {
+ if (preparedName == null || preparedName.length() == 0) {
+ preparedName = UNNAMED;
+ }
+ Prepared query = this.preparedMap.remove(preparedName);
+ if (query == null) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("no_stmt_found", preparedName)); //$NON-NLS-1$
+ }
+ else {
+ // Close all the bound messages off of this prepared
+ // TODO: can there be more than one?
+ this.portalMap.remove(preparedName);
+
+ try {
+ query.stmt.close();
+ this.client.statementClosed();
+ } catch (SQLException e) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("error_closing_stmt", preparedName)); //$NON-NLS-1$
+ }
+ }
+ }
+
+ @Override
+ public void terminate() {
+
+ for (Portal p: this.portalMap.values()) {
+ try {
+ p.stmt.close();
+ } catch (SQLException e) {
+ //ignore
+ }
+ }
+
+ for (Prepared p:this.preparedMap.values()) {
+ try {
+ p.stmt.close();
+ } catch (SQLException e) {
+ //ignore
+ }
+ }
+
+ try {
+ if (this.connection != null) {
+ this.connection.close();
+ }
+ } catch (SQLException e) {
+ //ignore
+ }
+ this.client.terminated();
+ }
+
+ @Override
+ public void flush() {
+ this.client.flush();
+ }
+
+ @Override
+ public void functionCall(int oid) {
+ this.client.errorOccurred(RuntimePlugin.Util.getString("lo_not_supported")); //$NON-NLS-1$
+ sync();
+ }
+
+ @Override
+ public void sslRequest() {
+ this.client.sslDenied();
+ }
+
+ /**
+ * Represents a PostgreSQL Prepared object.
+ */
+ static class Prepared {
+
+ public Prepared (String name, String sql, PreparedStatement stmt, int[] paramType) {
+ this.name = name;
+ this.sql = sql;
+ this.stmt = stmt;
+ this.paramType = paramType;
+ }
+
+ /**
+ * The object name.
+ */
+ String name;
+
+ /**
+ * The SQL statement.
+ */
+ String sql;
+
+ /**
+ * The prepared statement.
+ */
+ PreparedStatement stmt;
+
+ /**
+ * The list of parameter types (if set).
+ */
+ int[] paramType;
+ }
+
+ /**
+ * Represents a PostgreSQL Portal object.
+ */
+ static class Portal {
+
+ public Portal(String name, String preparedName, String sql, PreparedStatement stmt, int[] resultColumnformat) {
+ this.name = name;
+ this.preparedName = preparedName;
+ this.sql = sql;
+ this.stmt = stmt;
+ this.resultColumnFormat = resultColumnformat;
+ }
+ /**
+ * The portal name.
+ */
+ String name;
+
+
+ String preparedName;
+
+ /**
+ * The SQL statement.
+ */
+ String sql;
+
+ /**
+ * The format used in the result set columns (if set).
+ */
+ int[] resultColumnFormat;
+
+ /**
+ * The prepared statement.
+ */
+ PreparedStatement stmt;
+ }
+
+
+}
Deleted: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml
===================================================================
--- trunk/test-integration/common/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-test-integration</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>test-integration-common</artifactId>
- <name>Common Integration Tests</name>
- <description>Common Integration tests that do not require external dependencies</description>
-
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml (from rev 2945, trunk/test-integration/common/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-test-integration</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>test-integration-common</artifactId>
+ <name>Common Integration Tests</name>
+ <description>Common Integration tests that do not require external dependencies</description>
+
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,250 +0,0 @@
-integer integer string integer short short integer boolean boolean boolean
-oid attrelid attname atttypid attlen attnum atttypmod attnotnull attisdropped atthasdef
-0 0 PART_ID 1043 4 1 4 false false false
-1 0 PART_NAME 1043 255 2 255 false false false
-2 0 PART_COLOR 1043 30 3 30 false false false
-3 0 PART_WEIGHT 1043 255 4 255 false false false
-4 1 SHIPPER_ID 21 0 1 0 false false false
-5 1 SHIPPER_NAME 1043 30 2 30 false false false
-6 2 STATUS_ID 21 0 1 0 false false false
-7 2 STATUS_NAME 1043 30 2 30 false false false
-8 3 SUPPLIER_ID 1043 10 1 10 false false false
-9 3 PART_ID 1043 4 2 4 false false false
-10 3 QUANTITY 21 0 3 0 false false false
-11 3 SHIPPER_ID 21 0 4 0 false false false
-12 4 SUPPLIER_ID 1043 10 1 10 false false false
-13 4 SUPPLIER_NAME 1043 30 2 30 false false false
-14 4 SUPPLIER_STATUS 21 0 3 0 false false false
-15 4 SUPPLIER_CITY 1043 30 4 30 false false false
-16 4 SUPPLIER_STATE 1043 2 5 2 false false false
-17 5 VDBName 1043 255 1 255 false false false
-18 5 SchemaName 1043 255 2 255 false false false
-19 5 Name 1043 255 3 255 false false false
-20 5 TargetSchemaName 1043 255 4 255 false false false
-21 5 TargetName 1043 4000 5 4000 false false false
-22 5 Valid 16 0 6 0 false false false
-23 5 LoadState 1043 255 7 255 false false false
-24 5 Updated 1114 0 8 0 false false false
-25 5 Cardinality <null> 10 9 10 false false false
-26 6 resourcePath 1043 255 1 255 false false false
-27 6 contents 14939 0 2 0 false false false
-28 7 VDBName 1043 255 1 255 false false false
-29 7 SchemaName 1043 255 2 255 false false false
-30 7 TableName 1043 255 3 255 false false false
-31 7 Name 1043 255 4 255 false false false
-32 7 Position <null> 10 5 10 false false false
-33 7 NameInSource 1043 255 6 255 false false false
-34 7 DataType 1043 100 7 100 false false false
-35 7 Scale <null> 10 8 10 false false false
-36 7 Length <null> 10 9 10 false false false
-37 7 IsLengthFixed 16 1 10 1 false false false
-38 7 SupportsSelect 16 1 11 1 false false false
-39 7 SupportsUpdates 16 1 12 1 false false false
-40 7 IsCaseSensitive 16 1 13 1 false false false
-41 7 IsSigned 16 1 14 1 false false false
-42 7 IsCurrency 16 1 15 1 false false false
-43 7 IsAutoIncremented 16 1 16 1 false false false
-44 7 NullType 1043 20 17 20 false false false
-45 7 MinRange 1043 50 18 50 false false false
-46 7 MaxRange 1043 50 19 50 false false false
-47 7 SearchType 1043 20 20 20 false false false
-48 7 Format 1043 255 21 255 false false false
-49 7 DefaultValue 1043 255 22 255 false false false
-50 7 JavaClass 1043 500 23 500 false false false
-51 7 Precision <null> 10 24 10 false false false
-52 7 CharOctetLength <null> 10 25 10 false false false
-53 7 Radix <null> 10 26 10 false false false
-54 7 UID 1043 50 27 50 false false false
-55 7 Description 1043 255 28 255 false false false
-56 7 OID <null> 10 29 10 false false false
-57 8 Name 1043 100 1 100 false false false
-58 8 IsStandard 16 1 2 1 false false false
-59 8 IsPhysical 16 1 3 1 false false false
-60 8 TypeName 1043 100 4 100 false false false
-61 8 JavaClass 1043 500 5 500 false false false
-62 8 Scale <null> 10 6 10 false false false
-63 8 TypeLength <null> 10 7 10 false false false
-64 8 NullType 1043 20 8 20 false false false
-65 8 IsSigned 16 1 9 1 false false false
-66 8 IsAutoIncremented 16 1 10 1 false false false
-67 8 IsCaseSensitive 16 1 11 1 false false false
-68 8 Precision <null> 10 12 10 false false false
-69 8 Radix <null> 10 13 10 false false false
-70 8 SearchType 1043 20 14 20 false false false
-71 8 UID 1043 50 15 50 false false false
-72 8 RuntimeType 1043 64 16 64 false false false
-73 8 BaseType 1043 64 17 64 false false false
-74 8 Description 1043 255 18 255 false false false
-75 8 OID <null> 10 19 10 false false false
-76 9 VDBName 1043 255 1 255 false false false
-77 9 SchemaName 1043 255 2 255 false false false
-78 9 TableName 1043 2048 3 2048 false false false
-79 9 Name 1043 255 4 255 false false false
-80 9 KeyName 1043 255 5 255 false false false
-81 9 KeyType 1043 20 6 20 false false false
-82 9 RefKeyUID 1043 50 7 50 false false false
-83 9 UID 1043 50 8 50 false false false
-84 9 Position <null> 10 9 10 false false false
-85 9 OID <null> 10 10 10 false false false
-86 10 VDBName 1043 255 1 255 false false false
-87 10 SchemaName 1043 255 2 255 false false false
-88 10 TableName 1043 2048 3 2048 false false false
-89 10 Name 1043 255 4 255 false false false
-90 10 Description 1043 255 5 255 false false false
-91 10 NameInSource 1043 255 6 255 false false false
-92 10 Type 1043 20 7 20 false false false
-93 10 IsIndexed 16 1 8 1 false false false
-94 10 RefKeyUID 1043 50 9 50 false false false
-95 10 UID 1043 50 10 50 false false false
-96 10 OID <null> 10 11 10 false false false
-97 11 VDBName 1043 255 1 255 false false false
-98 11 SchemaName 1043 255 2 255 false false false
-99 11 ProcedureName 1043 255 3 255 false false false
-100 11 Name 1043 255 4 255 false false false
-101 11 DataType 1043 25 5 25 false false false
-102 11 Position <null> 10 6 10 false false false
-103 11 Type 1043 100 7 100 false false false
-104 11 Optional 16 1 8 1 false false false
-105 11 Precision <null> 10 9 10 false false false
-106 11 TypeLength <null> 10 10 10 false false false
-107 11 Scale <null> 10 11 10 false false false
-108 11 Radix <null> 10 12 10 false false false
-109 11 NullType 1043 10 13 10 false false false
-110 11 UID 1043 50 14 50 false false false
-111 11 Description 1043 255 15 255 false false false
-112 11 OID <null> 10 16 10 false false false
-113 12 VDBName 1043 255 1 255 false false false
-114 12 SchemaName 1043 255 2 255 false false false
-115 12 Name 1043 255 3 255 false false false
-116 12 NameInSource 1043 255 4 255 false false false
-117 12 ReturnsResults 16 1 5 1 false false false
-118 12 UID 1043 50 6 50 false false false
-119 12 Description 1043 255 7 255 false false false
-120 12 OID <null> 10 8 10 false false false
-121 13 Name 1043 255 1 255 false false false
-122 13 Value 1043 255 2 255 false false false
-123 13 UID 1043 50 3 50 false false false
-124 13 OID <null> 10 4 10 false false false
-125 14 PKTABLE_CAT 1043 255 1 255 false false false
-126 14 PKTABLE_SCHEM 1043 255 2 255 false false false
-127 14 PKTABLE_NAME 1043 255 3 255 false false false
-128 14 PKCOLUMN_NAME 1043 255 4 255 false false false
-129 14 FKTABLE_CAT 1043 255 5 255 false false false
-130 14 FKTABLE_SCHEM 1043 255 6 255 false false false
-131 14 FKTABLE_NAME 1043 255 7 255 false false false
-132 14 FKCOLUMN_NAME 1043 255 8 255 false false false
-133 14 KEY_SEQ 21 5 9 5 false false false
-134 14 UPDATE_RULE <null> 10 10 10 false false false
-135 14 DELETE_RULE <null> 10 11 10 false false false
-136 14 FK_NAME 1043 255 12 255 false false false
-137 14 PK_NAME 1043 255 13 255 false false false
-138 14 DEFERRABILITY <null> 10 14 10 false false false
-139 15 VDBName 1043 255 1 255 false false false
-140 15 Name 1043 255 2 255 false false false
-141 15 IsPhysical 16 1 3 1 false false false
-142 15 UID 1043 50 4 50 false false false
-143 15 Description 1043 255 5 255 false false false
-144 15 PrimaryMetamodelURI 1043 255 6 255 false false false
-145 15 OID <null> 10 7 10 false false false
-146 16 VDBName 1043 255 1 255 false false false
-147 16 SchemaName 1043 255 2 255 false false false
-148 16 Name 1043 255 3 255 false false false
-149 16 Type 1043 20 4 20 false false false
-150 16 NameInSource 1043 255 5 255 false false false
-151 16 IsPhysical 16 1 6 1 false false false
-152 16 SupportsUpdates 16 1 7 1 false false false
-153 16 UID 1043 50 8 50 false false false
-154 16 Cardinality <null> 10 9 10 false false false
-155 16 Description 1043 255 10 255 false false false
-156 16 IsSystem 16 1 11 1 false false false
-157 16 IsMaterialized 16 0 12 0 false false false
-158 16 OID <null> 10 13 10 false false false
-159 17 Name 1043 255 1 255 false false false
-160 17 Version 1043 50 2 50 false false false
-161 18 oid <null> 0 1 0 false false false
-162 18 nspname 1043 0 2 0 false false false
-163 19 oid <null> 0 1 0 false false false
-164 19 relname 1043 0 2 0 false false false
-165 19 relnamespace <null> 0 3 0 false false false
-166 19 relkind 1042 0 4 0 false false false
-167 19 relam <null> 0 5 0 false false false
-168 19 reltuples 700 0 6 0 false false false
-169 19 relpages <null> 0 7 0 false false false
-170 19 relhasrules 16 0 8 0 false false false
-171 19 relhasoids 1043 0 9 0 false false false
-172 20 oid <null> 0 1 0 false false false
-173 20 attrelid <null> 0 2 0 false false false
-174 20 attname 1043 0 3 0 false false false
-175 20 atttypid <null> 0 4 0 false false false
-176 20 attlen 21 0 5 0 false false false
-177 20 attnum 21 0 6 0 false false false
-178 20 atttypmod <null> 0 7 0 false false false
-179 20 attnotnull 16 0 8 0 false false false
-180 20 attisdropped 16 0 9 0 false false false
-181 20 atthasdef 16 0 10 0 false false false
-182 21 oid <null> 0 1 0 false false false
-183 21 typname 1043 0 2 0 false false false
-184 21 typnamespace <null> 0 3 0 false false false
-185 21 typlen 21 0 4 0 false false false
-186 21 typtype 1042 0 5 0 false false false
-187 21 typbasetype <null> 0 6 0 false false false
-188 21 typtypmod <null> 0 7 0 false false false
-189 21 typrelid <null> 0 8 0 false false false
-190 22 oid <null> 0 1 0 false false false
-191 22 indexrelid <null> 0 2 0 false false false
-192 22 indrelid <null> 0 3 0 false false false
-193 22 indisclustered 16 0 4 0 false false false
-194 22 indisunique 16 0 5 0 false false false
-195 22 indisprimary 16 0 6 0 false false false
-196 22 indexprs 1043 0 7 0 false false false
-197 22 indkey 1043 0 8 0 false false false
-198 23 oid <null> 0 1 0 false false false
-199 23 amname 1043 0 2 0 false false false
-200 24 oid <null> 0 1 0 false false false
-201 24 proname 1043 0 2 0 false false false
-202 24 proretset 16 0 3 0 false false false
-203 24 prorettype <null> 0 4 0 false false false
-204 24 pronargs 21 0 5 0 false false false
-205 24 proargtypes <null> 0 6 0 false false false
-206 24 proargnames <null> 0 7 0 false false false
-207 24 proargmodes <null> 0 8 0 false false false
-208 24 proallargtypes <null> 0 9 0 false false false
-209 24 pronamespace <null> 0 10 0 false false false
-210 25 oid <null> 0 1 0 false false false
-211 25 tgconstrrelid <null> 0 2 0 false false false
-212 25 tgfoid <null> 0 3 0 false false false
-213 25 tgargs <null> 0 4 0 false false false
-214 25 tgnargs <null> 0 5 0 false false false
-215 25 tgdeferrable 16 0 6 0 false false false
-216 25 tginitdeferred 16 0 7 0 false false false
-217 25 tgconstrname 1043 0 8 0 false false false
-218 25 tgrelid <null> 0 9 0 false false false
-219 26 oid <null> 0 1 0 false false false
-220 26 adsrc <null> 0 2 0 false false false
-221 26 adrelid <null> 0 3 0 false false false
-222 26 adnum <null> 0 4 0 false false false
-223 27 oid <null> 0 1 0 false false false
-224 27 datname 1043 0 2 0 false false false
-225 27 encoding <null> 0 3 0 false false false
-226 27 datlastsysoid <null> 0 4 0 false false false
-227 27 datallowconn 1042 0 5 0 false false false
-228 27 datconfig <null> 0 6 0 false false false
-229 27 datacl <null> 0 7 0 false false false
-230 27 datdba <null> 0 8 0 false false false
-231 27 dattablespace <null> 0 9 0 false false false
-232 28 oid <null> 0 1 0 false false false
-233 28 usename 1043 0 2 0 false false false
-234 28 usecreatedb 16 0 3 0 false false false
-235 28 usesuper 16 0 4 0 false false false
-Row Count : 236
-getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
-oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
-attrelid 4 PartsSupplier java.lang.Integer attrelid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
-attname 12 PartsSupplier java.lang.String attname string pg_catalog pg_attribute 4000 4000 0 false false false false 2 true true false false
-atttypid 4 PartsSupplier java.lang.Integer atttypid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
-attlen 5 PartsSupplier java.lang.Short attlen short pg_catalog pg_attribute 6 5 0 false false false false 2 true true false false
-attnum 5 PartsSupplier java.lang.Short attnum short pg_catalog pg_attribute 6 5 0 false false false false 2 true true false false
-atttypmod 4 PartsSupplier java.lang.Integer atttypmod integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
-attnotnull -7 PartsSupplier java.lang.Boolean attnotnull boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
-attisdropped -7 PartsSupplier java.lang.Boolean attisdropped boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
-atthasdef -7 PartsSupplier java.lang.Boolean atthasdef boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
Copied: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected (from rev 2943, trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,250 @@
+integer integer string integer short short integer boolean boolean boolean
+oid attrelid attname atttypid attlen attnum atttypmod attnotnull attisdropped atthasdef
+0 0 PART_ID 1043 -1 1 4 false false false
+1 0 PART_NAME 1043 -1 2 255 false false false
+2 0 PART_COLOR 1043 -1 3 30 false false false
+3 0 PART_WEIGHT 1043 -1 4 255 false false false
+4 1 SHIPPER_ID 21 2 1 0 false false false
+5 1 SHIPPER_NAME 1043 -1 2 30 false false false
+6 2 STATUS_ID 21 2 1 0 false false false
+7 2 STATUS_NAME 1043 -1 2 30 false false false
+8 3 SUPPLIER_ID 1043 -1 1 10 false false false
+9 3 PART_ID 1043 -1 2 4 false false false
+10 3 QUANTITY 21 2 3 0 false false false
+11 3 SHIPPER_ID 21 2 4 0 false false false
+12 4 SUPPLIER_ID 1043 -1 1 10 false false false
+13 4 SUPPLIER_NAME 1043 -1 2 30 false false false
+14 4 SUPPLIER_STATUS 21 2 3 0 false false false
+15 4 SUPPLIER_CITY 1043 -1 4 30 false false false
+16 4 SUPPLIER_STATE 1043 -1 5 2 false false false
+17 5 VDBName 1043 -1 1 255 false false false
+18 5 SchemaName 1043 -1 2 255 false false false
+19 5 Name 1043 -1 3 255 false false false
+20 5 TargetSchemaName 1043 -1 4 255 false false false
+21 5 TargetName 1043 -1 5 4000 false false false
+22 5 Valid 16 1 6 0 false false false
+23 5 LoadState 1043 -1 7 255 false false false
+24 5 Updated 1114 8 8 0 false false false
+25 5 Cardinality 23 4 9 10 false false false
+26 6 resourcePath 1043 -1 1 255 false false false
+27 6 contents 14939 -1 2 0 false false false
+28 7 VDBName 1043 -1 1 255 false false false
+29 7 SchemaName 1043 -1 2 255 false false false
+30 7 TableName 1043 -1 3 255 false false false
+31 7 Name 1043 -1 4 255 false false false
+32 7 Position 23 4 5 10 false false false
+33 7 NameInSource 1043 -1 6 255 false false false
+34 7 DataType 1043 -1 7 100 false false false
+35 7 Scale 23 4 8 10 false false false
+36 7 Length 23 4 9 10 false false false
+37 7 IsLengthFixed 16 1 10 1 false false false
+38 7 SupportsSelect 16 1 11 1 false false false
+39 7 SupportsUpdates 16 1 12 1 false false false
+40 7 IsCaseSensitive 16 1 13 1 false false false
+41 7 IsSigned 16 1 14 1 false false false
+42 7 IsCurrency 16 1 15 1 false false false
+43 7 IsAutoIncremented 16 1 16 1 false false false
+44 7 NullType 1043 -1 17 20 false false false
+45 7 MinRange 1043 -1 18 50 false false false
+46 7 MaxRange 1043 -1 19 50 false false false
+47 7 SearchType 1043 -1 20 20 false false false
+48 7 Format 1043 -1 21 255 false false false
+49 7 DefaultValue 1043 -1 22 255 false false false
+50 7 JavaClass 1043 -1 23 500 false false false
+51 7 Precision 23 4 24 10 false false false
+52 7 CharOctetLength 23 4 25 10 false false false
+53 7 Radix 23 4 26 10 false false false
+54 7 UID 1043 -1 27 50 false false false
+55 7 Description 1043 -1 28 255 false false false
+56 7 OID 23 4 29 10 false false false
+57 8 Name 1043 -1 1 100 false false false
+58 8 IsStandard 16 1 2 1 false false false
+59 8 IsPhysical 16 1 3 1 false false false
+60 8 TypeName 1043 -1 4 100 false false false
+61 8 JavaClass 1043 -1 5 500 false false false
+62 8 Scale 23 4 6 10 false false false
+63 8 TypeLength 23 4 7 10 false false false
+64 8 NullType 1043 -1 8 20 false false false
+65 8 IsSigned 16 1 9 1 false false false
+66 8 IsAutoIncremented 16 1 10 1 false false false
+67 8 IsCaseSensitive 16 1 11 1 false false false
+68 8 Precision 23 4 12 10 false false false
+69 8 Radix 23 4 13 10 false false false
+70 8 SearchType 1043 -1 14 20 false false false
+71 8 UID 1043 -1 15 50 false false false
+72 8 RuntimeType 1043 -1 16 64 false false false
+73 8 BaseType 1043 -1 17 64 false false false
+74 8 Description 1043 -1 18 255 false false false
+75 8 OID 23 4 19 10 false false false
+76 9 VDBName 1043 -1 1 255 false false false
+77 9 SchemaName 1043 -1 2 255 false false false
+78 9 TableName 1043 -1 3 2048 false false false
+79 9 Name 1043 -1 4 255 false false false
+80 9 KeyName 1043 -1 5 255 false false false
+81 9 KeyType 1043 -1 6 20 false false false
+82 9 RefKeyUID 1043 -1 7 50 false false false
+83 9 UID 1043 -1 8 50 false false false
+84 9 Position 23 4 9 10 false false false
+85 9 OID 23 4 10 10 false false false
+86 10 VDBName 1043 -1 1 255 false false false
+87 10 SchemaName 1043 -1 2 255 false false false
+88 10 TableName 1043 -1 3 2048 false false false
+89 10 Name 1043 -1 4 255 false false false
+90 10 Description 1043 -1 5 255 false false false
+91 10 NameInSource 1043 -1 6 255 false false false
+92 10 Type 1043 -1 7 20 false false false
+93 10 IsIndexed 16 1 8 1 false false false
+94 10 RefKeyUID 1043 -1 9 50 false false false
+95 10 UID 1043 -1 10 50 false false false
+96 10 OID 23 4 11 10 false false false
+97 11 VDBName 1043 -1 1 255 false false false
+98 11 SchemaName 1043 -1 2 255 false false false
+99 11 ProcedureName 1043 -1 3 255 false false false
+100 11 Name 1043 -1 4 255 false false false
+101 11 DataType 1043 -1 5 25 false false false
+102 11 Position 23 4 6 10 false false false
+103 11 Type 1043 -1 7 100 false false false
+104 11 Optional 16 1 8 1 false false false
+105 11 Precision 23 4 9 10 false false false
+106 11 TypeLength 23 4 10 10 false false false
+107 11 Scale 23 4 11 10 false false false
+108 11 Radix 23 4 12 10 false false false
+109 11 NullType 1043 -1 13 10 false false false
+110 11 UID 1043 -1 14 50 false false false
+111 11 Description 1043 -1 15 255 false false false
+112 11 OID 23 4 16 10 false false false
+113 12 VDBName 1043 -1 1 255 false false false
+114 12 SchemaName 1043 -1 2 255 false false false
+115 12 Name 1043 -1 3 255 false false false
+116 12 NameInSource 1043 -1 4 255 false false false
+117 12 ReturnsResults 16 1 5 1 false false false
+118 12 UID 1043 -1 6 50 false false false
+119 12 Description 1043 -1 7 255 false false false
+120 12 OID 23 4 8 10 false false false
+121 13 Name 1043 -1 1 255 false false false
+122 13 Value 1043 -1 2 255 false false false
+123 13 UID 1043 -1 3 50 false false false
+124 13 OID 23 4 4 10 false false false
+125 14 PKTABLE_CAT 1043 -1 1 255 false false false
+126 14 PKTABLE_SCHEM 1043 -1 2 255 false false false
+127 14 PKTABLE_NAME 1043 -1 3 255 false false false
+128 14 PKCOLUMN_NAME 1043 -1 4 255 false false false
+129 14 FKTABLE_CAT 1043 -1 5 255 false false false
+130 14 FKTABLE_SCHEM 1043 -1 6 255 false false false
+131 14 FKTABLE_NAME 1043 -1 7 255 false false false
+132 14 FKCOLUMN_NAME 1043 -1 8 255 false false false
+133 14 KEY_SEQ 21 2 9 5 false false false
+134 14 UPDATE_RULE 23 4 10 10 false false false
+135 14 DELETE_RULE 23 4 11 10 false false false
+136 14 FK_NAME 1043 -1 12 255 false false false
+137 14 PK_NAME 1043 -1 13 255 false false false
+138 14 DEFERRABILITY 23 4 14 10 false false false
+139 15 VDBName 1043 -1 1 255 false false false
+140 15 Name 1043 -1 2 255 false false false
+141 15 IsPhysical 16 1 3 1 false false false
+142 15 UID 1043 -1 4 50 false false false
+143 15 Description 1043 -1 5 255 false false false
+144 15 PrimaryMetamodelURI 1043 -1 6 255 false false false
+145 15 OID 23 4 7 10 false false false
+146 16 VDBName 1043 -1 1 255 false false false
+147 16 SchemaName 1043 -1 2 255 false false false
+148 16 Name 1043 -1 3 255 false false false
+149 16 Type 1043 -1 4 20 false false false
+150 16 NameInSource 1043 -1 5 255 false false false
+151 16 IsPhysical 16 1 6 1 false false false
+152 16 SupportsUpdates 16 1 7 1 false false false
+153 16 UID 1043 -1 8 50 false false false
+154 16 Cardinality 23 4 9 10 false false false
+155 16 Description 1043 -1 10 255 false false false
+156 16 IsSystem 16 1 11 1 false false false
+157 16 IsMaterialized 16 1 12 0 false false false
+158 16 OID 23 4 13 10 false false false
+159 17 Name 1043 -1 1 255 false false false
+160 17 Version 1043 -1 2 50 false false false
+161 18 oid 23 4 1 0 false false false
+162 18 nspname 1043 -1 2 0 false false false
+163 19 oid 23 4 1 0 false false false
+164 19 relname 1043 -1 2 0 false false false
+165 19 relnamespace 23 4 3 0 false false false
+166 19 relkind 1042 1 4 0 false false false
+167 19 relam 23 4 5 0 false false false
+168 19 reltuples 700 4 6 0 false false false
+169 19 relpages 23 4 7 0 false false false
+170 19 relhasrules 16 1 8 0 false false false
+171 19 relhasoids 1043 -1 9 0 false false false
+172 20 oid 23 4 1 0 false false false
+173 20 attrelid 23 4 2 0 false false false
+174 20 attname 1043 -1 3 0 false false false
+175 20 atttypid 23 4 4 0 false false false
+176 20 attlen 21 2 5 0 false false false
+177 20 attnum 21 2 6 0 false false false
+178 20 atttypmod 23 4 7 0 false false false
+179 20 attnotnull 16 1 8 0 false false false
+180 20 attisdropped 16 1 9 0 false false false
+181 20 atthasdef 16 1 10 0 false false false
+182 21 oid 23 4 1 0 false false false
+183 21 typname 1043 -1 2 0 false false false
+184 21 typnamespace 23 4 3 0 false false false
+185 21 typlen 21 2 4 0 false false false
+186 21 typtype 1042 1 5 0 false false false
+187 21 typbasetype 23 4 6 0 false false false
+188 21 typtypmod 23 4 7 0 false false false
+189 21 typrelid 23 4 8 0 false false false
+190 22 oid 23 4 1 0 false false false
+191 22 indexrelid 23 4 2 0 false false false
+192 22 indrelid 23 4 3 0 false false false
+193 22 indisclustered 16 1 4 0 false false false
+194 22 indisunique 16 1 5 0 false false false
+195 22 indisprimary 16 1 6 0 false false false
+196 22 indexprs 1043 -1 7 0 false false false
+197 22 indkey 1043 -1 8 0 false false false
+198 23 oid 23 4 1 0 false false false
+199 23 amname 1043 -1 2 0 false false false
+200 24 oid 23 4 1 0 false false false
+201 24 proname 1043 -1 2 0 false false false
+202 24 proretset 16 1 3 0 false false false
+203 24 prorettype 23 4 4 0 false false false
+204 24 pronargs 21 2 5 0 false false false
+205 24 proargtypes <null> <null> 6 0 false false false
+206 24 proargnames <null> <null> 7 0 false false false
+207 24 proargmodes <null> <null> 8 0 false false false
+208 24 proallargtypes <null> <null> 9 0 false false false
+209 24 pronamespace 23 4 10 0 false false false
+210 25 oid 23 4 1 0 false false false
+211 25 tgconstrrelid 23 4 2 0 false false false
+212 25 tgfoid 23 4 3 0 false false false
+213 25 tgargs 23 4 4 0 false false false
+214 25 tgnargs 23 4 5 0 false false false
+215 25 tgdeferrable 16 1 6 0 false false false
+216 25 tginitdeferred 16 1 7 0 false false false
+217 25 tgconstrname 1043 -1 8 0 false false false
+218 25 tgrelid 23 4 9 0 false false false
+219 26 oid 23 4 1 0 false false false
+220 26 adsrc 23 4 2 0 false false false
+221 26 adrelid 23 4 3 0 false false false
+222 26 adnum 23 4 4 0 false false false
+223 27 oid 23 4 1 0 false false false
+224 27 datname 1043 -1 2 0 false false false
+225 27 encoding 23 4 3 0 false false false
+226 27 datlastsysoid 23 4 4 0 false false false
+227 27 datallowconn 1042 1 5 0 false false false
+228 27 datconfig <null> <null> 6 0 false false false
+229 27 datacl <null> <null> 7 0 false false false
+230 27 datdba 23 4 8 0 false false false
+231 27 dattablespace 23 4 9 0 false false false
+232 28 oid 23 4 1 0 false false false
+233 28 usename 1043 -1 2 0 false false false
+234 28 usecreatedb 16 1 3 0 false false false
+235 28 usesuper 16 1 4 0 false false false
+Row Count : 236
+getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
+oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
+attrelid 4 PartsSupplier java.lang.Integer attrelid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
+attname 12 PartsSupplier java.lang.String attname string pg_catalog pg_attribute 4000 4000 0 false false false false 2 true true false false
+atttypid 4 PartsSupplier java.lang.Integer atttypid integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
+attlen 5 PartsSupplier java.lang.Short attlen short pg_catalog pg_attribute 6 5 0 false false false false 2 true true false false
+attnum 5 PartsSupplier java.lang.Short attnum short pg_catalog pg_attribute 6 5 0 false false false false 2 true true false false
+atttypmod 4 PartsSupplier java.lang.Integer atttypmod integer pg_catalog pg_attribute 11 10 0 false false false false 2 true true false false
+attnotnull -7 PartsSupplier java.lang.Boolean attnotnull boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
+attisdropped -7 PartsSupplier java.lang.Boolean attisdropped boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
+atthasdef -7 PartsSupplier java.lang.Boolean atthasdef boolean pg_catalog pg_attribute 5 1 0 false false false false 2 true true false false
Deleted: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,28 +0,0 @@
-integer string integer short char integer integer integer
-oid typname typnamespace typlen typtype typbasetype typtypmod typrelid
-16 boolean 2 1 b 0 -1 0
-20 long 2 8 b 0 -1 0
-21 short 2 2 b 0 -1 0
-23 int 2 4 b 0 -1 0
-25 text 2 -1 b 0 -1 0
-26 oid 2 4 b 0 -1 0
-142 xml 2 -1 b 0 -1 0
-700 float 2 4 b 0 -1 0
-701 double 2 8 b 0 -1 0
-1042 char 2 1 b 0 -1 0
-1043 string 2 -1 b 0 -1 0
-1082 date 2 4 b 0 -1 0
-1083 datetime 2 8 b 0 -1 0
-1114 timestamp 2 8 b 0 -1 0
-1700 decimal 2 -1 b 0 -1 0
-14939 lo 2 -1 b 0 -1 0
-Row Count : 16
-getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
-oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
-typname 12 PartsSupplier java.lang.String typname string pg_catalog pg_type 4000 4000 0 false false false false 2 true true false false
-typnamespace 4 PartsSupplier java.lang.Integer typnamespace integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
-typlen 5 PartsSupplier java.lang.Short typlen short pg_catalog pg_type 6 5 0 false false false false 2 true true false false
-typtype 1 PartsSupplier java.lang.String typtype char pg_catalog pg_type 1 1 0 false false false false 2 true true false false
-typbasetype 4 PartsSupplier java.lang.Integer typbasetype integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
-typtypmod 4 PartsSupplier java.lang.Integer typtypmod integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
-typrelid 4 PartsSupplier java.lang.Integer typrelid integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
Copied: tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected (from rev 2943, trunk/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,28 @@
+integer string integer short char integer integer integer
+oid typname typnamespace typlen typtype typbasetype typtypmod typrelid
+16 boolean 2 1 b 0 -1 0
+20 long 2 8 b 0 -1 0
+21 short 2 2 b 0 -1 0
+23 integer 2 4 b 0 -1 0
+25 text 2 -1 b 0 -1 0
+26 oid 2 4 b 0 -1 0
+142 xml 2 -1 b 0 -1 0
+700 float 2 4 b 0 -1 0
+701 double 2 8 b 0 -1 0
+1042 char 2 1 b 0 -1 0
+1043 string 2 -1 b 0 -1 0
+1082 date 2 4 b 0 -1 0
+1083 datetime 2 8 b 0 -1 0
+1114 timestamp 2 8 b 0 -1 0
+1700 decimal 2 -1 b 0 -1 0
+14939 lo 2 -1 b 0 -1 0
+Row Count : 16
+getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
+oid 4 PartsSupplier java.lang.Integer oid integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
+typname 12 PartsSupplier java.lang.String typname string pg_catalog pg_type 4000 4000 0 false false false false 2 true true false false
+typnamespace 4 PartsSupplier java.lang.Integer typnamespace integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
+typlen 5 PartsSupplier java.lang.Short typlen short pg_catalog pg_type 6 5 0 false false false false 2 true true false false
+typtype 1 PartsSupplier java.lang.String typtype char pg_catalog pg_type 1 1 0 false false false false 2 true true false false
+typbasetype 4 PartsSupplier java.lang.Integer typbasetype integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
+typtypmod 4 PartsSupplier java.lang.Integer typtypmod integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
+typrelid 4 PartsSupplier java.lang.Integer typrelid integer pg_catalog pg_type 11 10 0 false false false false 2 true true false false
Deleted: tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml
===================================================================
--- trunk/test-integration/db/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,537 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-<!--
- The database dependent tests are meant to be run on their own, not as part of the continous or nightly
- build for Teiid.
--->
-
- <parent>
- <artifactId>teiid-test-integration</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>test-integration-db</artifactId>
-
- <name>DB Dependent Integration Tests</name>
- <groupId>org.jboss.teiid.teiid-test-integration</groupId>
- <description>Integration tests that require external database dependencies </description>
- <dependencies>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.4</version>
- </dependency>
-
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- <version>1.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <type>test-jar</type>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- <scope>compile</scope>
- </dependency>
-
-
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>test-integration-common</artifactId>
- <type>test-jar</type>
- <scope>compile</scope>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>1.7.0</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant-launcher</artifactId>
- <version>1.7.0</version>
- </dependency>
- <dependency>
- <groupId>ant-contrib</groupId>
- <artifactId>ant-contrib</artifactId>
- <version>1.0b3</version>
- <exclusions>
- <exclusion>
- <groupId>ant</groupId>
- <artifactId>ant</artifactId>
- </exclusion>
- </exclusions>
-
- </dependency>
-
- <dependency>
- <groupId>ant-contrib</groupId>
- <artifactId>cpptasks</artifactId>
- <version>1.0b3</version>
- <exclusions>
- <exclusion>
- <groupId>ant</groupId>
- <artifactId>ant</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
-
- <!-- DBUnit dependencies -->
-
- <dependency>
- <groupId>org.dbunit</groupId>
- <artifactId>dbunit</artifactId>
- <version>2.2</version>
- </dependency>
-
- <dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.5.6</version>
- </dependency>
-
-
- <dependency>
- <groupId>org.apache.poi</groupId>
- <artifactId>poi</artifactId>
- <version>3.2-FINAL</version>
- </dependency>
-
- <dependency>
- <groupId>jdom</groupId>
- <artifactId>jdom</artifactId>
- <version>1.0</version>
- </dependency>
-
- <dependency>
- <groupId>postgresql</groupId>
- <artifactId>postgresql</artifactId>
- <version>${postgresql.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <version>${derby.version}</version>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>${mysql.connector.version}</version>
- </dependency>
-
- </dependencies>
-
- <profiles>
- <profile>
- <id>default</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
-
- <build>
- <plugins>
- <!-- Specify the compiler options and settings -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.6</source>
- <target>1.6</target>
- <showDeprecation>false</showDeprecation>
- <showWarnings>false</showWarnings>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
-
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>src/assembly/binaries.xml</descriptor>
- </descriptors>
- <outputDirectory>target/distribution</outputDirectory>
- <workDirectory>target/assembly/work</workDirectory>
- </configuration>
- <executions>
- <execution>
- <id>make-assembly</id>
- <phase>package</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
-
-
- <profile>
- <id>runalltests</id>
- <build>
- <plugins>
-
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <additionalClasspathElements>
- <additionalClasspathElement>${basedir}/lib/ojdbc6.jar</additionalClasspathElement>
- <additionalClasspathElement>${basedir}/lib/sqljdbc4.jar</additionalClasspathElement>
- <additionalClasspathElement>${basedir}/lib/db2jcc4.jar</additionalClasspathElement>
-
- </additionalClasspathElements>
- <systemProperties>
- <property>
- <name>usedatasources</name>
- <value>${usedatasources}</value>
- </property>
- <property>
- <name>datasourceloc</name>
- <value>${datasourceloc}</value>
- </property>
- </systemProperties>
-
-<!--
-<forkMode>always</forkMode>
- <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
- -->
- <includes>
- <!-- <include>**/*TestCase.java</include> -->
- <include>**/*Test.java</include>
- <include>**/*Tests.java</include>
- <include>**/Test*.java</include>
- </includes>
- <excludes>
- <exclude>**/*Abstract*TestCase.java</exclude>
- <exclude>**/*Abstract*Test.java</exclude>
- <!-- hack to prevent anonymous inner classes in Tests from being run as tests -->
- <exclude>**/Test*$*.java</exclude>
- </excludes>
-
- </configuration>
- </plugin>
-
- </plugins>
-
- </build>
-
-<!-- <version>2.4.2</version> -->
-
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-report-plugin</artifactId>
-
- <configuration>
- <outputDirectory>${basedir}/target/newsite</outputDirectory>
- </configuration>
- </plugin>
- </plugins>
- </reporting>
- </profile>
-
- <profile>
- <id>runsingletest</id>
- <activation>
- <property>
- <name>classname</name>
- </property>
- </activation>
- <build>
- <plugins>
-
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <additionalClasspathElements>
- <additionalClasspathElement>${basedir}/lib/ojdbc6.jar</additionalClasspathElement>
- <additionalClasspathElement>${basedir}/lib/sqljdbc4.jar</additionalClasspathElement>
- <additionalClasspathElement>${basedir}/lib/db2jcc4.jar</additionalClasspathElement>
- </additionalClasspathElements>
- <systemProperties>
- <property>
- <name>usedatasources</name>
- <value>${usedatasources}</value>
- </property>
- <property>
- <name>datasourceloc</name>
- <value>${datasourceloc}</value>
- </property>
- </systemProperties>
-
-<!--
- <forkMode>always</forkMode>
-
- <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
- -->
- <includes>
- <include>**/${classname}.java</include>
- </includes>
-
- </configuration>
- </plugin>
-
- </plugins>
- </build>
- </profile>
-
-
- <profile>
- <id>setupdatasources</id>
- <build>
- <plugins>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>${apache.ant.version}</version>
- </dependency>
- </dependencies>
- <configuration>
- </configuration>
- <executions>
- <execution>
- <id>setupalldatasources</id>
- <phase>pre-integration-test</phase>
- <configuration>
- <tasks>
- <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
- <property name="relative.resources.dir" value="src/main/resources" />
- <property name="datasourceloc" value="${datasourceloc}" />
- <ant antfile="src/main/resources/ddl/manage_schemas.xml" />
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
-
- </plugins>
- </build>
- </profile>
- <profile>
- <id>singledatasource</id>
- <activation>
- <property>
- <name>datasource</name>
- </property>
- </activation>
- <build>
- <plugins>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>${apache.ant.version}</version>
- </dependency>
- </dependencies>
- <configuration>
-
- </configuration>
- <executions>
- <execution>
- <id>setupsingledatasource</id>
- <phase>pre-integration-test</phase>
- <configuration>
- <tasks>
-
- <property name="single" value="${datasource}" />
- <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
- <property name="datasourceloc" value="${datasourceloc}" />
-
- <property name="relative.resources.dir" value="src/main/resources" />
- <ant antfile="src/main/resources/ddl/manage_schemas.xml" />
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
-
- </plugins>
- </build>
- </profile>
-
-
- <profile>
- <id>runclienttests</id>
- <activation>
- <property>
- <name>scenario.dir</name>
- </property>
- </activation>
- <build>
- <plugins>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.apache.ant</groupId>
- <artifactId>ant</artifactId>
- <version>${apache.ant.version}</version>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <id>run-client-test</id>
- <phase>integration-test</phase>
- <configuration>
- <tasks>
-
- <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
- <property name="scenario.dir" value="${scenario.dir}" />
- <property name="queryset.artifacts.dir" value="${queryset.artifacts.dir}" />
- <property name="vdb.artifacts.dir" value="${vdb.artifacts.dir}" />
- <!-- optional properties -->
- <property name="config.file" value="${config.file}" />
- <property name="query.scenario.classname" value="${query.scenario.classname}" />
- <property name="proj.dir" value="${project.basedir}/target/" />
- <property name="usedatasources" value="${usedatasources}" />
- <property name="datasourceloc" value="${datasourceloc}" />
-
- <ant antfile="src/main/resources/ctc_tests/ctc.xml" />
-
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
-
- </executions>
- </plugin>
- </plugins>
- </build>
-
- </profile>
-
- <profile>
- <id>assemble</id>
-<!-- assemble will compile, but not run the tests prior to assemblying the kit -->
-
- <build>
- <plugins>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
-
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>src/assembly/binaries.xml</descriptor>
- </descriptors>
- <outputDirectory>target/distribution</outputDirectory>
- <workDirectory>target/work/assembly</workDirectory>
-
- </configuration>
- <executions>
-
- <execution>
- <id>make-assembly</id>
- <phase>package</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- </plugins>
- </build>
- </profile>
-
- </profiles>
-
-
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml (from rev 2945, trunk/test-integration/db/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/db/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,537 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!--
+ The database dependent tests are meant to be run on their own, not as part of the continous or nightly
+ build for Teiid.
+-->
+
+ <parent>
+ <artifactId>teiid-test-integration</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>test-integration-db</artifactId>
+
+ <name>DB Dependent Integration Tests</name>
+ <groupId>org.jboss.teiid.teiid-test-integration</groupId>
+ <description>Integration tests that require external database dependencies </description>
+ <dependencies>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ <version>1.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <type>test-jar</type>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ <scope>compile</scope>
+ </dependency>
+
+
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>test-integration-common</artifactId>
+ <type>test-jar</type>
+ <scope>compile</scope>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>1.7.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant-launcher</artifactId>
+ <version>1.7.0</version>
+ </dependency>
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+
+ </dependency>
+
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>cpptasks</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+
+ <!-- DBUnit dependencies -->
+
+ <dependency>
+ <groupId>org.dbunit</groupId>
+ <artifactId>dbunit</artifactId>
+ <version>2.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.2.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.5.6</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi</artifactId>
+ <version>3.2-FINAL</version>
+ </dependency>
+
+ <dependency>
+ <groupId>jdom</groupId>
+ <artifactId>jdom</artifactId>
+ <version>1.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ <version>${postgresql.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>${derby.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>${mysql.connector.version}</version>
+ </dependency>
+
+ </dependencies>
+
+ <profiles>
+ <profile>
+ <id>default</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+
+ <build>
+ <plugins>
+ <!-- Specify the compiler options and settings -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ <showDeprecation>false</showDeprecation>
+ <showWarnings>false</showWarnings>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assembly/binaries.xml</descriptor>
+ </descriptors>
+ <outputDirectory>target/distribution</outputDirectory>
+ <workDirectory>target/assembly/work</workDirectory>
+ </configuration>
+ <executions>
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+
+ <profile>
+ <id>runalltests</id>
+ <build>
+ <plugins>
+
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${basedir}/lib/ojdbc6.jar</additionalClasspathElement>
+ <additionalClasspathElement>${basedir}/lib/sqljdbc4.jar</additionalClasspathElement>
+ <additionalClasspathElement>${basedir}/lib/db2jcc4.jar</additionalClasspathElement>
+
+ </additionalClasspathElements>
+ <systemProperties>
+ <property>
+ <name>usedatasources</name>
+ <value>${usedatasources}</value>
+ </property>
+ <property>
+ <name>datasourceloc</name>
+ <value>${datasourceloc}</value>
+ </property>
+ </systemProperties>
+
+<!--
+<forkMode>always</forkMode>
+ <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
+ -->
+ <includes>
+ <!-- <include>**/*TestCase.java</include> -->
+ <include>**/*Test.java</include>
+ <include>**/*Tests.java</include>
+ <include>**/Test*.java</include>
+ </includes>
+ <excludes>
+ <exclude>**/*Abstract*TestCase.java</exclude>
+ <exclude>**/*Abstract*Test.java</exclude>
+ <!-- hack to prevent anonymous inner classes in Tests from being run as tests -->
+ <exclude>**/Test*$*.java</exclude>
+ </excludes>
+
+ </configuration>
+ </plugin>
+
+ </plugins>
+
+ </build>
+
+<!-- <version>2.4.2</version> -->
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+
+ <configuration>
+ <outputDirectory>${basedir}/target/newsite</outputDirectory>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+ </profile>
+
+ <profile>
+ <id>runsingletest</id>
+ <activation>
+ <property>
+ <name>classname</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${basedir}/lib/ojdbc6.jar</additionalClasspathElement>
+ <additionalClasspathElement>${basedir}/lib/sqljdbc4.jar</additionalClasspathElement>
+ <additionalClasspathElement>${basedir}/lib/db2jcc4.jar</additionalClasspathElement>
+ </additionalClasspathElements>
+ <systemProperties>
+ <property>
+ <name>usedatasources</name>
+ <value>${usedatasources}</value>
+ </property>
+ <property>
+ <name>datasourceloc</name>
+ <value>${datasourceloc}</value>
+ </property>
+ </systemProperties>
+
+<!--
+ <forkMode>always</forkMode>
+
+ <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
+ -->
+ <includes>
+ <include>**/${classname}.java</include>
+ </includes>
+
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
+ </profile>
+
+
+ <profile>
+ <id>setupdatasources</id>
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>${apache.ant.version}</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+ </configuration>
+ <executions>
+ <execution>
+ <id>setupalldatasources</id>
+ <phase>pre-integration-test</phase>
+ <configuration>
+ <tasks>
+ <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
+ <property name="relative.resources.dir" value="src/main/resources" />
+ <property name="datasourceloc" value="${datasourceloc}" />
+ <ant antfile="src/main/resources/ddl/manage_schemas.xml" />
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>singledatasource</id>
+ <activation>
+ <property>
+ <name>datasource</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>${apache.ant.version}</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+
+ </configuration>
+ <executions>
+ <execution>
+ <id>setupsingledatasource</id>
+ <phase>pre-integration-test</phase>
+ <configuration>
+ <tasks>
+
+ <property name="single" value="${datasource}" />
+ <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
+ <property name="datasourceloc" value="${datasourceloc}" />
+
+ <property name="relative.resources.dir" value="src/main/resources" />
+ <ant antfile="src/main/resources/ddl/manage_schemas.xml" />
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+
+ </plugins>
+ </build>
+ </profile>
+
+
+ <profile>
+ <id>runclienttests</id>
+ <activation>
+ <property>
+ <name>scenario.dir</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>${apache.ant.version}</version>
+ </dependency>
+ </dependencies>
+ <executions>
+ <execution>
+ <id>run-client-test</id>
+ <phase>integration-test</phase>
+ <configuration>
+ <tasks>
+
+ <property name="maven.runtime.classpath" refid="maven.runtime.classpath" />
+ <property name="scenario.dir" value="${scenario.dir}" />
+ <property name="queryset.artifacts.dir" value="${queryset.artifacts.dir}" />
+ <property name="vdb.artifacts.dir" value="${vdb.artifacts.dir}" />
+ <!-- optional properties -->
+ <property name="config.file" value="${config.file}" />
+ <property name="query.scenario.classname" value="${query.scenario.classname}" />
+ <property name="proj.dir" value="${project.basedir}/target/" />
+ <property name="usedatasources" value="${usedatasources}" />
+ <property name="datasourceloc" value="${datasourceloc}" />
+
+ <ant antfile="src/main/resources/ctc_tests/ctc.xml" />
+
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ </profile>
+
+ <profile>
+ <id>assemble</id>
+<!-- assemble will compile, but not run the tests prior to assemblying the kit -->
+
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assembly/binaries.xml</descriptor>
+ </descriptors>
+ <outputDirectory>target/distribution</outputDirectory>
+ <workDirectory>target/work/assembly</workDirectory>
+
+ </configuration>
+ <executions>
+
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ </plugins>
+ </build>
+ </profile>
+
+ </profiles>
+
+
+</project>
\ No newline at end of file
Deleted: tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml
===================================================================
--- trunk/test-integration/pom.xml 2011-02-25 00:38:40 UTC (rev 2940)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <artifactId>teiid-parent</artifactId>
- <groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>teiid-test-integration</artifactId>
- <packaging>pom</packaging>
- <name>Integration Tests</name>
- <description>Integration tests spanning server/embedded/connectors.</description>
-
- <properties>
- <derby.version>10.2.1.6</derby.version>
- <mysql.connector.version>5.1.5</mysql.connector.version>
- <postgresql.version>8.3-603.jdbc3</postgresql.version>
-
- <apache.ant.version>1.7.0</apache.ant.version>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-common-core</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-metadata</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid.connectors</groupId>
- <artifactId>translator-jdbc</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-client</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-engine</artifactId>
- <type>test-jar</type>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-adminshell</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.jboss.teiid</groupId>
- <artifactId>teiid-runtime</artifactId>
- </dependency>
-
- <!-- external dependencies -->
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <version>${derby.version}</version>
-
- </dependency>
-
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs-spi</artifactId>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
-
- </dependencies>
-
- <modules>
- <module>common</module>
- <module>db</module>
- </modules>
-</project>
\ No newline at end of file
Copied: tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml (from rev 2945, trunk/test-integration/pom.xml)
===================================================================
--- tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml (rev 0)
+++ tags/teiid-parent-7.4.0.Alpha1/test-integration/pom.xml 2011-02-25 05:57:19 UTC (rev 2946)
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <artifactId>teiid-parent</artifactId>
+ <groupId>org.jboss.teiid</groupId>
+ <version>7.4.0.Alpha1</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>teiid-test-integration</artifactId>
+ <packaging>pom</packaging>
+ <name>Integration Tests</name>
+ <description>Integration tests spanning server/embedded/connectors.</description>
+
+ <properties>
+ <derby.version>10.2.1.6</derby.version>
+ <mysql.connector.version>5.1.5</mysql.connector.version>
+ <postgresql.version>8.3-603.jdbc3</postgresql.version>
+
+ <apache.ant.version>1.7.0</apache.ant.version>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-common-core</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-metadata</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid.connectors</groupId>
+ <artifactId>translator-jdbc</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-client</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-engine</artifactId>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-adminshell</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.teiid</groupId>
+ <artifactId>teiid-runtime</artifactId>
+ </dependency>
+
+ <!-- external dependencies -->
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>${derby.version}</version>
+
+ </dependency>
+
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ </dependencies>
+
+ <modules>
+ <module>common</module>
+ <module>db</module>
+ </modules>
+</project>
\ No newline at end of file
13 years, 10 months
teiid SVN: r2945 - in trunk: adminshell and 36 other directories.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-25 00:55:39 -0500 (Fri, 25 Feb 2011)
New Revision: 2945
Modified:
trunk/adminshell/pom.xml
trunk/api/pom.xml
trunk/build/pom.xml
trunk/cache-jbosscache/pom.xml
trunk/client/pom.xml
trunk/common-core/pom.xml
trunk/connectors/connector-file/pom.xml
trunk/connectors/connector-ldap/pom.xml
trunk/connectors/connector-salesforce/pom.xml
trunk/connectors/connector-ws/pom.xml
trunk/connectors/pom.xml
trunk/connectors/salesforce-api/pom.xml
trunk/connectors/sandbox/pom.xml
trunk/connectors/sandbox/translator-yahoo/pom.xml
trunk/connectors/translator-file/pom.xml
trunk/connectors/translator-jdbc/pom.xml
trunk/connectors/translator-ldap/pom.xml
trunk/connectors/translator-loopback/pom.xml
trunk/connectors/translator-olap/pom.xml
trunk/connectors/translator-salesforce/pom.xml
trunk/connectors/translator-ws/pom.xml
trunk/console/pom.xml
trunk/documentation/admin-guide/pom.xml
trunk/documentation/caching-guide/pom.xml
trunk/documentation/client-developers-guide/pom.xml
trunk/documentation/developer-guide/pom.xml
trunk/documentation/pom.xml
trunk/documentation/quick-start-example/pom.xml
trunk/documentation/reference/pom.xml
trunk/engine/pom.xml
trunk/hibernate-dialect/pom.xml
trunk/jboss-integration/pom.xml
trunk/metadata/pom.xml
trunk/pom.xml
trunk/runtime/pom.xml
trunk/test-integration/common/pom.xml
trunk/test-integration/db/pom.xml
trunk/test-integration/pom.xml
Log:
[maven-release-plugin] prepare release teiid-parent-7.4.0.Alpha1
Modified: trunk/adminshell/pom.xml
===================================================================
--- trunk/adminshell/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/adminshell/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-adminshell</artifactId>
Modified: trunk/api/pom.xml
===================================================================
--- trunk/api/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/api/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-api</artifactId>
Modified: trunk/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/build/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid</artifactId>
Modified: trunk/cache-jbosscache/pom.xml
===================================================================
--- trunk/cache-jbosscache/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/cache-jbosscache/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-cache-jbosscache</artifactId>
Modified: trunk/client/pom.xml
===================================================================
--- trunk/client/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/client/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-client</artifactId>
Modified: trunk/common-core/pom.xml
===================================================================
--- trunk/common-core/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/common-core/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-common-core</artifactId>
Modified: trunk/connectors/connector-file/pom.xml
===================================================================
--- trunk/connectors/connector-file/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/connector-file/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-file</artifactId>
Modified: trunk/connectors/connector-ldap/pom.xml
===================================================================
--- trunk/connectors/connector-ldap/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/connector-ldap/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-ldap</artifactId>
Modified: trunk/connectors/connector-salesforce/pom.xml
===================================================================
--- trunk/connectors/connector-salesforce/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/connector-salesforce/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-salesforce</artifactId>
Modified: trunk/connectors/connector-ws/pom.xml
===================================================================
--- trunk/connectors/connector-ws/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/connector-ws/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>connector-ws</artifactId>
Modified: trunk/connectors/pom.xml
===================================================================
--- trunk/connectors/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/connectors/salesforce-api/pom.xml
===================================================================
--- trunk/connectors/salesforce-api/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/salesforce-api/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>salesforce-api</artifactId>
Modified: trunk/connectors/sandbox/pom.xml
===================================================================
--- trunk/connectors/sandbox/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/sandbox/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid.connectors</groupId>
Modified: trunk/connectors/sandbox/translator-yahoo/pom.xml
===================================================================
--- trunk/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/sandbox/translator-yahoo/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>sandbox</artifactId>
<groupId>org.jboss.teiid.connectors</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-yahoo</artifactId>
Modified: trunk/connectors/translator-file/pom.xml
===================================================================
--- trunk/connectors/translator-file/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-file/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-file</artifactId>
Modified: trunk/connectors/translator-jdbc/pom.xml
===================================================================
--- trunk/connectors/translator-jdbc/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-jdbc/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-jdbc</artifactId>
Modified: trunk/connectors/translator-ldap/pom.xml
===================================================================
--- trunk/connectors/translator-ldap/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-ldap/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-ldap</artifactId>
Modified: trunk/connectors/translator-loopback/pom.xml
===================================================================
--- trunk/connectors/translator-loopback/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-loopback/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-loopback</artifactId>
Modified: trunk/connectors/translator-olap/pom.xml
===================================================================
--- trunk/connectors/translator-olap/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-olap/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-olap</artifactId>
Modified: trunk/connectors/translator-salesforce/pom.xml
===================================================================
--- trunk/connectors/translator-salesforce/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-salesforce/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-salesforce</artifactId>
Modified: trunk/connectors/translator-ws/pom.xml
===================================================================
--- trunk/connectors/translator-ws/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/connectors/translator-ws/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>connectors</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>translator-ws</artifactId>
Modified: trunk/console/pom.xml
===================================================================
--- trunk/console/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/console/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: trunk/documentation/admin-guide/pom.xml
===================================================================
--- trunk/documentation/admin-guide/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/admin-guide/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>admin-guide</artifactId>
Modified: trunk/documentation/caching-guide/pom.xml
===================================================================
--- trunk/documentation/caching-guide/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/caching-guide/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>caching-guide</artifactId>
Modified: trunk/documentation/client-developers-guide/pom.xml
===================================================================
--- trunk/documentation/client-developers-guide/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/client-developers-guide/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>client-developers-guide</artifactId>
Modified: trunk/documentation/developer-guide/pom.xml
===================================================================
--- trunk/documentation/developer-guide/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/developer-guide/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>developer-guide</artifactId>
Modified: trunk/documentation/pom.xml
===================================================================
--- trunk/documentation/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/documentation/quick-start-example/pom.xml
===================================================================
--- trunk/documentation/quick-start-example/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/quick-start-example/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>quick-start-example</artifactId>
Modified: trunk/documentation/reference/pom.xml
===================================================================
--- trunk/documentation/reference/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/documentation/reference/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<groupId>org.jboss.teiid</groupId>
<artifactId>documentation</artifactId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>reference</artifactId>
Modified: trunk/engine/pom.xml
===================================================================
--- trunk/engine/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/engine/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-engine</artifactId>
Modified: trunk/hibernate-dialect/pom.xml
===================================================================
--- trunk/hibernate-dialect/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/hibernate-dialect/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-hibernate-dialect</artifactId>
Modified: trunk/jboss-integration/pom.xml
===================================================================
--- trunk/jboss-integration/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/jboss-integration/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -2,7 +2,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/metadata/pom.xml
===================================================================
--- trunk/metadata/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/metadata/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-metadata</artifactId>
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -5,15 +5,15 @@
<artifactId>teiid-parent</artifactId>
<packaging>pom</packaging>
<name>Teiid</name>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
<description>Federated SQL and XML query engine.</description>
<properties>
<ant.version>1.7.0</ant.version>
<site.url>http://www.jboss.org/teiid</site.url>
</properties>
<scm>
- <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/trunk</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/trunk</developerConnection>
+ <connection>scm:svn:https://anonsvn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/teiid/tags/teiid-parent-7.4.0.Alpha1</developerConnection>
</scm>
<licenses>
<license>
Modified: trunk/runtime/pom.xml
===================================================================
--- trunk/runtime/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/runtime/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.teiid</groupId>
Modified: trunk/test-integration/common/pom.xml
===================================================================
--- trunk/test-integration/common/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/test-integration/common/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-test-integration</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>test-integration-common</artifactId>
Modified: trunk/test-integration/db/pom.xml
===================================================================
--- trunk/test-integration/db/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/test-integration/db/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -9,7 +9,7 @@
<parent>
<artifactId>teiid-test-integration</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
Modified: trunk/test-integration/pom.xml
===================================================================
--- trunk/test-integration/pom.xml 2011-02-25 05:38:10 UTC (rev 2944)
+++ trunk/test-integration/pom.xml 2011-02-25 05:55:39 UTC (rev 2945)
@@ -3,7 +3,7 @@
<parent>
<artifactId>teiid-parent</artifactId>
<groupId>org.jboss.teiid</groupId>
- <version>7.4.0.Alpha1-SNAPSHOT</version>
+ <version>7.4.0.Alpha1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>teiid-test-integration</artifactId>
13 years, 10 months
teiid SVN: r2944 - trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers.
by teiid-commits@lists.jboss.org
Author: shawkins
Date: 2011-02-25 00:38:10 -0500 (Fri, 25 Feb 2011)
New Revision: 2944
Modified:
trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
Log:
TEIID-1329 adding the markDataSourceAvailable method to force the load of dynamic vdb metadata
Modified: trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java
===================================================================
--- trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java 2011-02-25 05:37:40 UTC (rev 2943)
+++ trunk/jboss-integration/src/main/java/org/teiid/jboss/deployers/RuntimeEngineDeployer.java 2011-02-25 05:38:10 UTC (rev 2944)
@@ -80,6 +80,7 @@
import org.teiid.core.TeiidRuntimeException;
import org.teiid.deployers.VDBLifeCycleListener;
import org.teiid.deployers.VDBRepository;
+import org.teiid.deployers.VDBStatusChecker;
import org.teiid.dqp.internal.process.DQPConfiguration;
import org.teiid.dqp.internal.process.DQPCore;
import org.teiid.dqp.internal.process.DQPWorkContext;
@@ -121,6 +122,7 @@
private transient Admin admin;
private transient ClientServiceRegistryImpl csr = new ClientServiceRegistryImpl();
private transient VDBRepository vdbRepository;
+ private transient VDBStatusChecker vdbStatusChecker;
private transient ProfileService profileService;
private transient String jndiName;
@@ -279,10 +281,10 @@
this.logon = new LogonImpl(this.sessionService, "teiid-cluster"); //$NON-NLS-1$
if (profileService != null) {
- this.admin = AdminProvider.getLocal(profileService);
+ this.admin = AdminProvider.getLocal(profileService, vdbStatusChecker);
} else {
try {
- this.admin = AdminProvider.getLocal();
+ this.admin = AdminProvider.getLocal(vdbStatusChecker);
} catch (AdminComponentException e) {
throw new TeiidRuntimeException(e.getCause());
}
@@ -352,6 +354,10 @@
this.vdbRepository = repo;
}
+ public void setVDBStatusChecker(VDBStatusChecker vdbStatusChecker) {
+ this.vdbStatusChecker = vdbStatusChecker;
+ }
+
public void setProfileService(final ProfileService profileService) {
this.profileService = profileService ;
}
13 years, 10 months