Queer European MD passionate about IT
소스 검색

Prevent shadowing of variables

Davte 5 년 전
부모
커밋
458cc0f5e7
2개의 변경된 파일29개의 추가작업 그리고 24개의 파일을 삭제
  1. 4 4
      src/client.py
  2. 25 20
      src/server.py

+ 4 - 4
src/client.py

@@ -139,11 +139,11 @@ if __name__ == '__main__':
     # Parse command-line arguments
     cli_parser = argparse.ArgumentParser(description='Run client',
                                          allow_abbrev=False)
-    cli_parser.add_argument('--host', type=str,
+    cli_parser.add_argument('--_host', type=str,
                             default=None,
                             required=False,
                             help='server address')
-    cli_parser.add_argument('--port', type=int,
+    cli_parser.add_argument('--_port', type=int,
                             default=None,
                             required=False,
                             help='server _port')
@@ -160,8 +160,8 @@ if __name__ == '__main__':
                             nargs='*',
                             help='[S]end or [R]eceive (see `action`)')
     args = vars(cli_parser.parse_args())
-    _host = args['host']
-    _port = args['port']
+    _host = args['_host']
+    _port = args['_port']
     _action = get_action(args['action'])
     _file_path = args['path']
 

+ 25 - 20
src/server.py

@@ -107,7 +107,12 @@ class Server:
             port=self.port
         )
         async with self.server:
-            await self.server.serve_forever()
+            try:
+                await self.server.serve_forever()
+            except KeyboardInterrupt:
+                logging.info("Stopping...")
+                self.server.close()
+                await self.server.wait_closed()
         return
 
     def stop(self, *_):
@@ -135,44 +140,44 @@ if __name__ == '__main__':
     # Parse command-line arguments
     parser = argparse.ArgumentParser(description='Run server',
                                      allow_abbrev=False)
-    parser.add_argument('--_host', type=str,
+    parser.add_argument('--host', type=str,
                         default=None,
                         required=False,
                         help='server address')
-    parser.add_argument('--_port', type=int,
+    parser.add_argument('--port', type=int,
                         default=None,
                         required=False,
-                        help='server _port')
+                        help='server port')
     args = vars(parser.parse_args())
-    host = args['_host']
-    port = args['_port']
+    _host = args['host']
+    _port = args['port']
 
     # If _host and _port are not provided from command-line, try to import them
-    if host is None:
+    if _host is None:
         try:
-            from config import host
+            from config import host as _host
         except ImportError:
-            host = None
-    if port is None:
+            _host = None
+    if _port is None:
         try:
-            from config import port
+            from config import port as _port
         except ImportError:
-            port = None
+            _port = None
 
     # If import fails, prompt user for _host or _port
-    while host is None:
-        host = input("Enter _host:\t\t\t\t\t\t")
-    while port is None:
+    while _host is None:
+        _host = input("Enter host:\t\t\t\t\t\t")
+    while _port is None:
         try:
-            port = int(input("Enter _port:\t\t\t\t\t\t"))
+            _port = int(input("Enter port:\t\t\t\t\t\t"))
         except ValueError:
-            logging.info("Invalid _port. Enter a valid _port number!")
-            port = None
+            logging.info("Invalid port. Enter a valid port number!")
+            _port = None
 
     loop = asyncio.get_event_loop()
     server = Server(
-        host=host,
-        port=port,
+        host=_host,
+        port=_port,
     )
     logging.info("Starting file bridging server...")
     try: