omero.plugins.obj module

Plugin for performing OMERO transactional changes (DML) from a simple script. This macro like language is intended to be used simply from the command-line as well as in scripts and tests.

class plugins.obj.ListGetTxAction(tx_state, tx_cmd)[source]

Bases: NonFieldTxAction

on_go(ctx, args)[source]
class plugins.obj.MapGetTxAction(tx_state, tx_cmd)[source]

Bases: NonFieldTxAction

on_go(ctx, args)[source]
class plugins.obj.MapSetTxAction(tx_state, tx_cmd)[source]

Bases: NonFieldTxAction

on_go(ctx, args)[source]
class plugins.obj.NewObjectTxAction(tx_state, tx_cmd)[source]

Bases: TxAction

check_requirements(ctx, obj, completed)[source]
go(ctx, args)[source]
class plugins.obj.NonFieldTxAction(tx_state, tx_cmd)[source]

Bases: TxAction

Base class for use with command actions which don’t take the standard a=b c=d fields.

go(ctx, args)[source]
save_and_return(ctx)[source]
class plugins.obj.NullTxAction(tx_state, tx_cmd)[source]

Bases: NonFieldTxAction

on_go(ctx, args)[source]
class plugins.obj.ObjControl(*args: Any, **kwargs: Any)[source]

Bases: BaseControl

Create, Update and Query OMERO objects

The obj command allows inserting any objects into the OMERO database as well as updating and querying existing ones. This is likely useful for preparing datasets for import and similar.

Examples:

$ omero obj new Dataset name=foo Dataset:123 $ omero obj update Dataset:123 description=bar Dataset:123 $ omero obj get Dataset:123 name foo $ omero obj get Dataset:123 description=bar id=123 name=foo version= $ omero obj null Dataset:123 description Dataset:123 $ omero obj get Dataset:123 description

$ omero obj new MapAnnotation ns=example.com MapAnnotation:456 $ omero obj map-set MapAnnotation:456 mapValue foo bar MapAnnotation:456 $ omero obj map-set MapAnnotation:456 mapValue foo MapAnnotation:456 $ omero obj map-set MapAnnotation:456 mapValue fu baa MapAnnotation:456 $ omero obj map-get MapAnnotation:456 mapValue foo bar $ omero obj get MapAnnotation:456 mapValue (foo,bar),(fu,baa) $ omero obj list-get MapAnnotation:456 mapValue 0 (foo,bar)

Bash examples:

$ project=$(omero obj new Project name=’my Project’) $ dataset=$(omero obj new Dataset name=’my Dataset’) $ omero obj new ProjectDatasetLink parent=$project child=$dataset ProjectDatasetLink:456 $ omero import -d $dataset …

parse(tx_state, arg_list=None, line=None)[source]

Takes a single command list and turns it into a TxAction object

process(args)[source]
class plugins.obj.ObjGetTxAction(tx_state, tx_cmd)[source]

Bases: NonFieldTxAction

get_field(field)[source]
on_go(ctx, args)[source]
class plugins.obj.TxAction(tx_state, tx_cmd)[source]

Bases: object

Parsed operation provided by the user chosen based on the first non-variable field of the command. Implementations can choose how they will handle the fields parsed by TxCmd.

class_name(ctx)[source]
go(ctx, args)[source]
instance(ctx)[source]
obj_id()[source]
class plugins.obj.TxCmd(tx_state, arg_list=None, line=None)[source]

Bases: object

VAR_NAME = '(?P<DEST>[a-zA-Z][a-zA-Z0-9]*)'
VAR_RE = re.compile('^\\s*(?P<DEST>[a-zA-Z][a-zA-Z0-9]*)\\s*=\\s(?P<REST>.*)$')
setters()[source]
class plugins.obj.TxField(tx_state, arg)[source]

Bases: object

ARG_RE = re.compile('(?P<FIELD>[a-zA-Z][a-zA-Z0-9]*)(?P<OPER>[@])?=(?P<VALUE>.*)', re.MULTILINE|re.DOTALL)
class plugins.obj.TxState(ctx)[source]

Bases: object

add(command)[source]
get_row(i)[source]
get_var(key)[source]
set_value(proxy, dest=None)[source]
class plugins.obj.UpdateObjectTxAction(tx_state, tx_cmd)[source]

Bases: TxAction

go(ctx, args)[source]