Input Reference
The inputs
Module
A collection of input stream and input rules.
- class ciowarehouse.inputs.InputStream(get_warehouse)[source]
Base class to manage input stream.
- Parameters:
get_warehouse – Function to retrieve a warehouse.
- documents(build, dbstream)[source]
Retrieve documents.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
- Return type:
- archive(build, dbstream)[source]
Return the warehouse object for archive and the absolute path to the archive directory.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
- Return type:
- Returns:
A tuple such as
(archive_warehouse, archive_dir)
.
- classmethod archive_files(build, dbstream, archive, input_dir, archive_dir)[source]
Save a copy of
input_dir
intoarchive_dir
, addarchive_dir
to the repository, commit the action and refresh the warehouse.- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
input_dir (str) – Absolute path to the directory to copy.
archive (ciowarehouse.lib.warehouse.Warehouse) – Warehouse object for archive.
archive_dir (str) – Absolute path to the directory for these files in the archives.
- classmethod archive_clean(build, dbstream, archive)[source]
Loop over archives and remove old ones.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
archive (ciowarehouse.lib.warehouse.Warehouse) – Warehouse object for archive.
- classmethod empty_warehouse_directory(build, dbstream, warehouse, directory)[source]
Empty a directory.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
warehouse (ciowarehouse.lib.warehouse.Warehouse) – Object for the warehouse containing the directory.
directory (str) – Absolute path to the directory.
The inputs.stream_file
Module
Class for file input stream.
- class ciowarehouse.inputs.stream_file.InputStreamFile(get_warehouse)[source]
Class to manage file input stream.
See:
inputs.InputStream
The inputs.stream_ftp
Module
Class for FTP input stream.
- class ciowarehouse.inputs.stream_ftp.InputStreamFtp(get_warehouse)[source]
Class to manage FTP input stream.
See:
inputs.InputStream
The inputs.stream_email
Module
Class for email input stream.
- class ciowarehouse.inputs.stream_email.InputStreamEmail(get_warehouse)[source]
Class to manage email input stream.
See:
inputs.InputStream
The inputs.rule_basic
Module
Class for basic input rule.
- class ciowarehouse.inputs.rule_basic.InputRuleBasic(get_warehouse, dbrule)[source]
Class to manage basic input rule.
- Parameters:
get_warehouse – Function to retrieve a warehouse.
dbrule (.models.dbinput.DBInputRule) – SqlAlchemy object to build this rule.
self.conditions
is a list of conditions. Each condition is a tuple such as(key, value_regex)
.- apply(build, document)[source]
Check if the document matches with this rule and possibly send the document to its destination.
- document2destination(build, values, document, warehouse, path)[source]
Copy the document into the destination warehouse.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
values (dict) – Values of the variables.
document (dict) – Current document.
warehouse (ciowarehouse.lib.warehouse.Warehouse) – Object for destination warehouse.
path (str) – Path of the document inside the warehouse.
- Return type: