01: /* CVS ID: $Id: Plugin.java,v 1.1.1.1 2002/10/02 18:42:51 wastl Exp $ */
02: package net.wastl.webmail.server;
03:
04: /*
05: * Plugin.java
06: *
07: * Created: Sep 1999
08: *
09: * Copyright (C) 1999-2000 Sebastian Schaffert
10: *
11: * This program is free software; you can redistribute it and/or
12: * modify it under the terms of the GNU General Public License
13: * as published by the Free Software Foundation; either version 2
14: * of the License, or (at your option) any later version.
15: *
16: * This program is distributed in the hope that it will be useful,
17: * but WITHOUT ANY WARRANTY; without even the implied warranty of
18: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19: * GNU General Public License for more details.
20: *
21: * You should have received a copy of the GNU General Public License
22: * along with this program; if not, write to the Free Software
23: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24: */
25: /**
26: *
27: *
28: * This provides a generic interface for WebMail Plugins
29: *
30: * @author Sebastian Schaffert
31: * @version $Revision: 1.1.1.1 $
32: */
33: public interface Plugin {
34:
35: /**
36: * Register this plugin with a WebMailServer
37: * The plugin thus has access to most WebMail objects.
38: */
39: public void register(WebMailServer parent);
40:
41: /**
42: * Return the name for this plugin.
43: */
44: public String getName();
45:
46: /**
47: * Return a short description for this plugin to be shown in the
48: * plugin list and perhaps in configuration
49: */
50: public String getDescription();
51:
52: /**
53: * Get a version information for this plugin.
54: * This is used for informational purposes only.
55: */
56: public String getVersion();
57:
58: /**
59: * Return a stringlist (comma seperated) of features this plugin provides.
60: * @see requires
61: */
62: public String provides();
63:
64: /**
65: * Return a stringlist (comma seperated) of features this plugin requires.
66: * @see provides
67: */
68: public String requires();
69:
70: }
|