Package com.isomorphic.hibernate
Class HibernateDataSource
java.lang.Object
com.isomorphic.base.Base
com.isomorphic.datasource.DataSource
com.isomorphic.datasource.BasicDataSource
com.isomorphic.hibernate.HibernateDataSource
- All Implemented Interfaces:
com.isomorphic.base.IAutoConfigurable,com.isomorphic.datasource.Committable,com.isomorphic.datasource.FreeResourcesHandler,com.isomorphic.datasource.IType,com.isomorphic.interfaces.IHibernateDataSource,IToJSON,Serializable
public class HibernateDataSource extends BasicDataSource implements com.isomorphic.interfaces.IHibernateDataSource
A DataSource implementation for the Hibernate ORM system. SmartClient Server can integrate with Hibernate's ORM facilities, making use of new or existing bean mappings, or it can drive Hibernate as a pure storage layer in "beanless" mode. In this latter mode, SmartClient programs can connect to a Hibernate data store for all four CRUD operations, with zero server-side code or Hibernate configuration.
See the client reference documentation for details of configuring and using Hibernate DataSources - search for "hibernateIntegration". For a wider general discussion of data integration options with SmartClient Server, search the client documentation for "serverDataIntegration"
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionHolds list of additional fields requested by specificDSRequest.protected StringHolds config name - can be configured with "jpaConfig" parameter.static final CharacterHolds character ('~') used to escape wild cards in 'like' clause.protected BooleanHolds value should related updates be generated.static final StringName of the Hibernate configuration name property.protected List<DSResponse>Holds list of generated related updates.Fields inherited from class com.isomorphic.datasource.DataSource
OP_ADD, OP_CLIENT_EXPORT, OP_CUSTOM, OP_DOWNLOAD_FILE, OP_FETCH, OP_GET_FILE, OP_GET_FILE_VERSION, OP_HAS_FILE, OP_HAS_FILE_VERSION, OP_LIST_FILE_VERSIONS, OP_LIST_FILES, OP_LOAD_SCHEMA, OP_REMOVE, OP_REMOVE_FILE, OP_REMOVE_FILE_VERSION, OP_RENAME_FILE, OP_SAVE_FILE, OP_UNIQUE_NAME, OP_UPDATE, OP_VALIDATE, OP_VIEW_FILE -
Method Summary
Modifier and TypeMethodDescriptionstatic voidcommitTransaction(org.hibernate.Transaction trx) Deprecated.As of SmartClient 8.0.static StringescapeValueForFilter(Object value, char escapeChar) Escapes characters "_" and "%" with specified character in value object.ReturnsDSFieldby specified name.getFieldNames(boolean dropIgnored) Returns combined list of data source configured and request configured field names.static voidrollbackTransaction(org.hibernate.Transaction trx) Deprecated.As of SmartClient 8.0.static org.hibernate.TransactionDeprecated.As of SmartClient 8.0.Methods inherited from class com.isomorphic.datasource.BasicDataSource
getAuditDataSource, getAuditRecord, getAuditRecord, hasCustomDefaultFetchOperation, hasCustomLogic, shouldAutoJoinTransaction, shouldAutoStartTransaction, transformMultipleFields, transformMultipleFields, writeMultiAuditsMethods inherited from class com.isomorphic.datasource.DataSource
add, add, addDynamicDSGenerator, addDynamicDSGenerator, addDynamicDSGenerator, clearDynamicDSGenerators, convertRelativeDates, convertRelativeDates, convertRelativeDates, convertRelativeDates, convertRelativeDates, convertRelativeDates, executeFileSource, fetch, fetch, fetchById, fetchById, fetchById, fetchSingle, fetchSingle, filter, filter, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, fromXML, get1ManyRelationFields, getAuditChangedFieldsFieldName, getAuditRevisionFieldName, getAuditTimestampFieldName, getAuditTypeFieldName, getAuditUserFieldName, getDefaultDynamicDSGenerator, getDirectFields, getDynamicDSGenerators, getEnumConstantProperty, getEnumOrdinalProperty, getEnumTranslateStrategy, getFieldNames, getFile, getFileAsInputStream, getFileAsString, getFileContentsField, getFileFormatField, getFileNameField, getFileTypeField, getID, getJoinDSName, getJoinDSName, getListProperties, getListProperties, getListProperty, getManyManyRelationFields, getMapProperty, getName, getNonIncludedFields, getObjectProperty, getOperationProperty, getPrimaryKey, getProperties, getProperties, getProperties, getProperty, getPropertyJavaClass, getRecordXPath, getRelatedDisplayRecord, getRelatedDisplayRecord, getRelatedDSName, getRelatedDSName, getRelatedTableAlias, getRelationFields, getTableName, getTransactionObject, getTransactionObject, has1ManyRelationFields, hasFile, hasManyManyRelationFields, hasRecord, hasRecord, hasRelationFields, initialized, is1ManyRelationField, isManyManyRelationField, isModificationOperation, isRelationField, isServerOnly, listFiles, listFiles, listFiles, listFiles, listFiles, listFiles, remove, removeDynamicDSGenerator, removeDynamicDSGenerator, removeDynamicDSGenerator, removeFile, renameFile, saveFile, setEnumConstantProperty, setEnumOrdinalProperty, setEnumTranslateStrategy, setOmitNullMapValuesInResponse, setProperties, transformImportValue, transformImportValue, transformResponse, update, update, validate, validate, validate, validateRecord
-
Field Details
-
ESCAPE_CHARACTER
Holds character ('~') used to escape wild cards in 'like' clause. Avoid using backslash '\' or dollar sign '$' because it is often used in databases as DB escape or wild card characters. -
HB_CONFIG_PROPERTY
Name of the Hibernate configuration name property.- See Also:
-
configName
Holds config name - can be configured with "jpaConfig" parameter. Holds empty string for default configuration. -
generateRelatedUpdates
Holds value should related updates be generated. (Re)initialized on everyexecute()call.true- related updates will be generated;false- related updates will not be generated;null- related updates will be generated only for "add" and "update" operations, related updates will not be generated for "remove" operation. -
additionalFields
Holds list of additional fields requested by specificDSRequest.
-
-
Method Details
-
getFieldNames
Returns combined list of data source configured and request configured field names.- Parameters:
dropIgnored-booleantrue- ignored fields are dropped;false- ignored fields are included;- Returns:
Listfield names.
-
getField
ReturnsDSFieldby specified name. First checks data source configured fields. Checks request configured fields if it is not found within data source configured fields. ReturnsnulliffieldNameparameter isnullor field is not found.- Overrides:
getFieldin classBasicDataSource- Parameters:
fieldName- the name of the field whose definition you want- Returns:
DSFieldfield.- See Also:
-
escapeValueForFilter
Escapes characters "_" and "%" with specified character in value object. Specified escape character is escped (doubled) as well. Empty string is returned if value object is null.- Parameters:
value-ObjectValue which should be escaped.escapeChar-charecape character.- Returns:
StringEscaped string value.
-
startTransaction
Deprecated.As of SmartClient 8.0. UseHibernateTransaction.startTransaction(com.isomorphic.datasource.DSTransaction)insteadStart a new transaction. The transaction ends when eithercommitTransaction(org.hibernate.Transaction)orrollbackTransaction(org.hibernate.Transaction)is called for the transaction.- Returns:
- the new transaction
- Throws:
Exception
-
rollbackTransaction
Deprecated.As of SmartClient 8.0. UseHibernateTransaction.rollbackTransaction(com.isomorphic.datasource.DSTransaction)insteadRollback and clean up the supplied transaction- Throws:
Exception- if problems were found rolling back the transaction
-
commitTransaction
Deprecated.As of SmartClient 8.0. UseHibernateTransaction.commitTransaction(com.isomorphic.datasource.DSTransaction)insteadCommit and clean up the supplied transaction.- Throws:
Exception- if problems were found committing the transaction
-