public class DSRequest extends RPCRequest
DataSource operation. 
 All properties which are legal on RPCRequest are legal, in addition to the properties
 listed here.RPCRequestidfactoryCreated, factoryProperties| Constructor and Description | 
|---|
| DSRequest() | 
| DSRequest(DSOperationType operationType) | 
| DSRequest(DSOperationType operationType,
         Criteria criteria) | 
| DSRequest(DSOperationType operationType,
         com.google.gwt.core.client.JavaScriptObject data) | 
| DSRequest(DSOperationType operationType,
         Record data) | 
| DSRequest(DSOperationType operationType,
         java.lang.String operationId) | 
| DSRequest(DSOperationType operationType,
         java.lang.String operationId,
         Criteria criteria) | 
| DSRequest(DSOperationType operationType,
         java.lang.String operationId,
         com.google.gwt.core.client.JavaScriptObject data) | 
| DSRequest(DSOperationType operationType,
         java.lang.String operationId,
         Record data) | 
| DSRequest(com.google.gwt.core.client.JavaScriptObject jsObj) | 
| Modifier and Type | Method and Description | 
|---|---|
| java.lang.String | getAdditionalOutputs()For fetch, add or update operation, an optional comma separated list of fields to fetch from another,
  related DataSource. | 
| java.lang.String | getComponentId()For requests submitted by a  DataBoundComponent, theCanvas.IDof the submitting component. | 
| Criteria | getCriteria()Return the Criteria associated with a FETCH operation. | 
| DSProtocol | getDataProtocol()DataProtocolfor this particular request. | 
| java.lang.String | getDataSource()DataSource this DSRequest will act on. | 
| java.lang.Integer | getEndRow()End row of requested results, used only with fetch operations. | 
| ExportFormat | getExportAs()The format in which the data should be exported. | 
| java.lang.String | getExportCSS()When using  RPCManager.exportContent()to produce a .pdf from a
 Smart GWT UI, this property allows  dynamic CSS to be passed to the server. | 
| Record[] | getExportData()Only applies to request properties passed to  ListGrid.exportClientData(). | 
| java.lang.Boolean | getExportDatesAsFormattedString()When exporting via  ListGrid.exportClientData()to anXLSorOOXMLspreadsheet, forces dates to export as a string rather than a true date value. | 
| java.lang.String | getExportDelimiter()The character to use as a field-separator in CSV exports. | 
| ExportDisplay | getExportDisplay()Specifies whether the exported data will be downloaded as an attachment or displayed in a  new browser window. | 
| java.lang.String[] | getExportFields()The list of field names to export. | 
| java.lang.String | getExportFilename()The name of the file to save the exported data into. | 
| java.lang.String | getExportFooter()Optional text to appear at the end of the file. | 
| java.lang.String | getExportHeader()Optional text to appear at the beginning of the file. | 
| java.lang.Boolean | getExportHeaderless()This property allows omitting column names from CSV and Excel exports (no effect on JSON or XML exports). | 
| ExportImageFormat | getExportImageFormat()The image format in which the SVG graphic should be exported. | 
| java.lang.Float | getExportImageQuality()Deprecated. 
 | 
| java.lang.Double | getExportImageQualityAsDouble()If exporting in  JPEG format, the output JPEG quality level. | 
| java.lang.Boolean | getExportNumbersAsFormattedString()When exporting via  ListGrid.exportClientData()to anXLSorOOXMLspreadsheet, forces numbers to export as a string rather than a true numerical
 value. | 
| java.lang.String | getExportPath()If  exportToFilesystemis set, optionally specifies a 
 path to use when saving the file. | 
| PropertyIdentifier | getExportPropertyIdentifier()Determines the  PropertyIdentifierto be used in the exported data. | 
| java.lang.Boolean | getExportRawValues()Whether formatting settings should be applied to data being exported. | 
| java.lang.Boolean | getExportResults()When set, causes the results of the DSRequest to be exported to a file, whose name 
  and format are indicated by  exportFilenameandexportAsrespectively. | 
| java.lang.Boolean | getExportShowHeaderSpanTitles()When you erxport a  ListGridthat hasheaderSpans, should headerSpans also be exported. | 
| java.lang.String | getExportSpanTitleSeparator()When you export a  ListGridthat hasheaderSpansdefined andexportShowHeaderSpanTitlesis true, the behavior is
 dependent on the export type. | 
| boolean | getExportStreaming()When exporting to OOXML format (this is the standard file format used by Excel 2007 and  later), we default to using
 streaming mode, for memory efficiency. | 
| java.lang.String | getExportTitleSeparatorChar()The character with which to replace spaces in field-titles when exporting to XML. | 
| java.lang.Boolean | getExportToClient()If set to true (the default), Smart GWT Server will export data back to the client, either as a file download or as
 content in a new browser window, depending on the setting of  exportDisplay. | 
| java.lang.Boolean | getExportToFilesystem()If set, Smart GWT Server will export data to a file on the server filesystem. | 
| java.lang.String | getExportTZ()For server-side export with  ExportFormat"xls" or "ooxml" only, timezone to use when
 saving values fromFieldType"datetime" to the spreadsheet. | 
| java.lang.Boolean | getExportValueFields()This flag has a different meaning depending on whether you are doing a client-driven or server-driven export. | 
| java.util.Map | getFieldValueExpressions()A set of key:value pairs, mapping field names to expressions that will be evaluated 
  server-side to derive a value for that field. | 
| java.lang.Boolean | getGenerateRelatedUpdates()Specifies should related updates have to be generated. | 
| java.lang.String[] | getGroupBy()List of fields to group by when using  server-side summarization. | 
| java.util.Map | getHeaderData()For DataSources using SOAP messaging with a WSDL web service, data to be serialized to form SOAP headers, as a map from
 the header part name to the data. | 
| java.lang.Boolean | getKeepParentsOnFilter()This property is for advanced use in integrating trees that   load data on demandusing data paging. | 
| java.lang.String | getLineBreakStyle()The style of line-breaks to use in the exported output. | 
| java.lang.String | getLinkDataFetchOperation()For a databound  multi-link tree, this is theoperationIdto use for the separate fetch on theResultTree.linkDataSourcethat will be generated ifLinkDataFetchModeis "separate". | 
| Record | getOldValues()For an  updateorremoveoperation, the original values from the record that is being updated
 or removed. | 
| java.lang.String | getOperationId()When a  DataBoundComponentsends a DSRequest, thedsRequest.operationIdwill be automatically picked up from thefetchOperation,addOperation, etc properties of the
 DataBoundComponent. | 
| DSOperationType | getOperationType()Type of operation being performed: "fetch", "add", "remove", "update" or "custom". | 
| static DSRequest | getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) | 
| java.lang.String | getOutputs()The list of fields to return in the response, specified as a comma-separated string (eg,  "foo, bar, baz"). | 
| TreeNode | getParentNode()For advanced use in integrating trees that   load
 data on demandwith web services,parentNodeis automatically set in "fetch" DSRequests issued by a
 databound TreeGrid that is loading children for thatparentNode. | 
| java.lang.Boolean | getPendingAdd()Indicates that a validation request is being made for a record that will ultimately be  saved with an "add" request, as
 opposed to an "update" request. | 
| java.lang.Boolean | getProgressiveLoading()Sets  progressive loading modefor this particular
 request, overriding the OperationBinding- and DataSource-level settings. | 
| java.util.Map<java.lang.String,java.lang.String> | getRawSummaryFunctions()Same as  getSummaryFunctions(), but allowing to get any functions, not just ones built into the framework, 
 so that in combination with custom implementation on the server-side you can perform custom aggregation. | 
| java.lang.String | getRequestId()Automatically generated unique ID for this request. | 
| ResultSet | getResultSet()For advanced use in integrating dataset paging with web services, the ResultSet that issued this "fetch" DSRequest is
 automatically made available as the  resultSetproperty. | 
| ResultTree | getResultTree()For advanced use in integrating trees that   load
 data on demandwith web services, the ResultTree that issued this "fetch" DSRequest is automatically made available as
 theresultTreeproperty. | 
| java.lang.Boolean | getShouldUseCache()This is a per-request flag for explicitly controlling whether the cache is used (bypassing it when not wanted, or using
 it when settings would indicate otherwise). | 
| SortSpecifier[] | getSortBy()Fieldname to sortBy | 
| java.lang.Integer | getStartRow()Starting row of requested results, used only with fetch operations. | 
| boolean | getStreamResults()If true, results will be streamed on the server, rather than all records being read into  server memory at once; this
 approach is appropriate for retrieving or exporting large datasets without swamping the server. | 
| java.util.Map<java.lang.String,SummaryFunctionType> | getSummaryFunctions()A mapping from field names to summary functions to be applied to each field. | 
| TextMatchStyle | getTextMatchStyle()For "fetch" operations, how search criteria should be interpreted for text fields: one of "exact" for exact match,
 "exactCase" for case-sensitive exact match, "startsWith" for  matching at the beginning only, or "substring" for
 substring match. | 
| java.lang.Boolean | getUseFlatFields()When  useFlatFieldsis set for a request to be sent to a WSDL web service, when
  creating the input XML message to send to the web service, properties inrequest.datawill be used as the values for XML elements of the same
 name, at
  any level of nesting. | 
| java.lang.Boolean | getUseFlatHeaderFields()Cause the  useFlatFieldsXML serialization behavior to be
 used for all soap headers in the request. | 
| java.lang.Boolean | getUseStrictJSON()Should the HTTP response to this request be formatted using the strict JSON subset of the javascript language? If set to
 true, responses returned by the server should match the format described here. | 
| ValidationMode | getValidationMode()Mode of validation for entered data. | 
| DSRequest | setAdditionalOutputs(java.lang.String additionalOutputs)For fetch, add or update operation, an optional comma separated list of fields to fetch from another,
  related DataSource. | 
| DSRequest | setAttribute(java.lang.String property,
            java.lang.Object value)Set a custom attribute value on the DSRequest as an Object. | 
| void | setCallback(DSCallback callback) | 
| DSRequest | setComponentId(java.lang.String componentId)For requests submitted by a  DataBoundComponent, theCanvas.IDof the submitting component. | 
| void | setCriteria(Criteria criteria)This method applies to "fetch" requests only; for update or delete operations pass a
 Record to setData() which contains primaryKey values as Record attributes. | 
| DSRequest | setDataProtocol(DSProtocol dataProtocol)DataProtocolfor this particular request. | 
| DSRequest | setDataSource(java.lang.String dataSource)DataSource this DSRequest will act on. | 
| DSRequest | setEndRow(java.lang.Integer endRow)End row of requested results, used only with fetch operations. | 
| DSRequest | setExportAs(ExportFormat exportAs)The format in which the data should be exported. | 
| DSRequest | setExportCSS(java.lang.String exportCSS)When using  RPCManager.exportContent()to produce a .pdf from a
 Smart GWT UI, this property allows  dynamic CSS to be passed to the server. | 
