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 }