son_editor.models package

son_editor.models.descriptor module

class son_editor.models.descriptor.Descriptor(name=None, version=None, vendor=None, descriptor=None)

Bases: sqlalchemy.ext.declarative.api.Base

The Base class for storing the function and the service descriptors. Both descriptors share the properties name, vendor and version and are constrained to have a unique uid inside of a project

as_dict()
descriptor
id
name
project_id
uid
vendor
version
class son_editor.models.descriptor.Function(name=None, version=None, vendor=None, descriptor=None, project=None)

Bases: son_editor.models.descriptor.Descriptor

The Model for the function Descriptor

descriptor
id
name
project
project_id
uid
vendor
version
class son_editor.models.descriptor.Service(name=None, version=None, vendor=None, descriptor=None, project=None, meta='{}')

Bases: son_editor.models.descriptor.Descriptor

The Model for the service descriptor additionally contains a meta property that can hold arbitrary meta-data about the service

as_dict()
descriptor
id
meta
name
project
project_id
uid
vendor
version

son_editor.models.private_descriptor module

class son_editor.models.private_descriptor.PrivateDescriptor(ws_id=None, name=None, version=None, vendor=None, descriptor=None)

Bases: sqlalchemy.ext.declarative.api.Base

The private descriptor is the model for the service and function descriptors in the private catalogue

as_dict()
descriptor
id
name
uid
vendor
version
ws_id
class son_editor.models.private_descriptor.PrivateFunction(ws_id=None, name=None, version=None, vendor=None, descriptor=None)

Bases: son_editor.models.private_descriptor.PrivateDescriptor

The Private function is the Model for the Function descriptors in the private catalogue

descriptor
id
name
uid
vendor
version
workspace
ws_id
class son_editor.models.private_descriptor.PrivateService(ws_id=None, name=None, version=None, vendor=None, descriptor=None)

Bases: son_editor.models.private_descriptor.PrivateDescriptor

The Private service is the Model for the Service descriptors in the private catalogue

descriptor
id
name
uid
vendor
version
workspace
ws_id

son_editor.models.project module

class son_editor.models.project.Project(name=None, rel_path=None, workspace=None)

Bases: sqlalchemy.ext.declarative.api.Base

The Project model corresponds to the project folders in the workpace. It stores references to the services and functions of one project in the database. If the project was shared via GitHub the repo_url points to the respective repository.

as_dict()
description
functions
id
maintainer
name
publish_to
rel_path
repo_url
services
vendor
version
workspace
workspace_id

son_editor.models.repository module

class son_editor.models.repository.Catalogue(name=None, url=None, publish=None, workspace=None)

Bases: son_editor.models.repository.Repository

id
name
publish
url
workspace
workspace_id
class son_editor.models.repository.Platform(name=None, url=None, publish=None, workspace=None, token_path='empty')

Bases: son_editor.models.repository.Repository

id
name
publish
token_path
url
workspace
workspace_id
class son_editor.models.repository.Repository(name=None, url=None, publish=False)

Bases: sqlalchemy.ext.declarative.api.Base

The repository model is the base class for the external repositories that can be contacted through the given url

as_dict()
id
name
publish
url
workspace_id

son_editor.models.user module

class son_editor.models.user.User(name=None, email=None)

Bases: sqlalchemy.ext.declarative.api.Base

The user model stores the username and his email that was registered at github. It is the root object for all data belonging to a user

email
id
name
workspaces

son_editor.models.workspace module

class son_editor.models.workspace.Workspace(name=None, path=None, owner=None, schema_index=0)

Bases: sqlalchemy.ext.declarative.api.Base

The workspace model stores information about the workspace and has references to its children like the catalogues, platform and projects The schema_index corresponds to the index of the schema_remote_masters that are configured in the server configuration

as_dict()
catalogues
id
name
owner
owner_id
path
platforms
priv_functions
priv_services
projects
schema_index