| DSRequest | setExportData(Record... exportData)Only applies to request properties passed to  ListGrid.exportClientData(). | 
| DSRequest | setExportDatesAsFormattedString(java.lang.Boolean exportDatesAsFormattedString)When exporting via  ListGrid.exportClientData()to anXLSorOOXMLspreadsheet, forces dates to export as a string rather than a true date value. | 
| DSRequest | setExportDelimiter(java.lang.String exportDelimiter)The character to use as a field-separator in CSV exports. | 
| DSRequest | setExportDisplay(ExportDisplay exportDisplay)Specifies whether the exported data will be downloaded as an attachment or displayed in a  new browser window. | 
| DSRequest | setExportFields(java.lang.String... exportFields)The list of field names to export. | 
| DSRequest | setExportFilename(java.lang.String exportFilename)The name of the file to save the exported data into. | 
| DSRequest | setExportFooter(java.lang.String exportFooter)Optional text to appear at the end of the file. | 
| DSRequest | setExportHeader(java.lang.String exportHeader)Optional text to appear at the beginning of the file. | 
| DSRequest | setExportHeaderless(java.lang.Boolean exportHeaderless)This property allows omitting column names from CSV and Excel exports (no effect on JSON or XML exports). | 
| DSRequest | setExportImageFormat(ExportImageFormat exportImageFormat)The image format in which the SVG graphic should be exported. | 
| DSRequest | setExportImageQuality(java.lang.Double exportImageQuality)If exporting in  JPEG format, the output JPEG quality level. | 
| DSRequest | setExportImageQuality(java.lang.Float exportImageQuality)Deprecated. 
 | 
| DSRequest | setExportNumbersAsFormattedString(java.lang.Boolean exportNumbersAsFormattedString)When exporting via  ListGrid.exportClientData()to anXLSorOOXMLspreadsheet, forces numbers to export as a string rather than a true numerical
 value. | 
| DSRequest | setExportPath(java.lang.String exportPath)If  exportToFilesystemis set, optionally specifies a 
 path to use when saving the file. | 
| DSRequest | setExportPropertyIdentifier(PropertyIdentifier exportPropertyIdentifier)Determines the  PropertyIdentifierto be used in the exported data. | 
| DSRequest | setExportRawValues(java.lang.Boolean exportRawValues)Whether formatting settings should be applied to data being exported. | 
| DSRequest | setExportResults(java.lang.Boolean exportResults)When set, causes the results of the DSRequest to be exported to a file, whose name 
  and format are indicated by  exportFilenameandexportAsrespectively. | 
| DSRequest | setExportShowHeaderSpanTitles(java.lang.Boolean exportShowHeaderSpanTitles)When you erxport a  ListGridthat hasheaderSpans, should headerSpans also be exported. | 
| DSRequest | setExportSpanTitleSeparator(java.lang.String exportSpanTitleSeparator)When you export a  ListGridthat hasheaderSpansdefined andexportShowHeaderSpanTitlesis true, the behavior is
 dependent on the export type. | 
| DSRequest | setExportStreaming(boolean exportStreaming)When exporting to OOXML format (this is the standard file format used by Excel 2007 and  later), we default to using
 streaming mode, for memory efficiency. | 
| DSRequest | setExportTitleSeparatorChar(java.lang.String exportTitleSeparatorChar)The character with which to replace spaces in field-titles when exporting to XML. | 
| DSRequest | setExportToClient(java.lang.Boolean exportToClient)If set to true (the default), Smart GWT Server will export data back to the client, either as a file download or as
 content in a new browser window, depending on the setting of  exportDisplay. | 
| DSRequest | setExportToFilesystem(java.lang.Boolean exportToFilesystem)If set, Smart GWT Server will export data to a file on the server filesystem. | 
| DSRequest | setExportTZ(java.lang.String exportTZ)For server-side export with  ExportFormat"xls" or "ooxml" only, timezone to use when
 saving values fromFieldType"datetime" to the spreadsheet. | 
| DSRequest | setExportValueFields(java.lang.Boolean exportValueFields)This flag has a different meaning depending on whether you are doing a client-driven or server-driven export. | 
| DSRequest | setFieldValueExpressions(java.util.Map fieldValueExpressions)A set of key:value pairs, mapping field names to expressions that will be evaluated 
  server-side to derive a value for that field. | 
| DSRequest | setGenerateRelatedUpdates(java.lang.Boolean generateRelatedUpdates)Specifies should related updates have to be generated. | 
| DSRequest | setGroupBy(java.lang.String... groupBy)List of fields to group by when using  server-side summarization. | 
| DSRequest | setHeaderData(java.util.Map headerData)For DataSources using SOAP messaging with a WSDL web service, data to be serialized to form SOAP headers, as a map from
 the header part name to the data. | 
| DSRequest | setKeepParentsOnFilter(java.lang.Boolean keepParentsOnFilter)This property is for advanced use in integrating trees that   load data on demandusing data paging. | 
| DSRequest | setLineBreakStyle(java.lang.String lineBreakStyle)The style of line-breaks to use in the exported output. | 
| DSRequest | setLinkDataFetchOperation(java.lang.String linkDataFetchOperation)For a databound  multi-link tree, this is theoperationIdto use for the separate fetch on theResultTree.linkDataSourcethat will be generated ifLinkDataFetchModeis "separate". | 
| void | setOldValues(com.google.gwt.core.client.JavaScriptObject oldValues)For an  updateorremoveoperation, the original values from the record that is being updated
 or removed. | 
| void | setOldValues(java.util.Map oldValues)For an  updateorremoveoperation, the original values from the record that is being updated
 or removed. | 
| DSRequest | setOldValues(Record oldValues)For an  updateorremoveoperation, the original values from the record that is being updated
 or removed. | 
| DSRequest | setOperationId(java.lang.String operationId)When a  DataBoundComponentsends a DSRequest, thedsRequest.operationIdwill be automatically picked up from thefetchOperation,addOperation, etc properties of the
 DataBoundComponent. | 
| DSRequest | setOperationType(DSOperationType operationType)Type of operation being performed: "fetch", "add", "remove", "update" or "custom". | 
| DSRequest | setOutputs(java.lang.String outputs)The list of fields to return in the response, specified as a comma-separated string (eg,  "foo, bar, baz"). | 
| DSRequest | setParams(java.util.Map params)Values to be sent as simple HTTP params, as a JavaScript Object where each property/value pair will become an HTTP
 parameter name and value. | 
| DSRequest | setPendingAdd(java.lang.Boolean pendingAdd)Indicates that a validation request is being made for a record that will ultimately be  saved with an "add" request, as
 opposed to an "update" request. | 
| DSRequest | setProgressiveLoading(java.lang.Boolean progressiveLoading)Sets  progressive loading modefor this particular
 request, overriding the OperationBinding- and DataSource-level settings. | 
| void | setRawSummaryFunctions(java.util.Map<java.lang.String,java.lang.String> summaryFunctions)Same as  #setSummaryFunctions(), but allowing to set any functions, not just ones built into the framework, 
 so that in combination with custom implementation on the server-side you can perform custom aggregation. | 
| DSRequest | setShouldUseCache(java.lang.Boolean shouldUseCache)This is a per-request flag for explicitly controlling whether the cache is used (bypassing it when not wanted, or using
 it when settings would indicate otherwise). | 
| void | setSkinName(java.lang.String skinName)Set the skin to use. | 
| void | setSortBy(SortSpecifier sortSpecifier)Fieldnames to sortBy. | 
| void | setSortBy(SortSpecifier[] sortSpecifiers)Fieldnames to sortBy. | 
| DSRequest | setStartRow(java.lang.Integer startRow)Starting row of requested results, used only with fetch operations. | 
| DSRequest | setStreamResults(boolean streamResults)If true, results will be streamed on the server, rather than all records being read into  server memory at once; this
 approach is appropriate for retrieving or exporting large datasets without swamping the server. | 
| void | setSummaryFunctions(java.util.Map<java.lang.String,SummaryFunctionType> summaryFunctions)A mapping from field names to summary functions to be applied to each field. | 
| DSRequest | setTextMatchStyle(TextMatchStyle textMatchStyle)For "fetch" operations, how search criteria should be interpreted for text fields: one of "exact" for exact match,
 "exactCase" for case-sensitive exact match, "startsWith" for  matching at the beginning only, or "substring" for
 substring match. | 
| DSRequest | setUseFlatFields(java.lang.Boolean useFlatFields)When  useFlatFieldsis set for a request to be sent to a WSDL web service, when
  creating the input XML message to send to the web service, properties inrequest.datawill be used as the values for XML elements of the same
 name, at
  any level of nesting. | 
| DSRequest | setUseFlatHeaderFields(java.lang.Boolean useFlatHeaderFields)Cause the  useFlatFieldsXML serialization behavior to be
 used for all soap headers in the request. | 
| DSRequest | setUseStrictJSON(java.lang.Boolean useStrictJSON)Should the HTTP response to this request be formatted using the strict JSON subset of the javascript language? If set to
 true, responses returned by the server should match the format described here. | 
| DSRequest | setValidationMode(ValidationMode validationMode)Mode of validation for entered data. | 
getActionURL, getAllowIE9Leak, getBypassCache, getCallbackParam, getContainsCredentials, getContentType, getData, getDataAsString, getDownloadResult, getDownloadToNewWindow, getEvalResult, getHttpHeaders, getHttpMethod, getHttpProxyURL, getIgnoreTimeout, getMockMode, getOmitNullMapValuesInResponse, getParams, getPrompt, getPromptCursor, getPromptDelay, getPromptStyle, getReportDownloadErrorsAsDocuments, getSendNoQueue, getServerOutputAsString, getShowPrompt, getSuppressAutoDraw, getTimeout, getTransport, getUseCursorTracker, getUseHttpProxy, getUseSimpleHttp, getWillHandleError, getWithCredentials, isDSRequest, setActionURL, setAllowIE9Leak, setBypassCache, setCallbackParam, setContainsCredentials, setContentType, setData, setData, setData, setData, setDownloadResult, setDownloadToNewWindow, setEvalResult, setEvalVars, setHttpHeaders, setHttpMethod, setHttpProxyURL, setIgnoreTimeout, setMockMode, setOmitNullMapValuesInResponse, setPrompt, setPromptCursor, setPromptDelay, setPromptStyle, setReportDownloadErrorsAsDocuments, setSendNoQueue, setServerOutputAsString, setShowPrompt, setSuppressAutoDraw, setTimeout, setTransport, setUseCursorTracker, setUseHttpProxy, setUseSimpleHttp, setWillHandleError, setWithCredentialsgetRef, getRef, internalSetIDapplyFactoryProperties, 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, setAttributeAsJavaObject, setFactoryCreatedpublic DSRequest()
public DSRequest(com.google.gwt.core.client.JavaScriptObject jsObj)
public DSRequest(DSOperationType operationType)
public DSRequest(DSOperationType operationType, java.lang.String operationId)
public DSRequest(DSOperationType operationType, Record data)
public DSRequest(DSOperationType operationType, java.lang.String operationId, Record data)
public DSRequest(DSOperationType operationType, com.google.gwt.core.client.JavaScriptObject data)
public DSRequest(DSOperationType operationType, java.lang.String operationId, com.google.gwt.core.client.JavaScriptObject data)
public DSRequest(DSOperationType operationType, Criteria criteria)
public DSRequest(DSOperationType operationType, java.lang.String operationId, Criteria criteria)
public static DSRequest getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public DSRequest setAdditionalOutputs(java.lang.String additionalOutputs)
  Fields should be specified in the format 
  "localFieldName!relatedDataSourceID.relatedDataSourceFieldName".
  where relatedDataSourceID is the ID of the related dataSource, and
  relatedDataSourceFieldName is the field for which you want to
  fetch related values. The returned field values will be stored on 
  the data returned to the client under the specified localFieldName.
 Note that this will be applied in addition to any specified outputs.
  
 Note that as with DataSourceField.includeFrom, the
 related dataSource must be
  linked to the primary datasource via a foreignKey relationship.
  
  Note additionalOutputs sent in request from the browser can be completely disabled in 
  server.properties by setting
  datasource.allowClientAdditionalOutputs:
  
      datasource.allowClientAdditionalOutputs: false
  
 In this case additionalOutputs sent from the browser
 will be cleared before 
  executing request. Note that programatically configured additionalOutputs are always allowed, but 
  you can't modify them from within a DMI method, so the only way to execute a request 
  with additionalOutputs that differ from what was sent by the client is to create a new DSRequest
 Note : This is an advanced setting
