Appearance
module: sdk.client_lib_generator ​
Link to GitHub
Entities: ​
Class ClientLibGenerator
​
extends: -
is extended by: -
description ​
This class is used to generate client library files for a given service.
attributes ​
_metadata_provider
(StorageProvider): An instance of theStorageProvider
class.org_id
(str): The organization ID of the service.service_id
(str): The service ID.language
(str): The language of the client library. Default ispython
.protodir
(str): The directory where the .proto files are located. Default is~/.snet
.
methods ​
__init__
​
Initializes a new instance of the class. Initializes the attributes by arguments values.
args: ​
metadata_provider
(StorageProvider): An instance of theStorageProvider
class.org_id
(str): The organization ID of the service.service_id
(str): The service ID.protodir
(Path | None): The directory where the .proto files are located. Default is None.
returns: ​
- None
generate_client_library
​
Generates client library stub files based on specified organization and service ids, including:
- getting service metadata from Registry
- getting archived proto files from IPFS or FileCoin and extracting them
- compiling .proto file to stub file and saving it in a given directory
returns: ​
- None
generate_directories_by_params
​
Generates directories for client library in the ~/.snet
directory based on organization and service ids using the create_service_client_libraries_path
method.
returns: ​
- None
create_service_client_libraries_path
​
Creates a directory for client library in the ~/.snet
directory based on organization and service ids.
returns: ​
- None
receive_proto_files
​
Receives .proto files from IPFS or FileCoin based on service metadata and extracts them to a given directory.
returns: ​
- None
raises: ​
- Exception: if the directory for storing proto files is not found.
training_added
​
Checks whether training is used in the service .proto file.
returns: ​
- True if training is used in the service .proto file, False otherwise.