/** * Copyright Intellectual Reserve, Inc. * * 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 org.familysearch.platform.ct; import javax.xml.bind.annotation.XmlTransient; /** * Enumeration of change actions. * * @author Cody Hawkins */ @XmlTransient public enum ChangeType { CREATE_PERSON("Person Created", ChangeOperation.Create, ChangeObjectType.Person, null), DELETE_PERSON("Person Removed", ChangeOperation.Delete, ChangeObjectType.Person, null), MERGE_PERSON("Person Merged", ChangeOperation.Merge, ChangeObjectType.Person, null), UNMERGE_PERSON("Person Unmerged", ChangeOperation.Unmerge, ChangeObjectType.Person, null), UNTOMBSTONE_PERSON("Person Restored", ChangeOperation.Restore, ChangeObjectType.Person, null), ADD_PERSON_NOT_A_MATCH("Set Person Not a Match", ChangeOperation.Create, ChangeObjectType.NotAMatch, ChangeObjectModifier.Person), REMOVE_PERSON_NOT_A_MATCH("Remove Person Not a Match", ChangeOperation.Delete, ChangeObjectType.NotAMatch, ChangeObjectModifier.Person), CREATE_COUPLE_RELATIONSHIP("Couple Relationship Created", ChangeOperation.Create, ChangeObjectType.Couple, null), DELETE_COUPLE_RELATIONSHIP("Couple Relationship Removed", ChangeOperation.Delete, ChangeObjectType.Couple, null), ADD_MAN("Man Added", ChangeOperation.Create, ChangeObjectType.Man, ChangeObjectModifier.Couple), EDIT_MAN("Man Changed", ChangeOperation.Update, ChangeObjectType.Man, ChangeObjectModifier.Couple), ADD_WOMAN("Woman Added", ChangeOperation.Create, ChangeObjectType.Woman, ChangeObjectModifier.Couple), EDIT_WOMAN("Woman Changed", ChangeOperation.Update, ChangeObjectType.Woman, ChangeObjectModifier.Couple), MERGE_COUPLE_RELATIONSHIP("Couple Relationship Merged", ChangeOperation.Merge, ChangeObjectType.Couple, null), UNMERGE_COUPLE_RELATIONSHIP("Couple Relationship Unmerged", ChangeOperation.Unmerge, ChangeObjectType.Couple, null), UNTOMBSTONE_COUPLE_RELATIONSHIP("Couple Relationship Restored", ChangeOperation.Restore, ChangeObjectType.Couple, null), CREATE_CHILD_AND_PARENTS_RELATIONSHIP("Child and Parents Relationship Created", ChangeOperation.Create, ChangeObjectType.ChildAndParentsRelationship, null), DELETE_CHILD_AND_PARENTS_RELATIONSHIP("Child and Parents Relationship Removed", ChangeOperation.Delete, ChangeObjectType.ChildAndParentsRelationship, null), ADD_FATHER("Father Added", ChangeOperation.Create, ChangeObjectType.Father, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_FATHER("Father Changed", ChangeOperation.Update, ChangeObjectType.Father, ChangeObjectModifier.ChildAndParentsRelationship), REMOVE_FATHER("Father Removed", ChangeOperation.Delete, ChangeObjectType.Father, ChangeObjectModifier.ChildAndParentsRelationship), ADD_MOTHER("Mother Added", ChangeOperation.Create, ChangeObjectType.Mother, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_MOTHER("Mother Changed", ChangeOperation.Update, ChangeObjectType.Mother, ChangeObjectModifier.ChildAndParentsRelationship), REMOVE_MOTHER("Mother Removed", ChangeOperation.Delete, ChangeObjectType.Mother, ChangeObjectModifier.ChildAndParentsRelationship), ADD_CHILD("Child Added", ChangeOperation.Create, ChangeObjectType.Child, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_CHILD("Child Changed", ChangeOperation.Update, ChangeObjectType.Child, ChangeObjectModifier.ChildAndParentsRelationship), MERGE_CHILD_AND_PARENTS_RELATIONSHIP("Child and Parents Relationship Merged", ChangeOperation.Merge, ChangeObjectType.ChildAndParentsRelationship, null), UNMERGE_CHILD_AND_PARENTS_RELATIONSHIP("Child and Parents Relationship Unmerged", ChangeOperation.Unmerge, ChangeObjectType.ChildAndParentsRelationship, null), UNTOMBSTONE_CHILD_AND_PARENTS_RELATIONSHIP("Child and Parents Relationship Restored", ChangeOperation.Restore, ChangeObjectType.ChildAndParentsRelationship, null), /* Todo: Not currently supported EDIT_PERSON_ACCESS_CONTROL("PersonAccessControl Changed", , ), EDIT_COUPLE_RELATIONSHIP_ACCESS_CONTROL("Couple Relationship AccessControl Changed", , ), EDIT_PARENT_CHILD_RELATIONSHIP_ACCESS_CONTROL("Parent-Child Relationship AccessControl Changed", , ), DELETE_CHANGE("Change Removed", , ), SET_ADMIN_LABEL("Admin Label Set", , ), CLEAR_ADMIN_LABEL("Admin Label Cleared", , ), SET_NOT_A_MATCH_DECLARATION("Not A Match Declaration Set", , ), CLEAR_NOT_A_MATCH_DECLARATION("Not A Match Declaration Cleared", , ), */ // SOURCE REFERENCE ADD_PERSON_SOURCE_REFERENCE("Person Source Reference Added", ChangeOperation.Create, ChangeObjectType.SourceReference, ChangeObjectModifier.Person), EDIT_PERSON_SOURCE_REFERENCE("Person Source Reference Changed", ChangeOperation.Update, ChangeObjectType.SourceReference, ChangeObjectModifier.Person), DELETE_PERSON_SOURCE_REFERENCE("Person Source Reference Removed", ChangeOperation.Delete, ChangeObjectType.SourceReference, ChangeObjectModifier.Person), ADD_COUPLE_SOURCE_REFERENCE("Couple Source Reference Added", ChangeOperation.Create, ChangeObjectType.SourceReference, ChangeObjectModifier.Couple), EDIT_COUPLE_SOURCE_REFERENCE("Couple Source Reference Changed", ChangeOperation.Update, ChangeObjectType.SourceReference, ChangeObjectModifier.Couple), DELETE_COUPLE_SOURCE_REFERENCE("Couple Source Reference Removed", ChangeOperation.Delete, ChangeObjectType.SourceReference, ChangeObjectModifier.Couple), ADD_CHILD_PARENTS_SOURCE_REFERENCE("Child and Parents Source Reference Added", ChangeOperation.Create, ChangeObjectType.SourceReference, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_CHILD_PARENTS_SOURCE_REFERENCE("Child and Parents Source Reference Changed", ChangeOperation.Update, ChangeObjectType.SourceReference, ChangeObjectModifier.ChildAndParentsRelationship), DELETE_CHILD_PARENTS_SOURCE_REFERENCE("Child and Parents Source Reference Removed", ChangeOperation.Delete, ChangeObjectType.SourceReference, ChangeObjectModifier.ChildAndParentsRelationship), // DISCUSSION REFERENCE ADD_PERSON_DISCUSSION_REFERENCE("Person Discussion Reference Added", ChangeOperation.Create, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Person), EDIT_PERSON_DISCUSSION_REFERENCE("Person Discussion Reference Changed", ChangeOperation.Update, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Person), DELETE_PERSON_DISCUSSION_REFERENCE("Person Discussion Reference Removed", ChangeOperation.Delete, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Person), ADD_COUPLE_DISCUSSION_REFERENCE("Couple Discussion Reference Added", ChangeOperation.Create, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Couple), EDIT_COUPLE_DISCUSSION_REFERENCE("Couple Discussion Reference Changed", ChangeOperation.Update, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Couple), DELETE_COUPLE_DISCUSSION_REFERENCE("Couple Discussion Reference Removed", ChangeOperation.Delete, ChangeObjectType.DiscussionReference, ChangeObjectModifier.Couple), ADD_CHILD_PARENTS_DISCUSSION_REFERENCE("Child and Parents Discussion Reference Added", ChangeOperation.Create, ChangeObjectType.DiscussionReference, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_CHILD_PARENTS_DISCUSSION_REFERENCE("Child and Parents Discussion Reference Changed", ChangeOperation.Update, ChangeObjectType.DiscussionReference, ChangeObjectModifier.ChildAndParentsRelationship), DELETE_CHILD_PARENTS_DISCUSSION_REFERENCE("Child and Parents Discussion Reference Removed", ChangeOperation.Delete, ChangeObjectType.DiscussionReference, ChangeObjectModifier.ChildAndParentsRelationship), // EVIDENCE REFERENCE ADD_PERSON_EVIDENCE_REFERENCE("Person Evidence Reference Added", ChangeOperation.Create, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Person), EDIT_PERSON_EVIDENCE_REFERENCE("Person Evidence Reference Changed", ChangeOperation.Update, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Person), DELETE_PERSON_EVIDENCE_REFERENCE("Person Evidence Reference Removed", ChangeOperation.Delete, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Person), ADD_COUPLE_EVIDENCE_REFERENCE("Couple Evidence Reference Added", ChangeOperation.Create, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Couple), EDIT_COUPLE_EVIDENCE_REFERENCE("Couple Evidence Reference Changed", ChangeOperation.Update, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Couple), DELETE_COUPLE_EVIDENCE_REFERENCE("Couple Evidence Reference Removed", ChangeOperation.Delete, ChangeObjectType.EvidenceReference, ChangeObjectModifier.Couple), ADD_CHILD_PARENTS_EVIDENCE_REFERENCE("Child and Parents Evidence Reference Added", ChangeOperation.Create, ChangeObjectType.EvidenceReference, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_CHILD_PARENTS_EVIDENCE_REFERENCE("Child and Parents Evidence Reference Changed", ChangeOperation.Update, ChangeObjectType.EvidenceReference, ChangeObjectModifier.ChildAndParentsRelationship), DELETE_CHILD_PARENTS_EVIDENCE_REFERENCE("Child and Parents Evidence Reference Removed", ChangeOperation.Delete, ChangeObjectType.EvidenceReference, ChangeObjectModifier.ChildAndParentsRelationship), /* Conclusion changes */ // EVENT ADD_AFFILIATION("Affiliation Added", ChangeOperation.Create, ChangeObjectType.Affiliation, ChangeObjectModifier.Person), EDIT_AFFILIATION("Affiliation Changed", ChangeOperation.Update, ChangeObjectType.Affiliation, ChangeObjectModifier.Person), DELETE_AFFILIATION("Affiliation Removed", ChangeOperation.Delete, ChangeObjectType.Affiliation, ChangeObjectModifier.Person), ADD_ANNULMENT("Annulment Added", ChangeOperation.Create, ChangeObjectType.Annulment, ChangeObjectModifier.Couple), EDIT_ANNULMENT("Annulment Changed", ChangeOperation.Update, ChangeObjectType.Annulment, ChangeObjectModifier.Couple), DELETE_ANNULMENT("Annulment Removed", ChangeOperation.Delete, ChangeObjectType.Annulment, ChangeObjectModifier.Couple), ADD_BAR_MITZVAH("Bar Mitzvah Added", ChangeOperation.Create, ChangeObjectType.BarMitzvah, ChangeObjectModifier.Person), EDIT_BAR_MITZVAH("Bar Mitzvah Changed", ChangeOperation.Update, ChangeObjectType.BarMitzvah, ChangeObjectModifier.Person), DELETE_BAR_MITZVAH("Bar Mitzvah Removed", ChangeOperation.Delete, ChangeObjectType.BarMitzvah, ChangeObjectModifier.Person), ADD_BAS_MITZVAH("Bat Mitzvah Added", ChangeOperation.Create, ChangeObjectType.BatMitzvah, ChangeObjectModifier.Person), EDIT_BAS_MITZVAH("Bat Mitzvah Changed", ChangeOperation.Update, ChangeObjectType.BatMitzvah, ChangeObjectModifier.Person), DELETE_BAS_MITZVAH("Bat Mitzvah Removed", ChangeOperation.Delete, ChangeObjectType.BatMitzvah, ChangeObjectModifier.Person), ADD_BIRTH("Birth Added", ChangeOperation.Create, ChangeObjectType.Birth, ChangeObjectModifier.Person), EDIT_BIRTH("Birth Changed", ChangeOperation.Update, ChangeObjectType.Birth, ChangeObjectModifier.Person), DELETE_BIRTH("Birth Removed", ChangeOperation.Delete, ChangeObjectType.Birth, ChangeObjectModifier.Person), ADD_BURIAL("Burial Added", ChangeOperation.Create, ChangeObjectType.Burial, ChangeObjectModifier.Person), EDIT_BURIAL("Burial Changed", ChangeOperation.Update, ChangeObjectType.Burial, ChangeObjectModifier.Person), DELETE_BURIAL("Burial Removed", ChangeOperation.Delete, ChangeObjectType.Burial, ChangeObjectModifier.Person), ADD_CHRISTENING("Christening Added", ChangeOperation.Create, ChangeObjectType.Christening, ChangeObjectModifier.Person), EDIT_CHRISTENING("Christening Changed", ChangeOperation.Update, ChangeObjectType.Christening, ChangeObjectModifier.Person), DELETE_CHRISTENING("Christening Removed", ChangeOperation.Delete, ChangeObjectType.Christening, ChangeObjectModifier.Person), ADD_COMMON_LAW_MARRIAGE("Common Law Marriage Added", ChangeOperation.Create, ChangeObjectType.CommonLawMarriage, ChangeObjectModifier.Couple), EDIT_COMMON_LAW_MARRIAGE("Common Law Marriage Changed", ChangeOperation.Update, ChangeObjectType.CommonLawMarriage, ChangeObjectModifier.Couple), DELETE_COMMON_LAW_MARRIAGE("Common Law Marriage Removed", ChangeOperation.Delete, ChangeObjectType.CommonLawMarriage, ChangeObjectModifier.Couple), ADD_CREMATION("Cremation Added", ChangeOperation.Create, ChangeObjectType.Cremation, ChangeObjectModifier.Person), EDIT_CREMATION("Cremation Changed", ChangeOperation.Update, ChangeObjectType.Cremation, ChangeObjectModifier.Person), DELETE_CREMATION("Cremation Removed", ChangeOperation.Delete, ChangeObjectType.Cremation, ChangeObjectModifier.Person), ADD_DEATH("Death Added", ChangeOperation.Create, ChangeObjectType.Death, ChangeObjectModifier.Person), EDIT_DEATH("Death Changed", ChangeOperation.Update, ChangeObjectType.Death, ChangeObjectModifier.Person), DELETE_DEATH("Death Removed", ChangeOperation.Delete, ChangeObjectType.Death, ChangeObjectModifier.Person), ADD_LIVING_STATUS("Living Status Set", ChangeOperation.Create, ChangeObjectType.LivingStatus, ChangeObjectModifier.Person), EDIT_LIVING_STATUS("Living Status Changed", ChangeOperation.Update, ChangeObjectType.LivingStatus, ChangeObjectModifier.Person), DELETE_LIVING_STATUS("Living Status Removed", ChangeOperation.Delete, ChangeObjectType.LivingStatus, ChangeObjectModifier.Person), ADD_DIVORCE("Divorce Added", ChangeOperation.Create, ChangeObjectType.Divorce, ChangeObjectModifier.Couple), EDIT_DIVORCE("Divorce Changed", ChangeOperation.Update, ChangeObjectType.Divorce, ChangeObjectModifier.Couple), DELETE_DIVORCE("Divorce Removed", ChangeOperation.Delete, ChangeObjectType.Divorce, ChangeObjectModifier.Couple), ADD_MARRIAGE("Marriage Added", ChangeOperation.Create, ChangeObjectType.Marriage, ChangeObjectModifier.Couple), EDIT_MARRIAGE("Marriage Changed", ChangeOperation.Update, ChangeObjectType.Marriage, ChangeObjectModifier.Couple), DELETE_MARRIAGE("Marriage Removed", ChangeOperation.Delete, ChangeObjectType.Marriage, ChangeObjectModifier.Couple), ADD_MILITARY_SERVICE("Military Service Added", ChangeOperation.Create, ChangeObjectType.MilitaryService, ChangeObjectModifier.Person), EDIT_MILITARY_SERVICE("Military Service Changed", ChangeOperation.Update, ChangeObjectType.MilitaryService, ChangeObjectModifier.Person), DELETE_MILITARY_SERVICE("Military Service Removed", ChangeOperation.Delete, ChangeObjectType.MilitaryService, ChangeObjectModifier.Person), ADD_NATURALIZATION("Naturalization Added", ChangeOperation.Create, ChangeObjectType.Naturalization, ChangeObjectModifier.Person), EDIT_NATURALIZATION("Naturalization Changed", ChangeOperation.Update, ChangeObjectType.Naturalization, ChangeObjectModifier.Person), DELETE_NATURALIZATION("Naturalization Removed", ChangeOperation.Delete, ChangeObjectType.Naturalization, ChangeObjectModifier.Person), ADD_NOBILITY_TYPE("Title of Nobility Added", ChangeOperation.Create, ChangeObjectType.TitleOfNobility, ChangeObjectModifier.Person), EDIT_NOBILITY_TYPE("Title of Nobility Changed", ChangeOperation.Update, ChangeObjectType.TitleOfNobility, ChangeObjectModifier.Person), DELETE_NOBILITY_TYPE("Title of Nobility Removed", ChangeOperation.Update, ChangeObjectType.TitleOfNobility, ChangeObjectModifier.Person), ADD_OCCUPATION("Occupation Added", ChangeOperation.Create, ChangeObjectType.Occupation, ChangeObjectModifier.Person), EDIT_OCCUPATION("Occupation Changed", ChangeOperation.Update, ChangeObjectType.Occupation, ChangeObjectModifier.Person), DELETE_OCCUPATION("Occupation Removed", ChangeOperation.Delete, ChangeObjectType.Occupation, ChangeObjectModifier.Person), ADD_RELIGIOUS_AFFILIATION("Religion Added", ChangeOperation.Create, ChangeObjectType.Religion, ChangeObjectModifier.Person), EDIT_RELIGIOUS_AFFILIATION("Religion Changed", ChangeOperation.Update, ChangeObjectType.Religion, ChangeObjectModifier.Person), DELETE_RELIGIOUS_AFFILIATION("Religion Removed", ChangeOperation.Delete, ChangeObjectType.Religion, ChangeObjectModifier.Person), ADD_RESIDENCE("Residence Added", ChangeOperation.Create, ChangeObjectType.Residence, ChangeObjectModifier.Person), EDIT_RESIDENCE("Residence Changed", ChangeOperation.Update, ChangeObjectType.Residence, ChangeObjectModifier.Person), DELETE_RESIDENCE("Residence Removed", ChangeOperation.Delete, ChangeObjectType.Residence, ChangeObjectModifier.Person), ADD_STILLBORN("Stillbirth Added", ChangeOperation.Create, ChangeObjectType.Stillbirth, ChangeObjectModifier.Person), EDIT_STILLBORN("Stillbirth Changed", ChangeOperation.Update, ChangeObjectType.Stillbirth, ChangeObjectModifier.Person), DELETE_STILLBORN("Stillbirth Removed", ChangeOperation.Delete, ChangeObjectType.Stillbirth, ChangeObjectModifier.Person), ADD_COUPLE_EVENT("Couple Event Added", ChangeOperation.Create, ChangeObjectType.Fact, ChangeObjectModifier.Couple), EDIT_COUPLE_EVENT("Couple Event Changed", ChangeOperation.Update, ChangeObjectType.Fact, ChangeObjectModifier.Couple), DELETE_COUPLE_EVENT("Couple Event Removed", ChangeOperation.Delete, ChangeObjectType.Fact, ChangeObjectModifier.Couple), //Todo: Do changes of type "Other Event" exist? ADD_OTHER_EVENT("Other Event Added", ChangeOperation.Create, ChangeObjectType.Fact, ChangeObjectModifier.Person), EDIT_OTHER_EVENT("Other Event Changed", ChangeOperation.Update, ChangeObjectType.Fact, ChangeObjectModifier.Person), DELETE_OTHER_EVENT("Other Event Removed", ChangeOperation.Delete, ChangeObjectType.Fact, ChangeObjectModifier.Person), // FACT ADD_CASTE_NAME("Caste Added", ChangeOperation.Create, ChangeObjectType.Caste, ChangeObjectModifier.Person), EDIT_CASTE_NAME("Caste Changed", ChangeOperation.Update, ChangeObjectType.Caste, ChangeObjectModifier.Person), DELETE_CASTE_NAME("Caste Removed", ChangeOperation.Delete, ChangeObjectType.Caste, ChangeObjectModifier.Person), ADD_CLAN_NAME("Clan Added", ChangeOperation.Create, ChangeObjectType.Clan, ChangeObjectModifier.Person), EDIT_CLAN_NAME("Clan Changed", ChangeOperation.Update, ChangeObjectType.Clan, ChangeObjectModifier.Person), DELETE_CLAN_NAME("Clan Removed", ChangeOperation.Delete, ChangeObjectType.Clan, ChangeObjectModifier.Person), ADD_DIED_BEFORE_EIGHT("Died Before Eight Added", ChangeOperation.Create, ChangeObjectType.DiedBeforeEight, ChangeObjectModifier.Person), EDIT_DIED_BEFORE_EIGHT("Died Before Eight Changed", ChangeOperation.Update, ChangeObjectType.DiedBeforeEight, ChangeObjectModifier.Person), DELETE_DIED_BEFORE_EIGHT("Died Before Eight Removed", ChangeOperation.Delete, ChangeObjectType.DiedBeforeEight, ChangeObjectModifier.Person), ADD_LIFE_SKETCH("Life Sketch Added", ChangeOperation.Create, ChangeObjectType.LifeSketch, ChangeObjectModifier.Person), EDIT_LIFE_SKETCH("Life Sketch Changed", ChangeOperation.Update, ChangeObjectType.LifeSketch, ChangeObjectModifier.Person), DELETE_LIFE_SKETCH("Life Sketch Removed", ChangeOperation.Delete, ChangeObjectType.LifeSketch, ChangeObjectModifier.Person), ADD_NATIONAL_ID("National Id Added", ChangeOperation.Create, ChangeObjectType.NationalId, ChangeObjectModifier.Person), EDIT_NATIONAL_ID("National Id Changed", ChangeOperation.Update, ChangeObjectType.NationalId, ChangeObjectModifier.Person), DELETE_NATIONAL_ID("National Id Removed", ChangeOperation.Delete, ChangeObjectType.NationalId, ChangeObjectModifier.Person), ADD_NATIONAL_ORIGIN("Nationality Added", ChangeOperation.Create, ChangeObjectType.Nationality, ChangeObjectModifier.Person), EDIT_NATIONAL_ORIGIN("Nationality Changed", ChangeOperation.Update, ChangeObjectType.Nationality, ChangeObjectModifier.Person), DELETE_NATIONAL_ORIGIN("Nationality Removed", ChangeOperation.Delete, ChangeObjectType.Nationality, ChangeObjectModifier.Person), ADD_PHYSICAL_DESCRIPTION("Physical Description Added", ChangeOperation.Create, ChangeObjectType.PhysicalDescription, ChangeObjectModifier.Person), EDIT_PHYSICAL_DESCRIPTION("Physical Description Changed", ChangeOperation.Update, ChangeObjectType.PhysicalDescription, ChangeObjectModifier.Person), DELETE_PHYSICAL_DESCRIPTION("Physical Description Removed", ChangeOperation.Delete, ChangeObjectType.PhysicalDescription, ChangeObjectModifier.Person), ADD_RACE("Ethnicity Added", ChangeOperation.Create, ChangeObjectType.Ethnicity, ChangeObjectModifier.Person), EDIT_RACE("Ethnicity Changed", ChangeOperation.Update, ChangeObjectType.Ethnicity, ChangeObjectModifier.Person), DELETE_RACE("Ethnicity Removed", ChangeOperation.Delete, ChangeObjectType.Ethnicity, ChangeObjectModifier.Person), ADD_TRIBE_NAME("Tribe Name Added", ChangeOperation.Create, ChangeObjectType.TribeName, ChangeObjectModifier.Person), EDIT_TRIBE_NAME("Tribe Name Changed", ChangeOperation.Update, ChangeObjectType.TribeName, ChangeObjectModifier.Person), DELETE_TRIBE_NAME("Tribe Name Removed", ChangeOperation.Delete, ChangeObjectType.TribeName, ChangeObjectModifier.Person), ADD_OTHER_FACT("Other Fact Added", ChangeOperation.Create, ChangeObjectType.Fact, ChangeObjectModifier.Person), EDIT_OTHER_FACT("Other Fact Changed", ChangeOperation.Update, ChangeObjectType.Fact, ChangeObjectModifier.Person), DELETE_OTHER_FACT("Other Fact Removed", ChangeOperation.Delete, ChangeObjectType.Fact, ChangeObjectModifier.Person), // GENDER ADD_GENDER("Gender Added", ChangeOperation.Create, ChangeObjectType.Gender, ChangeObjectModifier.Person), EDIT_GENDER("Gender Changed", ChangeOperation.Update, ChangeObjectType.Gender, ChangeObjectModifier.Person), DELETE_GENDER("Gender Removed", ChangeOperation.Delete, ChangeObjectType.Gender, ChangeObjectModifier.Person), // NAME ADD_BIRTH_NAME("Birth Name Added", ChangeOperation.Create, ChangeObjectType.BirthName, ChangeObjectModifier.Person), EDIT_BIRTH_NAME("Birth Name Changed", ChangeOperation.Update, ChangeObjectType.BirthName, ChangeObjectModifier.Person), DELETE_BIRTH_NAME("Birth Name Removed", ChangeOperation.Delete, ChangeObjectType.BirthName, ChangeObjectModifier.Person), ADD_AKA_NAME("Aka Name Added", ChangeOperation.Create, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), EDIT_AKA_NAME("Aka Name Changed", ChangeOperation.Update, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), DELETE_AKA_NAME("Aka Name Removed", ChangeOperation.Delete, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), ADD_ALTERNATE_NAME("Aka Name Added", ChangeOperation.Create, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), EDIT_ALTERNATE_NAME("Aka Name Changed", ChangeOperation.Update, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), DELETE_ALTERNATE_NAME("Aka Name Removed", ChangeOperation.Delete, ChangeObjectType.AlsoKnownAs, ChangeObjectModifier.Person), ADD_MARRIED_NAME("Married Name Added", ChangeOperation.Create, ChangeObjectType.MarriedName, ChangeObjectModifier.Person), EDIT_MARRIED_NAME("Married Name Changed", ChangeOperation.Update, ChangeObjectType.MarriedName, ChangeObjectModifier.Person), DELETE_MARRIED_NAME("Married Name Removed", ChangeOperation.Delete, ChangeObjectType.MarriedName, ChangeObjectModifier.Person), ADD_NICK_NAME("Nickname Added", ChangeOperation.Create, ChangeObjectType.Nickname, ChangeObjectModifier.Person), EDIT_NICK_NAME("Nickname Changed", ChangeOperation.Update, ChangeObjectType.Nickname, ChangeObjectModifier.Person), DELETE_NICK_NAME("Nickname Removed", ChangeOperation.Delete, ChangeObjectType.Nickname, ChangeObjectModifier.Person), ADD_OTHER_NAME("Other Name Added", ChangeOperation.Create, ChangeObjectType.Name, ChangeObjectModifier.Person), EDIT_OTHER_NAME("Other Name Changed", ChangeOperation.Update, ChangeObjectType.Name, ChangeObjectModifier.Person), DELETE_OTHER_NAME("Other Name Removed", ChangeOperation.Delete, ChangeObjectType.Name, ChangeObjectModifier.Person), // LINEAGE ADD_LINEAGE("Lineage Added", ChangeOperation.Create, ChangeObjectType.Fact, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_LINEAGE("Lineage Changed", ChangeOperation.Update, ChangeObjectType.Fact, ChangeObjectModifier.ChildAndParentsRelationship), DELETE_LINEAGE("Lineage Removed", ChangeOperation.Delete, ChangeObjectType.Fact, ChangeObjectModifier.ChildAndParentsRelationship), // ORDINANCE COMPLETE_BAPTISM("LDS Baptism Completed", ChangeOperation.Create, ChangeObjectType.Baptism, ChangeObjectModifier.Person), COMPLETE_CONFIRMATION("LDS Confirmation Completed", ChangeOperation.Create, ChangeObjectType.Confirmation, ChangeObjectModifier.Person), COMPLETE_INITIATORY("LDS Initiatory Completed", ChangeOperation.Create, ChangeObjectType.Initiatory, ChangeObjectModifier.Person), COMPLETE_ENDOWMENT("LDS Endowment Completed", ChangeOperation.Create, ChangeObjectType.Endowment, ChangeObjectModifier.Person), COMPLETE_COUPLE_SEALING("LDS Couple Sealing Completed", ChangeOperation.Create, ChangeObjectType.Sealing, ChangeObjectModifier.Couple), COMPLETE_SEALING_TO_PARENTS("LDS Sealing to Parents Completed", ChangeOperation.Create, ChangeObjectType.Sealing, ChangeObjectModifier.ChildAndParentsRelationship), // NOTES ADD_PERSON_NOTE("Person Note Added", ChangeOperation.Create, ChangeObjectType.Note, ChangeObjectModifier.Person), EDIT_PERSON_NOTE("Person Note Changed", ChangeOperation.Update, ChangeObjectType.Note, ChangeObjectModifier.Person), DELETE_PERSON_NOTE("Person Note Removed", ChangeOperation.Delete, ChangeObjectType.Note, ChangeObjectModifier.Person), ADD_CHILD_PARENTS_NOTE("Child and Parents Note Added", ChangeOperation.Create, ChangeObjectType.Note, ChangeObjectModifier.ChildAndParentsRelationship), EDIT_CHILD_PARENTS_NOTE("Child and Parents Note Changed", ChangeOperation.Update, ChangeObjectType.Note, ChangeObjectModifier.ChildAndParentsRelationship), DELETE_CHILD_PARENTS_NOTE("Child and Parents Note Removed", ChangeOperation.Delete, ChangeObjectType.Note, ChangeObjectModifier.ChildAndParentsRelationship), ADD_COUPLE_NOTE("Couple Note Added", ChangeOperation.Create, ChangeObjectType.Note, ChangeObjectModifier.Couple), EDIT_COUPLE_NOTE("Couple Note Changed", ChangeOperation.Update, ChangeObjectType.Note, ChangeObjectModifier.Couple), DELETE_COUPLE_NOTE("Couple Note Removed", ChangeOperation.Delete, ChangeObjectType.Note, ChangeObjectModifier.Couple); private final String displayName; private final ChangeOperation operation; private final ChangeObjectType objectType; private final ChangeObjectModifier objectModifier; private ChangeType(String displayName, ChangeOperation operation, ChangeObjectType objectType, ChangeObjectModifier objectModifier) { this.displayName = displayName; this.operation = operation; this.objectModifier = objectModifier; this.objectType = objectType; if (objectType == null) { throw new NullPointerException(); } } public String toString() { return this.displayName; } public String getDisplayName() { return displayName; } public ChangeOperation getOperation() { return operation; } public ChangeObjectType getObjectType() { return objectType; } public ChangeObjectModifier getObjectModifier() { return objectModifier; } }