additionalOutputs - New additionalOutputs value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getAdditionalOutputs()
  Fields should be specified in the format 
  "localFieldName!relatedDataSourceID.relatedDataSourceFieldName".
  where relatedDataSourceID is the ID of the related dataSource, and
  relatedDataSourceFieldName is the field for which you want to
  fetch related values. The returned field values will be stored on 
  the data returned to the client under the specified localFieldName.
 Note that this will be applied in addition to any specified outputs.
  
 Note that as with DataSourceField.includeFrom, the
 related dataSource must be
  linked to the primary datasource via a foreignKey relationship.
  
  Note additionalOutputs sent in request from the browser can be completely disabled in 
  server.properties by setting
  datasource.allowClientAdditionalOutputs:
  
      datasource.allowClientAdditionalOutputs: false
  
 In this case additionalOutputs sent from the browser
 will be cleared before 
  executing request. Note that programatically configured additionalOutputs are always allowed, but 
  you can't modify them from within a DMI method, so the only way to execute a request 
  with additionalOutputs that differ from what was sent by the client is to create a new DSRequestpublic DSRequest setComponentId(java.lang.String componentId)
DataBoundComponent, the Canvas.ID of the submitting component.  This ID will be present for
 operations including automatic saves by a ListGrid  during editing, or calls to
 form.saveData().  It will not be present for a direct call
 to a DataSource method such as DataSource.fetchData(). 
 Note
 this is the component's String ID - you can retrieve the component itself via Canvas.getById(). 
 This property should be used for debugging purposes
 only - do not use it to trigger differences in server-side behavior, instead, use operationId because only operationId is considered when
 assessing request equivalence.
componentId - New componentId value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getComponentId()
DataBoundComponent, the Canvas.ID of the submitting component.  This ID will be present for
 operations including automatic saves by a ListGrid  during editing, or calls to
 form.saveData().  It will not be present for a direct call
 to a DataSource method such as DataSource.fetchData(). 
 Note
 this is the component's String ID - you can retrieve the component itself via Canvas.getById(). 
 This property should be used for debugging purposes
 only - do not use it to trigger differences in server-side behavior, instead, use operationId because only operationId is considered when
 assessing request equivalence.
public DSRequest setDataProtocol(DSProtocol dataProtocol)
DataProtocol for this particular request.  Note:
 Typically developers should use operation bindings to
 specify an explicit data protocol for a request. 
 One exception: advanced developers may wish to have a custom 
 request transformer with entirely client-side handling for
 some requests. This may be achieved by setting the request's dataProtocol to "clientCustom" within transformRequest, and also triggering application code which
 will fire DataSource.processResponse() when complete. 
 The DataSource.getDataProtocol() method may be used to
 determine what data protocol will be used to handle a specific request based on this property (if set), otherwise the
 settings at the operationBinding or  dataSource levels.
dataProtocol - New dataProtocol value. Default value is nullDSRequest instance, for chaining setter callspublic DSProtocol getDataProtocol()
DataProtocol for this particular request.  Note:
 Typically developers should use operation bindings to
 specify an explicit data protocol for a request. 
 One exception: advanced developers may wish to have a custom 
 request transformer with entirely client-side handling for
 some requests. This may be achieved by setting the request's dataProtocol to "clientCustom" within transformRequest, and also triggering application code which
 will fire DataSource.processResponse() when complete. 
 The DataSource.getDataProtocol() method may be used to
 determine what data protocol will be used to handle a specific request based on this property (if set), otherwise the
 settings at the operationBinding or  dataSource levels.
public DSRequest setDataSource(java.lang.String dataSource)
 This property is generally automatically populated, for example when calling
 DataSource.fetchData() the dataSource property is set to the
 target DataSource.
dataSource - New dataSource value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getDataSource()
 This property is generally automatically populated, for example when calling
 DataSource.fetchData() the dataSource property is set to the
 target DataSource.
public DSRequest setEndRow(java.lang.Integer endRow)
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
endRow - New endRow value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Integer getEndRow()
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
public DSRequest setExportAs(ExportFormat exportAs)
ExportFormat for more information.exportAs - New exportAs value. Default value is "csv"DSRequest instance, for chaining setter callspublic ExportFormat getExportAs()
ExportFormat for more information.public DSRequest setExportCSS(java.lang.String exportCSS)
RPCManager.exportContent() to produce a .pdf from a
 Smart GWT UI, this property allows  dynamic CSS to be passed to the server.  Since the exportContent()
 system already provides  a way to specify a custom skin or additional stylesheet for export, exportCSS
 should only be used for small bits of CSS that are necessarily dynamic.  For example, when printing a very wide page,
 such as a grid with many columns or a very wide chart, you could send the string "@page {size: A4 landscape; }" as
 exportCSS to cause the generated PDF to use landscape mode, so that all content fits without clipping.
exportCSS - New exportCSS value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getExportCSS()
RPCManager.exportContent() to produce a .pdf from a
 Smart GWT UI, this property allows  dynamic CSS to be passed to the server.  Since the exportContent()
 system already provides  a way to specify a custom skin or additional stylesheet for export, exportCSS
 should only be used for small bits of CSS that are necessarily dynamic.  For example, when printing a very wide page,
 such as a grid with many columns or a very wide chart, you could send the string "@page {size: A4 landscape; }" as
 exportCSS to cause the generated PDF to use landscape mode, so that all content fits without clipping.
public DSRequest setExportData(Record... exportData)
ListGrid.exportClientData(). If specified this property contains an arbitrary set of data to be exported.exportData - New exportData value. Default value is nullDSRequest instance, for chaining setter callspublic Record[] getExportData()
ListGrid.exportClientData(). If specified this property contains an arbitrary set of data to be exported.public DSRequest setExportDatesAsFormattedString(java.lang.Boolean exportDatesAsFormattedString)
ListGrid.exportClientData() to an
 XLS or OOXML spreadsheet, forces dates to export as a string rather than a true date value.
 If a date value is provided to a spreadsheet as a string, Excel or other spreadsheet applications may not recognize them as being date values that are valid for use in date-specific functions in formulas, filters, etc.
 For this
 reason, the default behavior of exportClientData is to provide date values to the spreadsheet as true date
 values.  If Format Strings are provided via properties like dataSourceField.format these will be translated to Excel /
 OpenOffice format strings and used when generating spreadsheets.  Other formatting logic, such as cell formatters, will not be used since they cannot be
 automatically translated to an Excel format string.  If no translatable format string is available, date values will be
 provided to the spreadsheet with no formatter and the spreadsheet program's default formatting for date values will be
 used. 
 If exportDatesAsFormattedString is set to true, date fields will appear as strings that exactly
 match the formatting shown in the DataBoundComponent. As noted above, this means the
 spreadsheet program will not recognize the value as a date.
exportDatesAsFormattedString - New exportDatesAsFormattedString value. Default value is nullDSRequest instance, for chaining setter callsDataSourceField.setExportFormat(java.lang.String), 
ExportFormatting overview and related methodspublic java.lang.Boolean getExportDatesAsFormattedString()
ListGrid.exportClientData() to an
 XLS or OOXML spreadsheet, forces dates to export as a string rather than a true date value.
 If a date value is provided to a spreadsheet as a string, Excel or other spreadsheet applications may not recognize them as being date values that are valid for use in date-specific functions in formulas, filters, etc.
 For this
 reason, the default behavior of exportClientData is to provide date values to the spreadsheet as true date
 values.  If Format Strings are provided via properties like dataSourceField.format these will be translated to Excel /
 OpenOffice format strings and used when generating spreadsheets.  Other formatting logic, such as cell formatters, will not be used since they cannot be
 automatically translated to an Excel format string.  If no translatable format string is available, date values will be
 provided to the spreadsheet with no formatter and the spreadsheet program's default formatting for date values will be
 used. 
 If exportDatesAsFormattedString is set to true, date fields will appear as strings that exactly
 match the formatting shown in the DataBoundComponent. As noted above, this means the
 spreadsheet program will not recognize the value as a date.
DataSourceField.getExportFormat(), 
ExportFormatting overview and related methodspublic DSRequest setExportDelimiter(java.lang.String exportDelimiter)
exportDelimiter - New exportDelimiter value. Default value is ","DSRequest instance, for chaining setter callspublic java.lang.String getExportDelimiter()
public DSRequest setExportDisplay(ExportDisplay exportDisplay)
ExportDisplay for more information.exportDisplay - New exportDisplay value. Default value is "download"DSRequest instance, for chaining setter callspublic ExportDisplay getExportDisplay()
ExportDisplay for more information.public DSRequest setExportFields(java.lang.String... exportFields)
If exportFields is not provided:
exportData(), the field list in the exported output is every
 non-hidden field defined in the DataSource, in DataSource definition orderexportClientData() and we are not  exporting to OOXML, or we
 are exporting to OOXML but we are not  streaming, the
 field list in the exported output is based on the  client data sent up, taking every row into account (so if there is a
 value for field "foo" only in row 57, we will output a column "foo", the cells of which are empty except for  row
 57)exportClientData() and we are  exporting to OOXML and streaming is in force (the default for OOXML), the field list in 
 the exported output is based on the client data sent up, taking just the first row into  account (so if there is a value
 for field "foo" only in row 57, we will not output a column "foo" at all)exportFields - New exportFields value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String[] getExportFields()
If exportFields is not provided:
exportData(), the field list in the exported output is every
 non-hidden field defined in the DataSource, in DataSource definition orderexportClientData() and we are not  exporting to OOXML, or we
 are exporting to OOXML but we are not  streaming, the
 field list in the exported output is based on the  client data sent up, taking every row into account (so if there is a
 value for field "foo" only in row 57, we will output a column "foo", the cells of which are empty except for  row
 57)exportClientData() and we are  exporting to OOXML and streaming is in force (the default for OOXML), the field list in 
 the exported output is based on the client data sent up, taking just the first row into  account (so if there is a value
 for field "foo" only in row 57, we will not output a column "foo" at all)public DSRequest setExportFilename(java.lang.String exportFilename)
exportToFilesystem is set, this is the name of the  file the
 server creates on its filesystem.  If exportToClient is
 set, this is the filename that will appear to the browser.  If the exportFilename that you specify does not include
 an extension, one will be added to it based on the ExportFormat specified by exportAs. Filename is forced to have the correct extension to work
 around bugs in IE, but if you don't want the filename to be manipulated, use "custom" exportFormat, see example.
