Difference between revisions of "Database"

From Event-B
Jump to navigationJump to search
imported>Son
imported>Jastram
 
(5 intermediate revisions by 2 users not shown)
Line 10: Line 10:
  
 
  import org.rodinp.core.RodinCore;
 
  import org.rodinp.core.RodinCore;
 +
import org.rodinp.core.IRodinDB;
 
  ...
 
  ...
 
  IRodinDB rodinDB = RodinCore.getRodinDB();
 
  IRodinDB rodinDB = RodinCore.getRodinDB();
  
 
== IRodinProject ==
 
== IRodinProject ==
From Rodin database to get rodin projects
+
From Rodin database to get Rodin project(s)
 
* Get the list of Rodin projects in the Rodin database.
 
* Get the list of Rodin projects in the Rodin database.
  
  IRodinProject [] projects = rodinDB.getRodinProjects();
+
  IRodinProject [] rodinProjects = rodinDB.getRodinProjects();
  
 
* Get a Rodin project by name
 
* Get a Rodin project by name
  
 
  IRodinProject rodinProject = rodinDB.getRodinProject(name);
 
  IRodinProject rodinProject = rodinDB.getRodinProject(name);
 +
 +
== IRodinFile ==
 +
From the Rodin project to get Rodin file(s)
 +
* Get the list of Rodin files in a Rodin project
 +
 +
IRodinFile[] getRodinFiles() throws RodinDBException;
 +
 +
* Get a Rodin file by name
 +
 +
IRodinFile getRodinFile(String fileName);
 +
 +
== IInternalElement ==
 +
* Get the root element corresponding to a Rodin file.
 +
 +
IInternalElement rootElement = rodinFile.getRoot();
  
  
Line 35: Line 51:
  
 
=== IMachineRoot ===
 
=== IMachineRoot ===
 +
* Get a machine root by name
 +
IMachineRoot machineRoot = eventBProject.getMachineRoot(name);
  
  
 
[[Category:Developer documentation]]
 
[[Category:Developer documentation]]
 
[[Category:Rodin Platform]]
 
[[Category:Rodin Platform]]

Latest revision as of 07:55, 3 September 2009

This page described the rodin database API. TODO: by someone knowing the internals of rodin. Describe the database API

The database API is located in the

org.rodinp.core

in the

org.rodinp.core

plug-in.

The common interface for all dtabase elements is IRodinElement.

IRodinDB

Getting the Rodin Database

import org.rodinp.core.RodinCore;
import org.rodinp.core.IRodinDB;
...
IRodinDB rodinDB = RodinCore.getRodinDB();

IRodinProject

From Rodin database to get Rodin project(s)

  • Get the list of Rodin projects in the Rodin database.
IRodinProject [] rodinProjects = rodinDB.getRodinProjects();
  • Get a Rodin project by name
IRodinProject rodinProject = rodinDB.getRodinProject(name);

IRodinFile

From the Rodin project to get Rodin file(s)

  • Get the list of Rodin files in a Rodin project
IRodinFile[] getRodinFiles() throws RodinDBException;
  • Get a Rodin file by name
IRodinFile getRodinFile(String fileName);

IInternalElement

  • Get the root element corresponding to a Rodin file.
IInternalElement rootElement = rodinFile.getRoot();


IEventBProject

Getting an Event-B Project from a Rodin Project.

IEventBProject eventBProject = rodinProject.getAdapter(IEventBProject.class);


IRodinElement

IMachineRoot

  • Get a machine root by name
IMachineRoot machineRoot = eventBProject.getMachineRoot(name);