Changes between Version 15 and Version 16 of PluginDevelopmentGuide

14.04.2013 17:23:18 (11 years ago)

Introducing the server side


  • PluginDevelopmentGuide

    v15 v16  
    570570Here an association definition is added to the //Topicmap// type subsequently. 
     572== The server side == 
     574What a DeepaMehta plugin can do at the server side: 
     576    * **Listen to DeepaMehta Core events**. In particular situations the DeepaMehta Core fires events, e.g. before and after it creates a new topic in the database. Your plugin can listen to these events and react in its own way. Thus, the //DeepaMehta 4 Workspaces// plugin e.g. ensures that each new topic is assigned to a workspace. 
     578    * **Providing a service**. Your plugin can make its business logic, that is its service methods, accessible by other plugins (via OSGi) and/or by external applications (via HTTP/REST). Example: the service provided by the //DeepaMehta 4 Topicmaps// plugin includes methods to add a topic to a topicmap or to change the topic's coordinates within a topicmap. 
     580    * **Consuming services provided by other plugins**. Example: in order to investigate a topic's workspace assignments and the current user's memberships the //DeepaMehta 4 Access Control// plugin consumes the service provided by the //DeepaMehta 4 Workspaces// plugin. 
     582    * **Access the DeepaMehta Core Service**. The DeepaMehta Core Service provides the basic database operations (create, retrieve, update, delete) to deal with the DeepaMehta Core objects: Topics, Associations, Topic Types, Association Types. 
     584Weather a DeepaMehta plugin has a server side part at all depends on the nature of the plugin. Plugins without a server side part include those which e.g. just define a data model or just provide a custom (JavaScript) renderer.