exportFilename - New exportFilename value. Default value is nullDSRequest instance, for chaining setter callssetExportPath(java.lang.String), 
Custom Export (Custom Response) Examplepublic java.lang.String getExportFilename()
exportToFilesystem is set, this is the name of the  file the
 server creates on its filesystem.  If exportToClient is
 set, this is the filename that will appear to the browser.  If the exportFilename that you specify does not include
 an extension, one will be added to it based on the ExportFormat specified by exportAs. Filename is forced to have the correct extension to work
 around bugs in IE, but if you don't want the filename to be manipulated, use "custom" exportFormat, see example.
getExportPath(), 
Custom Export (Custom Response) Examplepublic DSRequest setExportFooter(java.lang.String exportFooter)
exportFooter - New exportFooter value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getExportFooter()
public DSRequest setExportHeader(java.lang.String exportHeader)
exportHeader - New exportHeader value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getExportHeader()
public DSRequest setExportHeaderless(java.lang.Boolean exportHeaderless)
exportHeaderless - New exportHeaderless value. Default value is falseDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportHeaderless()
public DSRequest setExportImageFormat(ExportImageFormat exportImageFormat)
exportImageFormat - New exportImageFormat value. Default value is "png"DSRequest instance, for chaining setter callspublic ExportImageFormat getExportImageFormat()
public DSRequest setExportImageQuality(java.lang.Float exportImageQuality)
GwtFloatVsDoubleJPEG format, the output JPEG quality level. This is
 a number from 0 to 1, with 1 representing the best quality and 0 representing the least quality but smallest file size.exportImageQuality - New exportImageQuality value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Float getExportImageQuality()
GwtFloatVsDoubleJPEG format, the output JPEG quality level. This is
 a number from 0 to 1, with 1 representing the best quality and 0 representing the least quality but smallest file size.public DSRequest setExportImageQuality(java.lang.Double exportImageQuality)
JPEG format, the output JPEG quality level. This is
 a number from 0 to 1, with 1 representing the best quality and 0 representing the least quality but smallest file size.exportImageQuality - New exportImageQuality value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Double getExportImageQualityAsDouble()
JPEG format, the output JPEG quality level. This is
 a number from 0 to 1, with 1 representing the best quality and 0 representing the least quality but smallest file size.public DSRequest setExportNumbersAsFormattedString(java.lang.Boolean exportNumbersAsFormattedString)
ListGrid.exportClientData() to an
 XLS or OOXML spreadsheet, forces numbers to export as a string rather than a true numerical
 value. If a number is provided to a spreadsheet as a string, Excel or other spreadsheet applications may not recognize them as being numbers that are valid for use in numerical formulas, filters, etc.
 For this reason, the
 default behavior of exportClientData is to provide numerical values to the spreadsheet as true numbers.  If
 Format Strings are provided via properties like dataSourceField.format these will be translated to Excel /
 OpenOffice format strings and used when generating spreadsheets.  Other formatting logic, such as cell formatters, will not be used since they cannot be
 automatically translated to an Excel format string.  If no translatable format string is available, numbers will be
 provided to the spreadsheet with no formatter and the spreadsheet program's default formatting for numerical values will
 be used. 
 If exportNumbersAsFormattedString is set to true, numbers will appear as strings that exactly
 match the formatting shown in the DataBoundComponent. As noted above, this means the
 spreadsheet program will not recognize the value as a number.
exportNumbersAsFormattedString - New exportNumbersAsFormattedString value. Default value is nullDSRequest instance, for chaining setter callsDataSourceField.setExportFormat(java.lang.String), 
ExportFormatting overview and related methodspublic java.lang.Boolean getExportNumbersAsFormattedString()
ListGrid.exportClientData() to an
 XLS or OOXML spreadsheet, forces numbers to export as a string rather than a true numerical
 value. If a number is provided to a spreadsheet as a string, Excel or other spreadsheet applications may not recognize them as being numbers that are valid for use in numerical formulas, filters, etc.
 For this reason, the
 default behavior of exportClientData is to provide numerical values to the spreadsheet as true numbers.  If
 Format Strings are provided via properties like dataSourceField.format these will be translated to Excel /
 OpenOffice format strings and used when generating spreadsheets.  Other formatting logic, such as cell formatters, will not be used since they cannot be
 automatically translated to an Excel format string.  If no translatable format string is available, numbers will be
 provided to the spreadsheet with no formatter and the spreadsheet program's default formatting for numerical values will
 be used. 
 If exportNumbersAsFormattedString is set to true, numbers will appear as strings that exactly
 match the formatting shown in the DataBoundComponent. As noted above, this means the
 spreadsheet program will not recognize the value as a number.
DataSourceField.getExportFormat(), 
ExportFormatting overview and related methodspublic DSRequest setExportPath(java.lang.String exportPath)
exportToFilesystem is set, optionally specifies a 
 path to use when saving the file.  This path is relative to the default export path, which is set using the server.properties setting export.location; this is the project
 webRoot by default.  For example, with the default setting of  export.location, an exportPath
 of "shared/ds" and  an exportFilename of
 "exportedData.csv", Smart GWT Server would export to file $webRoot/shared/ds/exportedData.csv.
  If you do not specify this property, Smart GWT Server will export to the file indicated  by
 exportFilename directly in the default export location. 
 This property is only applicable when exportToFilesystem is set.
exportPath - New exportPath value. Default value is nullDSRequest instance, for chaining setter callssetExportFilename(java.lang.String)public java.lang.String getExportPath()
exportToFilesystem is set, optionally specifies a 
 path to use when saving the file.  This path is relative to the default export path, which is set using the server.properties setting export.location; this is the project
 webRoot by default.  For example, with the default setting of  export.location, an exportPath
 of "shared/ds" and  an exportFilename of
 "exportedData.csv", Smart GWT Server would export to file $webRoot/shared/ds/exportedData.csv.
  If you do not specify this property, Smart GWT Server will export to the file indicated  by
 exportFilename directly in the default export location. 
 This property is only applicable when exportToFilesystem is set.
getExportFilename()public DSRequest setExportPropertyIdentifier(PropertyIdentifier exportPropertyIdentifier)
PropertyIdentifier to be used in the exported data.  This essentially
 means, should we export internal field names like "countryCode" or "EMPLOYEE_NO", or localized descriptive field titles
 like "code du pays" or "Employee Number".  This setting has a lot in common with exportRawValues; both are largely dependent on whether the
 exported data is intended for direct consumption by an end user (in which case it is appropriate to export formatted
 values and localized field titles), or for interface to some downstream computer system (in which case you probably want
 raw, unformatted values and internal field names). If this property is not set, the following defaults apply:
exportClientData()),  localized field titles are usedexportPropertyIdentifier - New exportPropertyIdentifier value. Default value is nullDSRequest instance, for chaining setter callsExportFormatting overview and related methodspublic PropertyIdentifier getExportPropertyIdentifier()
PropertyIdentifier to be used in the exported data.  This essentially
 means, should we export internal field names like "countryCode" or "EMPLOYEE_NO", or localized descriptive field titles
 like "code du pays" or "Employee Number".  This setting has a lot in common with exportRawValues; both are largely dependent on whether the
 exported data is intended for direct consumption by an end user (in which case it is appropriate to export formatted
 values and localized field titles), or for interface to some downstream computer system (in which case you probably want
 raw, unformatted values and internal field names). If this property is not set, the following defaults apply:
exportClientData()),  localized field titles are usedExportFormatting overview and related methodspublic DSRequest setExportRawValues(java.lang.Boolean exportRawValues)
exportRawValues is described in the Export Formatting
 overview.exportRawValues - New exportRawValues value. Default value is nullDSRequest instance, for chaining setter callsExportFormatting overview and related methodspublic java.lang.Boolean getExportRawValues()
exportRawValues is described in the Export Formatting
 overview.ExportFormatting overview and related methodspublic DSRequest setExportResults(java.lang.Boolean exportResults)
exportFilename and 
 exportAs respectively.  When no exportFilename is provided, the
 default is
  Results.csv and the default value of exportAs is csv.  
  
 The export field-list can also be configured, see exportFields.  Formats 
  for exported date and numeric are controlled by several settings - see 
  ExportFormatting for an overview.
  
 Once the operation completes, exportDisplay specifies
 whether the exported
  data should be downloaded to the file-system or displayed in a new window.  The default value
  of exportDisplay is "download" which displays the Save As dialog.  See ExportDisplay 
  for more information.
  
  You can configure the style of line-breaks to use when 
 generating the output, the delimiter to use when exporting
  to CSV and the separator-character to use in 
  field-titles when exporting to XML.
  
  Additionally, you can output arbitrary text before and after the exported data by setting 
 exportHeader and exportFooter.
  
Note that for security reasons, an export initiated using dsRequest properties does not provide support for JSON format (see this post for more detail). However, you can use operationBinding.exportAs:"json" in a server-side .ds.xml file to force JSON export to be allowed.
  As well as setting dsRequest.exportResults and related properties, exports can be initiated
  in two other ways, via OperationBindings and via custom server code which sets 
  export-related properties on the DSResponse.  Both of those methods support exporting
  to JSON format.
  
Format Examples XML format
      <List>
          <Object>
              <id>10101</id>
              <displayName>Record 10101</displayName>
          </Object>
     </List>
  
  JSON Format
  
      [
          { id: 10101, displayName: "Record 10101" }
      ]
  
  CSV Format
  
      id,displayName
      10101,"Record 10101"
  exportResults - New exportResults value. Default value is falseDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportResults()
exportFilename and 
 exportAs respectively.  When no exportFilename is provided, the
 default is
  Results.csv and the default value of exportAs is csv.  
  
 The export field-list can also be configured, see exportFields.  Formats 
  for exported date and numeric are controlled by several settings - see 
  ExportFormatting for an overview.
  
 Once the operation completes, exportDisplay specifies
 whether the exported
  data should be downloaded to the file-system or displayed in a new window.  The default value
  of exportDisplay is "download" which displays the Save As dialog.  See ExportDisplay 
  for more information.
  
  You can configure the style of line-breaks to use when 
 generating the output, the delimiter to use when exporting
  to CSV and the separator-character to use in 
  field-titles when exporting to XML.
  
  Additionally, you can output arbitrary text before and after the exported data by setting 
 exportHeader and exportFooter.
  
Note that for security reasons, an export initiated using dsRequest properties does not provide support for JSON format (see this post for more detail). However, you can use operationBinding.exportAs:"json" in a server-side .ds.xml file to force JSON export to be allowed.
  As well as setting dsRequest.exportResults and related properties, exports can be initiated
  in two other ways, via OperationBindings and via custom server code which sets 
  export-related properties on the DSResponse.  Both of those methods support exporting
  to JSON format.
  
Format Examples XML format
      <List>
          <Object>
              <id>10101</id>
              <displayName>Record 10101</displayName>
          </Object>
     </List>
  
  JSON Format
  
      [
          { id: 10101, displayName: "Record 10101" }
      ]
  
  CSV Format
  
      id,displayName
      10101,"Record 10101"
  public DSRequest setExportShowHeaderSpanTitles(java.lang.Boolean exportShowHeaderSpanTitles)
ListGrid that has headerSpans, should headerSpans also be exported.  See exportSpanTitleSeparator for details of of what it means
 to export headerSpans to different export targets.      Note that exportPropertyIdentifier controls whether field names or
 titles are appended to the headerSpan titles (and used for fields without headerSpans).
