|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.sqlproc.engine.impl.SqlMappingItem
class SqlMappingItem
The mapping rule element for one output attribute, which is a mapping item.
Instance of this class is created by the ANTLR parser. In the case of explicit mapping rule the grammar itself is
defined in SqlMapping.g. In the case of implicit mapping rule the grammar itself is defined in SqlStatement.g.
This instance can be also created in the process of merging the explicit and implicit mapping rule in the runtime,
see process(SqlProcessContext)
.
Field Summary | |
---|---|
private List<SqlMappingAttribute> |
attributes
The list of all partial attribute names in the result class. |
private Map<String,SqlMappingAttribute> |
attributesMap
The map of all partial attribute names in the result class. |
private String |
dbName
The name of a database query output. |
private StringBuilder |
fullName
The full name of the attribute in the result class in the form name1.name2...nameX. |
private boolean |
identity
The indicator this is an identity column. |
(package private) org.slf4j.Logger |
logger
The internal slf4j logger. |
private SqlType |
sqlType
The (META) type of an attribute in the result class and/or the database column type. |
(package private) Map<String,String> |
values
Supplements values for a special handling, for example the identification of an identity column or the partial attribute type. |
Fields inherited from interface org.sqlproc.engine.impl.SqlMetaElement |
---|
AND_PREFIX, CONST_PREFIX, IDENT_PREFIX, IDENT_SEPARATOR, lCONST_PREFIX, lIDENT_PREFIX, OR_PREFIX, SET_PREFIX, VALUES_PREFIX, WHERE_PREFIX |
Constructor Summary | |
---|---|
SqlMappingItem(String dbName)
Creates a new instance. |
Method Summary | |
---|---|
(package private) SqlMappingAttribute |
addAttributeName(String name)
Adds a partial name of an attribute. |
(package private) List<SqlMappingAttribute> |
getAttributes()
Returns the list of all partial attribute names in the result class. |
(package private) String |
getDbName()
Returns the name of a database query output. |
(package private) String |
getFullName()
Returns the full attribute name. |
(package private) String |
getName()
Returns the last attribute name. |
(package private) SqlType |
getSqlType()
Returns the internal type of an attribute in the result class. |
(package private) boolean |
isIdentity()
Returns the indicator this is an identity column. |
(package private) SqlMappingItem |
merge(SqlMappingItem outputMapping)
Merge mapping rules for one output column based on SqlMapping.g and SqlStatement.g. |
SqlProcessResult |
process(SqlProcessContext ctx)
The main contract for a dynamic ANSI SQL Query generation. |
(package private) void |
setAttributes(List<SqlMappingAttribute> attributes)
Sets the list of all partial attribute names in the result class. |
(package private) void |
setAttributesMap(Map<String,SqlMappingAttribute> attributesMap)
Sets the map of all partial attribute names in the result class. |
(package private) SqlMappingAttribute |
setAttributeValue(String attrName,
String value)
Injects value to the named attribute. |
(package private) void |
setMetaType(SqlMetaType metaType)
Assigns the internal type. |
(package private) void |
setQueryResultData(Object resultInstance,
int resultIndex,
Object[] resultValues,
Map<String,Object> ids,
Map<String,Object> idsProcessed,
Map<String,SqlMappingIdentity> identities,
Map<String,Class<?>> moreResultClasses)
Initializes the attribute of the result class with the output value from the SQL query execution. |
(package private) void |
setQueryResultMapping(Class<?> resultClass,
Map<String,Class<?>> moreResultClasses,
SqlQuery query)
Declares a scalar query result for this mapping rule item. |
(package private) void |
setSqlType(SqlType sqlType)
Sets the internal type of an attribute in the result class. |
(package private) void |
setValues(String value,
String value2)
Sets the modifiers. |
(package private) void |
setValues(String name,
String value,
String value2)
Sets the modifiers. |
String |
toString()
For debug purposes. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
final org.slf4j.Logger logger
private List<SqlMappingAttribute> attributes
private Map<String,SqlMappingAttribute> attributesMap
private String dbName
private StringBuilder fullName
private SqlType sqlType
private boolean identity
Map<String,String> values
Constructor Detail |
---|
SqlMappingItem(String dbName)
dbName
- the name of a database query outputMethod Detail |
---|
String getDbName()
SqlMappingAttribute addAttributeName(String name)
name
- the partial name of an attribute in the result classSqlMappingAttribute setAttributeValue(String attrName, String value)
attrName
- the attribute namevalue
- value for the named attributeList<SqlMappingAttribute> getAttributes()
void setAttributes(List<SqlMappingAttribute> attributes)
attributes
- the list of all partial attribute namesvoid setAttributesMap(Map<String,SqlMappingAttribute> attributesMap)
attributesMap
- the map of all partial attribute namesboolean isIdentity()
String getFullName()
String getName()
void setMetaType(SqlMetaType metaType)
metaType
- an internal type for this mapping rule itemSqlType getSqlType()
void setSqlType(SqlType sqlType)
sqlType
- the internal type of an attribute in the result classvoid setValues(String value, String value2)
value
- the value for a special treatment, might be an identifier of value2value2
- the value for a special treatment, might be an attribute typevoid setValues(String name, String value, String value2)
name
- the partial name in the case this modifier is related to itvalue
- the value for a special treatment, might be an identifier of value2value2
- the value for a special treatment, might be an attribute typevoid setQueryResultMapping(Class<?> resultClass, Map<String,Class<?>> moreResultClasses, SqlQuery query) throws SqlRuntimeException
resultClass
- the class used for the return values, the SQL execution outputmoreResultClasses
- more classes used for the return values, like the classes for the collections or the collections itemsquery
- the SQL Engine query, an adapter or proxy to the internal JDBC or ORM staff
SqlRuntimeException
- in the case of any problem with output values preparationvoid setQueryResultData(Object resultInstance, int resultIndex, Object[] resultValues, Map<String,Object> ids, Map<String,Object> idsProcessed, Map<String,SqlMappingIdentity> identities, Map<String,Class<?>> moreResultClasses) throws SqlRuntimeException
resultInstance
- the instance of the result classresultIndex
- the index of the processed query execution output valueresultValues
- the query execution output valuesids
- the instances of all already used identities together with the related result instances based on
identities indicesidsProcessed
- the instances of all already used identities together with the related result instances based on
identities indices - the working copyidentities
- the collection of identities related to all output columnsmoreResultClasses
- more result classes used for the return values, like the classes for the collections or the
collections items
SqlRuntimeException
- in the case of any problem with output values handlingSqlMappingItem merge(SqlMappingItem outputMapping)
outputMapping
- the mapping rule based on SqlStatement.g
public SqlProcessResult process(SqlProcessContext ctx)
process
in interface SqlMetaElement
ctx
- the crate for all input parameters and the context of processingpublic String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |