This page provides per-interface information on the API changes. It lists the Esper-7 class name and underneath it lists all removed methods, all changed methods and all new methods. When there were no changes for a method or interface the document does not list the method or interface.

The document lists the key public methods of Esper-7 and does not list extension APIs, software provider (SPI) interfaces and other utility classes.

EPServiceProviderManager

This class has been renamed to EPRuntimeProvider.

Esper-7 Esper-8
EPServiceProvider getDefaultProvider(...) (various footprints) Replaced by EPRuntimeProvider#getDefaultRuntime(...) returning EPRuntime (various footprints)
EPServiceProvider getProvider(...) (various footprints) Replaced by EPRuntimeProvider#getRuntime(...) returning EPRuntime (various footprints)
EPServiceProvider getExistingProvider(String providerURI) Replaced by EPRuntimeProvider#getExistingRuntime returning EPRuntime
String[] getProviderURIs() Replaced by EPRuntimeProvider#getRuntimeURIs

EPServiceProvider

This class has been renamed to EPRuntime.

Esper-7 Esper-8
EPRuntime getEPRuntime() Replaced by EPRuntime#getEventService()
EPAdministrator getEPAdministrator() Replaced by EPRuntime#getDeploymentService()
addServiceStateListener(EPServiceStateListener listener) Replaced by EPRuntime#addRuntimeStateListener
boolean removeServiceStateListener(EPServiceStateListener listener) Replaced by EPRuntime#removeRuntimeStateListener
removeAllServiceStateListeners() Replaced by EPRuntime#removeAllRuntimeStateListeners
addStatementStateListener(EPStatementStateListener listener) Replaced by EPDeploymentService#addDeploymentStateListener
removeStatementStateListener() Replaced by EPDeploymentService#removeDeploymentStateListener
removeAllStatementStateListeners() Replaced by EPDeploymentService#removeAllDeploymentStateListeners
getEPServiceIsolated Removed; Isolated service no longer supported
ReadWriteLock getEngineInstanceWideLock Replaced by ReadWriteLock getRuntimeInstanceWideLock()
New method EPEventService getEventService() returns the event service.
New method EPDataFlowService getDataFlowService() returns the data flow service.
New method EPContextPartitionService getContextPartitionService() returns the context partition admin.
New method EPVariableService getVariableService() returns the variable service.
New method EPMetricsService getMetricsService() returns the metrics service.
New method EPEventTypeService getEventTypeService() returns the event type service.
New method EPRenderEventService getRenderEventService() returns the event rendering service.
New method EPFireAndForgetService getFireAndForgetService() returns the fire-and-forget execution service.
New method EPDeploymentService getDeploymentService() returns the deployment service.
New method getConfigurationDeepCopy returns a copy of the engine's currently-used configuration.
New method getConfigurationTransient returns the transient configuration passed to the engine.
New method getRuntimePath returns EPL-object metadata for use by the compiler.

EPRuntime

This class has been renamed to EPEventService.