exportShowHeaderSpanTitles - New exportShowHeaderSpanTitles value. Default value is trueDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportShowHeaderSpanTitles()
ListGrid that has headerSpans, should headerSpans also be exported.  See exportSpanTitleSeparator for details of of what it means
 to export headerSpans to different export targets.      Note that exportPropertyIdentifier controls whether field names or
 titles are appended to the headerSpan titles (and used for fields without headerSpans).
public DSRequest setExportSpanTitleSeparator(java.lang.String exportSpanTitleSeparator)
ListGrid that has headerSpans defined and exportShowHeaderSpanTitles is true, the behavior is
 dependent on the export type.  Direct exports to Excel formats (both XLS and OOXML) place the  headerSpans in merged
 cells in the spreadsheet, giving the same visual effect as the  original ListGrid.  This is not possible with exports to
 CSV format; instead, we alter the  exported headers so that they contain the titles of the ancestor headerSpan(s). For example, if you had a field titled "Population" inside a headerSpan titled "National", nested inside another headerSpan titled "Demographics", that would result in the exported field being titled "Demographics - National - Population".
 The exportSpanTitleSeparator property allows you to override the separator  string used
 when constructing these amalgamated headers.
exportSpanTitleSeparator - New exportSpanTitleSeparator value. Default value is " - "DSRequest instance, for chaining setter callspublic java.lang.String getExportSpanTitleSeparator()
ListGrid that has headerSpans defined and exportShowHeaderSpanTitles is true, the behavior is
 dependent on the export type.  Direct exports to Excel formats (both XLS and OOXML) place the  headerSpans in merged
 cells in the spreadsheet, giving the same visual effect as the  original ListGrid.  This is not possible with exports to
 CSV format; instead, we alter the  exported headers so that they contain the titles of the ancestor headerSpan(s). For example, if you had a field titled "Population" inside a headerSpan titled "National", nested inside another headerSpan titled "Demographics", that would result in the exported field being titled "Demographics - National - Population".
 The exportSpanTitleSeparator property allows you to override the separator  string used
 when constructing these amalgamated headers.
public DSRequest setExportStreaming(boolean exportStreaming)
SXSSFWorkbook - is intended for write only and cannot usefully be read.  You can
 switch off Excel streaming altogether by setting "excel.useStreaming" false in  server.properties. 
Note, OOXML is the only native Excel format that supports streaming: when exporting to the older XLS format, we build the spreadsheet in its entirety in server-side memory before writing it to disk or returning it to the client. This is unlikely to change: streaming the XLS format is impractical bcause it is a self-referential binary format, and in any case the problem of huge exports overflowing JVM memory is less likely to arise with XLS, because it is innately limited to 65535 rows.
exportStreaming - New exportStreaming value. Default value is trueDSRequest instance, for chaining setter callspublic boolean getExportStreaming()
SXSSFWorkbook - is intended for write only and cannot usefully be read.  You can
 switch off Excel streaming altogether by setting "excel.useStreaming" false in  server.properties. 
Note, OOXML is the only native Excel format that supports streaming: when exporting to the older XLS format, we build the spreadsheet in its entirety in server-side memory before writing it to disk or returning it to the client. This is unlikely to change: streaming the XLS format is impractical bcause it is a self-referential binary format, and in any case the problem of huge exports overflowing JVM memory is less likely to arise with XLS, because it is innately limited to 65535 rows.
public DSRequest setExportTitleSeparatorChar(java.lang.String exportTitleSeparatorChar)
exportTitleSeparatorChar - New exportTitleSeparatorChar value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getExportTitleSeparatorChar()
public DSRequest setExportToClient(java.lang.Boolean exportToClient)
exportDisplay.  Setting this property to false disables this. This may be useful when developers  wish to export the data to a file on the server fileSystem, but do not
 need to display it in the browser in response to the export request. 
 Note that it is perfectly valid to have both
 this property and  exportToFilesystem set to true; in
 this case the data is both  exported to a file on the server filesystem, and downloaded to the client.  If you specify 
 neither property, the export no-ops.
exportToClient - New exportToClient value. Default value is trueDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportToClient()
exportDisplay.  Setting this property to false disables this. This may be useful when developers  wish to export the data to a file on the server fileSystem, but do not
 need to display it in the browser in response to the export request. 
 Note that it is perfectly valid to have both
 this property and  exportToFilesystem set to true; in
 this case the data is both  exported to a file on the server filesystem, and downloaded to the client.  If you specify 
 neither property, the export no-ops.
public DSRequest setExportToFilesystem(java.lang.Boolean exportToFilesystem)
exportFilename and  exportPath.  Note that filesystem exports are disabled by  default,
 for security reasons.  To enable them, set export.allow.filesystem to true in your
 server.properties file.  If you enable filesystem exports, you  should also consider setting a default
 export path, as described in the  exportPath documentation. 
 Note that it is perfectly valid to specify both this property and  exportToClient; in this case the data is both exported to a file
 on the server filesystem and downloaded to the client.  If you specify  neither property, the export
 no-ops. 
 It is possible to redirect the filesystem export to make use of an OutputStream you provide. 
 You use this when you want to make some use of the export document other than  writing it to a disk file - for example,
 attaching it to an email or writing it to a  database table.  See the server-side Javadocs for
 DSRequest.setExportTo().
exportToFilesystem - New exportToFilesystem value. Default value is falseDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportToFilesystem()
exportFilename and  exportPath.  Note that filesystem exports are disabled by  default,
 for security reasons.  To enable them, set export.allow.filesystem to true in your
 server.properties file.  If you enable filesystem exports, you  should also consider setting a default
 export path, as described in the  exportPath documentation. 
 Note that it is perfectly valid to specify both this property and  exportToClient; in this case the data is both exported to a file
 on the server filesystem and downloaded to the client.  If you specify  neither property, the export
 no-ops. 
 It is possible to redirect the filesystem export to make use of an OutputStream you provide. 
 You use this when you want to make some use of the export document other than  writing it to a disk file - for example,
 attaching it to an email or writing it to a  database table.  See the server-side Javadocs for
 DSRequest.setExportTo().
public DSRequest setExportTZ(java.lang.String exportTZ)
ExportFormat "xls" or "ooxml" only, timezone to use when
 saving values from FieldType "datetime" to the spreadsheet.  This setting exists
 because MS Excel™ has no concept of providing a true datetime value that is timezone-independent and will display
 in the local timezone where the Excel program is launched. This setting sets the timezone of the Excel workbook, so that
 it will display dates in the same timezone regardless of the local timezone where the Excel program is launched.
 Alternative approach is to set exportDatesAsFormattedString=true telling datetime values must be provided as a rendered string, which implies
 rendering in a particular timezone when the spreadsheet is generated. 
 exportTZ can either be specified
 as a timezone offset in the same format expected by String (for example, "+01:00" for one hour after GMT) or as the
 special constants "client" (meaning the current client display timezone) or "server" (meaning the timezone of the
 server). 
Default if unspecified is "server".
 This setting does not affect fields of type "date" or "time", which
 are timezone-independent values.  See DateFormatAndStorage for more information on how
 Smart GWT handles date, time and datetime values. 
 All non-spreadsheet export formats always use UTC.  This setting
 also does not affect client-driven exports (DataSource.exportClientData()), which always use client-side time.
exportTZ - New exportTZ value. Default value is nullDSRequest instance, for chaining setter callsExportFormatting overview and related methodspublic java.lang.String getExportTZ()
ExportFormat "xls" or "ooxml" only, timezone to use when
 saving values from FieldType "datetime" to the spreadsheet.  This setting exists
 because MS Excel™ has no concept of providing a true datetime value that is timezone-independent and will display
 in the local timezone where the Excel program is launched. This setting sets the timezone of the Excel workbook, so that
 it will display dates in the same timezone regardless of the local timezone where the Excel program is launched.
 Alternative approach is to set exportDatesAsFormattedString=true telling datetime values must be provided as a rendered string, which implies
 rendering in a particular timezone when the spreadsheet is generated. 
 exportTZ can either be specified
 as a timezone offset in the same format expected by String (for example, "+01:00" for one hour after GMT) or as the
 special constants "client" (meaning the current client display timezone) or "server" (meaning the timezone of the
 server). 
Default if unspecified is "server".
 This setting does not affect fields of type "date" or "time", which
 are timezone-independent values.  See DateFormatAndStorage for more information on how
 Smart GWT handles date, time and datetime values. 
 All non-spreadsheet export formats always use UTC.  This setting
 also does not affect client-driven exports (DataSource.exportClientData()), which always use client-side time.
ExportFormatting overview and related methodspublic DSRequest setExportValueFields(java.lang.Boolean exportValueFields)
 For
 exportClientData() calls (client-driven), ordinarily
 any fields that have a displayField defined have
 the value of that displayField exported, rather than the underlying value in the  valueField.  If you set the exportValueFields
 property, we export both the underlying value and the displayField value. 
 Again for exportClientData()
 calls, any fields that have a valueMap defined
 ordinarily have the mapped value of the  field exported, rather than the underlying data value.  If you set the 
 exportValueFields property, we instead export the underlying data value.   Note, there is only one field in
 this scenario, not a valueField and a  separate displayField, so we export either the
 underlying data value or the mapped value, not both as in the displayField/valueField case 
 described above. 
 For exportData() calls
 (server-driven), we ordinarily export the underlying data value of all fields.  However, if you set the 
 exportValueFields property explicitly to false, any fields that have a DataSource-defined
 valueMap will have the mapped value exported instead.  This
 is similar to the client-side treatment of valueMaps, except that the defaults are reversed. 
 For
 exportData() calls, if we encounter a field that has an in-record  displayField declared in the DataSource, by   default
 we export both the underlying value and the display value, so you end up with two columns in the exported data for that
 field.  You can influence this by setting  exportValueFields explicitly: if set true we export
 only the  value field, and if set false we export only the display field.  Note, the  reason for the
 similar but not identical behavior of this flag between exportData() and exportClientData() is
 backwards compatibility.
exportValueFields - New exportValueFields value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getExportValueFields()
 For
 exportClientData() calls (client-driven), ordinarily
 any fields that have a displayField defined have
 the value of that displayField exported, rather than the underlying value in the  valueField.  If you set the exportValueFields
 property, we export both the underlying value and the displayField value. 
 Again for exportClientData()
 calls, any fields that have a valueMap defined
 ordinarily have the mapped value of the  field exported, rather than the underlying data value.  If you set the 
 exportValueFields property, we instead export the underlying data value.   Note, there is only one field in
 this scenario, not a valueField and a  separate displayField, so we export either the
 underlying data value or the mapped value, not both as in the displayField/valueField case 
 described above. 
 For exportData() calls
 (server-driven), we ordinarily export the underlying data value of all fields.  However, if you set the 
 exportValueFields property explicitly to false, any fields that have a DataSource-defined
 valueMap will have the mapped value exported instead.  This
 is similar to the client-side treatment of valueMaps, except that the defaults are reversed. 
 For
 exportData() calls, if we encounter a field that has an in-record  displayField declared in the DataSource, by   default
 we export both the underlying value and the display value, so you end up with two columns in the exported data for that
 field.  You can influence this by setting  exportValueFields explicitly: if set true we export
 only the  value field, and if set false we export only the display field.  Note, the  reason for the
 similar but not identical behavior of this flag between exportData() and exportClientData() is
 backwards compatibility.
