son_editor.apis package

son_editor.apis.catalogue_functionsapi module

Created on 22.07.2016

@author: Jonas

class son_editor.apis.catalogue_functionsapi.Function(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Resource methods for specific function descriptors

delete(ws_id, catalogue_id, vnf_id)

Deletes a function

Deletes a function in the project or catalogue by its id

get(ws_id, catalogue_id, vnf_id)

Get a specific function

Gets a specific function information by its id

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, catalogue_id, vnf_id)

Updates a function

Updates a function in the project or catalogue by its id

class son_editor.apis.catalogue_functionsapi.Functions(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Resource methods for all function descriptors of this directory

get(ws_id, catalogue_id)

List all functions

Lists all available functions in the given project or catalogue.

methods = ['GET', 'POST']
post(ws_id, catalogue_id)

Creates a new function

Creates a new function in the project or catalogue

son_editor.apis.catalogue_servicesapi module

Created on 22.07.2016

@author: Jonas

class son_editor.apis.catalogue_servicesapi.Service(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id, catalogue_id, service_id)

Delete the Service

Deletes the service from the Project or Catalogue

get(ws_id, catalogue_id, service_id)

Return a specific Service

Returns the referenced service from the Project or catalogue

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, catalogue_id, service_id)

Update the service

Updates the referenced service in the catalogue

class son_editor.apis.catalogue_servicesapi.Services(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Api Methods for all services in this resource

get(ws_id, catalogue_id)

Get a list of all Services Returns a list of all services available in this resource

methods = ['GET', 'POST']
post(ws_id, catalogue_id)

Create a new Service

Publishes a new Service in the catalogue

son_editor.apis.cataloguesapi module

Created on 18.07.2016

@author: Jonas

class son_editor.apis.cataloguesapi.Catalogue(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id, catalogue_id)

Deletes a specific catalogue

Deletes a catalogue by its id

get(ws_id, catalogue_id)

Gets a specific catalogue

Gets a specifc catalogue by its id

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, catalogue_id)

Updates a specific catalogue

Updates a specific catalogue by its id

class son_editor.apis.cataloguesapi.Catalogues(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id)

Lists catalogues

Lists catalogues in a specific workspace

methods = ['GET', 'POST']
post(ws_id)

Creates a new service catalogue

Creates a new service catalogue in the specific workspace

son_editor.apis.configapi module

