*/
public List<ObjectTreeNode> createChildren(ISession session, ObjectTreeNode parentNode)
throws SQLException
{
final List<ObjectTreeNode> childNodes = new ArrayList<ObjectTreeNode>();
final IDatabaseObjectInfo parentDbinfo = parentNode.getDatabaseObjectInfo();
final ISQLConnection conn = session.getSQLConnection();
final SQLDatabaseMetaData md = session.getSQLConnection().getSQLMetaData();
final String catalogName = parentDbinfo.getCatalogName();
final String schemaName = parentDbinfo.getSchemaName();
final ObjFilterMatcher filterMatcher = new ObjFilterMatcher(session.getProperties());
final String sequenceParentQuerySql = extractor.getSequenceParentQuery();
if (s_log.isDebugEnabled()) {
s_log.debug("createChildren: running sequence parent query for sequence children: "
+ sequenceParentQuerySql);
}
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
pstmt = conn.prepareStatement(sequenceParentQuerySql);
extractor.bindParameters(pstmt, parentDbinfo, filterMatcher);
rs = pstmt.executeQuery();
while (rs.next())
{
final IDatabaseObjectInfo si =
new DatabaseObjectInfo(catalogName, schemaName, rs.getString(1), DatabaseObjectType.SEQUENCE,
md);
if (filterMatcher.matches(si.getSimpleName()))
{
childNodes.add(new ObjectTreeNode(session, si));
}
}
}