public DSRequest setFieldValueExpressions(java.util.Map fieldValueExpressions)
Transaction Chaining, with some restrictions for security
  reasons:server-side Transaction Chaining settings
 for a 
  field take precedence over this property, so server-defined rules cannot be overridden 
  from the clientfieldValueExpressions is also a valid property on a server-side DSRequest,
  and normal Velocity expressions are allowed in that case - see the server-side
  Javadoc for DSRequest.setFieldValueExpressions()).  For client-originated 
  requests, only the following bindings are allowed - see the 
  Velocity overview for details of what these values mean:DSRequestModifier.value for
 detailsVelocity overview for details of $responseDatafieldValueExpression are:
        "startRow", "endRow", "totalRows" and "status"; this restriction does not apply to 
        server-driven fieldValueExpressions.  See the Velocity overview for 
        details of $responsesdeclarative security rules apply:
 if a
  field is not valid for writing, its fieldValueExpression will be ignored.
  Again, this only applies to client-originated requests.fieldValueExpression in 
  client-originated requests by setting a flag in your server.properties file:
  dataSource.allowClientFieldValueExpressions: false
fieldValueExpressions - New fieldValueExpressions value. Default value is nullDSRequest instance, for chaining setter callsTransactionChaining overview and related methodspublic java.util.Map getFieldValueExpressions()
Transaction Chaining, with some restrictions for security
  reasons:server-side Transaction Chaining settings
 for a 
  field take precedence over this property, so server-defined rules cannot be overridden 
  from the clientfieldValueExpressions is also a valid property on a server-side DSRequest,
  and normal Velocity expressions are allowed in that case - see the server-side
  Javadoc for DSRequest.setFieldValueExpressions()).  For client-originated 
  requests, only the following bindings are allowed - see the 
  Velocity overview for details of what these values mean:DSRequestModifier.value for
 detailsVelocity overview for details of $responseDatafieldValueExpression are:
        "startRow", "endRow", "totalRows" and "status"; this restriction does not apply to 
        server-driven fieldValueExpressions.  See the Velocity overview for 
        details of $responsesdeclarative security rules apply:
 if a
  field is not valid for writing, its fieldValueExpression will be ignored.
  Again, this only applies to client-originated requests.fieldValueExpression in 
  client-originated requests by setting a flag in your server.properties file:
  dataSource.allowClientFieldValueExpressions: false
TransactionChaining overview and related methodspublic DSRequest setGenerateRelatedUpdates(java.lang.Boolean generateRelatedUpdates)
null) then related updates
 will be generated only for "add" and "update" operations. This property has to be explicitly set to true to
 generate related updates for "remove" operation. This functionality loads related objects from database thus
 affecting operation performance. For "add" and "update" operations related objects are loaded anyway and performance
 impact is minimal. Simple "remove" operation does not need to load related objects. Depending on database structure
 performance impact can be significant if this property is set to true.  Note this feature works only
 with Hibernate/JPA data sources, see  JPA & Hibernate Relations
 for instructions how to  set up relations. Table below uses "country -> cities" sample data model. 
| Relation and Operation type | Loading complete related objects | Loading related IDs | 
| Many-to-one (cities -> country): ADD/UPDATE | If operation affected country, for
 example new city added with existing  countryId, then relatedUpdate is generated. Otherwise if city is added or updated
 without  countryId set, relatedUpdate is not generated. Note that if provided countryId does not exist, it is created. | Same as with complete related objects, except if provided countryId does not exist, then it is not created, but reset to NULL. | 
| Many-to-one (cities -> country): REMOVE | Removes record, depending on setting generates or not relatedUpdate for parent record. For example if city record is removed and countryId is sent to the server in remove request, then country record will be generated in relatedUpdates. | |
| One-to-many (country -> cities): ADD/UPDATE | If add or update operation provides value sets for cities as well as for country, then  cities are created/updated
 if necessary and relatedUpdates are generated. Note that all fields in cities value sets can be sent to server. | Same as with complete related objects, except you can only sent primary key values for cities. | 
| One-to-many (country -> cities): REMOVE | Removes country, depending on setting returns or not relatedUpdates for the cities of removed country, which can be either REMOVE operations of all cities if cascade enabled, or UPDATE operations setting countryId=null to all cities if cascade is disabled | |
Note that Many-to-Many works the same way as One-to-Many.
generateRelatedUpdates - New generateRelatedUpdates value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getGenerateRelatedUpdates()
null) then related updates
 will be generated only for "add" and "update" operations. This property has to be explicitly set to true to
 generate related updates for "remove" operation. This functionality loads related objects from database thus
 affecting operation performance. For "add" and "update" operations related objects are loaded anyway and performance
 impact is minimal. Simple "remove" operation does not need to load related objects. Depending on database structure
 performance impact can be significant if this property is set to true.  Note this feature works only
 with Hibernate/JPA data sources, see  JPA & Hibernate Relations
 for instructions how to  set up relations. Table below uses "country -> cities" sample data model. 
| Relation and Operation type | Loading complete related objects | Loading related IDs | 
| Many-to-one (cities -> country): ADD/UPDATE | If operation affected country, for
 example new city added with existing  countryId, then relatedUpdate is generated. Otherwise if city is added or updated
 without  countryId set, relatedUpdate is not generated. Note that if provided countryId does not exist, it is created. | Same as with complete related objects, except if provided countryId does not exist, then it is not created, but reset to NULL. | 
| Many-to-one (cities -> country): REMOVE | Removes record, depending on setting generates or not relatedUpdate for parent record. For example if city record is removed and countryId is sent to the server in remove request, then country record will be generated in relatedUpdates. | |
| One-to-many (country -> cities): ADD/UPDATE | If add or update operation provides value sets for cities as well as for country, then  cities are created/updated
 if necessary and relatedUpdates are generated. Note that all fields in cities value sets can be sent to server. | Same as with complete related objects, except you can only sent primary key values for cities. | 
| One-to-many (country -> cities): REMOVE | Removes country, depending on setting returns or not relatedUpdates for the cities of removed country, which can be either REMOVE operations of all cities if cascade enabled, or UPDATE operations setting countryId=null to all cities if cascade is disabled | |
Note that Many-to-Many works the same way as One-to-Many.
public DSRequest setGroupBy(java.lang.String... groupBy)
server-side summarization. 
 Valid only for an operation of type "fetch".  See the  Server Summaries
 overview for details and examples of usage.
groupBy - New groupBy value. Default value is nullDSRequest instance, for chaining setter callssetSummaryFunctions(java.util.Map<java.lang.String, com.smartgwt.client.types.SummaryFunctionType>), 
ServerSummaries overview and related methodspublic java.lang.String[] getGroupBy()
server-side summarization. 
 Valid only for an operation of type "fetch".  See the  Server Summaries
 overview for details and examples of usage.
getSummaryFunctions(), 
ServerSummaries overview and related methodspublic DSRequest setHeaderData(java.util.Map headerData)
WSRequest.headerData for
 more information.  SOAP headers typically contain request metadata such as a session id for authentication, and so
 dsRequest.headerData is typically populated by DataSource.transformRequest(), or, for data that applies to every request sent to the server, by WebService.getHeaderData(). 
 Note that this only applies to SOAP
 headers. General HTTP headers for requests may be modified using RPCRequest.httpHeaders.
headerData - New headerData value. Default value is nullDSRequest instance, for chaining setter callspublic java.util.Map getHeaderData()
WSRequest.headerData for
 more information.  SOAP headers typically contain request metadata such as a session id for authentication, and so
 dsRequest.headerData is typically populated by DataSource.transformRequest(), or, for data that applies to every request sent to the server, by WebService.getHeaderData(). 
 Note that this only applies to SOAP
 headers. General HTTP headers for requests may be modified using RPCRequest.httpHeaders.
public DSRequest setKeepParentsOnFilter(java.lang.Boolean keepParentsOnFilter)
load data on demand using data paging. When this flag is
 set, a server fetch operation is expected to return all of the tree nodes that either match the provided criteria
 or have one or more children that match the criteria.  A ResultTree with fetchMode:"paged" and with keepParentsOnFilter enabled will automatically set
 this property to true on all DSRequests that it sends to the server. 
Currently, no built-in server-side connectors (SQL, JPA, Hibernate) implement support for the keepParentsOnFilter flag.
keepParentsOnFilter - New keepParentsOnFilter value. Default value is nullDSRequest instance, for chaining setter callsTreeDataBinding overview and related methodspublic java.lang.Boolean getKeepParentsOnFilter()
load data on demand using data paging. When this flag is
 set, a server fetch operation is expected to return all of the tree nodes that either match the provided criteria
 or have one or more children that match the criteria.  A ResultTree with fetchMode:"paged" and with keepParentsOnFilter enabled will automatically set
 this property to true on all DSRequests that it sends to the server. 
Currently, no built-in server-side connectors (SQL, JPA, Hibernate) implement support for the keepParentsOnFilter flag.
TreeDataBinding overview and related methodspublic DSRequest setLineBreakStyle(java.lang.String lineBreakStyle)
LineBreakStyle for more
 information.lineBreakStyle - New lineBreakStyle value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getLineBreakStyle()
LineBreakStyle for more
 information.public DSRequest setLinkDataFetchOperation(java.lang.String linkDataFetchOperation)
multi-link tree, this is the 
 operationId to use for the separate fetch on the ResultTree.linkDataSource that will be generated if
 LinkDataFetchMode is "separate".  This property  overrides the linkDataFetchOperation property on  ResultTree, for this fetch only. Ignored if this DSRequest is not a fetch against a multi-link tree.
linkDataFetchOperation - New linkDataFetchOperation value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.String getLinkDataFetchOperation()
multi-link tree, this is the 
 operationId to use for the separate fetch on the ResultTree.linkDataSource that will be generated if
 LinkDataFetchMode is "separate".  This property  overrides the linkDataFetchOperation property on  ResultTree, for this fetch only. Ignored if this DSRequest is not a fetch against a multi-link tree.
