Class ExtensionService
java.lang.Object
org.jumpmind.symmetric.service.impl.AbstractService
org.jumpmind.symmetric.service.impl.ExtensionService
- All Implemented Interfaces:
IExtensionService
,IService
- Direct Known Subclasses:
ClientExtensionService
This service registers
IExtensionPoint
s defined both by SymmetricDS and others found in the ApplicationContext
. It also reads the
sym_extension table for IExtensionPoint
s defined there.
SymmetricDS reads in any Spring XML file found in the classpath of the application that matches the following pattern: /META-INF/services/symmetric-*-ext.xml
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ISymmetricEngine
protected List<ExtensionPointMetaData>
protected Map<Class,
Map<String, IExtensionPoint>> protected SimpleClassCompiler
protected Map<Class,
Map<String, IExtensionPoint>> Fields inherited from class org.jumpmind.symmetric.service.impl.AbstractService
parameterService, platform, sqlTemplate, sqlTemplateDirty, symmetricDialect, tablePrefix
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addExtensionPoint
(String name, IExtensionPoint extension) void
addExtensionPoint
(IExtensionPoint extension) protected void
addExtensionPointMetaData
(IExtensionPoint extensionPoint, String name, Class<? extends IExtensionPoint> extensionClass, boolean installed) void
void
deleteExtension
(String extensionId) getCompiledClass
(String javaCode) <T extends IExtensionPoint>
TgetExtensionPoint
(Class<T> extensionClass) <T extends IExtensionPoint>
List<T>getExtensionPointList
(Class<T> extensionClass) <T extends IExtensionPoint>
Map<String,T> getExtensionPointMap
(Class<T> extensionClass) protected Map<String,
IExtensionPoint> getExtensionsByNameMap
(Class extensionClass) protected Map<String,
IExtensionPoint> getExtensionsByNameMap
(Map<Class, Map<String, IExtensionPoint>> byClassByNameMap, Class extensionClass) protected Map<String,
IExtensionPoint> getStaticExtensionsByNameMap
(Class extensionClass) protected boolean
void
refresh()
protected boolean
registerExtension
(String name, IExtensionPoint ext) protected boolean
registerExtension
(String name, IExtensionPoint ext, boolean shouldLog) protected void
registerExtension
(Extension extension) void
removeExtensionPoint
(IExtensionPoint extension) void
renameExtension
(String oldId, Extension extension) void
saveExtension
(Extension extension) void
saveExtensionAsCopy
(Extension extension) protected void
unRegisterExtension
(String name, IExtensionPoint ext) Methods inherited from class org.jumpmind.symmetric.service.impl.AbstractService
assertNotNull, buildBatchOrderBy, buildBatchParams, buildBatchWhere, buildBatchWhereFromFilter, close, createSqlReplacementTokens, getJdbcTemplate, getParameterService, getSql, getSymmetricDialect, getTablePrefix, getTargetDialect, getTargetPlatform, getTargetPlatform, isCalledFromSymmetricAdminTool, isSet, isStreamClosedByClient, isSymmetricTable, logOnce, maxDate, readAcks, sendAck, setSqlMap, synchronize, toNodeIds, toNodeIds
-
Field Details
-
engine
-
simpleClassCompiler
-
staticExtensionsByClassByName
-
extensionsByClassByName
-
extensionMetaData
-
-
Constructor Details
-
ExtensionService
-
-
Method Details
-
refresh
public void refresh()- Specified by:
refresh
in interfaceIExtensionService
-
registerExtension
-
registerExtension
-
registerExtension
-
unRegisterExtension
-
initializeExtension
-
getExtensionClassList
-
getExtensionPointMetaData
- Specified by:
getExtensionPointMetaData
in interfaceIExtensionService
-
addExtensionPointMetaData
protected void addExtensionPointMetaData(IExtensionPoint extensionPoint, String name, Class<? extends IExtensionPoint> extensionClass, boolean installed) -
getExtensionPoint
- Specified by:
getExtensionPoint
in interfaceIExtensionService
-
getExtensionPointList
- Specified by:
getExtensionPointList
in interfaceIExtensionService
-
getExtensionPointMap
- Specified by:
getExtensionPointMap
in interfaceIExtensionService
-
addExtensionPoint
- Specified by:
addExtensionPoint
in interfaceIExtensionService
-
addExtensionPoint
- Specified by:
addExtensionPoint
in interfaceIExtensionService
-
removeExtensionPoint
- Specified by:
removeExtensionPoint
in interfaceIExtensionService
-
getStaticExtensionsByNameMap
-
getExtensionsByNameMap
-
getExtensionsByNameMap
protected Map<String,IExtensionPoint> getExtensionsByNameMap(Map<Class, Map<String, IExtensionPoint>> byClassByNameMap, Class extensionClass) -
getExtensions
- Specified by:
getExtensions
in interfaceIExtensionService
-
saveExtension
- Specified by:
saveExtension
in interfaceIExtensionService
-
saveExtensionAsCopy
- Specified by:
saveExtensionAsCopy
in interfaceIExtensionService
-
renameExtension
- Specified by:
renameExtension
in interfaceIExtensionService
-
deleteExtension
- Specified by:
deleteExtension
in interfaceIExtensionService
-
deleteAllExtensions
public void deleteAllExtensions()- Specified by:
deleteAllExtensions
in interfaceIExtensionService
-
getCompiledClass
- Specified by:
getCompiledClass
in interfaceIExtensionService
- Throws:
Exception
-