package com.rapidftr.model; import net.rim.device.api.ui.Color; import net.rim.device.api.util.Persistable; public class ChildStatus implements Persistable { private static final String STATUS_STRING_NEW = "New"; private static final String STATUS_STRING_UPDATED = "Updated"; private static final String STATUS_STRING_SYNCED = "Synced"; private static final String STATUS_STRING_SYNC_FAILED = "Failed"; private static final String STATUS_STRING_FLAGGED = "Flagged"; public static final ChildStatus NEW = new ChildStatus(Color.BLUE, STATUS_STRING_NEW); public static final ChildStatus UPDATED = new ChildStatus(Color.CYAN, STATUS_STRING_UPDATED); public static final ChildStatus SYNCED = new ChildStatus(Color.GREEN, STATUS_STRING_SYNCED); public static final ChildStatus SYNC_FAILED = new ChildStatus(Color.DARKRED, STATUS_STRING_SYNC_FAILED); public static final ChildStatus FLAGGED = new ChildStatus(Color.DARKRED, STATUS_STRING_FLAGGED); private String syncError; private int colorCode; private String statusString; private ChildStatus(int colorCode, String statusString) { this.colorCode = colorCode; this.statusString = statusString; } public String getStatusString(){ return statusString; } public int getStatusColor() { return colorCode; } public String getSyncError() { return syncError; } public void setSyncError(String syncError) { this.syncError = syncError; } public String toString() { return statusString; } public int hashCode() { final int prime = 31; int result = 1; result = prime * result + colorCode; return result; } public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; ChildStatus other = (ChildStatus) obj; if (colorCode != other.getStatusColor()) return false; return true; } }