executer

package
v0.0.0-...-a9ed6da Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 7, 2018 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package executer provides interfaces as document execution logic

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DocumentFileStore

type DocumentFileStore struct {
	// contains filtered or unexported fields
}

TODO need to refactor global lock in docmanager, or discard the entire package and impl the file IO here DocumentFileStore dependent on the current file functions in docmanager to provide file save/load operations

func NewDocumentFileStore

func NewDocumentFileStore(context context.T, instID, docID, location string, state *contracts.DocumentState, docMgr docmanager.DocumentMgr) DocumentFileStore

func (*DocumentFileStore) Load

Load() should happen in memory

func (*DocumentFileStore) Save

func (f *DocumentFileStore) Save(docState contracts.DocumentState)

Save the document info struct to the current folder, Save() is desired only for crash-recovery

type DocumentStore

type DocumentStore interface {
	Save(contracts.DocumentState)
	Load() contracts.DocumentState
}

DocumentStore is an wrapper over the document state class that provides additional persisting functions for the Executer

type Executer

type Executer interface {
	//TODO in future, docState should be de-composed into static/dynamic && plugin/document informations
	// Given a document and run it, receiving results from status update channel, return a map of plugin results
	Run(cancelFlag task.CancelFlag,
		docStore DocumentStore) chan contracts.DocumentResult
}

Executer accepts an DocumentStore object, save when necessary for crash-recovery, and return when finshes the run, while the caller will pick up the result from the same docStore object

Directories

Path Synopsis
Package basicexecuter provides interfaces as document execution logic
Package basicexecuter provides interfaces as document execution logic
Package iohandler implements the iohandler for the plugins
Package iohandler implements the iohandler for the plugins
iomodule
Package iomodule implements the output modules
Package iomodule implements the output modules
iomodule/mock
Package iomodulemock implements the mock iomodule
Package iomodulemock implements the mock iomodule
mock
Package iohandlermocks implements the mock iohandler
Package iohandlermocks implements the mock iohandler
multiwriter
Package multiwriter implements a multi-writer
Package multiwriter implements a multi-writer
multiwriter/mock
Package multiwritermock creates the mock mulitwriter
Package multiwritermock creates the mock mulitwriter
Package executer provides interfaces as document execution logic
Package executer provides interfaces as document execution logic
proc
Package process wraps up the os.Process interface and also provides os-specific process lookup functions
Package process wraps up the os.Process interface and also provides os-specific process lookup functions
Package plugin contains general interfaces and types relevant to plugins.
Package plugin contains general interfaces and types relevant to plugins.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL