diff options
| author | Dimitri Staessens <dimitri@ouroboros.rocks> | 2026-07-26 13:49:26 +0200 |
|---|---|---|
| committer | Dimitri Staessens <dimitri@ouroboros.rocks> | 2026-07-26 14:50:26 +0200 |
| commit | 33f3c6fc4ca8810cee4c517594be725a26eec70c (patch) | |
| tree | c4b2f8c14357b1b4e979e01c3b516ddf254f3b98 /examples/oecho.py | |
| parent | 3947452e391b1f1fc3933b28ce97d86e3b555d84 (diff) | |
| download | pyouroboros-33f3c6fc4ca8810cee4c517594be725a26eec70c.tar.gz pyouroboros-33f3c6fc4ca8810cee4c517594be725a26eec70c.zip | |
This is basically a clean up pass to make sure all docstrings are
aligned. The copyright banners are replaced by SPDX statements. Also
did a general clean up on the comments. Passes pylint. No structural
changes.
Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks>
Diffstat (limited to 'examples/oecho.py')
| -rw-r--r--[-rwxr-xr-x] | examples/oecho.py | 61 |
1 files changed, 21 insertions, 40 deletions
diff --git a/examples/oecho.py b/examples/oecho.py index 4bf3e05..ae94103 100755..100644 --- a/examples/oecho.py +++ b/examples/oecho.py @@ -1,43 +1,13 @@ -#!/bin/python - -# Ouroboros - Copyright (C) 2016 - 2026 -# -# A simple echo application -# -# Dimitri Staessens <dimitri@ouroboros.rocks> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: # -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. +# SPDX-FileCopyrightText: 2016 - 2026 Dimitri Staessens +# SPDX-License-Identifier: BSD-3-Clause # -# 2. Redistributions in binary form must reproduce the above -# copyright notice, this list of conditions and the following -# disclaimer in the documentation and/or other materials provided -# with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -# OF THE POSSIBILITY OF SUCH DAMAGE. - -"""A simple echo client/server example using Ouroboros flows.""" - -# Standalone demo; intentionally duplicates oecho_set.py. + +""" +A simple echo client/server example using Ouroboros flows. +""" + +# Standalone demo; duplicates oecho_set.py. # pylint: disable=duplicate-code from __future__ import annotations @@ -48,27 +18,38 @@ from ouroboros.dev import flow_accept, flow_alloc def client() -> None: - """Send a message and print the echo reply.""" + """ + Send a message and print the echo reply. + """ + with flow_alloc("oecho") as f: f.writeline("Hello, PyOuroboros!") print(f.readline()) def server() -> None: - """Accept flows and echo back received messages.""" + """ + Accept flows and echo back received messages. + """ + print("Starting the server.") + while True: with flow_accept() as f: print("New flow.") + line = f.readline() + print(f"Message from client is {line}") f.writeline(line) if __name__ == "__main__": parser = argparse.ArgumentParser(description='A simple echo client/server') + parser.add_argument('-l', '--listen', help='run as a server', action='store_true') + args = parser.parse_args() if args.listen: server() |