class son_editor.apis.configapi.Configuration(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Web configuration

get(*args, **kwargs)
methods = ['GET', 'POST']
post(*args, **kwargs)
son_editor.apis.configapi.authenticate()

Sends a 401 response that enables basic auth

son_editor.apis.configapi.check_auth(username, password)

This function is called to check if a username / password combination is valid.

son_editor.apis.configapi.requires_auth(f)

son_editor.apis.gitapi module

class son_editor.apis.gitapi.GitClone(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Clones projects into the workspace

class son_editor.apis.gitapi.GitCommit(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Commits and pushes changes

class son_editor.apis.gitapi.GitCreate(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Creates a remote repository and pushes a project for it

class son_editor.apis.gitapi.GitDelete(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id)

Deletes a remote repository

methods = ['DELETE']
class son_editor.apis.gitapi.GitDiff(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Retrieves the current diff of the project directory

class son_editor.apis.gitapi.GitInit(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Initializes a repository in the given project

class son_editor.apis.gitapi.GitList(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id)

Lists remote repository information

methods = ['GET']
class son_editor.apis.gitapi.GitPull(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Pulls updates from a project

class son_editor.apis.gitapi.GitStatus(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id)

Retrieves the current status of the project directory

son_editor.apis.misc module

class son_editor.apis.misc.Log(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get()

Return the logfile as string

methods = ['GET']

son_editor.apis.nsfslookup module

Created on 22.07.2016

@author: Jonas

class son_editor.apis.nsfslookup.FunctionLookup(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id, project_id, vendor, name, version)

Retrieves a virtual network function by vendor name version

Finds a specific virtual network with given vendor / name / version

methods = ['GET']
class son_editor.apis.nsfslookup.ServiceLookup(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id, project_id, vendor, name, version)

Retrieves a network service by vendor name version

Finds a specific network service with given vendor / name / version

methods = ['GET']

son_editor.apis.platformsapi module

Created on 18.07.2016

@author: Jonas

class son_editor.apis.platformsapi.Platform(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id, platform_id)

Delete Platform

Deletes a service platform by its id

get(ws_id, platform_id)

Get service Platform

Retrieves a service platform by its id

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, platform_id)

Update platform

Updates a service platform by its id

class son_editor.apis.platformsapi.PlatformServices(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

methods = ['POST']
post(ws_id, platform_id)

Upload a service package

Packages and uploads a network service to the platform

class son_editor.apis.platformsapi.Platforms(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id)

List platforms

Lists all service platforms in the given workspace

methods = ['GET', 'POST']
post(ws_id)

Create a new service platform

Creates a new service platform in the given workspace

son_editor.apis.project_functionsapi module

Created on 22.07.2016

@author: Jonas

class son_editor.apis.project_functionsapi.Function(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Resource methods for specific function descriptors

delete(ws_id, project_id, vnf_id)

Deletes a function

Deletes a function in the project or catalogue by its id

get(ws_id, project_id, vnf_id)

Get a specific function

Gets a specific function information by its id

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, project_id, vnf_id)

Updates a function

Updates a function in the project or catalogue by its id

class son_editor.apis.project_functionsapi.FunctionUpload(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

static delete(ws_id, project_id, vnf_id, filename)

Delete VNF Image

Delete the VNF Image by file name

Parameters:
  • ws_id – The workspace ID
  • project_id – The project ID
  • vnf_id – The VNF ID
  • filename – The filename to delete
Returns:

methods = ['DELETE']
class son_editor.apis.project_functionsapi.Functions(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Resource methods for all function descriptors of this directory

get(ws_id, project_id)

List all functions

Lists all available functions in the given project or catalogue.

methods = ['GET', 'POST']
post(ws_id, project_id)

Creates a new function

Creates a new function in the project or catalogue

class son_editor.apis.project_functionsapi.PrivateFunction(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id, project_id, vnf_id)

Publish function to private

Publishes the function to the workspace wide catalogue

Parameters:
  • ws_id – The Workspace ID
  • project_id – The Project ID
  • vnf_id – The VNF ID
Returns:

dict with “message” property

methods = ['GET']

son_editor.apis.project_servicesapi module

Created on 22.07.2016

@author: Jonas

class son_editor.apis.project_servicesapi.PrivateService(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Private service publishing method

get(ws_id, project_id, service_id)

Publish service to private

Publishes the service to the workspace wide catalogue

Parameters:
  • ws_id – The Workspace ID
  • project_id – The Project ID
  • service_id – The Service ID
Returns:

A dict with a “message” property.

methods = ['GET']
class son_editor.apis.project_servicesapi.Service(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id, project_id, service_id)

Delete the Service

Deletes the service from the Project or Catalogue

get(ws_id, project_id, service_id)

Return a specific Service

Returns the referenced service from the Project or catalogue

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, project_id, service_id)

Update the service

Updates the referenced service in the project or in the catalogue or platform

class son_editor.apis.project_servicesapi.Services(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Api Methods for all services in this resource

get(ws_id, project_id)

Get a list of all Services Returns a list of all services available in this resource

methods = ['GET', 'POST']
post(ws_id, project_id)

Create a new Service

Creates a new Service in this project or publishes it in the catalogue or platform

son_editor.apis.projectsapi module

Created on 18.07.2016

@author: Jonas

class son_editor.apis.projectsapi.Project(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

delete(ws_id, project_id)

Delete project

Deletes the project by its id

get(ws_id, project_id)

Retrieves project

Gets information of a given project

methods = ['DELETE', 'GET', 'PUT']
put(ws_id, project_id)

Updates a project

Updates the project by its id

class son_editor.apis.projectsapi.Projects(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

get(ws_id)

Lists projects

Lists projects in the given workspace

methods = ['GET', 'POST']
post(ws_id)

Creates a new project

Creates a new project in the given workspace

son_editor.apis.schemaapi module

class son_editor.apis.schemaapi.Schema(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Single schema retrieval

get(ws_id, schema_id)

Get schema

Returns the requested schema from the schema_master at schema_index from this workspace

Parameters:
  • ws_id – The workspace ID
  • schema_id – Either “ns” or “vnf”
Returns:

The requested schema

methods = ['GET']
class son_editor.apis.schemaapi.Schemas(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Get all schemas for this server

get(ws_id)

List Schemas

Returns a list of all schemas configured for this server

Parameters:ws_id – The workspace ID
Returns:A list of schemas
methods = ['GET']

son_editor.apis.userserviceapi module

class son_editor.apis.userserviceapi.Information(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

User information

static get()

User Information

Returns github information about the current user

methods = ['GET']
class son_editor.apis.userserviceapi.Login(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

static get()

Login User

Login the User with a referral code from the github oauth process

methods = ['GET']
class son_editor.apis.userserviceapi.Logout(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Logs out the current user

static get()

Logout

Logs out the current user

Returns:“Logged out”
methods = ['GET']

son_editor.apis.workspacesapi module

Created on 18.07.2016

@author: Jonas

class son_editor.apis.workspacesapi.PrivateFunctions(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

List functions of private Catalogue

get(ws_id)

List private Catalogue functions

Lists all functions in the Private workspace wide catalogue

methods = ['GET']
class son_editor.apis.workspacesapi.PrivateServices(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

List Services of private Catalogue

get(ws_id)

List private Catalogue services

Lists all services in the Private workspace wide catalogue

methods = ['GET']
class son_editor.apis.workspacesapi.Workspace(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Methods for a single workspace resource

delete(ws_id)

Delete workspace

Deletes a specific workspace by its id

get(ws_id)

Get workspace

Gets information about a specific workspace

methods = ['DELETE', 'GET', 'PUT']
put(ws_id)

Update workspace

Updates a specific workspace by its id

class son_editor.apis.workspacesapi.Workspaces(api=None, *args, **kwargs)

Bases: flask_restplus.resource.Resource

Methods for the workspace resource directory

get()

List workspaces

Gets all available workspaces

methods = ['GET', 'POST']
post()

Create workspace

Creates a new workspace