⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sysaliasesrowfactory.java

📁 derby database source code.good for you.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		switch( indexNumber )		{		    case SYSALIASES_INDEX1_ID:				/* 1st column is SCHEMAID (char(36)) */				row.setColumn(1, getDataValueFactory().getCharDataValue((String) null));				/* 2nd column is ALIAS (varchar(128)) */				row.setColumn(2, getDataValueFactory().getVarcharDataValue((String) null));				/* 3rd column is NAMESPACE (char(1)) */				row.setColumn(3, getDataValueFactory().getCharDataValue((String) null));				break;		    case SYSALIASES_INDEX2_ID:				/* 1st column is ALIASID (UUID - char(36)) */				row.setColumn(1, getDataValueFactory().getCharDataValue((String) null));				break;		    case SYSALIASES_INDEX3_ID:				/* 1st column is SCHEMAID (char(36)) */				row.setColumn(1, getDataValueFactory().getCharDataValue((String) null));				/* 2nd column is SPECIFICNAME (varchar(128)) */				row.setColumn(2, getDataValueFactory().getVarcharDataValue((String) null));				break;		}	// end switch		return	row;	}	///////////////////////////////////////////////////////////////////////////	//	//	ABSTRACT METHODS TO BE IMPLEMENTED BY CHILDREN OF CatalogRowFactory	//	///////////////////////////////////////////////////////////////////////////	/**	 * Make a AliasDescriptor out of a SYSALIASES row	 *	 * @param row a SYSALIASES row	 * @param parentTupleDescriptor	Null for this kind of descriptor.	 * @param dd dataDictionary	 *	 * @exception   StandardException thrown on failure	 */	public TupleDescriptor buildDescriptor(		ExecRow					row,		TupleDescriptor			parentTupleDescriptor,		DataDictionary 			dd )					throws StandardException	{		if (SanityManager.DEBUG)		{			SanityManager.ASSERT(				row.nColumns() == SYSALIASES_COLUMN_COUNT, 				"Wrong number of columns for a SYSALIASES row");		}		char				cAliasType;		char				cNameSpace;		DataValueDescriptor	col;		String				aliasID;		UUID				aliasUUID;		String				aliasName;		String				javaClassName;		String				sAliasType;		String				sNameSpace;		String				typeStr;		boolean				systemAlias = false;		AliasInfo			aliasInfo = null;		/* 1st column is ALIASID (UUID - char(36)) */		col = row.getColumn(SYSALIASES_ALIASID);		aliasID = col.getString();		aliasUUID = getUUIDFactory().recreateUUID(aliasID);		/* 2nd column is ALIAS (varchar(128)) */		col = row.getColumn(SYSALIASES_ALIAS);		aliasName = col.getString();		/* 3rd column is SCHEMAID (UUID - char(36)) */		col = row.getColumn(SYSALIASES_SCHEMAID);		UUID schemaUUID = col.isNull() ? null : getUUIDFactory().recreateUUID(col.getString());		/* 4th column is JAVACLASSNAME (longvarchar) */		col = row.getColumn(SYSALIASES_JAVACLASSNAME);		javaClassName = col.getString();		/* 5th column is ALIASTYPE (char(1)) */		col = row.getColumn(SYSALIASES_ALIASTYPE);		sAliasType = col.getString();		if (SanityManager.DEBUG)		{			SanityManager.ASSERT(sAliasType.length() == 1, 				"Fifth column (aliastype) type incorrect");			switch (sAliasType.charAt(0))			{				case AliasInfo.ALIAS_TYPE_PROCEDURE_AS_CHAR: 				case AliasInfo.ALIAS_TYPE_FUNCTION_AS_CHAR: 				case AliasInfo.ALIAS_TYPE_SYNONYM_AS_CHAR: 					break;				default: 					SanityManager.THROWASSERT("Invalid type value '"							+sAliasType+ "' for  alias");			}		}		cAliasType = sAliasType.charAt(0);		/* 6th column is NAMESPACE (char(1)) */		col = row.getColumn(SYSALIASES_NAMESPACE);		sNameSpace = col.getString();		if (SanityManager.DEBUG)		{			SanityManager.ASSERT(sNameSpace.length() == 1, 				"Sixth column (namespace) type incorrect");			switch (sNameSpace.charAt(0))			{				case AliasInfo.ALIAS_NAME_SPACE_PROCEDURE_AS_CHAR: 				case AliasInfo.ALIAS_NAME_SPACE_FUNCTION_AS_CHAR: 				case AliasInfo.ALIAS_TYPE_SYNONYM_AS_CHAR: 					break;				default: 					SanityManager.THROWASSERT("Invalid type value '"							+sNameSpace+ "' for  alias");			}		}		cNameSpace = sNameSpace.charAt(0);		/* 7th column is SYSTEMALIAS (boolean) */		col = row.getColumn(SYSALIASES_SYSTEMALIAS);		systemAlias = col.getBoolean();		/* 8th column is ALIASINFO (org.apache.derby.catalog.AliasInfo) */		col = row.getColumn(SYSALIASES_ALIASINFO);		aliasInfo = (AliasInfo) col.getObject();		/* 9th column is specific name */		col = row.getColumn(SYSALIASES_SPECIFIC_NAME);		String specificName = col.getString();		/* now build and return the descriptor */		return new AliasDescriptor(dd, aliasUUID, aliasName,										schemaUUID, javaClassName, cAliasType,										cNameSpace, systemAlias,										aliasInfo, specificName);	}	/**	 * Builds a list of columns suitable for creating this Catalog.	 *	 *	 * @return array of SystemColumn suitable for making this catalog.	 */	public SystemColumn[]	buildColumnList()	{		SystemColumn[]			columnList = new SystemColumn[SYSALIASES_COLUMN_COUNT];		// describe columns		columnList[0] =					new SystemColumnImpl(							convertIdCase( "ALIASID"),			// column name							1,	// column number							0,					// precision							0,					// scale							false,				// nullability							"CHAR",				// dataType							true,				// built-in type							36					// maxLength			               );		columnList[1] =					new SystemColumnImpl(							convertIdCase( "ALIAS"),			// column name							2,	// column number							false				// nullability			               );		columnList[2] = new SystemColumnImpl(									convertIdCase( "SCHEMAID"),			// column name								3,	// column number								0,					// precision								0,					// scale								true,				// nullability								"CHAR",				// dataType								true,				// built-in type								36					// maxLength			                   );		columnList[3] =					new SystemColumnImpl(							convertIdCase( "JAVACLASSNAME"),		// column name							4,							0,					// precision							0,					// scale							false,				// nullability							"LONG VARCHAR",			// dataType							true,				// built-in type							Integer.MAX_VALUE	// maxLength							);		columnList[4] =					new SystemColumnImpl(							convertIdCase( "ALIASTYPE"),		// column name							5,							0,					// precision							0,					// scale							false,				// nullability							"CHAR",			// dataType							true,				// built-in type							1					// maxLength							);		columnList[5] =					new SystemColumnImpl(							convertIdCase( "NAMESPACE"),		// column name							6,							0,					// precision							0,					// scale							false,				// nullability							"CHAR",			// dataType							true,				// built-in type							1					// maxLength							);		columnList[6] =					new SystemColumnImpl(							convertIdCase( "SYSTEMALIAS"),		// column name							7,							0,					// precision							0,					// scale							false,				// nullability							"BOOLEAN",			// dataType							true,				// built-in type							0					// maxLength							);		columnList[7] = 					new SystemColumnImpl(								convertIdCase( "ALIASINFO"),			// column name							8,	// column number							0,					// precision							0,					// scale							true,				// nullability							"org.apache.derby.catalog.AliasInfo",	    // dataType							false,				// built-in type							TypeDescriptor.MAXIMUM_WIDTH_UNKNOWN // maxLength			               );		columnList[8] =					new SystemColumnImpl(							convertIdCase( "SPECIFICNAME"),							9,	// column number							false				// nullability			               );		return	columnList;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -