/**
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*/
package org.mifosplatform.infrastructure.codes.data;
import java.io.Serializable;
/**
* Immutable data object represent code-value data in system.
*/
public class CodeValueData implements Serializable {
private final Long id;
private final String name;
@SuppressWarnings("unused")
private final Integer position;
@SuppressWarnings("unused")
private final String description;
private final boolean isActive;
public static CodeValueData instance(final Long id, final String name, final Integer position, final boolean isActive) {
String description = null;
return new CodeValueData(id, name, position, description,isActive);
}
public static CodeValueData instance(final Long id, final String name, final String description, final boolean isActive) {
Integer position = null;
return new CodeValueData(id, name, position, description,isActive);
}
public static CodeValueData instance(final Long id, final String name) {
String description = null;
Integer position = null;
boolean isActive = false;
return new CodeValueData(id, name, position, description, isActive);
}
public static CodeValueData instance(final Long id, final String name, final Integer position, final String description, final boolean isActive) {
return new CodeValueData(id, name, position, description,isActive);
}
private CodeValueData(final Long id, final String name, final Integer position, final String description, final boolean isActive) {
this.id = id;
this.name = name;
this.position = position;
this.description = description;
this.isActive = isActive;
}
public Long getId() {
return this.id;
}
public String getName() {
return this.name;
}
}