# All Classes and Interfaces

Class
Description
AdvancedCriteria
AdvancedCriteria is a format for representing search criteria which may include operators on field values such as "less than", or may include sub-clauses such as several criteria applied to fields joined by an "OR" operator.
AIDataSource
The AIDataSource class provides APIs to integrate with Artificial Intelligence services.
AndCriterion
Logical criterion for checking that all subcriteria (criterion.criteria) are true.
AuditDSGenerator
This class implements a `DynamicDSGenerator` which generates an audit `DataSource` based on a `DataSource` which has auditing enabled.
BaseRequest<R extends BaseRequest,T extends BaseResponse>
This is the base for all requests going through the rpc and DataSource layer in Smartclient Server.
BaseRequestHandler<T extends BaseRequest>
This class handles execution of `BaseRequest`, mainly inside `DSTransaction.processQueue()`.
BaseResponse<T extends BaseResponse>
This is the base for all responses going through the rpc and DataSource layer in Smartclient Server.
BaseServlet
BaseServlet is extended by most servlets in the Isomorphic Framework, as it provides: standard global variables in a safe manner to subclasses support for servlet container-based filesystem access
BasicDataSource
A BasicDataSource is a DataSource that can create itself from configuration information expressed in XML.
BatchUpload
This class implements the server side of the BatchUploader tool.
BuiltinRPC
This class implements a set of "built-in" RPC methods that are available to all applications as part of all standard SmartClient distributions.
BuiltinRPC
This class implements an extra set of "built-in" RPC methods over and above the ones implemented in com.isomorphic.rpc.BuiltinRPC.
ByIdentifier
This class is provided for backcompat with the Selenium v1 "identifier" locator strategy, which first does a lookup against IDs, and then if nothing is found, Names.
ByScLocator
A custom implementation of `By` which understands SmartClient locator names findElements() is delegated to AutoTest.js
CacheFilter
A `URIRegexFilter` subclass with similar functionality to the `FileDownload` servlet - it serves files with configurable cacheing directives to minimize network traffic.
CachePolicy
Provides all standard Cache-Control HTTP header response directives and some presets for most common usages.
CanParseCriterion
An interface that should be implemented by all criteria that need to be converted from Map.
ClientMustResubmitException
This exception exists to work around a bug in IE cause by hotfix Q832894 which occasionally causes the browser to fail to send data filled into a form when the form is submitted.
CompressionFilter
This CompressionFilter is part of the optional Network Performance package.
Config
This class provides config parameters to all the Java classes in the SmartClient Framework by reading a series of .properties files including server.properties.
ContextLoaderListener
Wraps the class org.springframework.web.context.ContextLoaderListener so that any exceptions generated by Spring can be caught, rather than escaping and preventing server initialiation from completing.
Criterion
An object representing a criterion to apply to a record.
CustomCriterion
Custom criterion based on key-value pairs and logic determined by operator.
DatabaseTools
This class implements database-related tools and utility functions.
DataImport
`DataImport` contains methods that can be used to import data from a test data file to the List of Maps format commonly used for DataSource records (importToRows()), or directly into a DataSource (importToDataSource()).
DataImport.ImportFormat
Import formats that can be used: `DataImport.ImportFormat.CSV` `DataImport.ImportFormat.JSON` `DataImport.ImportFormat.XML` `DataImport.ImportFormat.AUTO`
DataSource
A DataSource is metadata that provides a high-level, implementation independent description of a set of permanently stored objects that will be manipulated within a SmartClient application.
DataSourceBeanFilter
An IBeanFilter that applies DataSource.getProperties() to all bean values (e.g.
DataSourceLoader
This servlet returns the Javascript representation of a list of DataSources or SimpleTypes passed as parameter "dataSource".
DataSourceManager
This class contains static utility methods for obtaining a DataSource instance from the pool, and returning those instances.
DataSourceResourceCaptureScope
Tracks DataSource instances borrowed during an HTTP request and ensures they are returned to the pool when the request ends — even if the caller never explicitly frees them.
DataSourceTools
`DataSourceTools` provides a number of static utility methods for generating DataSource information from other metadata (database tables, Hibernate mappings and Reflection on existing Java classes)
DataSourceTools.CopyDataSourceResult
Result object for `DataSourceTools.copyRecords(String, String, CopyOptions)`.
DataSourceTools.ExportDataSourceResult
Result object for `DataSourceTools.exportRecordsToFile(DataSource, ExportOptions)`.
DataSourceTools.ExportFormat
Output format for exportRecordsToFile(DataSource, ExportFormat, ExportOptions).
DataSourceTools.ExportOptions
Options for exportRecordsToFile(DataSource, ExportOptions).
DataSourceTools.ExportRecordsResult
Result object for stream-based `DataSourceTools.exportRecords(java.lang.String, java.io.Writer, com.isomorphic.tools.DataSourceTools.ExportFormat, java.lang.String, java.lang.Integer, java.lang.Integer)` operations.
DataTools
`DataTools` is a utility class with the following facilities: `getProperties()` and `setProperties()`: `getProperties()` allow the properties of any Java object to be extracted as a Map, and `setProperties` allows any Map to be applied to a Java object, calling setter methods named after the keys of the Map.
DateRangeCriterion
Criterion for range of dates.
DateUtil
A utility class with various methods for dealing with dates, calendars and time.
DefaultOperators
Helper class for accessing operators that needs for working with Criteria.
DoubleRangeCriterion
Criterion for range of doubles.
DriverConfiguration
Defines the setters available to configure how TestRunner is run when invoked via the wrapper class `TestRunnerDriver`.
DSField
Server-side representation of a DataSource Field.
DSFileSpec
Specifies a file stored in a DataSource.
DSRequest
Server-side representation of a DataSource request initiated by a client-side DataBoundComponent or programmatically by custom client-side JavaScript.
DSResponse
Response object to be populated by server-side code responding to a DSRequest.
DSTransaction
Manages a transaction that involves multiple `DSRequest` or `RPCRequest` objects.
DynamicDSGenerator
`DynamicDSGenerator`s can be registered with the SmartClient Server framework via the `DataSource.addDynamicDSGenerator(DynamicDSGenerator)` method.
DynamicScreenGenerator
`DynamicScreenGenerator`s can be registered with the SmartClient Server framework via the `ScreenLoaderServlet.addDynamicScreenGenerator(DynamicScreenGenerator)` method.
EMF
Singleton factory for `EntityManager` and transaction with helper methods.
EMFProviderBMT
EMF provider for Bean Managed Transactions (BMT).
EMFProviderCMT
EMF provider for Container Managed Transactions (CMT).
EMFProviderInterface
Interface used to provide specific implementation of `EntityManager` and transaction acquiring and handling.
EMFProviderLMT
EMF provider for Locally Managed Transactions (LMT).
EMFProviderNoTransactions
EMF provider for Google Application Engine mode without transactions usage.
EMFProviderSpring
EMF provider for Spring framework.
ErrorMessage
Encapsulates a validation error.
ErrorReport
Encapsulates a per-record set of validation errors.
Evaluator
Helper class for evaluating criteria.
FeatureExplorerRPC
This servlet handles RPCs for the SDK Feature Explorer - it is not intended for use in deployments.
FileAssembly
The FileAssembly servlet is part of the optional Network Performance package.
FileDownload
This servlet serves files with configurable cacheing directives to minimize network traffic.
FloatRangeCriterion
Criterion for range of floats.
GAEJPADataSource
Server side implementation of JPA 1.0 data source under Google Application Engine.
HB
Singleton factory for hibernate `Session` and transaction with helper methods.
HB6Provider
HB provider for Hibernate 5/6.
HBConnectionHolder
Holds `Session` and current transaction.
HBProviderInterface
Interface used to provide specific implementation of `Session` and transaction acquiring and handling.
HibernateDataSource
A DataSource implementation for the Hibernate ORM system.
HikariConnectionManager
`HikariConnectionManager` provides methods for initializing and getting connections to databases from the HikariCP connection pool.
HSQLShutdown
This servlet ensures a clean shutdown of all referenced HSQL databases used by SmartClient in a container reload scenario.
HttpLifecycleTracker
Servlet filter that brackets HTTP requests with resource capture.
HttpProxyServlet
The HttpProxyServlet proxies http requests for the client (browser) - typically for web service calls where cross-domain restrictions prevent the browser from making a direct call to a particular URL.
IBeanFilter
This interface is provided as a mechanism to create a custom bean filter for the JSONFilter that is applied to beans by `JSTranslater.toJS()`.
IDACall
This servlet handles built-in SmartClient datasource operations by default.
IDoNotSerialize
Marker interface for any object that you do not want JSTransleter to serialize.
IImageExporter
Interface to an SVG rendering service.
ImageExport
Default `IImageExporter` implementation.
Init
Deprecated.
Please use `InitListener` instead.
InitListener
The SmartClient Server framework must be initialized from its config files at startup time, before user code invokes any framework functionality.
IntegerRangeCriterion
Criterion for range of integer.
IPdfExporter
IsBlankCriterion
Criterion for checking that value is blank.
ISCFileItem
This class is based on the Apache Commons FileUpload FileItem class, providing uploaded file APIs for the SmartClient Server.
ISCHttpServletRequest
This is a thin wrapper on the standard HttpServletRequest servlet API class.
ISCInit
Initializes the SmartClient/SmartGWT Server framework from its config files.
ISCMapBean
Marker interface that tells DataSource.getProperties() to treat instances of Map as Beans.
ISCMessage
Message object.
ISCMessageDispatcher
This is the base local dispatcher - it is an abstract class that provides same-jvm registration management and channel subscriptions.
ISCSubscriber
Simple concrete implementation of ISubscriber.
IsNullCriterion
Criterion for checking that value is null.
ISubscriber
Simple interface for a message subscriber.
IToJavaScript
Deprecated.
use IToJSON instead
IToJSON
Mark with and implement this interface on any class you want to make JS-serializeable by the ISC server engine.
JPA2DataSource
Server side implementation of JPA 2.0 data source.
JPA2DSGenerator
Methods for JPA entities data source generation.
JPAConnectionHolder
Holds `EntityManager` and current transaction.
JPADataSource
Server side implementation of JPA 1.0 data source.
JPADSGenerator
Methods for JPA entities data source generation.
JSEngineManager
Manages JavaScript engine detection and selection for server-side scripting.
JSEngineManager.EngineInfo
Information about an available JavaScript engine.
JSONFilter
This class provides you to specify the properties of a Map, Bean or Collection of Maps or Beans to serialize to JSON when processed by JSTranslater.toJS().
JSSyntaxScannerFilter
`JSSyntaxScannerFilter` looks for Javascript syntax errors in code sent to the browser.
JSTranslater
`JSTranslater` provides translation of Java objects to JavaScript equivalents.
JXPathContextObjectFactory
`AbstractFactory` implementation that uses reflection to create missing objects, see related JXPath guide: Creating objects.
KeepPropertiesBeanFilter
A simple IBeanFilter for use with the JSONFilter that filters beans based on a simple property list.
LocaleMessage
Represents a localized message that can be resolved to different languages based on locale.
LocaleMessageProvider
Interface to implement by custom i18n messages providers.
LocaleMessageProviderRegistry
Allows to register custom `LocaleMessageProvider`.
LocaleMessageSourceEnum
Possible values for the source where i18n message (<fmt> tag) was met.
Logger
`Logger` provides a mechanism for tracking log messages.
LogicalCriterion
Logical criterion for combine all subcriteria(criterion.criteria) using some logic.
LogicalOperator
Base class for all operators that combines several criteria using some logic.
LongRangeCriterion
Criterion for range of long.
MailMessage
This class contains methods for creating and sending an email message.
MailMessageParseMode
Represents how a `TemplatedMailMessage` should be parsed.
MCPServlet
Servlet that exposes SmartClient `DataSource` operations over HTTP using the Model Context Protocol (MCP) and JSON-RPC 2.0.
MessagingAuthFilter
Filter to block unauthorized attempts to subscribe to Realtime Messaging channels.
MessagingServlet
The MessagingServlet is part of the optional Real-Time Messaging module.
NotBlankCriterion
Criterion for checking that value is not blank.
NotCriterion
Logical criterion for checking that all subcriteria (criterion.criteria) are false.
NotNullCriterion
Criterion for checking that value is not null.
ODataDataSource
ODataDataSource is a custom subclass of `RestConnector` that adds functionality for REST services that follow the OData protocol.
Operator
Operators handle criteria matching logic.
OperatorBase
Base class for operators that provide check for base operator parameters during parsing.
OrCriterion
Logical criterion for checking that at least one subcriteria (criterion.criteria) is true.
OtherFieldCriterion
Criterion for checking field value against other field value.
OtherFieldOperator
Base class for all operators that handle relations with other fields.
ParquetDataSource
A Parquet-backed `DataSource` implementation (serverType="parquet") that can:
PdfExport
Period
Type of time period, for instance SECOND, MINUTE, HOUR, DAY etc.
PreCache
This is an optional init servlet.
Project
Encapsulates a Reify Project (.proj.xml file)
ProjectLoadSettings
Class to hold additional settings for use in Project.getLoadScript().
QueueAlreadyStartedException
RangeCriterion
Criterion for range of comparable values.
RangeOperator
Base class for all operators checking that value is in some range.
ReifyDataSourceValidator
A utility class that checks for discrepancies between a project's MockDataSources and their working, or "live", counterparts (e.g., SQLDataSources) commonly found during the Reify design / development cycle, and logs its findings per standard server logging configuration.
RelationFieldInfo
Holds information about relation field.
RelativeDate
Representation of a relative date.
RelativeDateRangeCriterion
Criterion for range of relative dates.
RelativeDateRangePosition
The relative date range position, used to indicate the position of a `RelativeDateShortcut`.
RelativeDateShortcut
Shortcuts for relative dates.
RequestContext
`RequestContext` aggregates state about the current request.
ResponseDataHandler
This class represents the functionality available in Transaction Chaining when you use the $responseData template variable.
ResponseDataWrapper
This class is a wrapper over a DSResponse data object, that enables Velocity code to treat a multi-valued data object (a List or array), as either a list or a single object.
ResponsesHandler
This class represents the functionality available in Transaction Chaining when you use the $responses template variable.
RestConnector
This class is DataSource implementation that connect to many different types of REST webservice.
RESTDataSource
Deprecated.
RESTHandler
This servlet handles built-in SmartClient datasource requests sent from REST clients.
RPCManager
Provides the ability to decode `RPCRequests` and `DSRequests` sent by the browser into Java Objects, and send back Java Object as responses.
RPCManagerCompletionCallback
This interface allows your code to be notified when an RPCManager has completed processing.
RPCRequest
RPCRequest encapsulates the data sent by the client-side RPCManager.
RPCResponse
RPCResponse encapsulates data sent from the server to the client in response to an RPCRequest.
ScActions
This class wraps the Actions (org.openqa.selenium.interactions.Actions) class and provides any special scLocator-specific logic that we implement in Selenium IDE via the user extensions, for the methods involved, while also adding any new glue needed to make the APIs behave more closely like Selenium IDE running Selenese.
Screen
Encapsulates a Reify, Mockups, or hand-coded screen (i.e.
ScreenLoaderServlet
This servlet returns the Javascript representation of a list of comma separated screens passed in parameter "screenName".
Screens are loaded from files <screenName>.ui.xml.
SeleneseRunner
Selenese -> Java conversion and executor requires HTML parser from http://htmlparser.sourceforge.net/
SetCriterion
Criterion for checking that field value matches to predefined set of values.
SimpleCriteria
SimpleCriteria is a format for representing search criteria as simple key-value pairs.
SimpleCriterion
Simple Criterion represented by key-value pairs with matching logic determined by operator.
SimpleOperator
Base class for all operators checking that value match criteria.
SmartClientChromeDriver
Implementation of SmartClient specific WebDriver using Chrome.
SmartClientEdgeDriver
Implementation of SmartClient specific WebDriver using IE.
SmartClientFirefoxDriver
Implementation of SmartClient specific WebDriver using Firefox.
SmartClientIEDriver
Implementation of SmartClient specific WebDriver using IE.
SmartClientRemoteWebDriver
Implementation of SmartClient specific Driver wrapping a RemoteWebDriver instance.
SmartClientWebDriver
This is an enhancement of the default `WebDriver` interface providing SmartClient specific enhancements.
SpringApplicationContextProvider
This singleton provides access to spring application context anywhere it is required, with no ServletContext or any other object required.
SpringHB6Provider
HB provider for Spring with Hibernate 5/6.
SQLClauseType
Represents the different SQL clause types managed by `SQLDataSource`.
SQLConnectionManager
`SQLConnectionManager` provides methods for initializing and getting connections to databases.
SQLDataSource
A DataSource implementation for SQL database engines.
SQLDSGenerator
SQLDSGenerator generates a SmartClient DataSource configuration from a SQL table.
SQLTransaction
A class containing various static methods for managing transactional updates on SQL DataSources.
SQLTransform
`SQLTransform` provides helper methods for converting java.sql.ResultSet objects to desired return data structures.
StreamingResponseIterator
For DSRequests that are marked "streamResults: true", the data member of the corresponding DSResponse will be an instance of StreamingResponseIterator.
SummaryFunctionType
Function to produce a summary value based on an array of records and a field definition.
TemplatedMailMessage
A mail message that supports the use of Velocity Template Language to enable message templates and runtime substitution.
TestRunnerDriver
A wrapper class that allows TestRunner to be run from a Java application.
TextMatchStyle
Represents text matching styles.
TransactionPolicy
Transaction policy constants.
UnconvertableException
This exception is thrown whenever the Isomorphic Java->Javascript serializer encounters an object it does not know how to serialize.
URIRegexFilter
Most servlet containers do not allow filter registration based on Regex rules.
ValidationContext
Provides access to the context of validation process, which may vary depending on the circumstances where validation is performed.
Validator
Server-side representation of a Validator.
VersionedURLFilter
This filter will rewrite URLs by stripping path segments that start with the `isc.pathSegmentPrefix` as defined in the server.properties configuration file.
XML
Provides programmatic access to the SmartClient XML processor.