From 3f4700e9e3c5989d819298cf254d321848a21326 Mon Sep 17 00:00:00 2001
From: Adar Nimrod <nimrod@shore.co.il>
Date: Sat, 25 Sep 2021 21:04:37 +0300
Subject: [PATCH] Some more structure.

---
 pyproject.toml                      |  2 +-
 transmission_feeder/__init__.py     |  9 ---------
 transmission_feeder/__main__.py     | 15 +++++++++++++++
 transmission_feeder/config.py       | 10 ++++++++++
 transmission_feeder/db.py           |  6 ++++++
 transmission_feeder/transmission.py |  6 ++++++
 6 files changed, 38 insertions(+), 10 deletions(-)
 create mode 100644 transmission_feeder/__main__.py
 create mode 100644 transmission_feeder/config.py
 create mode 100644 transmission_feeder/db.py
 create mode 100644 transmission_feeder/transmission.py

diff --git a/pyproject.toml b/pyproject.toml
index ed38c4a..cf96161 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -33,4 +33,4 @@ classifiers = [
 Home = "https://git.shore.co.il/nimrod/transmission-feeder"
 
 [project.scripts]
-transmission-feeder = "transmission_feeder:main"
+transmission-feeder = "transmission_feeder"
diff --git a/transmission_feeder/__init__.py b/transmission_feeder/__init__.py
index 6f8856d..94f21f4 100644
--- a/transmission_feeder/__init__.py
+++ b/transmission_feeder/__init__.py
@@ -1,12 +1,3 @@
 "Add torrent to Transmission from RSS or Atom feeds."
-import sys
 
 __version__ = "0.0.1"
-
-
-def main():
-    """Main entrypoint."""
-
-
-if __name__ == "__main__":
-    sys.exit(main())
diff --git a/transmission_feeder/__main__.py b/transmission_feeder/__main__.py
new file mode 100644
index 0000000..d904a40
--- /dev/null
+++ b/transmission_feeder/__main__.py
@@ -0,0 +1,15 @@
+"""Main entrypoint module."""
+import argparse
+import transmission_feeder.config
+import transmission_feeder.db
+import transmission_feeder.transmission
+
+
+def build_arg_parser():
+    """Build the argument parser."""
+    return
+
+
+def main():
+    """Main entrypoint."""
+    return
diff --git a/transmission_feeder/config.py b/transmission_feeder/config.py
new file mode 100644
index 0000000..7f22628
--- /dev/null
+++ b/transmission_feeder/config.py
@@ -0,0 +1,10 @@
+import ruamel.yaml  # pylint: disable=import-error
+
+
+def get_config():
+    """Return a configuration dictionary.
+
+    This should be the definitive configuration item, after including
+    environment variables, default values, etc.
+    """
+    return
diff --git a/transmission_feeder/db.py b/transmission_feeder/db.py
new file mode 100644
index 0000000..c9eeeb2
--- /dev/null
+++ b/transmission_feeder/db.py
@@ -0,0 +1,6 @@
+import sqlite3
+
+
+def get_conn(config):
+    """Return a SQLite database connection."""
+    return
diff --git a/transmission_feeder/transmission.py b/transmission_feeder/transmission.py
new file mode 100644
index 0000000..23b6f99
--- /dev/null
+++ b/transmission_feeder/transmission.py
@@ -0,0 +1,6 @@
+import transmission_rpc  # pylint: disable=import-error
+
+
+def get_client(config):
+    """Return a transmission_rpc client object."""
+    return
-- 
GitLab