blob: 95ef92db9b91f15f48ea29b5996dce2a4c30834e [file] [log] [blame]
/*
* 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.validation;
import java.util.List;
import com.motorolamobility.preflighting.core.utils.LimitedList;
/**
* It contains a {@link LimitedList} of {@link ValidationResultData}, that is,
* a collection of results raised by a checker or condition.
*/
public class ValidationResult
{
private LimitedList<ValidationResultData> data = null;
private String checkerId;
/**
* Constructor
* @param limit maximum number of results that can be returned (if the list of results exceed, only the first items will be displayed)
* @param checkerId The checkerId for the checker being validated. The value is null for global validations.
*/
public ValidationResult(String checkerId, int limit)
{
this.setCheckerId(checkerId);
data = new LimitedList<ValidationResultData>(limit);
}
/**
* Returns the list of results raised by a checker or condition
* @return list of {@link ValidationResultData}
*/
public List<ValidationResultData> getValidationResult()
{
return data;
}
/**
* Add one ValidationResultData to the ValidationResult object.
* @param dataRow a new single issue found by a checker/condition
*/
public void addValidationResult(ValidationResultData dataRow)
{
data.add(dataRow);
}
/**
* @param checkerId The checkerId to set.
*/
private void setCheckerId(String checkerId)
{
this.checkerId = checkerId;
}
/**
* Returns the unique identifier for the checker (as declared in the <code>com.motorolamobility.preflighting.core.checker</code> extension point)
* @return The checkerId or null if not informed.
*/
public String getCheckerId()
{
return checkerId;
}
/**
* Clear the validation result list.
*/
public void clear()
{
data.clear();
}
/**
* Add all items from list of {@link ValidationResultData} to the validation result.
*
* @param list of items to add into the {@link LimitedList} of results raised by condition/checker.
*/
public void addAll(List<ValidationResultData> list)
{
data.addAll(list);
}
}