/* | |
* Copyright (C) 2012 The Android Open Source Project | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software | |
* distributed under the License is distributed on an "AS IS" BASIS, | |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
* See the License for the specific language governing permissions and | |
* limitations under the License. | |
*/ | |
package com.motorolamobility.preflighting.core.checker; | |
import com.motorolamobility.preflighting.core.PreflightingCorePlugin; | |
import com.motorolamobility.preflighting.core.internal.checkerparameter.CheckerParameterElement; | |
import com.motorolamobility.preflighting.core.internal.conditions.ConditionElement; | |
/** | |
* Bean class representing a checker extension. | |
*/ | |
public final class CheckerExtension | |
{ | |
public static final String CHECKER_EXTENSION_POINT_ID = PreflightingCorePlugin.PLUGIN_ID | |
+ ".checker"; //$NON-NLS-1$ | |
public static final String CHECKER_EXTENSION_POINT_ELEMENT_CHECKER = "checker"; //$NON-NLS-1$ | |
public static final String CHECKER_EXTENSION_POINT_ATTRIBUTE_ID = "id"; //$NON-NLS-1$ | |
public static final String CHECKER_EXTENSION_POINT_ATTRIBUTE_NAME = "name"; //$NON-NLS-1$ | |
public static final String CHECKER_EXTENSION_POINT_ATTRIBUTE_DESCRIPTION = "description"; //$NON-NLS-1$ | |
public static final String CHECKER_EXTENSION_POINT_ATTRIBUTE_CLASS = "class"; //$NON-NLS-1$ | |
private final String id; | |
private final String name; | |
private final String description; | |
private final IChecker checker; | |
private ConditionElement[] conditions; | |
private CheckerParameterElement[] conditionParameters; | |
/** | |
* Creates a new checker extension object. | |
* | |
* @param id Checker id. | |
* @param name Checker name. | |
* @param description Checker description. | |
* @param checker Checker object. | |
*/ | |
public CheckerExtension(String id, String name, String description, IChecker checker) | |
{ | |
this.id = id; | |
this.name = name; | |
this.description = description; | |
this.checker = checker; | |
} | |
/** | |
* @return the checker id. | |
*/ | |
public String getId() | |
{ | |
return id; | |
} | |
/** | |
* @return the checker name. | |
*/ | |
public String getName() | |
{ | |
return name; | |
} | |
/** | |
* @return the checker description. | |
*/ | |
public String getDescription() | |
{ | |
return description; | |
} | |
/** | |
* @return the checker object. | |
*/ | |
public IChecker getChecker() | |
{ | |
return checker; | |
} | |
/** | |
* @return the checker conditions. If the checker has no conditions declared an empty array is returned. | |
*/ | |
public ConditionElement[] getConditions() | |
{ | |
return conditions != null ? conditions : new ConditionElement[0]; | |
} | |
/** | |
* @param conditions Checker conditions to set. | |
*/ | |
public void setConditions(ConditionElement[] conditions) | |
{ | |
this.conditions = conditions; | |
} | |
/** | |
* Gets the list of Parameters for this Condition. | |
* | |
* @return Returns the list of Parameters for this Condition. | |
*/ | |
public CheckerParameterElement[] getConditionParameters() | |
{ | |
return this.conditionParameters; | |
} | |
/** | |
* Sets the list of Parameters for this Condition. | |
* | |
* @param conditionParameters This list of Parameters for this Condition. | |
*/ | |
public void setConditionParameters(CheckerParameterElement[] conditionParameters) | |
{ | |
this.conditionParameters = conditionParameters; | |
} | |
/* (non-Javadoc) | |
* @see java.lang.Object#toString() | |
*/ | |
@Override | |
public String toString() | |
{ | |
return "CheckerExtension [id=" + id + ", name=" + name + ", description=" + description | |
+ ", checker=" + checker + "]"; | |
} | |
} |