public DSRequest setOldValues(Record oldValues)
update or remove operation, the original values from the record that is being updated
 or removed.  oldValues is automatically added to DSRequests submitted by DataBound Components.  Available
 on the server via DSRequest.getOldValues().  The server can compare the oldValues to the
 most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
 (NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").  
 
 In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
 be shown for this case.  For example, on detecting concurrent edit, the server may send back a special
 dsResponse.status code that the client application detects, offering the user a choice of proceeding with
 the operation, discarding edits, or reconciling new and old values in a special interface. 
 See the ConcurrentEdits overview for more on handling concurrent edits in Smart GWT DataSources.
oldValues - New oldValues value. Default value is nullDSRequest instance, for chaining setter callspublic Record getOldValues()
update or remove operation, the original values from the record that is being updated
 or removed.  oldValues is automatically added to DSRequests submitted by DataBound Components.  Available
 on the server via DSRequest.getOldValues().  The server can compare the oldValues to the
 most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
 (NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").  
 
 In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
 be shown for this case.  For example, on detecting concurrent edit, the server may send back a special
 dsResponse.status code that the client application detects, offering the user a choice of proceeding with
 the operation, discarding edits, or reconciling new and old values in a special interface. 
 See the ConcurrentEdits overview for more on handling concurrent edits in Smart GWT DataSources.
public DSRequest setOperationId(java.lang.String operationId)
DataBoundComponent sends a DSRequest, the dsRequest.operationId
 will be automatically picked up from the fetchOperation, addOperation, etc properties of the
 DataBoundComponent.    The operationId serves as an identifier that you can use to create variations on
 the 4 basic DataSource operations that are used by different components in different parts of your application.  For
 example, you may be using a standard fetch operation in one part of your application, however on another
 screen you want to perform a fetch operation on the same DataSource but interpret search criteria
 differently (eg full text search).   
 If you declare more than one OperationBinding
 for the same OperationBinding.operationType, you can
 specify an operationId on the
 operationBinding which will cause that operationBinding to be used for dsRequests containing a matching
 operationId. This allows all the possible settings of an operationBinding, including wsOperation or DMI settings, to be switched on a per-component or per-request basis.   
 For example, by setting the
 fetchOperation on a particular ListGrid, you could cause it to invoke a different server method via DMI,
 different dataURL or different  web service operation. 
 The operationId can
 also be directly received by the server in order to affect behavior.  When using the Smart GWT Server,
 operationId can be accessed via dsRequest.getOperationId().  The RestDataSource will also send the operationId to the server as part of the request metadata.   
 Note that if you manually invoke a DataSource operation, you can also specify operationId
 via the requestProperties parameter. 
 Note that the operationId has special significance in
 terms of whether two DSRequests are considered equivalent for caching and synchronization purposes - see DsRequestEquivalence.
operationId - New operationId value. Default value is nullDSRequest instance, for chaining setter callsOperations overview and related methodspublic java.lang.String getOperationId()
DataBoundComponent sends a DSRequest, the dsRequest.operationId
 will be automatically picked up from the fetchOperation, addOperation, etc properties of the
 DataBoundComponent.    The operationId serves as an identifier that you can use to create variations on
 the 4 basic DataSource operations that are used by different components in different parts of your application.  For
 example, you may be using a standard fetch operation in one part of your application, however on another
 screen you want to perform a fetch operation on the same DataSource but interpret search criteria
 differently (eg full text search).   
 If you declare more than one OperationBinding
 for the same OperationBinding.operationType, you can
 specify an operationId on the
 operationBinding which will cause that operationBinding to be used for dsRequests containing a matching
 operationId. This allows all the possible settings of an operationBinding, including wsOperation or DMI settings, to be switched on a per-component or per-request basis.   
 For example, by setting the
 fetchOperation on a particular ListGrid, you could cause it to invoke a different server method via DMI,
 different dataURL or different  web service operation. 
 The operationId can
 also be directly received by the server in order to affect behavior.  When using the Smart GWT Server,
 operationId can be accessed via dsRequest.getOperationId().  The RestDataSource will also send the operationId to the server as part of the request metadata.   
 Note that if you manually invoke a DataSource operation, you can also specify operationId
 via the requestProperties parameter. 
 Note that the operationId has special significance in
 terms of whether two DSRequests are considered equivalent for caching and synchronization purposes - see DsRequestEquivalence.
Operations overview and related methodspublic DSRequest setOperationType(DSOperationType operationType)
 This property is generally
 automatically populated, for example when calling fetchData() on a DataSource or DataBound component the
 operationType is automatically set to "fetch".  Note that "custom" operations are never generated automatically, they
 are always fired by your code.
operationType - New operationType value. Default value is nullDSRequest instance, for chaining setter callspublic DSOperationType getOperationType()
 This property is generally
 automatically populated, for example when calling fetchData() on a DataSource or DataBound component the
 operationType is automatically set to "fetch".  Note that "custom" operations are never generated automatically, they
 are always fired by your code.
public DSRequest setOutputs(java.lang.String outputs)
"foo, bar, baz"). 
 You can use this property to indicate to the server that  you are only interested in a subset of the fields that would
 normally be returned.  Note that you cannot use this property to request a superset of the fields that would
 normally be returned, because that would be a security hole.  It is possible to  configure individual OperationBindings to return extra fields, but this must be done in the server's DataSource descriptor; it cannot be altered on the fly from the client side.
outputs - New outputs value. Default value is nullDSRequest instance, for chaining setter callsOperationBinding.outputs, 
setAdditionalOutputs(java.lang.String)public java.lang.String getOutputs()
"foo, bar, baz"). 
 You can use this property to indicate to the server that  you are only interested in a subset of the fields that would
 normally be returned.  Note that you cannot use this property to request a superset of the fields that would
 normally be returned, because that would be a security hole.  It is possible to  configure individual OperationBindings to return extra fields, but this must be done in the server's DataSource descriptor; it cannot be altered on the fly from the client side.
OperationBinding.outputs, 
getAdditionalOutputs()public TreeNode getParentNode()
load
 data on demand with web services, parentNode is automatically set in "fetch" DSRequests issued by a
 databound TreeGrid that is loading children for that parentNode.  This is sometimes needed if a web
 service requires that additional properties beyond the ID of the parentNode must be passed in order to accomplished
 level-by-level loading. A custom implementation of DataSource.transformRequest() can access dsRequest.parentNode and add any such properties to data. 
 parentNode will also be automatically set by a
 TreeGrid performing databound reparenting of nodes, as implemented by TreeGrid.folderDrop(). 
This property can only be read. There is no meaning to setting this property yourself.
public DSRequest setPendingAdd(java.lang.Boolean pendingAdd)
DynamicForm.validateOnChange is in force.pendingAdd - New pendingAdd value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getPendingAdd()
DynamicForm.validateOnChange is in force.public DSRequest setProgressiveLoading(java.lang.Boolean progressiveLoading)
progressive loading mode for this particular
 request, overriding the OperationBinding- and DataSource-level settings. This setting overrides the progressiveLoadingThreshold setting as well,
 meaning that if DSRequest.progressiveLoading is explicitly set to false Smart GWT won't
 automatically switch to loading data progressively even if DataSource.progressiveLoadingThreshold is
 exceeded. Note that this setting applies only to fetch requests - it has no effect if specified on any other kind of request.
progressiveLoading - New progressiveLoading value. Default value is nullDSRequest instance, for chaining setter callsDataSource.setProgressiveLoading(java.lang.Boolean), 
DataSource.progressiveLoadingThreshold, 
OperationBinding.progressiveLoading, 
ProgressiveLoading overview and related methodspublic java.lang.Boolean getProgressiveLoading()
progressive loading mode for this particular
 request, overriding the OperationBinding- and DataSource-level settings. This setting overrides the progressiveLoadingThreshold setting as well,
 meaning that if DSRequest.progressiveLoading is explicitly set to false Smart GWT won't
 automatically switch to loading data progressively even if DataSource.progressiveLoadingThreshold is
 exceeded. Note that this setting applies only to fetch requests - it has no effect if specified on any other kind of request.
DataSource.getProgressiveLoading(), 
DataSource.progressiveLoadingThreshold, 
OperationBinding.progressiveLoading, 
ProgressiveLoading overview and related methodspublic java.lang.String getRequestId()
"clientCustom" dataProtocol.public ResultSet getResultSet()
resultSet property. This property can only be read. There is no meaning to setting this property yourself.
public ResultTree getResultTree()
load
 data on demand with web services, the ResultTree that issued this "fetch" DSRequest is automatically made available as
 the resultTree property. This property can only be read. There is no meaning to setting this property yourself.
public DSRequest setShouldUseCache(java.lang.Boolean shouldUseCache)
DataSource.cacheAllData, DataSource.cacheAllOperationId and DataSource.cacheAcrossOperationIds for caching management for all requests of a  dataSource.shouldUseCache - New shouldUseCache value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getShouldUseCache()
DataSource.cacheAllData, DataSource.cacheAllOperationId and DataSource.cacheAcrossOperationIds for caching management for all requests of a  dataSource.public DSRequest setStartRow(java.lang.Integer startRow)
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
startRow - New startRow value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Integer getStartRow()
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
public DSRequest setStreamResults(boolean streamResults)
 Although this
 property can be set without any particular concerns (small datasets can be  streamed just as readily as large ones),
 bear in mind that although streaming enables the processing of very large datasets, processing and downloading very
 large datasets in a  normal client/server flow will very rarely give an acceptable user experience.  Streaming is of
 more practical use in a batch setting - for example, a disconnected  export. 
 Note that streaming requires specific server
 support; of Smart GWT's built-in DataSource types, only SQLDataSource is able to stream results.  This
 property is ignored by other DataSource types.  If you wish to implement the necessary server-side behavior to  support
 streaming with a custom DataSource, see the the server-side Javadocs for  DSResponse.hasNextRecord() and
 DSResponse.nextRecordAsObject(). 
 See also the server-side documentation for DSResponse, 
 SQLDataSource and StreamingResponseIterator. 
 Note, that streaming results does not support
 fields with "concat" summary function  on non-Oracle databases.
 Such fields will be skipped.
streamResults - New streamResults value. Default value is falseDSRequest instance, for chaining setter callspublic boolean getStreamResults()
 Although this
 property can be set without any particular concerns (small datasets can be  streamed just as readily as large ones),
 bear in mind that although streaming enables the processing of very large datasets, processing and downloading very
 large datasets in a  normal client/server flow will very rarely give an acceptable user experience.  Streaming is of
 more practical use in a batch setting - for example, a disconnected  export. 
 Note that streaming requires specific server
 support; of Smart GWT's built-in DataSource types, only SQLDataSource is able to stream results.  This
 property is ignored by other DataSource types.  If you wish to implement the necessary server-side behavior to  support
 streaming with a custom DataSource, see the the server-side Javadocs for  DSResponse.hasNextRecord() and
 DSResponse.nextRecordAsObject(). 
 See also the server-side documentation for DSResponse, 
 SQLDataSource and StreamingResponseIterator. 
 Note, that streaming results does not support
 fields with "concat" summary function  on non-Oracle databases.
 Such fields will be skipped.
public DSRequest setTextMatchStyle(TextMatchStyle textMatchStyle)
textMatchStyle settings except "exactCase" are case-insensitive; use AdvancedCriteria for greater control over matching.  This property defaults to the value of
 DataSource.defaultTextMatchStyle if it is not
 explicitly provided on the DSRequest.  Note, however, that DSRequests issued  by ListGrids and other components
 will generally have a  setting for textMatchStyle on the component itself  (see ListGrid.autoFetchTextMatchStyle, for example).
 
 This setting is respected by the built-in server-side connectors for SQL, JPA and Hibernate. A custom server-side
 DataSource implementation should generally respect this flag as well, or server-side filtering will not match
 client-side filtering, which will require disabling
 client-side filtering, a huge performance loss.
textMatchStyle - New textMatchStyle value. Default value is nullDSRequest instance, for chaining setter callspublic TextMatchStyle getTextMatchStyle()
textMatchStyle settings except "exactCase" are case-insensitive; use AdvancedCriteria for greater control over matching.  This property defaults to the value of
 DataSource.defaultTextMatchStyle if it is not
 explicitly provided on the DSRequest.  Note, however, that DSRequests issued  by ListGrids and other components
 will generally have a  setting for textMatchStyle on the component itself  (see ListGrid.autoFetchTextMatchStyle, for example).
 
 This setting is respected by the built-in server-side connectors for SQL, JPA and Hibernate. A custom server-side
 DataSource implementation should generally respect this flag as well, or server-side filtering will not match
 client-side filtering, which will require disabling
 client-side filtering, a huge performance loss.
