graphit.graph_model_classes package¶
graphit.graph_model_classes.model_datetime module¶
file: model_date_time.py
Graph model classes for dealing with date/time definitions
-
class
graphit.graph_model_classes.model_datetime.Date¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
datetime()¶ Return a Python datetime object representing the stored date
- Return type
:py:datetime:date
-
static
now()¶ Return a Python datetime.datetime object representing the current date.
- Return type
:py:datetime:date
-
set(key=None, value=None)¶ Set and validate an ISO string representation of a date instance in accordance to RFC 3339
-
timestamp()¶ Return a seconds since epoch timestamp
- Return type
:py:int
-
-
class
graphit.graph_model_classes.model_datetime.DateTime¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
datetime()¶ Return a Python datetime object representing the stored date-time
- Return type
:py:datetime:datetime
-
static
now()¶ Return a Python datetime.datetime object representing the current date-time respecting local timezone.
- Return type
:py:datetime:datetime
-
set(key=None, value=None)¶ Set and validate an ISO string representation of a date-time instance in accordance to RFC 3339. Set to current date-time if called without arguments.
-
timestamp()¶ Return a seconds since epoch timestamp
- Return type
:py:int
-
-
class
graphit.graph_model_classes.model_datetime.Time¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
datetime()¶ Return a Python datetime object representing the stored time
- Return type
:py:datetime:time
-
static
now()¶ Return a Python datetime.datetime object representing the current time respecting local timezone.
- Return type
:py:datetime:time
-
set(key=None, value=None, **kwargs)¶ Set and validate an ISO string representation of a time instance in accordance to RFC 3339
-
timestamp()¶ Return a seconds since epoch timestamp
- Return type
:py:int
-
graphit.graph_model_classes.model_dictionary module¶
file: model_dictionary.py
Graph mixin class to add method to a Graph base class that will have it behave like a python dictionary.
-
class
graphit.graph_model_classes.model_dictionary.PythonDictionary¶ Bases:
object-
items(keystring=None, valuestring=None)¶ Python dict-like function to return node items in the (sub)graph.
Keystring defines the value lookup key in the node data dict. This defaults to the graph key_tag. Valuestring defines the value lookup key in the node data dict.
- Parameters
keystring (:py:str) – Data key to use for dictionary keys.
valuestring (:py:str) – Data key to use for dictionary values.
- Returns
List of keys, value pairs
- Return type
:py:list
-
keys(keystring=None)¶ Python dict-like function to return node keys in the (sub)graph.
Keystring defines the value lookup key in the node data dict. This defaults to the graph key_tag.
- Parameters
keystring (:py:str) – Data key to use for dictionary keys.
- Returns
List of keys
- Return type
:py:list
-
values(valuestring=None)¶ Python dict-like function to return node values in the (sub)graph.
Valuestring defines the value lookup key in the node data dict.
- Parameters
valuestring (:py:str) – Data key to use for dictionary values.
- Returns
List of values
- Return type
:py:list
-
graphit.graph_model_classes.model_email module¶
file: model_email.py
Graph model classes for dealing with emails
- TODO: checkout https://github.com/JoshData/python-email-validator/blob/master/email_validator/__init__.py
for IDN emails
-
class
graphit.graph_model_classes.model_email.Email¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
set(key, value=None, **kwargs)¶ Validate email adress syntax according to the ‘addr-spec’ part of the RFC 2822 specification.
-
validate_existence(timeout=10)¶ Email DNS and mailbox verification.
This method requires dnspython module to be installed
Incorrect results: some mail servers will give you incorrect results, for instance catch-all servers, which will accept all incoming email addresses, often forwarding incoming emails to a central mailbox. Yahoo addresses displays this catch-all behavior.
Warning
Using this method allot will risk blacklisting your IP (e.g. Spamhaus), especially if you are using a dynamic IP address from your ISP.
- Parameters
timeout (:py:int) – SMTP timeout in seconds
-
graphit.graph_model_classes.model_files module¶
file: model_files.py
Graph model classes for working with files
-
class
graphit.graph_model_classes.model_files.FilePath¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
property
exists¶
-
property
iswritable¶
-
makedirs()¶ Recursively create the directory structure of the path
- Returns
Absolute path to working directory
- Return type
:py:str
-
remove(ignore_errors=True)¶ Remove the path
Uses shutil.rmtree to recursively remove files and directories.
- Parameters
ignore_errors (:py:bool) – remove read-only files.
-
set(key, value=None, absolute=True)¶ Set node/edge key/value pair
Implement to provide a direct setter for node or edge key/value pairs preferably by using the set method of the node/edge storage API.
- Parameters
key – node/edge key to set
value – node/edge value
-
property
graphit.graph_model_classes.model_identifiers module¶
file: model_identifiers.py
Graph model classes for working (unique) identifiers
-
class
graphit.graph_model_classes.model_identifiers.UUID¶ Bases:
graphit.graph_mixin.NodeEdgeToolsBaseClass-
static
create()¶
-
set(key, value=None, **kwargs)¶ Set node/edge key/value pair
Implement to provide a direct setter for node or edge key/value pairs preferably by using the set method of the node/edge storage API.
- Parameters
key – node/edge key to set
value – node/edge value
-
static
graphit.graph_model_classes.model_networking module¶
file: model_networking.py
Graph model classes for dealing with network communication
graphit.graph_model_classes.model_openapi module¶
file: io_json_format.py
Functions for importing OpenAPI RESTfull API definitions into a functional API object
-
class
graphit.graph_model_classes.model_openapi.OpenAPI(edges=None, directed=False, nodes=None, data=None, root=None, orm=None, storagedriver=<function init_dictstorage_driver>, **kwargs)¶ Bases:
graphit.graph_axis.graph_axis_class.GraphAxisBase Graph class for OpenAPI definition version 2.0 formally known as swagger version 2.0
-
adjacency¶
-
data¶
-
directed¶
-
edge_tools¶
-
edges¶
-
get_method(method_name)¶
-
list_methods()¶
-
masked¶
-
node_tools¶
-
nodes¶
-
origin¶
-
orm¶
-
root¶
-
schemes()¶ Return supported HTTP schemes
- Return type
:py:list
-
storagedriver¶
-
graphit.graph_model_classes.model_user module¶
file: model_user.py
Graph model classes for dealing with user information