Esper-7 Esper-8
sendEvent(Object object) Replaced by EPEventService#sendEventBean(Object event, String eventTypeName)
sendEvent(Map map, String mapEventTypeName) Replaced by EPEventService#sendEventMap(Map<String, Object> event, String eventTypeName)
sendEvent(Object[] objectarray, String objectArrayEventTypeName) Replaced by EPEventService#sendEventObjectArray(Object[] event, String eventTypeName);
sendEvent(org.w3c.dom.Node node) Replaced by EPEventService#sendEventXMLDOM(Node node, String eventTypeName)
route(Object theEvent) Replaced by EPEventService#routeEventBean(Object event, String eventTypeName)
route(Map map, String eventTypeName) Replaced by EPEventService#routeEventMap(Map<String, Object> event, String eventTypeName)
route(Object[] objectArray, String eventTypeName) Replaced by EPEventService#routeEventObjectArray(Object[] event, String eventTypeName)
route(org.w3c.dom.Node node) Replaced by EPEventService#routeEventXMLDOM(Node node, String eventTypeName)
routeAvro(Object avroGenericDataDotRecord, String avroEventTypeName) Replaced by EPEventService#routeEventAvro(Object avroGenericDataDotRecord, String eventTypeName)
long getCurrentTime Replaced by EPEventService#getCurrentTime
Long getNextScheduledTime Replaced by EPEventService#getNextScheduledTime
boolean isExternalClockingEnabled Replaced by EPEventService#isExternalClockingEnabled
New method EPEventService#advanceTime(long time); Replaces sendEvent(new CurrentTimeEvent(time))
New method EPEventService#advanceTimeSpan(long time); Replaces sendEvent(new CurrentTimeSpanEvent(time))
New method EPEventService#advanceTimeSpan(long time, long resolution); Replaces sendEvent(new CurrentTimeSpanEvent(time, resolution))
New method EPEventService#clockInternal(); Replaces sendEvent(new TimerControlEvent(TimerControlEvent.ClockType.CLOCK_INTERNAL))
New method EPEventService#clockExternal(); Replaces sendEvent(new TimerControlEvent(TimerControlEvent.ClockType.CLOCK_EXTERNAL))
EventSender getEventSender(URI[] uris) Removed; Plug-In event representations are no longer supported
getVariableValue(...) (various footprints) Moved to EPVariableService#getVariableValue (various footprints)
getVariableValueAll Moved to EPVariableService#getVariableValueAll
setVariableValue (various footprints) Moved to EPVariableService#setVariableValue (various footprints)
EPOnDemandQueryResult executeQuery(String epl) (various footprints) Moved to EPFireAndForgetService#EPFireAndForgetQueryResult executeQuery(EPCompiled compiled) (various footprints)
EPOnDemandPreparedQuery prepareQuery(String epl) (various footprints) Moved to EPFireAndForgetService#EPFireAndForgetPreparedQuery prepareQuery(EPCompiled compiled) (various footprints)
EPOnDemandPreparedQueryParameterized prepareQueryWithParameters(String epl) Moved to EPFireAndForgetService#prepareQueryWithParameters(EPCompiled compiled)

EPAdministrator

This class has been renamed to EPDeploymentService.

Esper-7 Esper-8
getDeploymentAdmin Removed; Use the deploy and undeploy methods instead.
createEPL, createPattern, create Removed; Use the compiler to compile.
prepareEPL, preparePattern, prepare Removed; Use DeploymentOptions to assign substitution parameters.
EPStatement getStatement(String statementName) Replaced by EPDeploymentService#getStatement(String deploymentId, String statementName).
The deployment id of the statement must be passed as well since the statement name alone is not unique.
String[] getStatementNames() Removed; Use EPDeploymentService#getDeployments to obtain all deployment ids; Use getDeployment to obtain a deployment and its statements.
startAllStatements() and stopAllStatements() and destroyAllStatements() Removed; Use deploy and undeployAll instead.
ConfigurationOperations getConfiguration() Removed; Use EPRuntime#getConfigurationDeepCopy.
getContextPartitionAdmin Removed; Use EPRuntime#getContextPartitionService()
New method Deployment deploy(...) for deploying compiled EPL modules.
New method undeploy(...) for un-deploying deployments.
New method undeployAll(...) for un-deploying all deployments.
New method Deployment getDeployment(String deploymentId) for obtaining deployment information including statements.
New method addDeploymentStateListener(DeploymentStateListener listener) for registering a callback for deployment events.

EPStatement

