001/* 002 * Copyright 2020 Global Biodiversity Information Facility (GBIF) 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016package org.gbif.api.model.collections.suggestions; 017 018import org.gbif.api.model.collections.CollectionEntity; 019import org.gbif.api.vocabulary.Country; 020 021import java.io.Serializable; 022import java.util.Date; 023import java.util.List; 024import java.util.UUID; 025 026public interface ChangeSuggestion<T extends CollectionEntity> extends Serializable { 027 028 Integer getKey(); 029 030 void setKey(Integer key); 031 032 Type getType(); 033 034 void setType(Type type); 035 036 Status getStatus(); 037 038 void setStatus(Status status); 039 040 UUID getEntityKey(); 041 042 void setEntityKey(UUID entityKey); 043 044 Country getEntityCountry(); 045 046 void setEntityCountry(Country entityCountry); 047 048 String getEntityName(); 049 050 void setEntityName(String entityName); 051 052 T getSuggestedEntity(); 053 054 void setSuggestedEntity(T suggestedEntity); 055 056 Date getProposed(); 057 058 void setProposed(Date proposed); 059 060 String getProposedBy(); 061 062 void setProposedBy(String proposedBy); 063 064 String getProposerEmail(); 065 066 void setProposerEmail(String proposerEmail); 067 068 Date getApplied(); 069 070 void setApplied(Date applied); 071 072 String getAppliedBy(); 073 074 void setAppliedBy(String appliedBy); 075 076 Date getDiscarded(); 077 078 void setDiscarded(Date discarded); 079 080 String getDiscardedBy(); 081 082 void setDiscardedBy(String discardedBy); 083 084 List<String> getComments(); 085 086 void setComments(List<String> comments); 087 088 UUID getMergeTargetKey(); 089 090 void setMergeTargetKey(UUID mergeTargetKey); 091 092 List<Change> getChanges(); 093 094 void setChanges(List<Change> changes); 095 096 String getModifiedBy(); 097 098 void setModifiedBy(String modifiedBy); 099 100 Date getModified(); 101 102 void setModified(Date modified); 103}