Database: Difference between revisions

From Event-B
Jump to navigationJump to search
imported>Son
No edit summary
imported>Jastram
 
(6 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 project = 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();
 
 
== IEventBProject ==
Getting an Event-B Project from a Rodin Project.
IEventBProject eventBProject = rodinProject.getAdapter(IEventBProject.class);
 


== IRodinElement ==
== IRodinElement ==
Line 28: 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);