Esper-7 Esper-8
start() Removed; The lifecycle of a statement follows the EPL deployment. Use EPDeploymentService#deploy instead.
stop() Removed; The lifecycle of a statement follows the EPL deployment. Use EPDeploymentService#undeploy instead.
destroy() Removed; The lifecycle of a statement follows the EPL deployment. Use EPDeploymentService#undeploy instead.
EPStatementState getState Removed; The lifecycle of a statement follows the EPL deployment. Use isDestroyed instead.
boolean isStarted() Removed; The lifecycle of a statement follows the EPL deployment. Use isDestroyed instead.
boolean isStopped() Removed; The lifecycle of a statement follows the EPL deployment. Use isDestroyed instead.
String getText() Removed; Use getProperty(StatementProperty.EPL) instead. This method can return null depending on compiler settings (by default it returns the EPL text).
long getTimeLastStateChange() Removed; The lifecycle of a statement follows the EPL deployment. Obtain the deployment timestamp from Deployment.
boolean isPattern() Removed without replacement.
String getServiceIsolated() Removed without replacement.
String getDeploymentId() New method, returns the deployment id.
Object getProperty(StatementProperty field) New method, returns the statement properties such as EPL text and statement type.
addListener(StatementAwareUpdateListener listener) Removed, use addListener(UpdateListener listener) instead.
removeListener(StatementAwareUpdateListener listener) Removed, use removeListener(UpdateListener listener) instead.
Iterator getStatementAwareListeners() Removed, use getUpdateListeners() instead.

EPContextPartitionAdmin

The class EPContextPartitionAdmin has been renamed to EPContextPartitionService.
Obtain from EPRuntime#getContextPartitionService.

Esper-7 Esper-8
String[] getContextStatementNames(String contextName) EPContextPartitionService#getContextStatementNames(String deploymentId, String contextName) Method now requires the deployment-id of the context.
int getContextNestingLevel(String contextName) EPContextPartitionService#getContextNestingLevel(String deploymentId, String contextName) Method now requires the deployment-id of the context.
ContextPartitionCollection destroyContextPartitions(String contextName, ContextPartitionSelector selector) Removed; Context partition can be destroyed using EPL termination clause.
ContextPartitionCollection stopContextPartitions(String contextName, ContextPartitionSelector selector) Removed; Context partition can be stopped using EPL termination clause.
ContextPartitionCollection startContextPartitions(String contextName, ContextPartitionSelector selector) Removed; Context partition can be started using EPL initiated-by clause.
ContextPartitionCollection getContextPartitions(String contextName, ContextPartitionSelector selector) EPContextPartitionService#getContextPartitions(String deploymentId, String contextName, ContextPartitionSelector selector) Method now requires the deployment-id of the context.
Set getContextPartitionIds(String contextName, ContextPartitionSelector selector) EPContextPartitionService#getContextPartitionIds(String deploymentId, String contextName, ContextPartitionSelector selector); Method now requires the deployment-id of the context.
ContextPartitionDescriptor destroyContextPartition(String contextName, int agentInstanceId) Removed; Context partition can be destroyed using EPL termination clause.
ContextPartitionDescriptor stopContextPartition(String contextName, int agentInstanceId) Removed; Context partition can be stopped using EPL termination clause.
ContextPartitionDescriptor startContextPartition(String contextName, int agentInstanceId) Removed; Context partition can be started using EPL initiated-by clause.
ContextPartitionDescriptor getDescriptor(String contextName, int agentInstanceId) Replaced by EPContextPartitionService#getIdentifier(String deploymentId, String contextName, int agentInstanceId)
Map getContextProperties(String contextName, int contextPartitionId) EPContextPartitionService#getContextProperties(String deploymentId, String contextName, int contextPartitionId) Method now requires the deployment-id of the context.

EPDataFlowRuntime

The class EPDataFlowRuntime has been renamed to EPDataFlowService.
Obtain from EPRuntime#getDataFlowService.