public DSRequest setUseFlatFields(java.lang.Boolean useFlatFields)
useFlatFields is set for a request to be sent to a WSDL web service, when
  creating the input XML message to send to the web service, properties in
 request.data will be used as the values for XML elements of the same
 name, at
  any level of nesting.
  
  useFlatFields allows you to ignore gratuitous XML message structure, such as
  extra levels of nested elements, and provides some insulation against changes in the
  required structure of the input message.
  
For example, given this input message:
  <FindServices>
      <searchFor>search text</searchFor>
      <Options>
          <caseSensitive>false</caseSensitive>
      </Options>
      <IncludeInSearch>
          <serviceName>true</serviceName>
          <documentation>true</documentation>
          <keywords>true</keywords>
      </IncludeInSearch>
  </FindServices>
  
  If useFlatFields were not set, in order to fill out this message
  correctly, request.data would need to be:
  {
     searchFor: "search text",
     Options : {
         caseSensitive: false,
     },
     IncludeInSearch : {
         serviceName: true,
         documentation : true,
         keywords : true
     }
  }
  However if useFlatFields were set, request.data could be just:
  {
     searchFor: "search text",
     caseSensitive: false,
     serviceName: true,
     documentation : true,
     keywords : true
  }
 useFlatFields is often set when the input data comes from a DynamicForm
  to avoid the cumbersome and fragile process of mapping input fields to an XML structure.
  
 OperationBinding.useFlatFields can also be set to
 cause all dsRequests of a
  particular type to useFlatFields automatically.
  
  For DataBoundComponents, 
 component.useFlatFields can be set use
 "flattened"
  binding to fields of a WSDL message or XML Schema.
  
  Note that useFlatFields is not generally recommended for use with XML input
  messages where multiple simple type fields exist with the same name, however if used in this
  way, the first field to use a given name wins.  "first" means the first field encountered in a
  depth first search.  "wins" means only the first field will be populated in the generated
  XML message.
useFlatFields - New useFlatFields value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getUseFlatFields()
useFlatFields is set for a request to be sent to a WSDL web service, when
  creating the input XML message to send to the web service, properties in
 request.data will be used as the values for XML elements of the same
 name, at
  any level of nesting.
  
  useFlatFields allows you to ignore gratuitous XML message structure, such as
  extra levels of nested elements, and provides some insulation against changes in the
  required structure of the input message.
  
For example, given this input message:
  <FindServices>
      <searchFor>search text</searchFor>
      <Options>
          <caseSensitive>false</caseSensitive>
      </Options>
      <IncludeInSearch>
          <serviceName>true</serviceName>
          <documentation>true</documentation>
          <keywords>true</keywords>
      </IncludeInSearch>
  </FindServices>
  
  If useFlatFields were not set, in order to fill out this message
  correctly, request.data would need to be:
  {
     searchFor: "search text",
     Options : {
         caseSensitive: false,
     },
     IncludeInSearch : {
         serviceName: true,
         documentation : true,
         keywords : true
     }
  }
  However if useFlatFields were set, request.data could be just:
  {
     searchFor: "search text",
     caseSensitive: false,
     serviceName: true,
     documentation : true,
     keywords : true
  }
 useFlatFields is often set when the input data comes from a DynamicForm
  to avoid the cumbersome and fragile process of mapping input fields to an XML structure.
  
 OperationBinding.useFlatFields can also be set to
 cause all dsRequests of a
  particular type to useFlatFields automatically.
  
  For DataBoundComponents, 
 component.useFlatFields can be set use
 "flattened"
  binding to fields of a WSDL message or XML Schema.
  
  Note that useFlatFields is not generally recommended for use with XML input
  messages where multiple simple type fields exist with the same name, however if used in this
  way, the first field to use a given name wins.  "first" means the first field encountered in a
  depth first search.  "wins" means only the first field will be populated in the generated
  XML message.
public DSRequest setUseFlatHeaderFields(java.lang.Boolean useFlatHeaderFields)
useFlatFields XML serialization behavior to be
 used for all soap headers in the request.  See also headerData.useFlatHeaderFields - New useFlatHeaderFields value. Default value is nullDSRequest instance, for chaining setter callspublic java.lang.Boolean getUseFlatHeaderFields()
useFlatFields XML serialization behavior to be
 used for all soap headers in the request.  See also headerData.public DSRequest setUseStrictJSON(java.lang.Boolean useStrictJSON)
 Only applies to requests sent a server with DataSource.dataFormat set to "json" or "iscServer".
setUseStrictJSON in class RPCRequestuseStrictJSON - New useStrictJSON value. Default value is nullDSRequest instance, for chaining setter callssetUseStrictJSON(java.lang.Boolean)public java.lang.Boolean getUseStrictJSON()
 Only applies to requests sent a server with DataSource.dataFormat set to "json" or "iscServer".
getUseStrictJSON in class RPCRequestgetUseStrictJSON()public DSRequest setValidationMode(ValidationMode validationMode)
validationMode - New validationMode value. Default value is "full"DSRequest instance, for chaining setter callspublic ValidationMode getValidationMode()
public DSRequest setAttribute(java.lang.String property, java.lang.Object value)
DataClass.getAttributeAsObject(String)
 in order to retrieve them.
 These attributes are available for client-side use only - these attributes are not transmitted to the server.
Do not use setAttribute() to set any attribute for which there is a dedicated setter (do not setAttribute("data", data) for example).
 If you are looking for a way to send additional data to the server, read
 DsRequestEquivalence for the best approach.
setAttribute in class DataClassproperty - the attribute namevalue - the attribute value.DSRequest instance, for chaining
 setter callspublic DSRequest setParams(java.util.Map params)
RPCRequest Array-valued parameters will be submitted as multiple
 instances of the same parameter, similar to an HTML form with a multi-select (?paramName=value1¶mName=value2
 ...), accessible as getParameterValues(paramName) in Java Servlets.  Any non-atomic type, such as an Object, will be
 serialized to JSON by the JSONEncoder.  If this isn't desirable, serialize the data in advance so that the value
 provided in rpcRequest.params is a String. 
 Note that this API is primarily used in combination with
 useSimpleHttp - when contacting the Smart GWT Server, use
 data instead, which provides full JavaScript <-> Java
 translation of arbitrary structures. rpcRequest.params can also be used with the Smart GWT Server, where it
 provides an an opportunity to send additional data aside from the main data payload.  This is useful for adding data to DataSource requests which will be kept separate from the automatically
 sent DataSource data, or for making parts of the request visible in the URL for HTTP-level logging or layer 4 switches.
 
 Note that in contrast to data object, the data in
 rpcRequest.params is not deserialized by the Smart GWT server, and all values arrive on the server as
 String type (like HTTP parameters always do). 
 Note: The params are submitted once per http transaction.  If you
 are using  request queuing to bundle multiple RPCRequests or
 DSRequests into a single HTTP turnaround, the params from the various RPCRequests will be merged, with the later-queued
 transactions winning on parameter name collisions.  A warning will be logged in the Developer Console if multiple
 RPCRequests specified params.
setParams in class RPCRequestparams - New params value. Default value is nullRPCRequest instance, for chaining setter callspublic final void setCallback(DSCallback callback)
public void setSortBy(SortSpecifier[] sortSpecifiers)
sortSpecifiers - Default value is nullpublic void setSortBy(SortSpecifier sortSpecifier)
sortSpecifier - Default value is nullpublic SortSpecifier[] getSortBy()
public void setSummaryFunctions(java.util.Map<java.lang.String,SummaryFunctionType> summaryFunctions)
Valid only for an operation of type "fetch". See the Server Summaries overview in the client-side documentation for details and examples of usage.
NOTE: this feature is supported only in Power Edition or above, and only when using the built-in SQL, JPA or Hibernate connectors.
summaryFunctions - Map<String,SummaryFunction> with field names as keys and summary functions as values.DSRequest.setGroupBy(String[])public java.util.Map<java.lang.String,SummaryFunctionType> getSummaryFunctions()
Valid only for an operation of type "fetch". See the Server Summaries overview in the client-side documentation for details and examples of usage.
NOTE: this feature is supported only in Power Edition or above, and only when using the built-in SQL, JPA or Hibernate connectors.
Map<String,SummaryFunction> with field names as keys and summary functions as values.DSRequest.getGroupBy()public void setRawSummaryFunctions(java.util.Map<java.lang.String,java.lang.String> summaryFunctions)
#setSummaryFunctions(), but allowing to set any functions, not just ones built into the framework, 
 so that in combination with custom implementation on the server-side you can perform custom aggregation. See the Server 
 Summaries > Custom Aggregation example in the Showcase.
 NOTE: this feature is supported only in Power Edition or above, and only when using the built-in SQL, JPA or Hibernate connectors.
rawSummaryFunctions - Map<String,String> with field names as keys and summary functions as values.DSRequest.setGroupBy(), 
DSRequest.setSummaryFunctions()public java.util.Map<java.lang.String,java.lang.String> getRawSummaryFunctions()
getSummaryFunctions(), but allowing to get any functions, not just ones built into the framework, 
 so that in combination with custom implementation on the server-side you can perform custom aggregation. See the Server 
 Summaries > Custom Aggregation example in the Showcase.
 NOTE: this feature is supported only in Power Edition or above, and only when using the built-in SQL, JPA or Hibernate connectors.
Map<String,String> with field names as keys and summary functions as values.DSRequest.setGroupBy(), 
DSRequest.setSummaryFunctions()public void setOldValues(java.util.Map oldValues)
update or remove operation, the original values from the record that is being updated
 or removed.  oldValues is automatically added to DSRequests submitted by DataBound Components.  Available
 on the server via DSRequest.getOldValues().  The server can compare the oldValues to the
 most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
 (NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
 
 In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
 be shown for this case.  For example, on detecting concurrent edit, the server may send back a special
 dsResponse.status code that the client application detects, offering the user a choice of proceeding with
 the operation, discarding edits, or reconciling new and old values in a special interface.
oldValues - oldValues Default value is nullpublic void setOldValues(com.google.gwt.core.client.JavaScriptObject oldValues)
update or remove operation, the original values from the record that is being updated
 or removed.  oldValues is automatically added to DSRequests submitted by DataBound Components.  Available
 on the server via DSRequest.getOldValues().  The server can compare the oldValues to the
 most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
 (NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
 
 In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
 be shown for this case.  For example, on detecting concurrent edit, the server may send back a special
 dsResponse.status code that the client application detects, offering the user a choice of proceeding with
 the operation, discarding edits, or reconciling new and old values in a special interface.
oldValues - oldValues Default value is nullpublic Criteria getCriteria() throws java.lang.IllegalStateException
Note : This method should only be called during a FETCH operation
java.lang.IllegalStateException - if called for a non-fetch operationpublic void setSkinName(java.lang.String skinName)
skinName - the name of the selected skin.public void setCriteria(Criteria criteria)
 If you need to do a remove with criteria rather than a primary key, the recommended
 approach is to do it via a
 custom operation.
 so the intent is clear.  You can also do it as a remove, but just use
 DSRequest.oldValues as the source
 for whatever criteria values you need.  That covers everything except
 AdvancedCriteria.
criteria - the criteria to store.