Class DataContext
- All Implemented Interfaces:
HasHandlers
DataSource IDs to specific Records, and optionally, cross-component Criteria via the reserved sharedCriteria key. To understand how dataContext is used to automatically populate DataBoundComponents, see Canvas.autoPopulateData.
Shared Criteria
The optional sharedCriteria key holds AdvancedCriteria that are automatically combined into every matching DBC's fetch via DataSource.combineCriteria(). Matching is by fieldName: each sub-criterion applies only to components whose DataSource contains a field of that name with a compatible type (see Canvas.handleDataContextCriteria() for type compatibility rules).
This is the mechanism that powers cross-component filtering: slicer chips, date-range pickers, and other global filters publish criteria into sharedCriteria, and all subscribing components re-fetch accordingly.
RelativeDate values are fully supported inside sharedCriteria and are resolved at fetch time, so a criterion like { fieldName:"orderDate", operator:"greaterThan", value:{ _constructor: "RelativeDate", value:"-1m" } } is kept in relative form and re-evaluated on each fetch.
Shared criteria are also provided to rule context under the path dataContext.sharedCriteria, enabling dynamic criteria and visibility rules to react to the current global filter state.
For example, in SmartGWT:
Record customerRecord = new Record();
customerRecord.setAttribute("customerNumber", "15");
customerRecord.setAttribute("name", "Trish Joiner");
Record employeeRecord = new Record();
employeeRecord.setAttribute("employeeID", "4231");
employeeRecord.setAttribute("name", "Fred Smith");
DataContext dataContext = new DataContext();
dataContext.addMapping("Customer", customerRecord);
dataContext.addMapping("Employee", employeeRecord);
-
Field Summary
Fields inherited from class com.smartgwt.client.core.DataClass
factoryCreated, factoryProperties -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDataSourceRecord(String dataSourceID, Record record) Returns set of all DataSource IDs currently bound for this DataContext.getDataSourceRecord(DataSource dataSource) Returns record bound to the DataSource.getDataSourceRecord(String dataSourceID) Returns record bound to the DataSource.Returns all current DataSource-to-Record and DataSource-to-Record[] bindings for this DataContext.getDataSourceRecords(DataSource dataSource) Returns record(s) bound to the DataSource as Record or Record[].getDataSourceRecords(String dataSourceID) Returns record(s) bound to the DataSource as Record or Record[].static DataContextgetOrCreateRef(JavaScriptObject jsObj) Returns the POJO bound to this id.removeDataSourceRecords(DataSource dataSource) Removes any record binding(s) for the DataSource.removeDataSourceRecords(String dataSourceID) Removes any record binding(s) for the DataSource.setDataSourceRecord(DataSource dataSource, Record record) Binds the DataSource to the supplied record.setDataSourceRecord(String dataSourceID, Record record) Binds the DataSource to the supplied record.setDataSourceRecords(DataSource dataSource, Record... record) Binds the DataSource to the supplied records, as an array.setDataSourceRecords(String dataSourceID, Record... record) Binds the DataSource to the supplied records, as an array.setSharedJavaObject(String id, Object sharedObject) Binds the id to the supplied POJO.Methods inherited from class com.smartgwt.client.core.DataClass
applyFactoryProperties, doAddHandler, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsDoubleArray, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
-
Constructor Details
-
DataContext
public DataContext() -
DataContext
-
-
Method Details
-
getOrCreateRef
-
setDataSourceRecord
Binds the DataSource to the supplied record.- Parameters:
dataSource-record-- Returns:
DataContextinstance, for chaining setter calls
-
setDataSourceRecord
Binds the DataSource to the supplied record.- Parameters:
dataSourceID-record-- Returns:
DataContextinstance, for chaining setter calls
-
setDataSourceRecords
Binds the DataSource to the supplied records, as an array.- Parameters:
dataSource-record-- Returns:
DataContextinstance, for chaining setter calls
-
setDataSourceRecords
Binds the DataSource to the supplied records, as an array.- Parameters:
dataSource-record-- Returns:
DataContextinstance, for chaining setter calls
-
addDataSourceRecord
-
getDataSourceRecords
Returns record(s) bound to the DataSource as Record or Record[].- Parameters:
dataSource-- Returns:
- bound record(s), or null
-
getDataSourceRecords
Returns record(s) bound to the DataSource as Record or Record[].- Parameters:
dataSourceID-- Returns:
- bound record(s), or null
-
getDataSourceRecord
Returns record bound to the DataSource. If an array of records is bound to the DataSource, returns the first one.- Parameters:
dataSource-- Returns:
- bound record, or null
-
getDataSourceRecord
Returns record bound to the DataSource. If an array of records is bound to the DataSource, returns the first one.- Parameters:
dataSourceID-- Returns:
- bound record, or null
-
removeDataSourceRecords
Removes any record binding(s) for the DataSource.- Parameters:
dataSource-- Returns:
- bound record(s), or null
-
removeDataSourceRecords
Removes any record binding(s) for the DataSource.- Parameters:
dataSourceID-- Returns:
- bound record(s), or null
-
getDataSourceRecordBindings
Returns all current DataSource-to-Record and DataSource-to-Record[] bindings for this DataContext.- Returns:
- map of DataSource IDs to records
-
getBoundDataSources
Returns set of all DataSource IDs currently bound for this DataContext.- Returns:
- bound DataSource IDs
-