Esper-7 Esper-8
EPDataFlowDescriptor getDataFlow(String dataFlowName) EPDataFlowService#getDataFlow(String deploymentId, String dataflowName) Method now requires the deployment-id of the dataflow.
String[] getDataFlows() EPDataFlowService#getDataFlows() Method now returns the pair of deployment-id and dataflow names.
EPDataFlowInstance instantiate(String dataFlowName) (various footprints) EPDataFlowService#instantiate(String deploymentId, String dataflowName) Method now requires the deployment-id of the dataflow (various footprints).

EPDeploymentAdmin

This class has been superseded by the compiler API and there is no direct replacement.

Esper-7 Esper-8
Module read(...) (various footprints) Replaced by EPCompiler#read
Module parse(String eplModuleText) Replaced by EPCompiler#parseModule
DeploymentOrder getDeploymentOrder(Collection modules, DeploymentOrderOptions options) Replaced by ModuleOrderUtil#getDeploymentOrder
DeploymentResult deploy(...) (various footprints) Replaced by EPCompiler#compile and by EPAdministrator#deploy
UndeploymentResult undeployRemove(String deploymentId) Replaced by EPDeploymentService#undeploy
String[] getDeployments() Replaced by EPDeploymentService#getDeployments
DeploymentInformation getDeployment(String deploymentId) Replaced by EPDeploymentService#getDeployment
DeploymentInformation[] getDeploymentInformation() Replaced by EPDeploymentService#getDeployments and EPAdministrator#getDeployment(String id) instead.
boolean isDeployed(String moduleName) Replaced by EPDeploymentService#getDeployments and EPAdministrator#getDeployment(String id) instead.
DeploymentResult readDeploy(...) (various footprints) Replaced by EPCompiler#read and EPCompiler#compile and EPAdministrator#deploy instead.
DeploymentResult parseDeploy(...) (various footprints) Replaced by EPCompiler#parse and EPCompiler#compile and EPAdministrator#deploy instead.
String add(Module module) (various footprints) Replaced by EPCompiler#compile and EPAdministrator#deploy instead.
DeploymentResult deploy(String deploymentId, DeploymentOptions options) Replaced by EPDeploymentService#deploy instead.
UndeploymentResult undeploy(String deploymentId) (various footprints) Replaced by EPDeploymentService#undeploy instead.

ConfigurationOperations

This class has been superseded by other APIs and by using EPL.

