📄 jasenpluginconfiguration.java
字号:
/*
* @(#)JasenPluginConfiguration.java 30/10/2004
*
* Copyright (c) 2004, 2005 jASEN.org
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the distribution.
*
* 3. The names of the authors may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* 4. Any modification or additions to the software must be contributed back
* to the project.
*
* 5. Any investigation or reverse engineering of source code or binary to
* enable emails to bypass the filters, and hence inflict spam and or viruses
* onto users who use or do not use jASEN could subject the perpetrator to
* criminal and or civil liability.
*
* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JASEN.ORG,
* OR ANY CONTRIBUTORS TO THIS SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
package org.jasen.config;
import java.io.Serializable;
/**
* <P>
* Holds the configuration for a single jASEN plugin component.
* </P>
* @author Jason Polites
*/
public class JasenPluginConfiguration implements Serializable, Comparable
{
private String priority;
private String name;
private String displayName;
private String description;
private String type;
private String calculator;
private String properties;
/**
*
*/
public JasenPluginConfiguration() {
super ();
}
/**
* Gets the calculator used to compute the result for this plugin
* @return The FQCN of the calculator class as a String
*/
public String getCalculator() {
return calculator;
}
/**
* Sets the calculator used to compute the result for this plugin
* @param calculatorClass The FQCN of the calculator class as a String
*/
public void setCalculator(String calculatorClass) {
this.calculator = calculatorClass;
}
/**
* Gets the internal name used to identify this plugin
* @return A String representation of the name
*/
public String getName() {
return name;
}
/**
* Sets the internal name used to identify this plugin
* @param name A String representation of the name
*/
public void setName(String name) {
this.name = name;
}
/**
* Gets the plugin type. This represents the fully qualified class name of the plugin class
* @return The FQCN of the plugin class as a String
*/
public String getType() {
return type;
}
/**
* Sets the plugin type. This represents the fully qualified class name of the plugin class
* @param type The FQCN of the plugin class as a String
*/
public void setType(String type) {
this.type = type;
}
/**
* Gets the priority for this plugin. This should be a parseable integer string
* @return A String representation of an integer
*/
public String getPriority() {
return priority;
}
/**
* Sets the priority for this plugin. This should be a parseable integer string
* @param priority A String representation of an integer
*/
public void setPriority(String priority) {
this.priority = priority;
}
/**
* Gets the classpath relative path to the properties file used to configure this plugin
* @return A String which represents either the absolute, or classpath-relative path to the properties file
*/
public String getProperties() {
return properties;
}
/**
* Gets the classpath relative path to the properties file used to configure this plugin
* <br/>
* This file MUST be in the classpath for the application
* @param properties A String which represents either the absolute, or classpath-relative path to the properties file
*/
public void setProperties(String properties) {
this.properties = properties;
}
/**
* Gets the summary description of this plugin. Used for display in GUI systems etc.
* @return Returns the description.
*/
public String getDescription() {
return this.description;
}
/**
* Sets the summary description of this plugin. Used for display in GUI systems etc.
* @param description The description to set.
*/
public void setDescription(String description) {
this.description = description;
}
/**
* Gets the user friendly name of this plugin. Used for display in GUI systems etc.
* @return Returns the displayName.
*/
public String getDisplayName() {
return this.displayName;
}
/**
* Sets the user friendly name of this plugin. Used for display in GUI systems etc.
* @param displayName The displayName to set.
*/
public void setDisplayName(String displayName) {
this.displayName = displayName;
}
/*
* (non-Javadoc)
* @see java.lang.Comparable#compareTo(java.lang.Object)
*/
public int compareTo(Object o) {
if(o instanceof JasenPluginConfiguration) {
int thisP = Integer.parseInt(priority);
int thatP = Integer.parseInt(((JasenPluginConfiguration)o).getPriority());
return thisP - thatP;
}
else
{
return 1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -