DEEP Python Protobuf
Project description
Deep Proto
This is the generated code for the common APIs for DEEP. This is generated from the project intergra/deep-proto.
Usage
The usage of these packages differs between server and clients. Please see GRPC docs for more guidance.
Client
To use this as a client:
import grpc
from deepproto.proto.tracepoint.v1.tracepoint_pb2 import Snapshot
def pollServer()
# setup the connection channel
channel = grpc.secure_channel("deep:43315", grpc.ssl_channel_credentials())
# create stub service
stub = PollConfigStub(channel)
# create request
request = PollRequest()
# send request and await response
response = stub.poll(request)
def sendSnapshot()
# setup the connection channel
channel = grpc.secure_channel("deep:43315", grpc.ssl_channel_credentials())
# create stub service
stub = SnapshotServiceStub(channel)
# create grpc snapshot message
snapshot = Snapshot()
# send snapshot, and await response
response = stub.send(snapshot)
Server
To use this as a server:
import deepproto
import grpc
from deepproto.proto.poll.v1.poll_pb2 import PollResponse, ResponseType
from deepproto.proto.poll.v1.poll_pb2_grpc import PollConfigServicer
from deepproto.proto.tracepoint.v1.tracepoint_pb2 import TracePointConfig, SnapshotResponse
from deepproto.proto.tracepoint.v1.tracepoint_pb2_grpc import SnapshotServiceServicer
def serve():
# configure GRPC
server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
# register the services
deepproto.proto.poll.v1.poll_pb2_grpc.add_PollConfigServicer_to_server(PollServicer(), server)
deepproto.proto.tracepoint.v1.tracepoint_pb2_grpc.add_SnapshotServiceServicer_to_server(SnapshotServicer(), server)
# start the server
server.add_insecure_port('[::]:43315')
server.start()
server.wait_for_termination()
class SnapshotServicer(SnapshotServiceServicer):
def send(self, request, context):
# Code to process a new snapshot
return SnapshotResponse()
class PollServicer(PollConfigServicer):
def poll(self, request, context):
# code to process a poll request
return PollResponse()
Documentation
The documentation for this project is available here.
Licensing
This project is licensed as AGPL-3.0-only.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
deep_proto-1.0.4.tar.gz
(5.5 kB
view details)
Built Distribution
File details
Details for the file deep_proto-1.0.4.tar.gz
.
File metadata
- Download URL: deep_proto-1.0.4.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d4fffc17b047f53246f3d2e687c47ccdf4f5bc62d896835f9eb7b8f16d80ac26 |
|
MD5 | 800435b77518957882c9a505e5064d6a |
|
BLAKE2b-256 | e78f93f78339535c5a525830cab25189e6de8f7bc05870e2a8e72d3e6c045053 |
File details
Details for the file deep_proto-1.0.4-py3-none-any.whl
.
File metadata
- Download URL: deep_proto-1.0.4-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2efacd527f5d27ced4890b51fbe5f0b5cea2271f059243fbb1b9965bd4d411cc |
|
MD5 | 419e5b9dd300191683b298655f9de5da |
|
BLAKE2b-256 | fd9fbd0ed91b38d85565efe394bcc0a95ba533c749ed5f9e40a7fb5e0ee03aa1 |