From 086a44af71491ba7845c54bfca786d562e1ccb66 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Fri, 12 Oct 2012 00:58:57 +0200 Subject: Add draft plugins. --- lib/App/smsg/Command/Group.pm | 51 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 lib/App/smsg/Command/Group.pm (limited to 'lib/App/smsg/Command/Group.pm') diff --git a/lib/App/smsg/Command/Group.pm b/lib/App/smsg/Command/Group.pm new file mode 100644 index 0000000..b1c4481 --- /dev/null +++ b/lib/App/smsg/Command/Group.pm @@ -0,0 +1,51 @@ +package App::smsg::Command::Group; + +use 5.010; +use strict; +use warnings; +use utf8; + +BEGIN { + $App::smsg::Command::Group::AUTHORITY = 'https://dr.jones.dk/me#me'; + $App::smsg::Command::Group::VERSION = '0.001'; +} + +use App::smsg -command; +use namespace::clean; + +use constant abstract => q (Handle groups of recipients.); +use constant usage_desc => '%c group %o [...]'; +use constant description => <<'DESCRIPTION'; +Compose, monitor or interact with groups of message recipients. + +Composition action is one of create, join, drop, content or list. + +Monitoring actions: follow. +Keep connection open and emit change of state, i.e. each use, number of +pending recipients, and when done. + +Interactive action is one of cancel or status. + +When group or an option is needed but not provided, it is attempted +resolved from previous related communication, then from defaults, and +then interactively prompted for. +DESCRIPTION +use constant opt_spec => ( +# [ 'verbose|v', "print extra stuff"], + [ 'debug', "print debug stuff"], +); + +sub validate_args { + my ($self, $opt, $args) = @_; + + $self->usage_error("too few arguments") unless @$args >= 1; +} + +sub execute { + my ($self, $opt, $args) = @_; + + die 'FIXME: unimplemented!'; + +} + +1; -- cgit v1.2.3