Skip to main content

swimlane-connector-utilities

This package contains utility functions to be used in Swimlane Connectors.

Swimlane Attachments

This helper function is to create attachments easily, in Swimlane output format. You can either create a single attachment, with create_attachment

from swimlane_connector_utilities import create_attachment

output = {
    "attachment_key1": create_attachment("myfile.txt", "this is a text file")
    "attachment_key2": create_attachment("myfile.exe", <byte data here>)
}

Or multiple attachments with SwimlaneAttachments

from swimlane_connector_utilities import SwimlaneAttachments


swa = SwimlaneAttachments()


swa.add_attachment("myfile.txt", "this is a text file")
swa.add_attachment("myfile.exe", <byte data here>)


output = {
    "attachment_list": swa.get_attachments()
}

Create Test Connection

Creating test connections can be repetitive, so a test connection that looks like this:

from swimlane_connector_utilities import create_test_conn

# My Integration Auth, copied from __init__.py for example purposes
class MyIntegration(object):
    def __init__(self, context):
        # Do auth here
        pass

    def do_auth(self):
        pass


class SwMain(object):
    def __init__(self, context):
        self.context = context

    def execute(self):
        try:
            MyIntegration(self.context).do_auth()

            return {"successful": True}
        except Exception as e:
            return {"successful": False, "errorMessage": str(e)}

Can be easily turned into

from swimlane_connector_utilities import create_test_conn

# My Integration Auth, copied from __init__.py for example purposes
class MyIntegration(object):
    def __init__(self, context):
        # Do auth here
        pass

    def do_auth(self):
        pass
        
SwMain = create_test_conn(MyIntegration, execute_func="do_auth")

Note that if you do authentication in init you can exclude the execute_func param

Parse Datetime

datetime inputs can be many different formats and often we want to accept a time relative to the current time, such as 10 minutes ago. To handle all datetime inputs, you can use the function parse_datetime. This function accepts all common datetime formats as well as the relative time format below, and returns a pendulum object. An InvalidInput error will be raised if it is not a valid datetime.

Relative datetime format:

For the current time:
    now
Any other time:
    (+/-)(integer) (milliseconds|seconds|minutes|days|weeks|months|years)
    
examples:
    now
    -1 months
    +3 days
    -123 seconds

parse_datetime can be used to parse the input, then convert the pendulum object to the format the api requires.

from swimlane_connector_utilities import parse_datetime

data = {"time_1": "2020-02-02 10:10:10", "time_2": "-5 minutes", "text_field": "text"}
for field in ["time_1", "time_2"]:
    data[field] = parse_datetime(field, data[field]).to_iso8601_string()

Metadata

Release files for swimlane-connector-utilities 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for swimlane-connector-utilities 1.1.0
File Size Uploaded
swimlane_connector_utilities-1.1.0.tar.gz 11.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for swimlane-connector-utilities 1.1.0
File Interpreter ABI Platform
swimlane_connector_utilities-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 18.9 kB

Release files / swimlane_connector_utilities-1.1.0.tar.gz

Download URL swimlane_connector_utilities-1.1.0.tar.gz
Size 11.6 kB
Tags Source
SHA-256 checksum
How to use checksums
acf59b31937bb64c81d0186b3bbc046bb05d396ca45876214a490a4224c4f6a3
BLAKE2b-256 checksum
How to use checksums
747fdb2fd8ac782e5a1eb8e7447ef330495487919dea3aed53e6f232aa710b71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release files / swimlane_connector_utilities-1.1.0-py3-none-any.whl

Download URL swimlane_connector_utilities-1.1.0-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eada9736dc722411a512bf4dfcb02b15b6df090499a8108f639b3a276f52dc40
BLAKE2b-256 checksum
How to use checksums
1a28a21854ec8e92b9168374886e7275960d54566bd2eef057941550eaecb00c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page