View Javadoc
1   /**
2    * This Source Code Form is subject to the terms of the Mozilla Public
3    * License, v. 2.0. If a copy of the MPL was not distributed with this
4    * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5    *
6    * If it is not possible or desirable to put the notice in a particular
7    * file, then You may include the notice in a location (such as a LICENSE
8    * file in a relevant directory) where a recipient would be likely to look
9    * for such a notice.
10  
11   * 
12   */
13   
14  /*  ---------------------------------------------------------------------------
15   *  U.S. Government, Department of the Army
16   *  Army Materiel Command
17   *  Research Development Engineering Command
18   *  Communications Electronics Research Development and Engineering Center
19   *  ---------------------------------------------------------------------------
20   */
21   
22  package org.miloss.fgsms.plugins;
23  
24  import java.util.List;
25  import org.miloss.fgsms.services.interfaces.common.NameValuePair;
26  import org.miloss.fgsms.services.interfaces.common.PolicyType;
27  
28  /**
29   *
30   * @author AO
31   */
32  public interface PluginCommon {
33    /**
34       * end user facing display name
35       *
36       * @since 6.3
37       * @return
38       */
39      public String GetDisplayName();
40  
41      /**
42       * returns html formatted help to guide users towards proper usage.
43       * Always include the following fields <ul>
44       * <li>Applies to - what policies types it applies to</li>
45       * <li>Required and optional parameters</li>
46       * <li>Description</li>
47       * <li>State if this is processed as data comes in, or periodically (some aggregated data)
48       * </ul>
49       * 
50       * Html is allowed, javascript is not
51       *
52       * @since 6.3
53       * @return
54       */
55      public String GetHtmlFormattedHelp();
56  
57      /**
58       * returns a list of required parameters
59       *
60       * @since 6.3
61       * @return
62       */
63      public List<NameValuePair> GetRequiredParameters();
64  
65      /**
66       * returns a list of optional parameters
67       *
68       * @since 6.3
69       * @return
70       */
71      public List<NameValuePair> GetOptionalParameters();
72  
73      /**
74       * Returns a list of service policy types that this plugin can be applied to
75       * use Utility.getAllPolicyTypes() if it applies to everything. Also Utility.IsContains()
76       * @return 
77       */
78     public List<PolicyType> GetAppliesTo();
79  
80  }