add config object, connect user system up to lists code
[scpubgit/App-EzPz.git] / lib / App / EzPz / EzmlmConfig.pm
diff --git a/lib/App/EzPz/EzmlmConfig.pm b/lib/App/EzPz/EzmlmConfig.pm
new file mode 100644 (file)
index 0000000..089f8a6
--- /dev/null
@@ -0,0 +1,24 @@
+package App::EzPz::EzmlmConfig;
+
+use IO::All;
+use Module::Runtime qw(use_module);
+use Moo;
+
+has bindir => (
+  is => 'ro', required => 1,
+);
+
+has list_base_dir => (
+  is => 'ro', required => 1,
+);
+
+sub new_list_object {
+  my ($self, $args) = @_;
+  my $list_dir = io->dir($self->list_base_dir)->catdir($args->{list_name});
+  use_module('Email::EzPz::List')->new(
+    list_dir => $list_dir,
+    ezmlm_bindir => $self->bindir,
+  );
+}
+
+1;