Esper-7 Esper-8
addEventTypeAutoName(String packageName) Replaced by ConfigurationCommon#addEventTypeAutoName instead.
addPlugInAggregationMultiFunction(ConfigurationPlugInAggregationMultiFunction config) Replaced by ConfigurationCompiler#addPlugInAggregationMultiFunction
addPlugInAggregationFunctionFactory(String functionName, String aggregationFactoryClassName) Replaced by ConfigurationCompiler#addPlugInAggregationFunction
addPlugInSingleRowFunction(String functionName, ...) (various footprints) Replaced by ConfigurationCompiler#addPlugInSingleRowFunction (various footprints)
addPlugInView(String namespace, String name, String viewFactoryClass) Replaced by ConfigurationCompiler#addPlugInView
addImport(String importName) (various footprints) Replaced by ConfigurationCommon#addImport (various footprints)
addAnnotationImport(String importName) (various footprints) Replaced by ConfigurationCommon#addAnnotationImport (various footprints)
isEventTypeExists(String eventTypeName) Replaced by EPEventTypeService#getEventType
addEventType(String eventTypeName, ...) (various footprints) Replaced by ConfigurationCommon#addEventType (various footprints) and create schema.
addEventTypeAvro(String eventTypeName, ConfigurationEventTypeAvro avro) Replaced by ConfigurationCommon#addEventTypeAvro (various footprints) and create avro schema.
addVariable(String variableName, ...) (various footprints) Replaced by ConfigurationCommon#addVariable (various footprints) and create variable.
addPlugInEventType(String eventTypeName, URI[] resolutionURIs, Serializable initializer) Removed without replacement.
void setPlugInEventTypeResolutionURIs(URI[] urisToResolveName) Removed without replacement.
addRevisionEventType(String revisioneventTypeName, ConfigurationRevisionEventType revisionEventTypeConfig) Removed without replacement.
addVariantStream(String variantStreamName, ConfigurationVariantStream variantStreamConfig) Replaced by ConfigurationCommon#addVariantStream (various footprints) and create variant schema.
updateMapEventType(String mapeventTypeName, Map typeMap) Removed without replacement.
boolean isVariantStreamExists Replaced by ConfigurationCommon#getVariantStreams.
setMetricsReportingInterval(String stmtGroupName, long newIntervalMSec) Method moved to EPMetricsService, obtain using EPRuntime#getMetricsRuntime.
setMetricsReportingStmtEnabled(String statementName) Method moved to EPMetricsService, obtain using EPRuntime#getMetricsRuntime.
setMetricsReportingStmtDisabled(String statementName) Method moved to EPMetricsService, obtain using EPRuntime#getMetricsRuntime.
setMetricsReportingEnabled() Method moved to EPMetricsService, obtain using EPRuntime#getMetricsRuntime.
setMetricsReportingDisabled() Method moved to EPMetricsService, obtain using EPRuntime#getMetricsRuntime.
boolean removeEventType(String name, boolean force) Removed without replacement. Undeploying a module removes the event types owned by the module.
Set getEventTypeNameUsedBy(String eventTypeName) Removed without replacement. Please let us know if you need this functionality.
Set getVariableNameUsedBy(String variableName) Removed without replacement. Please let us know if you need this functionality.
boolean removeVariable(String name, boolean force) Removed without replacement. Undeploying a module removes the variables owned by the module.
void replaceXMLEventType(String xmlEventTypeName, ConfigurationEventTypeXMLDOM config) Removed without replacement.
EventType getEventType(String eventTypeName) Replaced by EPEventTypeService#getEventType
EventType[] getEventTypes() Removed without replacement.
setPatternMaxSubexpressions(Long maxSubexpressions) Removed without replacement.
setMatchRecognizeMaxStates(Long maxStates) Removed without replacement.
updateObjectArrayEventType(String myEvent, String[] namesNew, Object[] typesNew) Removed without replacement.
getTransientConfiguration() Replaced by EPRuntime#getConfigurationTransient

EPVariableService

The methods of EPRuntime (old API) that are related to variables have been moved to this class.
Obtain from EPRuntime#getVariableService.

Esper-7 Esper-8
EPRuntime#getVariableValue(String variableName) (various footprints) Object getVariableValue(String deploymentId, String variableName) (various footprints) Method now requires the deployment-id of the variable.
EPRuntime#setVariableValue(String variableName, Object variableValue) (various footprints) setVariableValue(String deploymentId, String variableName, Object variableValue) Method now requires the deployment-id of the variable.
EPRuntime#getVariableValuesAll() Map<DeploymentIdNamePair, Object> getVariableValueAll(); Method now returns a map keyed by pair of deployment-id and variable name.

EPOnDemandPreparedQuery

This class was renamed to EPFireAndForgetPreparedQuery.

EPOnDemandPreparedQueryParameterized

This class was renamed to EPFireAndForgetPreparedQueryParameterized.

EPOnDemandQueryResult

This class was renamed to EPFireAndForgetQueryResult.

Statement Object Model API Changes

The changes in the statement object model classes between Esper-8 and Esper-7 are:

Class Changes
CreateSchemaClause The field treeObjectName wasn't used and was removed.
CreateTableColumn The fields optionalTypeIsArray and optionalTypeIsPrimitiveArray have been removed. The optionalTypeName
can now have "[]" appended for arrays and "[primitive]" for array-of-primitive or multiple "[]" for dimensions.
SchemaColumnDesc Same as above.
CreateVariableClause Same as above.
CreateWindowClause The new fields asEventTypeName for the event type name when provided. This information no longer resides in the from-clause.