NiFi-Registry Swagger Client
Subpackages
- nipyapi.registry.apis package
- Submodules
- nipyapi.registry.apis.access_api module
AccessApi
AccessApi.create_access_token_by_trying_all_providers()
AccessApi.create_access_token_by_trying_all_providers_with_http_info()
AccessApi.create_access_token_using_basic_auth_credentials()
AccessApi.create_access_token_using_basic_auth_credentials_with_http_info()
AccessApi.create_access_token_using_identity_provider_credentials()
AccessApi.create_access_token_using_identity_provider_credentials_with_http_info()
AccessApi.create_access_token_using_kerberos_ticket()
AccessApi.create_access_token_using_kerberos_ticket_with_http_info()
AccessApi.get_access_status()
AccessApi.get_access_status_with_http_info()
AccessApi.get_identity_provider_usage_instructions()
AccessApi.get_identity_provider_usage_instructions_with_http_info()
AccessApi.logout()
AccessApi.logout_complete()
AccessApi.logout_complete_with_http_info()
AccessApi.logout_with_http_info()
AccessApi.oidc_callback()
AccessApi.oidc_callback_with_http_info()
AccessApi.oidc_exchange()
AccessApi.oidc_exchange_with_http_info()
AccessApi.oidc_logout()
AccessApi.oidc_logout_callback()
AccessApi.oidc_logout_callback_with_http_info()
AccessApi.oidc_logout_with_http_info()
AccessApi.oidc_request()
AccessApi.oidc_request_with_http_info()
AccessApi.test_identity_provider_recognizes_credentials_format()
AccessApi.test_identity_provider_recognizes_credentials_format_with_http_info()
- nipyapi.registry.apis.bucket_flows_api module
BucketFlowsApi
BucketFlowsApi.create_flow()
BucketFlowsApi.create_flow_version()
BucketFlowsApi.create_flow_version_with_http_info()
BucketFlowsApi.create_flow_with_http_info()
BucketFlowsApi.delete_flow()
BucketFlowsApi.delete_flow_with_http_info()
BucketFlowsApi.export_versioned_flow()
BucketFlowsApi.export_versioned_flow_with_http_info()
BucketFlowsApi.get_flow()
BucketFlowsApi.get_flow_diff()
BucketFlowsApi.get_flow_diff_with_http_info()
BucketFlowsApi.get_flow_version()
BucketFlowsApi.get_flow_version_with_http_info()
BucketFlowsApi.get_flow_versions()
BucketFlowsApi.get_flow_versions_with_http_info()
BucketFlowsApi.get_flow_with_http_info()
BucketFlowsApi.get_flows()
BucketFlowsApi.get_flows_with_http_info()
BucketFlowsApi.get_latest_flow_version()
BucketFlowsApi.get_latest_flow_version_metadata()
BucketFlowsApi.get_latest_flow_version_metadata_with_http_info()
BucketFlowsApi.get_latest_flow_version_with_http_info()
BucketFlowsApi.import_versioned_flow()
BucketFlowsApi.import_versioned_flow_with_http_info()
BucketFlowsApi.update_flow()
BucketFlowsApi.update_flow_with_http_info()
- nipyapi.registry.apis.buckets_api module
BucketsApi
BucketsApi.create_bucket()
BucketsApi.create_bucket_with_http_info()
BucketsApi.delete_bucket()
BucketsApi.delete_bucket_with_http_info()
BucketsApi.get_available_bucket_fields()
BucketsApi.get_available_bucket_fields_with_http_info()
BucketsApi.get_bucket()
BucketsApi.get_bucket_with_http_info()
BucketsApi.get_buckets()
BucketsApi.get_buckets_with_http_info()
BucketsApi.update_bucket()
BucketsApi.update_bucket_with_http_info()
- nipyapi.registry.apis.flows_api module
FlowsApi
FlowsApi.get_available_flow_fields()
FlowsApi.get_available_flow_fields_with_http_info()
FlowsApi.global_get_flow()
FlowsApi.global_get_flow_version()
FlowsApi.global_get_flow_version_with_http_info()
FlowsApi.global_get_flow_versions()
FlowsApi.global_get_flow_versions_with_http_info()
FlowsApi.global_get_flow_with_http_info()
FlowsApi.global_get_latest_flow_version()
FlowsApi.global_get_latest_flow_version_metadata()
FlowsApi.global_get_latest_flow_version_metadata_with_http_info()
FlowsApi.global_get_latest_flow_version_with_http_info()
- nipyapi.registry.apis.items_api module
- nipyapi.registry.apis.policies_api module
PoliciesApi
PoliciesApi.create_access_policy()
PoliciesApi.create_access_policy_with_http_info()
PoliciesApi.get_access_policies()
PoliciesApi.get_access_policies_with_http_info()
PoliciesApi.get_access_policy()
PoliciesApi.get_access_policy_for_resource()
PoliciesApi.get_access_policy_for_resource_with_http_info()
PoliciesApi.get_access_policy_with_http_info()
PoliciesApi.get_resources()
PoliciesApi.get_resources_with_http_info()
PoliciesApi.remove_access_policy()
PoliciesApi.remove_access_policy_with_http_info()
PoliciesApi.update_access_policy()
PoliciesApi.update_access_policy_with_http_info()
- nipyapi.registry.apis.tenants_api module
TenantsApi
TenantsApi.create_user()
TenantsApi.create_user_group()
TenantsApi.create_user_group_with_http_info()
TenantsApi.create_user_with_http_info()
TenantsApi.get_user()
TenantsApi.get_user_group()
TenantsApi.get_user_group_with_http_info()
TenantsApi.get_user_groups()
TenantsApi.get_user_groups_with_http_info()
TenantsApi.get_user_with_http_info()
TenantsApi.get_users()
TenantsApi.get_users_with_http_info()
TenantsApi.remove_user()
TenantsApi.remove_user_group()
TenantsApi.remove_user_group_with_http_info()
TenantsApi.remove_user_with_http_info()
TenantsApi.update_user()
TenantsApi.update_user_group()
TenantsApi.update_user_group_with_http_info()
TenantsApi.update_user_with_http_info()
- nipyapi.registry.models package
- Submodules
- nipyapi.registry.models.access_policy module
- nipyapi.registry.models.access_policy_summary module
- nipyapi.registry.models.batch_size module
- nipyapi.registry.models.bucket module
- nipyapi.registry.models.bucket_item module
BucketItem
BucketItem.attribute_map
BucketItem.bucket_identifier
BucketItem.bucket_name
BucketItem.created_timestamp
BucketItem.description
BucketItem.identifier
BucketItem.link
BucketItem.modified_timestamp
BucketItem.name
BucketItem.permissions
BucketItem.swagger_types
BucketItem.to_dict()
BucketItem.to_str()
BucketItem.type
- nipyapi.registry.models.bundle module
- nipyapi.registry.models.connectable_component module
ConnectableComponent
ConnectableComponent.attribute_map
ConnectableComponent.comments
ConnectableComponent.group_id
ConnectableComponent.id
ConnectableComponent.instance_identifier
ConnectableComponent.name
ConnectableComponent.swagger_types
ConnectableComponent.to_dict()
ConnectableComponent.to_str()
ConnectableComponent.type
- nipyapi.registry.models.controller_service_api module
- nipyapi.registry.models.current_user module
- nipyapi.registry.models.fields module
- nipyapi.registry.models.permissions module
- nipyapi.registry.models.resource module
- nipyapi.registry.models.resource_permissions module
- nipyapi.registry.models.tenant module
- nipyapi.registry.models.user module
- nipyapi.registry.models.user_group module
- nipyapi.registry.models.versioned_connection module
VersionedConnection
VersionedConnection.attribute_map
VersionedConnection.back_pressure_data_size_threshold
VersionedConnection.back_pressure_object_threshold
VersionedConnection.bends
VersionedConnection.comments
VersionedConnection.component_type
VersionedConnection.destination
VersionedConnection.flow_file_expiration
VersionedConnection.group_identifier
VersionedConnection.identifier
VersionedConnection.instance_identifier
VersionedConnection.label_index
VersionedConnection.load_balance_compression
VersionedConnection.load_balance_strategy
VersionedConnection.name
VersionedConnection.partitioning_attribute
VersionedConnection.position
VersionedConnection.prioritizers
VersionedConnection.selected_relationships
VersionedConnection.source
VersionedConnection.swagger_types
VersionedConnection.to_dict()
VersionedConnection.to_str()
VersionedConnection.z_index
- nipyapi.registry.models.versioned_controller_service module
VersionedControllerService
VersionedControllerService.annotation_data
VersionedControllerService.attribute_map
VersionedControllerService.bulletin_level
VersionedControllerService.bundle
VersionedControllerService.comments
VersionedControllerService.component_type
VersionedControllerService.controller_service_apis
VersionedControllerService.group_identifier
VersionedControllerService.identifier
VersionedControllerService.instance_identifier
VersionedControllerService.name
VersionedControllerService.position
VersionedControllerService.properties
VersionedControllerService.property_descriptors
VersionedControllerService.scheduled_state
VersionedControllerService.swagger_types
VersionedControllerService.to_dict()
VersionedControllerService.to_str()
VersionedControllerService.type
- nipyapi.registry.models.versioned_flow module
VersionedFlow
VersionedFlow.attribute_map
VersionedFlow.bucket_identifier
VersionedFlow.bucket_name
VersionedFlow.created_timestamp
VersionedFlow.description
VersionedFlow.identifier
VersionedFlow.link
VersionedFlow.modified_timestamp
VersionedFlow.name
VersionedFlow.permissions
VersionedFlow.revision
VersionedFlow.swagger_types
VersionedFlow.to_dict()
VersionedFlow.to_str()
VersionedFlow.type
VersionedFlow.version_count
- nipyapi.registry.models.versioned_flow_coordinates module
VersionedFlowCoordinates
VersionedFlowCoordinates.attribute_map
VersionedFlowCoordinates.bucket_id
VersionedFlowCoordinates.flow_id
VersionedFlowCoordinates.latest
VersionedFlowCoordinates.registry_id
VersionedFlowCoordinates.registry_url
VersionedFlowCoordinates.storage_location
VersionedFlowCoordinates.swagger_types
VersionedFlowCoordinates.to_dict()
VersionedFlowCoordinates.to_str()
VersionedFlowCoordinates.version
- nipyapi.registry.models.versioned_flow_snapshot module
VersionedFlowSnapshot
VersionedFlowSnapshot.attribute_map
VersionedFlowSnapshot.bucket
VersionedFlowSnapshot.external_controller_services
VersionedFlowSnapshot.flow
VersionedFlowSnapshot.flow_contents
VersionedFlowSnapshot.flow_encoding_version
VersionedFlowSnapshot.latest
VersionedFlowSnapshot.parameter_contexts
VersionedFlowSnapshot.parameter_providers
VersionedFlowSnapshot.snapshot_metadata
VersionedFlowSnapshot.swagger_types
VersionedFlowSnapshot.to_dict()
VersionedFlowSnapshot.to_str()
- nipyapi.registry.models.versioned_flow_snapshot_metadata module
VersionedFlowSnapshotMetadata
VersionedFlowSnapshotMetadata.attribute_map
VersionedFlowSnapshotMetadata.author
VersionedFlowSnapshotMetadata.bucket_identifier
VersionedFlowSnapshotMetadata.comments
VersionedFlowSnapshotMetadata.flow_identifier
VersionedFlowSnapshotMetadata.link
VersionedFlowSnapshotMetadata.swagger_types
VersionedFlowSnapshotMetadata.timestamp
VersionedFlowSnapshotMetadata.to_dict()
VersionedFlowSnapshotMetadata.to_str()
VersionedFlowSnapshotMetadata.version
- nipyapi.registry.models.versioned_funnel module
VersionedFunnel
VersionedFunnel.attribute_map
VersionedFunnel.comments
VersionedFunnel.component_type
VersionedFunnel.group_identifier
VersionedFunnel.identifier
VersionedFunnel.instance_identifier
VersionedFunnel.name
VersionedFunnel.position
VersionedFunnel.swagger_types
VersionedFunnel.to_dict()
VersionedFunnel.to_str()
- nipyapi.registry.models.versioned_label module
VersionedLabel
VersionedLabel.attribute_map
VersionedLabel.comments
VersionedLabel.component_type
VersionedLabel.group_identifier
VersionedLabel.height
VersionedLabel.identifier
VersionedLabel.instance_identifier
VersionedLabel.label
VersionedLabel.name
VersionedLabel.position
VersionedLabel.style
VersionedLabel.swagger_types
VersionedLabel.to_dict()
VersionedLabel.to_str()
VersionedLabel.width
VersionedLabel.z_index
- nipyapi.registry.models.versioned_port module
VersionedPort
VersionedPort.allow_remote_access
VersionedPort.attribute_map
VersionedPort.comments
VersionedPort.component_type
VersionedPort.concurrently_schedulable_task_count
VersionedPort.group_identifier
VersionedPort.identifier
VersionedPort.instance_identifier
VersionedPort.name
VersionedPort.position
VersionedPort.scheduled_state
VersionedPort.swagger_types
VersionedPort.to_dict()
VersionedPort.to_str()
VersionedPort.type
- nipyapi.registry.models.versioned_process_group module
VersionedProcessGroup
VersionedProcessGroup.attribute_map
VersionedProcessGroup.comments
VersionedProcessGroup.component_type
VersionedProcessGroup.connections
VersionedProcessGroup.controller_services
VersionedProcessGroup.default_back_pressure_data_size_threshold
VersionedProcessGroup.default_back_pressure_object_threshold
VersionedProcessGroup.default_flow_file_expiration
VersionedProcessGroup.flow_file_concurrency
VersionedProcessGroup.flow_file_outbound_policy
VersionedProcessGroup.funnels
VersionedProcessGroup.group_identifier
VersionedProcessGroup.identifier
VersionedProcessGroup.input_ports
VersionedProcessGroup.instance_identifier
VersionedProcessGroup.labels
VersionedProcessGroup.log_file_suffix
VersionedProcessGroup.name
VersionedProcessGroup.output_ports
VersionedProcessGroup.parameter_context_name
VersionedProcessGroup.position
VersionedProcessGroup.process_groups
VersionedProcessGroup.processors
VersionedProcessGroup.remote_process_groups
VersionedProcessGroup.swagger_types
VersionedProcessGroup.to_dict()
VersionedProcessGroup.to_str()
VersionedProcessGroup.variables
VersionedProcessGroup.versioned_flow_coordinates
- nipyapi.registry.models.versioned_processor module
VersionedProcessor
VersionedProcessor.annotation_data
VersionedProcessor.attribute_map
VersionedProcessor.auto_terminated_relationships
VersionedProcessor.backoff_mechanism
VersionedProcessor.bulletin_level
VersionedProcessor.bundle
VersionedProcessor.comments
VersionedProcessor.component_type
VersionedProcessor.concurrently_schedulable_task_count
VersionedProcessor.execution_node
VersionedProcessor.group_identifier
VersionedProcessor.identifier
VersionedProcessor.instance_identifier
VersionedProcessor.max_backoff_period
VersionedProcessor.name
VersionedProcessor.penalty_duration
VersionedProcessor.position
VersionedProcessor.properties
VersionedProcessor.property_descriptors
VersionedProcessor.retried_relationships
VersionedProcessor.retry_count
VersionedProcessor.run_duration_millis
VersionedProcessor.scheduled_state
VersionedProcessor.scheduling_period
VersionedProcessor.scheduling_strategy
VersionedProcessor.style
VersionedProcessor.swagger_types
VersionedProcessor.to_dict()
VersionedProcessor.to_str()
VersionedProcessor.type
VersionedProcessor.yield_duration
- nipyapi.registry.models.versioned_property_descriptor module
VersionedPropertyDescriptor
VersionedPropertyDescriptor.attribute_map
VersionedPropertyDescriptor.display_name
VersionedPropertyDescriptor.identifies_controller_service
VersionedPropertyDescriptor.name
VersionedPropertyDescriptor.resource_definition
VersionedPropertyDescriptor.sensitive
VersionedPropertyDescriptor.swagger_types
VersionedPropertyDescriptor.to_dict()
VersionedPropertyDescriptor.to_str()
- nipyapi.registry.models.versioned_remote_group_port module
VersionedRemoteGroupPort
VersionedRemoteGroupPort.attribute_map
VersionedRemoteGroupPort.batch_size
VersionedRemoteGroupPort.comments
VersionedRemoteGroupPort.component_type
VersionedRemoteGroupPort.concurrently_schedulable_task_count
VersionedRemoteGroupPort.group_identifier
VersionedRemoteGroupPort.identifier
VersionedRemoteGroupPort.instance_identifier
VersionedRemoteGroupPort.name
VersionedRemoteGroupPort.position
VersionedRemoteGroupPort.remote_group_id
VersionedRemoteGroupPort.scheduled_state
VersionedRemoteGroupPort.swagger_types
VersionedRemoteGroupPort.target_id
VersionedRemoteGroupPort.to_dict()
VersionedRemoteGroupPort.to_str()
VersionedRemoteGroupPort.use_compression
- nipyapi.registry.models.versioned_remote_process_group module
VersionedRemoteProcessGroup
VersionedRemoteProcessGroup.attribute_map
VersionedRemoteProcessGroup.comments
VersionedRemoteProcessGroup.communications_timeout
VersionedRemoteProcessGroup.component_type
VersionedRemoteProcessGroup.group_identifier
VersionedRemoteProcessGroup.identifier
VersionedRemoteProcessGroup.input_ports
VersionedRemoteProcessGroup.instance_identifier
VersionedRemoteProcessGroup.local_network_interface
VersionedRemoteProcessGroup.name
VersionedRemoteProcessGroup.output_ports
VersionedRemoteProcessGroup.position
VersionedRemoteProcessGroup.proxy_host
VersionedRemoteProcessGroup.proxy_password
VersionedRemoteProcessGroup.proxy_port
VersionedRemoteProcessGroup.proxy_user
VersionedRemoteProcessGroup.swagger_types
VersionedRemoteProcessGroup.target_uri
VersionedRemoteProcessGroup.target_uris
VersionedRemoteProcessGroup.to_dict()
VersionedRemoteProcessGroup.to_str()
VersionedRemoteProcessGroup.transport_protocol
VersionedRemoteProcessGroup.yield_duration
Submodules
nipyapi.registry.api_client module
Apache NiFi Registry REST API
The REST API provides an interface to a registry with operations for saving, versioning, reading NiFi flows and components.
OpenAPI spec version: 1.23.2 Contact: dev@nifi.apache.org Generated by: https://github.com/swagger-api/swagger-codegen.git
- class nipyapi.registry.api_client.ApiClient(host=None, header_name=None, header_value=None, cookie=None)[source]
Bases:
object
Generic API client for Swagger client library builds.
Swagger generic API client. This client handles the client- server communication, and is invariant across implementations. Specifics of the methods and models for each application are generated from the Swagger templates.
NOTE: This class is auto generated by the swagger code generator program. Ref: https://github.com/swagger-api/swagger-codegen Do not edit the class manually.
- Parameters:
host – The base path for the server to call.
header_name – a header to pass when making calls to the API.
header_value – a header value to pass when making calls to the API.
Constructor of the class.
- NATIVE_TYPES_MAPPING = {'bool': <class 'bool'>, 'date': <class 'datetime.date'>, 'datetime': <class 'datetime.datetime'>, 'float': <class 'float'>, 'int': <class 'int'>, 'long': <class 'int'>, 'object': <class 'object'>, 'str': <class 'str'>}
- PRIMITIVE_TYPES = (<class 'float'>, <class 'bool'>, <class 'bytes'>, <class 'str'>, <class 'int'>)
- call_api(resource_path, method, path_params=None, query_params=None, header_params=None, body=None, post_params=None, files=None, response_type=None, auth_settings=None, callback=None, _return_http_data_only=None, collection_formats=None, _preload_content=True, _request_timeout=None)[source]
Makes the HTTP request (synchronous) and return the deserialized data. To make an async request, define a function for callback.
- Parameters:
resource_path – Path to method endpoint.
method – Method to call.
path_params – Path parameters in the url.
query_params – Query parameters in the url.
header_params – Header parameters to be placed in the request header.
body – Request body.
dict (files) – Request post form parameters, for application/x-www-form-urlencoded, multipart/form-data.
list (auth_settings) – Auth Settings names for the request.
response – Response data type.
dict – key -> filename, value -> filepath, for multipart/form-data.
function (callback) – Callback function for asynchronous request. If provide this parameter, the request will be called asynchronously.
_return_http_data_only – response data without head status code and headers
collection_formats – dict of collection formats for path, query, header, and post parameters.
_preload_content – if False, the urllib3.HTTPResponse object will be returned without reading/decoding response data. Default is True.
_request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.
- Returns:
If provide parameter callback, the request will be called asynchronously. The method will return the request thread. If parameter callback is None, then the method will return the response directly.
- deserialize(response, response_type)[source]
Deserializes response into an object.
- Parameters:
response – RESTResponse object to be deserialized.
response_type – class literal for deserialized object, or string of class name.
- Returns:
deserialized object.
- deserialize_model(data, klass)[source]
Deserializes list or dict to model.
- Parameters:
data – dict, list.
klass – class literal.
- Returns:
model object.
- parameters_to_tuples(params, collection_formats)[source]
Get parameters as list of tuples, formatting collections.
- Parameters:
params – Parameters as dict or list of two-tuples
collection_formats (dict) – Parameter collection formats
- Returns:
Parameters as list of tuples, collections formatted
- prepare_post_parameters(post_params=None, files=None)[source]
Builds form parameters.
- Parameters:
post_params – Normal form parameters.
files – File parameters.
- Returns:
Form parameters with files.
- request(method, url, query_params=None, headers=None, post_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
Makes the HTTP request using RESTClient.
- sanitize_for_serialization(obj)[source]
Builds a JSON POST object.
If obj is None, return None. If obj is str, int, long, float, bool, return directly. If obj is datetime.datetime, datetime.date
convert to string in iso8601 format.
If obj is list, sanitize each element in the list. If obj is dict, return the dict. If obj is swagger model, return the properties dict.
- Parameters:
obj – The data to serialize.
- Returns:
The serialized form of data.
- select_header_accept(accepts)[source]
Returns Accept based on an array of accepts provided.
- Parameters:
accepts – List of headers.
- Returns:
Accept (e.g. application/json).
- select_header_content_type(content_types)[source]
Returns Content-Type based on an array of content_types provided.
- Parameters:
content_types – List of content-types.
- Returns:
Content-Type (e.g. application/json).
- update_params_for_auth(headers, querys, auth_settings)[source]
Updates header and query params based on authentication setting.
- Parameters:
headers – Header parameters dict to be updated.
querys – Query parameters tuple list to be updated.
auth_settings – Authentication setting identifiers list.
- property user_agent
Gets user agent.
nipyapi.registry.configuration module
Apache NiFi Registry REST API
The REST API provides an interface to a registry with operations for saving, versioning, reading NiFi flows and components.
OpenAPI spec version: 1.23.2 Contact: dev@nifi.apache.org Generated by: https://github.com/swagger-api/swagger-codegen.git
nipyapi.registry.rest module
Apache NiFi Registry REST API
The REST API provides an interface to a registry with operations for saving, versioning, reading NiFi flows and components.
OpenAPI spec version: 1.23.2 Contact: dev@nifi.apache.org Generated by: https://github.com/swagger-api/swagger-codegen.git
- exception nipyapi.registry.rest.ApiException(status=None, reason=None, http_resp=None)[source]
Bases:
Exception
- class nipyapi.registry.rest.RESTClientObject(pools_size=4, maxsize=4)[source]
Bases:
object
- DELETE(url, headers=None, query_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
- OPTIONS(url, headers=None, query_params=None, post_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
- PATCH(url, headers=None, query_params=None, post_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
- POST(url, headers=None, query_params=None, post_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
- PUT(url, headers=None, query_params=None, post_params=None, body=None, _preload_content=True, _request_timeout=None)[source]
- request(method, url, query_params=None, headers=None, body=None, post_params=None, _preload_content=True, _request_timeout=None)[source]
- Parameters:
method – http request method
url – http request url
query_params – query parameters in the url
headers – http request headers
body – request json body, for application/json
post_params – request post parameters, application/x-www-form-urlencoded and multipart/form-data
_preload_content – if False, the urllib3.HTTPResponse object will be returned without reading/decoding response data. Default is True.
_request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.