Input Reference
The inputs
Module
A collection of input stream and input rules.
- class ciowarehouse2.inputs.InputStream(registry: ScriptRegistry, get_warehouse)[source]
Base class to manage input stream.
- Parameters:
registry (chrysalio.scripts.ScriptRegistry) – Application registry.
get_warehouse – Function to retrieve a warehouse.
- documents(build: Build, dbstream: DBInputStream) list | tuple [source]
Retrieve documents.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbstream (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
- Return type:
- archive(build: Build, dbstream: DBInputStream) tuple[Warehouse | None, CioPath | None] [source]
Return the warehouse object for archive and the CioPath 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_ciopath)
.
- archive_files(build: Build, dbstream: DBInputStream, archive_wrh: Warehouse, archive_absdir: str, input_absdir: str | None = None)[source]
Save a copy of
input_absdir
intoarchive_absdir
, addarchive_absdir
to the repository, commit the action and refresh the archive warehouse.- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
archive_wrh (.lib.warehouse.Warehouse) – Warehouse object for archive.
archive_absdir (str) – Absolute path to the directory for these files in the archives.
input_absdir (str) – (optional) Absolute path to the directory to copy.
- archive_clean(build: Build, dbstream: DBInputStream, archive_wrh: Warehouse, archive_ciopath: CioPath)[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_wrh (.lib.warehouse.Warehouse) – Warehouse object for archive.
archive_ciopath (.lib.ciopath.CioPath) – CioPath to the archive directory.
- empty_input_directory(build: Build, dbstream: DBInputStream, input_wrh: Warehouse, input_absdir: str)[source]
Empty an input directory.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
dbsteam (.models.dbinput.DBInputStream) – SqlAlchemy object to build this input stream.
input_wrh (.lib.warehouse.Warehouse) – Object for the warehouse containing the directory.
input_absdir (str) – Absolute path to the directory.
The inputs.stream_file
Module
Class for file input stream.
- class ciowarehouse2.inputs.stream_file.InputStreamFile(registry: ScriptRegistry, get_warehouse)[source]
Class to manage file input stream.
See:
inputs.InputStream
The inputs.stream_ftp
Module
Class for FTP input stream.
- class ciowarehouse2.inputs.stream_ftp.InputStreamFtp(registry: ScriptRegistry, get_warehouse)[source]
Class to manage FTP input stream.
See:
inputs.InputStream
The inputs.stream_email
Module
Class for email input stream.
- class ciowarehouse2.inputs.stream_email.InputStreamEmail(registry: ScriptRegistry, get_warehouse)[source]
Class to manage email input stream.
See:
inputs.InputStream
The inputs.rule_basic
Module
Class for basic input rule.
- class ciowarehouse2.inputs.rule_basic.InputRuleBasic(registry: ScriptRegistry, get_warehouse, dbrule: DBInputRule)[source]
Class to manage basic input rule.
- Parameters:
registry (chrysalio.scripts.ScriptRegistry) – Application registry.
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: Build, document: dict) bool [source]
Check if the document matches with this rule and possibly send the document to its destination.
- Parameters:
build (cioservice.lib.build.Build) – Current build object.
document (dict) – Current document.
- Return type:
- document2destination(build: Build, values: dict, document: dict, warehouse: Warehouse, path: str) bool [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 (.lib.warehouse.Warehouse) – Object for destination warehouse.
path (str) – Path of the document inside the warehouse.
- Return type: