001package org.kuali.ole.docstore.model.xmlpojo.ingest;
002
003import java.util.ArrayList;
004import java.util.Collection;
005import java.util.LinkedHashMap;
006import java.util.Map;
007
008/**
009 * Created by IntelliJ IDEA.
010 * User: pvsubrah
011 * Date: 2/8/12
012 * Time: 1:58 PM
013 * To change this template use File | Settings | File Templates.
014 */
015public class AdditionalAttributes {
016
017    public static final String DATE_ENTERED = "dateEntered";
018    public static final String CREATED_BY = "createdBy";
019    public static final String LAST_UPDATED = "lastUpdated";
020    public static final String UPDATED_BY = "updatedBy";
021    public static final String STATUS_UPDATED_BY = "statusUpdatedBy";
022    public static final String STATUS_UPDATED_ON = "statusUpdatedOn";
023    public static final String STATUS = "status";
024    public static final String FAST_ADD_FLAG = "fastAddFlag";
025    public static final String SUPRESS_FROM_PUBLIC = "supressFromPublic";
026    public static final String STAFFONLYFLAG = "staffOnlyFlag";
027    public static final String HOLDINGS_CREATED_BY = "holdingsCreatedBy";
028    public static final String HOLDINGS_UPDATED_BY = "holdingsUpdatedBy";
029    public static final String HOLDINGS_DATE_ENTERED = "holdingsDateEntered";
030    public static final String HOLDINGS_LAST_UPDATED = "holdingsLastUpdated";
031
032
033    private String dateEntered;
034    private String lastUpdated;
035    private String fastAddFlag;
036    private String supressFromPublic;
037    private String harvestable;
038    private String status;
039    private String createdBy;
040    private String updatedBy;
041    private String statusUpdatedOn;
042    private String statusUpdatedBy;
043    private String staffOnlyFlag;
044    private String holdingsCreatedBy;
045    private String holdingsUpdatedBy;
046    private String holdingsDateEntered;
047    private String holdingsLastUpdated;
048
049    public String getHoldingsCreatedBy() {
050        return holdingsCreatedBy;
051    }
052
053    public void setHoldingsCreatedBy(String holdingsCreatedBy) {
054        this.holdingsCreatedBy = holdingsCreatedBy;
055    }
056
057    public String getHoldingsUpdatedBy() {
058        return holdingsUpdatedBy;
059    }
060
061    public void setHoldingsUpdatedBy(String holdingsUpdatedBy) {
062        this.holdingsUpdatedBy = holdingsUpdatedBy;
063    }
064
065    public String getHoldingsDateEntered() {
066        return holdingsDateEntered;
067    }
068
069    public void setHoldingsDateEntered(String holdingsDateEntered) {
070        this.holdingsDateEntered = holdingsDateEntered;
071    }
072
073    public String getHoldingsLastUpdated() {
074        return holdingsLastUpdated;
075    }
076
077    public void setHoldingsLastUpdated(String holdingsLastUpdated) {
078        this.holdingsLastUpdated = holdingsLastUpdated;
079    }
080
081    public String getStaffOnlyFlag() {
082        return staffOnlyFlag;
083    }
084
085    public void setStaffOnlyFlag(String staffOnlyFlag) {
086        this.staffOnlyFlag = staffOnlyFlag;
087    }
088
089    public String getUpdatedBy() {
090        return updatedBy;
091    }
092
093    public void setUpdatedBy(String updatedBy) {
094        this.updatedBy = updatedBy;
095    }
096
097
098    public String getCreatedBy() {
099        return createdBy;
100    }
101
102    public void setCreatedBy(String createdBy) {
103        this.createdBy = createdBy;
104    }
105
106
107    private Map<String, String> attributeMap = new LinkedHashMap<String, String>();
108
109
110    public String getDateEntered() {
111        return dateEntered;
112    }
113
114    public void setDateEntered(String dateEntered) {
115        this.dateEntered = dateEntered;
116    }
117
118    public String getLastUpdated() {
119        return lastUpdated;
120    }
121
122    public void setLastUpdated(String lastUpdated) {
123        this.lastUpdated = lastUpdated;
124    }
125
126    public String getFastAddFlag() {
127        return fastAddFlag;
128    }
129
130    public void setFastAddFlag(String fastAddFlag) {
131        this.fastAddFlag = fastAddFlag;
132    }
133
134    public String getSupressFromPublic() {
135        return supressFromPublic;
136    }
137
138    public void setSupressFromPublic(String supressFromPublic) {
139        this.supressFromPublic = supressFromPublic;
140    }
141
142    public String getHarvestable() {
143        return harvestable;
144    }
145
146    public void setHarvestable(String harvestable) {
147        this.harvestable = harvestable;
148    }
149
150    public String getStatus() {
151        return status;
152    }
153
154    public void setStatus(String status) {
155        this.status = status;
156    }
157
158    public void setAttribute(String key, String value) {
159        attributeMap.put(key, value);
160    }
161
162    public String getAttribute(String value) {
163
164        return attributeMap.get(value);
165    }
166
167    public Collection<String> getAttributeNames() {
168        Collection<String> collection = null;
169        if (attributeMap != null && attributeMap.size() > 0) {
170            collection = attributeMap.keySet();
171        }
172
173        return collection;
174    }
175
176    public Map<String, String> getAttributeMap() {
177        return attributeMap;
178    }
179
180    public void setAttributeMap(Map<String, String> attributeMap) {
181        this.attributeMap = attributeMap;
182    }
183
184    public String getStatusUpdatedOn() {
185        return statusUpdatedOn;
186    }
187
188    public void setStatusUpdatedOn(String statusUpdatedOn) {
189        this.statusUpdatedOn = statusUpdatedOn;
190    }
191
192    public String getStatusUpdatedBy() {
193        return statusUpdatedBy;
194    }
195
196    public void setStatusUpdatedBy(String statusUpdatedBy) {
197        this.statusUpdatedBy = statusUpdatedBy;
198    }
199
200    public Collection<String> getAdditionalAttributeKeyCollection() {
201        Collection<String> keyCollection = new ArrayList<String>();
202        keyCollection.add("dateEntered");
203        keyCollection.add("lastUpdated");
204        keyCollection.add("fastAddFlag");
205        keyCollection.add("supressFromPublic");
206        keyCollection.add("harvestable");
207        keyCollection.add("status");
208        keyCollection.add("createdBy");
209        keyCollection.add("updatedBy");
210        keyCollection.add("statusUpdatedOn");
211        keyCollection.add("statusUpdatedBy");
212        keyCollection.add("staffOnlyFlag");
213        return keyCollection;
214    }
215}