diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 08da8b1f7..6183236af 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,26 +36,3 @@ jobs: - name: Test run: ./gradlew test - publish: - needs: [ compile, test ] - if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') - runs-on: ubuntu-latest - - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Set up Java - id: setup-jre - uses: actions/setup-java@v1 - with: - java-version: "11" - architecture: x64 - - - name: Publish to maven - run: | - ./gradlew publish - env: - MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }} - MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} - MAVEN_PUBLISH_REGISTRY_URL: "https://s01.oss.sonatype.org/content/repositories/releases/" diff --git a/build.gradle b/build.gradle index c910a6f2a..d311e1f88 100644 --- a/build.gradle +++ b/build.gradle @@ -42,23 +42,6 @@ java { } -group = 'dev.merge' - -version = '3.0.0' - -jar { - dependsOn(":generatePomFileForMavenPublication") - archiveBaseName = "merge-java-client" -} - -sourcesJar { - archiveBaseName = "merge-java-client" -} - -javadocJar { - archiveBaseName = "merge-java-client" -} - test { useJUnitPlatform() testLogging { @@ -66,35 +49,3 @@ test { } } -publishing { - publications { - maven(MavenPublication) { - groupId = 'dev.merge' - artifactId = 'merge-java-client' - version = '3.0.0' - from components.java - pom { - licenses { - license { - name = 'CustomLicense{filename: LICENSE}' - } - } - scm { - connection = 'scm:git:git://github.com/merge-api/merge-java-client.git' - developerConnection = 'scm:git:git://github.com/merge-api/merge-java-client.git' - url = 'https://github.com/merge-api/merge-java-client' - } - } - } - } - repositories { - maven { - url "$System.env.MAVEN_PUBLISH_REGISTRY_URL" - credentials { - username "$System.env.MAVEN_USERNAME" - password "$System.env.MAVEN_PASSWORD" - } - } - } -} - diff --git a/settings.gradle b/settings.gradle index 1721a4b88..aed36fec1 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,3 +1 @@ -rootProject.name = 'merge-java-client' - include 'sample-app' \ No newline at end of file diff --git a/src/main/java/com/merge/api/accounting/types/AccountAccountTypeEnum.java b/src/main/java/com/merge/api/accounting/types/AccountAccountTypeEnum.java index c17da9be1..931d7a3a0 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountAccountTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/AccountAccountTypeEnum.java @@ -3,44 +3,204 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountAccountTypeEnum { - BANK("BANK"), +public final class AccountAccountTypeEnum { + public static final AccountAccountTypeEnum OTHER_ASSET = + new AccountAccountTypeEnum(Value.OTHER_ASSET, "OTHER_ASSET"); - CREDIT_CARD("CREDIT_CARD"), + public static final AccountAccountTypeEnum OTHER_INCOME = + new AccountAccountTypeEnum(Value.OTHER_INCOME, "OTHER_INCOME"); - ACCOUNTS_PAYABLE("ACCOUNTS_PAYABLE"), + public static final AccountAccountTypeEnum FIXED_ASSET = + new AccountAccountTypeEnum(Value.FIXED_ASSET, "FIXED_ASSET"); - ACCOUNTS_RECEIVABLE("ACCOUNTS_RECEIVABLE"), + public static final AccountAccountTypeEnum OTHER_CURRENT_ASSET = + new AccountAccountTypeEnum(Value.OTHER_CURRENT_ASSET, "OTHER_CURRENT_ASSET"); - FIXED_ASSET("FIXED_ASSET"), + public static final AccountAccountTypeEnum LONG_TERM_LIABILITY = + new AccountAccountTypeEnum(Value.LONG_TERM_LIABILITY, "LONG_TERM_LIABILITY"); - OTHER_ASSET("OTHER_ASSET"), + public static final AccountAccountTypeEnum OTHER_CURRENT_LIABILITY = + new AccountAccountTypeEnum(Value.OTHER_CURRENT_LIABILITY, "OTHER_CURRENT_LIABILITY"); - OTHER_CURRENT_ASSET("OTHER_CURRENT_ASSET"), + public static final AccountAccountTypeEnum OTHER_EXPENSE = + new AccountAccountTypeEnum(Value.OTHER_EXPENSE, "OTHER_EXPENSE"); - OTHER_EXPENSE("OTHER_EXPENSE"), + public static final AccountAccountTypeEnum NON_POSTING = + new AccountAccountTypeEnum(Value.NON_POSTING, "NON_POSTING"); - OTHER_INCOME("OTHER_INCOME"), + public static final AccountAccountTypeEnum ACCOUNTS_PAYABLE = + new AccountAccountTypeEnum(Value.ACCOUNTS_PAYABLE, "ACCOUNTS_PAYABLE"); - COST_OF_GOODS_SOLD("COST_OF_GOODS_SOLD"), + public static final AccountAccountTypeEnum COST_OF_GOODS_SOLD = + new AccountAccountTypeEnum(Value.COST_OF_GOODS_SOLD, "COST_OF_GOODS_SOLD"); - OTHER_CURRENT_LIABILITY("OTHER_CURRENT_LIABILITY"), + public static final AccountAccountTypeEnum BANK = new AccountAccountTypeEnum(Value.BANK, "BANK"); - LONG_TERM_LIABILITY("LONG_TERM_LIABILITY"), + public static final AccountAccountTypeEnum CREDIT_CARD = + new AccountAccountTypeEnum(Value.CREDIT_CARD, "CREDIT_CARD"); - NON_POSTING("NON_POSTING"); + public static final AccountAccountTypeEnum ACCOUNTS_RECEIVABLE = + new AccountAccountTypeEnum(Value.ACCOUNTS_RECEIVABLE, "ACCOUNTS_RECEIVABLE"); - private final String value; + private final Value value; - AccountAccountTypeEnum(String value) { + private final String string; + + AccountAccountTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountAccountTypeEnum + && this.string.equals(((AccountAccountTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OTHER_ASSET: + return visitor.visitOtherAsset(); + case OTHER_INCOME: + return visitor.visitOtherIncome(); + case FIXED_ASSET: + return visitor.visitFixedAsset(); + case OTHER_CURRENT_ASSET: + return visitor.visitOtherCurrentAsset(); + case LONG_TERM_LIABILITY: + return visitor.visitLongTermLiability(); + case OTHER_CURRENT_LIABILITY: + return visitor.visitOtherCurrentLiability(); + case OTHER_EXPENSE: + return visitor.visitOtherExpense(); + case NON_POSTING: + return visitor.visitNonPosting(); + case ACCOUNTS_PAYABLE: + return visitor.visitAccountsPayable(); + case COST_OF_GOODS_SOLD: + return visitor.visitCostOfGoodsSold(); + case BANK: + return visitor.visitBank(); + case CREDIT_CARD: + return visitor.visitCreditCard(); + case ACCOUNTS_RECEIVABLE: + return visitor.visitAccountsReceivable(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountAccountTypeEnum valueOf(String value) { + switch (value) { + case "OTHER_ASSET": + return OTHER_ASSET; + case "OTHER_INCOME": + return OTHER_INCOME; + case "FIXED_ASSET": + return FIXED_ASSET; + case "OTHER_CURRENT_ASSET": + return OTHER_CURRENT_ASSET; + case "LONG_TERM_LIABILITY": + return LONG_TERM_LIABILITY; + case "OTHER_CURRENT_LIABILITY": + return OTHER_CURRENT_LIABILITY; + case "OTHER_EXPENSE": + return OTHER_EXPENSE; + case "NON_POSTING": + return NON_POSTING; + case "ACCOUNTS_PAYABLE": + return ACCOUNTS_PAYABLE; + case "COST_OF_GOODS_SOLD": + return COST_OF_GOODS_SOLD; + case "BANK": + return BANK; + case "CREDIT_CARD": + return CREDIT_CARD; + case "ACCOUNTS_RECEIVABLE": + return ACCOUNTS_RECEIVABLE; + default: + return new AccountAccountTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + BANK, + + CREDIT_CARD, + + ACCOUNTS_PAYABLE, + + ACCOUNTS_RECEIVABLE, + + FIXED_ASSET, + + OTHER_ASSET, + + OTHER_CURRENT_ASSET, + + OTHER_EXPENSE, + + OTHER_INCOME, + + COST_OF_GOODS_SOLD, + + OTHER_CURRENT_LIABILITY, + + LONG_TERM_LIABILITY, + + NON_POSTING, + + UNKNOWN + } + + public interface Visitor { + T visitBank(); + + T visitCreditCard(); + + T visitAccountsPayable(); + + T visitAccountsReceivable(); + + T visitFixedAsset(); + + T visitOtherAsset(); + + T visitOtherCurrentAsset(); + + T visitOtherExpense(); + + T visitOtherIncome(); + + T visitCostOfGoodsSold(); + + T visitOtherCurrentLiability(); + + T visitLongTermLiability(); + + T visitNonPosting(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/accounting/types/AccountDetailsAndActionsStatusEnum.java index d8031d53d..30121617a 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountStatusEnum.java b/src/main/java/com/merge/api/accounting/types/AccountStatusEnum.java index c0655b291..284373f51 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/AccountStatusEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountStatusEnum { - ACTIVE("ACTIVE"), +public final class AccountStatusEnum { + public static final AccountStatusEnum ACTIVE = new AccountStatusEnum(Value.ACTIVE, "ACTIVE"); - PENDING("PENDING"), + public static final AccountStatusEnum PENDING = new AccountStatusEnum(Value.PENDING, "PENDING"); - INACTIVE("INACTIVE"); + public static final AccountStatusEnum INACTIVE = new AccountStatusEnum(Value.INACTIVE, "INACTIVE"); - private final String value; + private final Value value; - AccountStatusEnum(String value) { + private final String string; + + AccountStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountStatusEnum && this.string.equals(((AccountStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVE: + return visitor.visitActive(); + case PENDING: + return visitor.visitPending(); + case INACTIVE: + return visitor.visitInactive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountStatusEnum valueOf(String value) { + switch (value) { + case "ACTIVE": + return ACTIVE; + case "PENDING": + return PENDING; + case "INACTIVE": + return INACTIVE; + default: + return new AccountStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + PENDING, + + INACTIVE, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitPending(); + + T visitInactive(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountsListRequestRemoteFields.java b/src/main/java/com/merge/api/accounting/types/AccountsListRequestRemoteFields.java index 35aa1fb6c..ad82c7731 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/accounting/types/AccountsListRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountsListRequestRemoteFields { - CLASSIFICATION("classification"), +public final class AccountsListRequestRemoteFields { + public static final AccountsListRequestRemoteFields STATUS = + new AccountsListRequestRemoteFields(Value.STATUS, "status"); - CLASSIFICATION_STATUS("classification,status"), + public static final AccountsListRequestRemoteFields CLASSIFICATION = + new AccountsListRequestRemoteFields(Value.CLASSIFICATION, "classification"); - STATUS("status"); + public static final AccountsListRequestRemoteFields CLASSIFICATION_STATUS = + new AccountsListRequestRemoteFields(Value.CLASSIFICATION_STATUS, "classification,status"); - private final String value; + private final Value value; - AccountsListRequestRemoteFields(String value) { + private final String string; + + AccountsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountsListRequestRemoteFields + && this.string.equals(((AccountsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case CLASSIFICATION: + return visitor.visitClassification(); + case CLASSIFICATION_STATUS: + return visitor.visitClassificationStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "classification": + return CLASSIFICATION; + case "classification,status": + return CLASSIFICATION_STATUS; + default: + return new AccountsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + CLASSIFICATION, + + CLASSIFICATION_STATUS, + + STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitClassification(); + + T visitClassificationStatus(); + + T visitStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/accounting/types/AccountsListRequestShowEnumOrigins.java index 4fcc7cbf9..55901558c 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/accounting/types/AccountsListRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountsListRequestShowEnumOrigins { - CLASSIFICATION("classification"), +public final class AccountsListRequestShowEnumOrigins { + public static final AccountsListRequestShowEnumOrigins STATUS = + new AccountsListRequestShowEnumOrigins(Value.STATUS, "status"); - CLASSIFICATION_STATUS("classification,status"), + public static final AccountsListRequestShowEnumOrigins CLASSIFICATION = + new AccountsListRequestShowEnumOrigins(Value.CLASSIFICATION, "classification"); - STATUS("status"); + public static final AccountsListRequestShowEnumOrigins CLASSIFICATION_STATUS = + new AccountsListRequestShowEnumOrigins(Value.CLASSIFICATION_STATUS, "classification,status"); - private final String value; + private final Value value; - AccountsListRequestShowEnumOrigins(String value) { + private final String string; + + AccountsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountsListRequestShowEnumOrigins + && this.string.equals(((AccountsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case CLASSIFICATION: + return visitor.visitClassification(); + case CLASSIFICATION_STATUS: + return visitor.visitClassificationStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "classification": + return CLASSIFICATION; + case "classification,status": + return CLASSIFICATION_STATUS; + default: + return new AccountsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + CLASSIFICATION, + + CLASSIFICATION_STATUS, + + STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitClassification(); + + T visitClassificationStatus(); + + T visitStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestRemoteFields.java index 4ed214930..15f594a69 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountsRetrieveRequestRemoteFields { - CLASSIFICATION("classification"), +public final class AccountsRetrieveRequestRemoteFields { + public static final AccountsRetrieveRequestRemoteFields STATUS = + new AccountsRetrieveRequestRemoteFields(Value.STATUS, "status"); - CLASSIFICATION_STATUS("classification,status"), + public static final AccountsRetrieveRequestRemoteFields CLASSIFICATION = + new AccountsRetrieveRequestRemoteFields(Value.CLASSIFICATION, "classification"); - STATUS("status"); + public static final AccountsRetrieveRequestRemoteFields CLASSIFICATION_STATUS = + new AccountsRetrieveRequestRemoteFields(Value.CLASSIFICATION_STATUS, "classification,status"); - private final String value; + private final Value value; - AccountsRetrieveRequestRemoteFields(String value) { + private final String string; + + AccountsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountsRetrieveRequestRemoteFields + && this.string.equals(((AccountsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case CLASSIFICATION: + return visitor.visitClassification(); + case CLASSIFICATION_STATUS: + return visitor.visitClassificationStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "classification": + return CLASSIFICATION; + case "classification,status": + return CLASSIFICATION_STATUS; + default: + return new AccountsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + CLASSIFICATION, + + CLASSIFICATION_STATUS, + + STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitClassification(); + + T visitClassificationStatus(); + + T visitStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestShowEnumOrigins.java index cad0c1f03..2ae17f4e7 100644 --- a/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/accounting/types/AccountsRetrieveRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountsRetrieveRequestShowEnumOrigins { - CLASSIFICATION("classification"), +public final class AccountsRetrieveRequestShowEnumOrigins { + public static final AccountsRetrieveRequestShowEnumOrigins STATUS = + new AccountsRetrieveRequestShowEnumOrigins(Value.STATUS, "status"); - CLASSIFICATION_STATUS("classification,status"), + public static final AccountsRetrieveRequestShowEnumOrigins CLASSIFICATION = + new AccountsRetrieveRequestShowEnumOrigins(Value.CLASSIFICATION, "classification"); - STATUS("status"); + public static final AccountsRetrieveRequestShowEnumOrigins CLASSIFICATION_STATUS = + new AccountsRetrieveRequestShowEnumOrigins(Value.CLASSIFICATION_STATUS, "classification,status"); - private final String value; + private final Value value; - AccountsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + AccountsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountsRetrieveRequestShowEnumOrigins + && this.string.equals(((AccountsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case CLASSIFICATION: + return visitor.visitClassification(); + case CLASSIFICATION_STATUS: + return visitor.visitClassificationStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "classification": + return CLASSIFICATION; + case "classification,status": + return CLASSIFICATION_STATUS; + default: + return new AccountsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + CLASSIFICATION, + + CLASSIFICATION_STATUS, + + STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitClassification(); + + T visitClassificationStatus(); + + T visitStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AddressTypeEnum.java b/src/main/java/com/merge/api/accounting/types/AddressTypeEnum.java index b0ab9679e..81834d627 100644 --- a/src/main/java/com/merge/api/accounting/types/AddressTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/AddressTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AddressTypeEnum { - BILLING("BILLING"), +public final class AddressTypeEnum { + public static final AddressTypeEnum BILLING = new AddressTypeEnum(Value.BILLING, "BILLING"); - SHIPPING("SHIPPING"); + public static final AddressTypeEnum SHIPPING = new AddressTypeEnum(Value.SHIPPING, "SHIPPING"); - private final String value; + private final Value value; - AddressTypeEnum(String value) { + private final String string; + + AddressTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AddressTypeEnum && this.string.equals(((AddressTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BILLING: + return visitor.visitBilling(); + case SHIPPING: + return visitor.visitShipping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AddressTypeEnum valueOf(String value) { + switch (value) { + case "BILLING": + return BILLING; + case "SHIPPING": + return SHIPPING; + default: + return new AddressTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + BILLING, + + SHIPPING, + + UNKNOWN + } + + public interface Visitor { + T visitBilling(); + + T visitShipping(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/AsyncPostTaskStatusEnum.java b/src/main/java/com/merge/api/accounting/types/AsyncPostTaskStatusEnum.java index 10a66d9ed..b95d9c63b 100644 --- a/src/main/java/com/merge/api/accounting/types/AsyncPostTaskStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/AsyncPostTaskStatusEnum.java @@ -3,26 +3,103 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AsyncPostTaskStatusEnum { - QUEUED("QUEUED"), +public final class AsyncPostTaskStatusEnum { + public static final AsyncPostTaskStatusEnum IN_PROGRESS = + new AsyncPostTaskStatusEnum(Value.IN_PROGRESS, "IN_PROGRESS"); - IN_PROGRESS("IN_PROGRESS"), + public static final AsyncPostTaskStatusEnum QUEUED = new AsyncPostTaskStatusEnum(Value.QUEUED, "QUEUED"); - COMPLETED("COMPLETED"), + public static final AsyncPostTaskStatusEnum FAILURE = new AsyncPostTaskStatusEnum(Value.FAILURE, "FAILURE"); - FAILURE("FAILURE"); + public static final AsyncPostTaskStatusEnum COMPLETED = new AsyncPostTaskStatusEnum(Value.COMPLETED, "COMPLETED"); - private final String value; + private final Value value; - AsyncPostTaskStatusEnum(String value) { + private final String string; + + AsyncPostTaskStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AsyncPostTaskStatusEnum + && this.string.equals(((AsyncPostTaskStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_PROGRESS: + return visitor.visitInProgress(); + case QUEUED: + return visitor.visitQueued(); + case FAILURE: + return visitor.visitFailure(); + case COMPLETED: + return visitor.visitCompleted(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AsyncPostTaskStatusEnum valueOf(String value) { + switch (value) { + case "IN_PROGRESS": + return IN_PROGRESS; + case "QUEUED": + return QUEUED; + case "FAILURE": + return FAILURE; + case "COMPLETED": + return COMPLETED; + default: + return new AsyncPostTaskStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + QUEUED, + + IN_PROGRESS, + + COMPLETED, + + FAILURE, + + UNKNOWN + } + + public interface Visitor { + T visitQueued(); + + T visitInProgress(); + + T visitCompleted(); + + T visitFailure(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/BankFeedAccountAccountTypeEnum.java b/src/main/java/com/merge/api/accounting/types/BankFeedAccountAccountTypeEnum.java index bbe749b91..00ae70e56 100644 --- a/src/main/java/com/merge/api/accounting/types/BankFeedAccountAccountTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/BankFeedAccountAccountTypeEnum.java @@ -3,22 +3,83 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum BankFeedAccountAccountTypeEnum { - BANK("BANK"), +public final class BankFeedAccountAccountTypeEnum { + public static final BankFeedAccountAccountTypeEnum BANK = new BankFeedAccountAccountTypeEnum(Value.BANK, "BANK"); - CREDIT_CARD("CREDIT_CARD"); + public static final BankFeedAccountAccountTypeEnum CREDIT_CARD = + new BankFeedAccountAccountTypeEnum(Value.CREDIT_CARD, "CREDIT_CARD"); - private final String value; + private final Value value; - BankFeedAccountAccountTypeEnum(String value) { + private final String string; + + BankFeedAccountAccountTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof BankFeedAccountAccountTypeEnum + && this.string.equals(((BankFeedAccountAccountTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BANK: + return visitor.visitBank(); + case CREDIT_CARD: + return visitor.visitCreditCard(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static BankFeedAccountAccountTypeEnum valueOf(String value) { + switch (value) { + case "BANK": + return BANK; + case "CREDIT_CARD": + return CREDIT_CARD; + default: + return new BankFeedAccountAccountTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + BANK, + + CREDIT_CARD, + + UNKNOWN + } + + public interface Visitor { + T visitBank(); + + T visitCreditCard(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CategoriesEnum.java b/src/main/java/com/merge/api/accounting/types/CategoriesEnum.java index 29381dd71..dddcf89d1 100644 --- a/src/main/java/com/merge/api/accounting/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CategoryEnum.java b/src/main/java/com/merge/api/accounting/types/CategoryEnum.java index 84f25e4ef..84b5677df 100644 --- a/src/main/java/com/merge/api/accounting/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CategoryTypeEnum.java b/src/main/java/com/merge/api/accounting/types/CategoryTypeEnum.java index 1f59b9f04..054b3aedb 100644 --- a/src/main/java/com/merge/api/accounting/types/CategoryTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CategoryTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryTypeEnum { - CLASS("CLASS"), +public final class CategoryTypeEnum { + public static final CategoryTypeEnum CLASS = new CategoryTypeEnum(Value.CLASS, "CLASS"); - DEPARTMENT("DEPARTMENT"); + public static final CategoryTypeEnum DEPARTMENT = new CategoryTypeEnum(Value.DEPARTMENT, "DEPARTMENT"); - private final String value; + private final Value value; - CategoryTypeEnum(String value) { + private final String string; + + CategoryTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoryTypeEnum && this.string.equals(((CategoryTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLASS: + return visitor.visitClass(); + case DEPARTMENT: + return visitor.visitDepartment(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryTypeEnum valueOf(String value) { + switch (value) { + case "CLASS": + return CLASS; + case "DEPARTMENT": + return DEPARTMENT; + default: + return new CategoryTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CLASS, + + DEPARTMENT, + + UNKNOWN + } + + public interface Visitor { + T visitClass(); + + T visitDepartment(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ClassificationEnum.java b/src/main/java/com/merge/api/accounting/types/ClassificationEnum.java index f36992029..df6b88dbc 100644 --- a/src/main/java/com/merge/api/accounting/types/ClassificationEnum.java +++ b/src/main/java/com/merge/api/accounting/types/ClassificationEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ClassificationEnum { - ASSET("ASSET"), +public final class ClassificationEnum { + public static final ClassificationEnum EXPENSE = new ClassificationEnum(Value.EXPENSE, "EXPENSE"); - EQUITY("EQUITY"), + public static final ClassificationEnum ASSET = new ClassificationEnum(Value.ASSET, "ASSET"); - EXPENSE("EXPENSE"), + public static final ClassificationEnum REVENUE = new ClassificationEnum(Value.REVENUE, "REVENUE"); - LIABILITY("LIABILITY"), + public static final ClassificationEnum EQUITY = new ClassificationEnum(Value.EQUITY, "EQUITY"); - REVENUE("REVENUE"); + public static final ClassificationEnum LIABILITY = new ClassificationEnum(Value.LIABILITY, "LIABILITY"); - private final String value; + private final Value value; - ClassificationEnum(String value) { + private final String string; + + ClassificationEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ClassificationEnum && this.string.equals(((ClassificationEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EXPENSE: + return visitor.visitExpense(); + case ASSET: + return visitor.visitAsset(); + case REVENUE: + return visitor.visitRevenue(); + case EQUITY: + return visitor.visitEquity(); + case LIABILITY: + return visitor.visitLiability(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ClassificationEnum valueOf(String value) { + switch (value) { + case "EXPENSE": + return EXPENSE; + case "ASSET": + return ASSET; + case "REVENUE": + return REVENUE; + case "EQUITY": + return EQUITY; + case "LIABILITY": + return LIABILITY; + default: + return new ClassificationEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ASSET, + + EQUITY, + + EXPENSE, + + LIABILITY, + + REVENUE, + + UNKNOWN + } + + public interface Visitor { + T visitAsset(); + + T visitEquity(); + + T visitExpense(); + + T visitLiability(); + + T visitRevenue(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CompanyInfoListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/CompanyInfoListRequestExpandItem.java index 4e4ea4cd1..49272b715 100644 --- a/src/main/java/com/merge/api/accounting/types/CompanyInfoListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/CompanyInfoListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CompanyInfoListRequestExpandItem { - ADDRESSES("addresses"), +public final class CompanyInfoListRequestExpandItem { + public static final CompanyInfoListRequestExpandItem ADDRESSES = + new CompanyInfoListRequestExpandItem(Value.ADDRESSES, "addresses"); - PHONE_NUMBERS("phone_numbers"); + public static final CompanyInfoListRequestExpandItem PHONE_NUMBERS = + new CompanyInfoListRequestExpandItem(Value.PHONE_NUMBERS, "phone_numbers"); - private final String value; + private final Value value; - CompanyInfoListRequestExpandItem(String value) { + private final String string; + + CompanyInfoListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CompanyInfoListRequestExpandItem + && this.string.equals(((CompanyInfoListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ADDRESSES: + return visitor.visitAddresses(); + case PHONE_NUMBERS: + return visitor.visitPhoneNumbers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CompanyInfoListRequestExpandItem valueOf(String value) { + switch (value) { + case "addresses": + return ADDRESSES; + case "phone_numbers": + return PHONE_NUMBERS; + default: + return new CompanyInfoListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ADDRESSES, + + PHONE_NUMBERS, + + UNKNOWN + } + + public interface Visitor { + T visitAddresses(); + + T visitPhoneNumbers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CompanyInfoRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/CompanyInfoRetrieveRequestExpandItem.java index 7cf0c2ebe..12f440ed7 100644 --- a/src/main/java/com/merge/api/accounting/types/CompanyInfoRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/CompanyInfoRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CompanyInfoRetrieveRequestExpandItem { - ADDRESSES("addresses"), +public final class CompanyInfoRetrieveRequestExpandItem { + public static final CompanyInfoRetrieveRequestExpandItem ADDRESSES = + new CompanyInfoRetrieveRequestExpandItem(Value.ADDRESSES, "addresses"); - PHONE_NUMBERS("phone_numbers"); + public static final CompanyInfoRetrieveRequestExpandItem PHONE_NUMBERS = + new CompanyInfoRetrieveRequestExpandItem(Value.PHONE_NUMBERS, "phone_numbers"); - private final String value; + private final Value value; - CompanyInfoRetrieveRequestExpandItem(String value) { + private final String string; + + CompanyInfoRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CompanyInfoRetrieveRequestExpandItem + && this.string.equals(((CompanyInfoRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ADDRESSES: + return visitor.visitAddresses(); + case PHONE_NUMBERS: + return visitor.visitPhoneNumbers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CompanyInfoRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "addresses": + return ADDRESSES; + case "phone_numbers": + return PHONE_NUMBERS; + default: + return new CompanyInfoRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ADDRESSES, + + PHONE_NUMBERS, + + UNKNOWN + } + + public interface Visitor { + T visitAddresses(); + + T visitPhoneNumbers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ComponentTypeEnum.java b/src/main/java/com/merge/api/accounting/types/ComponentTypeEnum.java index 53a7fc22e..59712310f 100644 --- a/src/main/java/com/merge/api/accounting/types/ComponentTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/ComponentTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ComponentTypeEnum { - SALES("SALES"), +public final class ComponentTypeEnum { + public static final ComponentTypeEnum SALES = new ComponentTypeEnum(Value.SALES, "SALES"); - PURCHASE("PURCHASE"); + public static final ComponentTypeEnum PURCHASE = new ComponentTypeEnum(Value.PURCHASE, "PURCHASE"); - private final String value; + private final Value value; - ComponentTypeEnum(String value) { + private final String string; + + ComponentTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ComponentTypeEnum && this.string.equals(((ComponentTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SALES: + return visitor.visitSales(); + case PURCHASE: + return visitor.visitPurchase(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ComponentTypeEnum valueOf(String value) { + switch (value) { + case "SALES": + return SALES; + case "PURCHASE": + return PURCHASE; + default: + return new ComponentTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SALES, + + PURCHASE, + + UNKNOWN + } + + public interface Visitor { + T visitSales(); + + T visitPurchase(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ContactsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ContactsListRequestExpandItem.java index b70df6171..13f4c80bd 100644 --- a/src/main/java/com/merge/api/accounting/types/ContactsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ContactsListRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ContactsListRequestExpandItem { - ADDRESSES("addresses"), +public final class ContactsListRequestExpandItem { + public static final ContactsListRequestExpandItem ADDRESSES = + new ContactsListRequestExpandItem(Value.ADDRESSES, "addresses"); - COMPANY("company"), + public static final ContactsListRequestExpandItem PHONE_NUMBERS = + new ContactsListRequestExpandItem(Value.PHONE_NUMBERS, "phone_numbers"); - PHONE_NUMBERS("phone_numbers"); + public static final ContactsListRequestExpandItem COMPANY = + new ContactsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ContactsListRequestExpandItem(String value) { + private final String string; + + ContactsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ContactsListRequestExpandItem + && this.string.equals(((ContactsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ADDRESSES: + return visitor.visitAddresses(); + case PHONE_NUMBERS: + return visitor.visitPhoneNumbers(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ContactsListRequestExpandItem valueOf(String value) { + switch (value) { + case "addresses": + return ADDRESSES; + case "phone_numbers": + return PHONE_NUMBERS; + case "company": + return COMPANY; + default: + return new ContactsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ADDRESSES, + + COMPANY, + + PHONE_NUMBERS, + + UNKNOWN + } + + public interface Visitor { + T visitAddresses(); + + T visitCompany(); + + T visitPhoneNumbers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ContactsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ContactsRetrieveRequestExpandItem.java index 24f98dce9..3b21d7895 100644 --- a/src/main/java/com/merge/api/accounting/types/ContactsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ContactsRetrieveRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ContactsRetrieveRequestExpandItem { - ADDRESSES("addresses"), +public final class ContactsRetrieveRequestExpandItem { + public static final ContactsRetrieveRequestExpandItem ADDRESSES = + new ContactsRetrieveRequestExpandItem(Value.ADDRESSES, "addresses"); - COMPANY("company"), + public static final ContactsRetrieveRequestExpandItem PHONE_NUMBERS = + new ContactsRetrieveRequestExpandItem(Value.PHONE_NUMBERS, "phone_numbers"); - PHONE_NUMBERS("phone_numbers"); + public static final ContactsRetrieveRequestExpandItem COMPANY = + new ContactsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ContactsRetrieveRequestExpandItem(String value) { + private final String string; + + ContactsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ContactsRetrieveRequestExpandItem + && this.string.equals(((ContactsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ADDRESSES: + return visitor.visitAddresses(); + case PHONE_NUMBERS: + return visitor.visitPhoneNumbers(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ContactsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "addresses": + return ADDRESSES; + case "phone_numbers": + return PHONE_NUMBERS; + case "company": + return COMPANY; + default: + return new ContactsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ADDRESSES, + + COMPANY, + + PHONE_NUMBERS, + + UNKNOWN + } + + public interface Visitor { + T visitAddresses(); + + T visitCompany(); + + T visitPhoneNumbers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CountryEnum.java b/src/main/java/com/merge/api/accounting/types/CountryEnum.java index b7949de73..7033d6f60 100644 --- a/src/main/java/com/merge/api/accounting/types/CountryEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CountryEnum.java @@ -3,516 +3,2550 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CountryEnum { - AF("AF"), +public final class CountryEnum { + public static final CountryEnum IL = new CountryEnum(Value.IL, "IL"); - AX("AX"), + public static final CountryEnum LI = new CountryEnum(Value.LI, "LI"); - AL("AL"), + public static final CountryEnum BH = new CountryEnum(Value.BH, "BH"); - DZ("DZ"), + public static final CountryEnum MW = new CountryEnum(Value.MW, "MW"); - AS("AS"), + public static final CountryEnum CV = new CountryEnum(Value.CV, "CV"); - AD("AD"), + public static final CountryEnum EE = new CountryEnum(Value.EE, "EE"); - AO("AO"), + public static final CountryEnum PT = new CountryEnum(Value.PT, "PT"); - AI("AI"), + public static final CountryEnum VN = new CountryEnum(Value.VN, "VN"); - AQ("AQ"), + public static final CountryEnum BL = new CountryEnum(Value.BL, "BL"); - AG("AG"), + public static final CountryEnum CZ = new CountryEnum(Value.CZ, "CZ"); - AR("AR"), + public static final CountryEnum IT = new CountryEnum(Value.IT, "IT"); - AM("AM"), + public static final CountryEnum SY = new CountryEnum(Value.SY, "SY"); - AW("AW"), + public static final CountryEnum KG = new CountryEnum(Value.KG, "KG"); - AU("AU"), + public static final CountryEnum BT = new CountryEnum(Value.BT, "BT"); - AT("AT"), + public static final CountryEnum ID = new CountryEnum(Value.ID, "ID"); - AZ("AZ"), + public static final CountryEnum QA = new CountryEnum(Value.QA, "QA"); - BS("BS"), + public static final CountryEnum HN = new CountryEnum(Value.HN, "HN"); - BH("BH"), + public static final CountryEnum LA = new CountryEnum(Value.LA, "LA"); - BD("BD"), + public static final CountryEnum CN = new CountryEnum(Value.CN, "CN"); - BB("BB"), + public static final CountryEnum ZM = new CountryEnum(Value.ZM, "ZM"); - BY("BY"), + public static final CountryEnum FK = new CountryEnum(Value.FK, "FK"); - BE("BE"), + public static final CountryEnum TW = new CountryEnum(Value.TW, "TW"); - BZ("BZ"), + public static final CountryEnum HR = new CountryEnum(Value.HR, "HR"); - BJ("BJ"), + public static final CountryEnum CR = new CountryEnum(Value.CR, "CR"); - BM("BM"), + public static final CountryEnum FO = new CountryEnum(Value.FO, "FO"); - BT("BT"), + public static final CountryEnum NL = new CountryEnum(Value.NL, "NL"); - BO("BO"), + public static final CountryEnum AO = new CountryEnum(Value.AO, "AO"); - BQ("BQ"), + public static final CountryEnum DK = new CountryEnum(Value.DK, "DK"); - BA("BA"), + public static final CountryEnum GI = new CountryEnum(Value.GI, "GI"); - BW("BW"), + public static final CountryEnum JE = new CountryEnum(Value.JE, "JE"); - BV("BV"), + public static final CountryEnum AS = new CountryEnum(Value.AS, "AS"); - BR("BR"), + public static final CountryEnum MC = new CountryEnum(Value.MC, "MC"); - IO("IO"), + public static final CountryEnum GM = new CountryEnum(Value.GM, "GM"); - BN("BN"), + public static final CountryEnum KW = new CountryEnum(Value.KW, "KW"); - BG("BG"), + public static final CountryEnum AW = new CountryEnum(Value.AW, "AW"); - BF("BF"), + public static final CountryEnum MG = new CountryEnum(Value.MG, "MG"); - BI("BI"), + public static final CountryEnum GQ = new CountryEnum(Value.GQ, "GQ"); - CV("CV"), + public static final CountryEnum JM = new CountryEnum(Value.JM, "JM"); - KH("KH"), + public static final CountryEnum SA = new CountryEnum(Value.SA, "SA"); - CM("CM"), + public static final CountryEnum MK = new CountryEnum(Value.MK, "MK"); - CA("CA"), + public static final CountryEnum KH = new CountryEnum(Value.KH, "KH"); - KY("KY"), + public static final CountryEnum GU = new CountryEnum(Value.GU, "GU"); - CF("CF"), + public static final CountryEnum SE = new CountryEnum(Value.SE, "SE"); - TD("TD"), + public static final CountryEnum ER = new CountryEnum(Value.ER, "ER"); - CL("CL"), + public static final CountryEnum MO = new CountryEnum(Value.MO, "MO"); - CN("CN"), + public static final CountryEnum FJ = new CountryEnum(Value.FJ, "FJ"); - CX("CX"), + public static final CountryEnum GY = new CountryEnum(Value.GY, "GY"); - CC("CC"), + public static final CountryEnum SI = new CountryEnum(Value.SI, "SI"); - CO("CO"), + public static final CountryEnum WS = new CountryEnum(Value.WS, "WS"); - KM("KM"), + public static final CountryEnum BD = new CountryEnum(Value.BD, "BD"); - CG("CG"), + public static final CountryEnum MS = new CountryEnum(Value.MS, "MS"); - CD("CD"), + public static final CountryEnum KP = new CountryEnum(Value.KP, "KP"); - CK("CK"), + public static final CountryEnum SM = new CountryEnum(Value.SM, "SM"); - CR("CR"), + public static final CountryEnum MV = new CountryEnum(Value.MV, "MV"); - CI("CI"), + public static final CountryEnum IM = new CountryEnum(Value.IM, "IM"); - HR("HR"), + public static final CountryEnum PS = new CountryEnum(Value.PS, "PS"); - CU("CU"), + public static final CountryEnum BI = new CountryEnum(Value.BI, "BI"); - CW("CW"), + public static final CountryEnum IO = new CountryEnum(Value.IO, "IO"); - CY("CY"), + public static final CountryEnum CW = new CountryEnum(Value.CW, "CW"); - CZ("CZ"), + public static final CountryEnum SR = new CountryEnum(Value.SR, "SR"); - DK("DK"), + public static final CountryEnum CY = new CountryEnum(Value.CY, "CY"); - DJ("DJ"), + public static final CountryEnum UA = new CountryEnum(Value.UA, "UA"); - DM("DM"), + public static final CountryEnum EH = new CountryEnum(Value.EH, "EH"); - DO("DO"), + public static final CountryEnum ST = new CountryEnum(Value.ST, "ST"); - EC("EC"), + public static final CountryEnum OM = new CountryEnum(Value.OM, "OM"); - EG("EG"), + public static final CountryEnum BQ = new CountryEnum(Value.BQ, "BQ"); - SV("SV"), + public static final CountryEnum AZ = new CountryEnum(Value.AZ, "AZ"); - GQ("GQ"), + public static final CountryEnum SB = new CountryEnum(Value.SB, "SB"); - ER("ER"), + public static final CountryEnum JO = new CountryEnum(Value.JO, "JO"); - EE("EE"), + public static final CountryEnum LT = new CountryEnum(Value.LT, "LT"); - SZ("SZ"), + public static final CountryEnum ML = new CountryEnum(Value.ML, "ML"); - ET("ET"), + public static final CountryEnum SD = new CountryEnum(Value.SD, "SD"); - FK("FK"), + public static final CountryEnum VA = new CountryEnum(Value.VA, "VA"); - FO("FO"), + public static final CountryEnum LV = new CountryEnum(Value.LV, "LV"); - FJ("FJ"), + public static final CountryEnum MN = new CountryEnum(Value.MN, "MN"); - FI("FI"), + public static final CountryEnum PK = new CountryEnum(Value.PK, "PK"); - FR("FR"), + public static final CountryEnum VC = new CountryEnum(Value.VC, "VC"); - GF("GF"), + public static final CountryEnum AI = new CountryEnum(Value.AI, "AI"); - PF("PF"), + public static final CountryEnum GA = new CountryEnum(Value.GA, "GA"); - TF("TF"), + public static final CountryEnum BA = new CountryEnum(Value.BA, "BA"); - GA("GA"), + public static final CountryEnum PM = new CountryEnum(Value.PM, "PM"); - GM("GM"), + public static final CountryEnum SJ = new CountryEnum(Value.SJ, "SJ"); - GE("GE"), + public static final CountryEnum DJ = new CountryEnum(Value.DJ, "DJ"); - DE("DE"), + public static final CountryEnum MT = new CountryEnum(Value.MT, "MT"); - GH("GH"), + public static final CountryEnum SL = new CountryEnum(Value.SL, "SL"); - GI("GI"), + public static final CountryEnum VI = new CountryEnum(Value.VI, "VI"); - GR("GR"), + public static final CountryEnum GG = new CountryEnum(Value.GG, "GG"); - GL("GL"), + public static final CountryEnum GH = new CountryEnum(Value.GH, "GH"); - GD("GD"), + public static final CountryEnum AQ = new CountryEnum(Value.AQ, "AQ"); - GP("GP"), + public static final CountryEnum AR = new CountryEnum(Value.AR, "AR"); - GU("GU"), + public static final CountryEnum CA = new CountryEnum(Value.CA, "CA"); - GT("GT"), + public static final CountryEnum ZA = new CountryEnum(Value.ZA, "ZA"); - GG("GG"), + public static final CountryEnum TJ = new CountryEnum(Value.TJ, "TJ"); - GN("GN"), + public static final CountryEnum ME = new CountryEnum(Value.ME, "ME"); - GW("GW"), + public static final CountryEnum TK = new CountryEnum(Value.TK, "TK"); - GY("GY"), + public static final CountryEnum MF = new CountryEnum(Value.MF, "MF"); - HT("HT"), + public static final CountryEnum UY = new CountryEnum(Value.UY, "UY"); - HM("HM"), + public static final CountryEnum UZ = new CountryEnum(Value.UZ, "UZ"); - VA("VA"), + public static final CountryEnum NU = new CountryEnum(Value.NU, "NU"); - HN("HN"), + public static final CountryEnum GP = new CountryEnum(Value.GP, "GP"); - HK("HK"), + public static final CountryEnum PE = new CountryEnum(Value.PE, "PE"); - HU("HU"), + public static final CountryEnum CI = new CountryEnum(Value.CI, "CI"); - IS("IS"), + public static final CountryEnum SC = new CountryEnum(Value.SC, "SC"); - IN("IN"), + public static final CountryEnum SZ = new CountryEnum(Value.SZ, "SZ"); - ID("ID"), + public static final CountryEnum LU = new CountryEnum(Value.LU, "LU"); - IR("IR"), + public static final CountryEnum TR = new CountryEnum(Value.TR, "TR"); - IQ("IQ"), + public static final CountryEnum MM = new CountryEnum(Value.MM, "MM"); - IE("IE"), + public static final CountryEnum NE = new CountryEnum(Value.NE, "NE"); - IM("IM"), + public static final CountryEnum GW = new CountryEnum(Value.GW, "GW"); - IL("IL"), + public static final CountryEnum PL = new CountryEnum(Value.PL, "PL"); - IT("IT"), + public static final CountryEnum BB = new CountryEnum(Value.BB, "BB"); - JM("JM"), + public static final CountryEnum BY = new CountryEnum(Value.BY, "BY"); - JP("JP"), + public static final CountryEnum RS = new CountryEnum(Value.RS, "RS"); - JE("JE"), + public static final CountryEnum KN = new CountryEnum(Value.KN, "KN"); - JO("JO"), + public static final CountryEnum SK = new CountryEnum(Value.SK, "SK"); - KZ("KZ"), + public static final CountryEnum TC = new CountryEnum(Value.TC, "TC"); - KE("KE"), + public static final CountryEnum TZ = new CountryEnum(Value.TZ, "TZ"); - KI("KI"), + public static final CountryEnum MU = new CountryEnum(Value.MU, "MU"); - KW("KW"), + public static final CountryEnum EC = new CountryEnum(Value.EC, "EC"); - KG("KG"), + public static final CountryEnum PR = new CountryEnum(Value.PR, "PR"); - LA("LA"), + public static final CountryEnum SO = new CountryEnum(Value.SO, "SO"); - LV("LV"), + public static final CountryEnum IN = new CountryEnum(Value.IN, "IN"); - LB("LB"), + public static final CountryEnum LK = new CountryEnum(Value.LK, "LK"); - LS("LS"), + public static final CountryEnum BJ = new CountryEnum(Value.BJ, "BJ"); - LR("LR"), + public static final CountryEnum MY = new CountryEnum(Value.MY, "MY"); - LY("LY"), + public static final CountryEnum CX = new CountryEnum(Value.CX, "CX"); - LI("LI"), + public static final CountryEnum ZW = new CountryEnum(Value.ZW, "ZW"); - LT("LT"), + public static final CountryEnum EG = new CountryEnum(Value.EG, "EG"); - LU("LU"), + public static final CountryEnum RE = new CountryEnum(Value.RE, "RE"); - MO("MO"), + public static final CountryEnum SS = new CountryEnum(Value.SS, "SS"); - MG("MG"), + public static final CountryEnum IR = new CountryEnum(Value.IR, "IR"); - MW("MW"), + public static final CountryEnum BN = new CountryEnum(Value.BN, "BN"); - MY("MY"), + public static final CountryEnum KE = new CountryEnum(Value.KE, "KE"); - MV("MV"), + public static final CountryEnum BR = new CountryEnum(Value.BR, "BR"); - ML("ML"), + public static final CountryEnum CL = new CountryEnum(Value.CL, "CL"); - MT("MT"), + public static final CountryEnum KI = new CountryEnum(Value.KI, "KI"); - MH("MH"), + public static final CountryEnum BV = new CountryEnum(Value.BV, "BV"); - MQ("MQ"), + public static final CountryEnum FI = new CountryEnum(Value.FI, "FI"); - MR("MR"), + public static final CountryEnum NF = new CountryEnum(Value.NF, "NF"); - MU("MU"), + public static final CountryEnum ES = new CountryEnum(Value.ES, "ES"); - YT("YT"), + public static final CountryEnum LC = new CountryEnum(Value.LC, "LC"); - MX("MX"), + public static final CountryEnum KM = new CountryEnum(Value.KM, "KM"); - FM("FM"), + public static final CountryEnum FM = new CountryEnum(Value.FM, "FM"); - MD("MD"), + public static final CountryEnum BZ = new CountryEnum(Value.BZ, "BZ"); - MC("MC"), + public static final CountryEnum TD = new CountryEnum(Value.TD, "TD"); - MN("MN"), + public static final CountryEnum HT = new CountryEnum(Value.HT, "HT"); - ME("ME"), + public static final CountryEnum HU = new CountryEnum(Value.HU, "HU"); - MS("MS"), + public static final CountryEnum US = new CountryEnum(Value.US, "US"); - MA("MA"), + public static final CountryEnum NO = new CountryEnum(Value.NO, "NO"); - MZ("MZ"), + public static final CountryEnum TH = new CountryEnum(Value.TH, "TH"); - MM("MM"), + public static final CountryEnum AT = new CountryEnum(Value.AT, "AT"); - NA("NA"), + public static final CountryEnum MD = new CountryEnum(Value.MD, "MD"); - NR("NR"), + public static final CountryEnum CC = new CountryEnum(Value.CC, "CC"); - NP("NP"), + public static final CountryEnum NR = new CountryEnum(Value.NR, "NR"); - NL("NL"), + public static final CountryEnum CD = new CountryEnum(Value.CD, "CD"); - NC("NC"), + public static final CountryEnum GN = new CountryEnum(Value.GN, "GN"); - NZ("NZ"), + public static final CountryEnum TL = new CountryEnum(Value.TL, "TL"); - NI("NI"), + public static final CountryEnum TM = new CountryEnum(Value.TM, "TM"); - NE("NE"), + public static final CountryEnum AX = new CountryEnum(Value.AX, "AX"); - NG("NG"), + public static final CountryEnum MH = new CountryEnum(Value.MH, "MH"); - NU("NU"), + public static final CountryEnum CG = new CountryEnum(Value.CG, "CG"); - NF("NF"), + public static final CountryEnum CH = new CountryEnum(Value.CH, "CH"); - KP("KP"), + public static final CountryEnum AD = new CountryEnum(Value.AD, "AD"); - MK("MK"), + public static final CountryEnum PF = new CountryEnum(Value.PF, "PF"); - MP("MP"), + public static final CountryEnum LS = new CountryEnum(Value.LS, "LS"); - NO("NO"), + public static final CountryEnum BS = new CountryEnum(Value.BS, "BS"); - OM("OM"), + public static final CountryEnum JP = new CountryEnum(Value.JP, "JP"); - PK("PK"), + public static final CountryEnum NC = new CountryEnum(Value.NC, "NC"); - PW("PW"), + public static final CountryEnum CK = new CountryEnum(Value.CK, "CK"); - PS("PS"), + public static final CountryEnum NZ = new CountryEnum(Value.NZ, "NZ"); - PA("PA"), + public static final CountryEnum DZ = new CountryEnum(Value.DZ, "DZ"); - PG("PG"), + public static final CountryEnum HM = new CountryEnum(Value.HM, "HM"); - PY("PY"), + public static final CountryEnum IE = new CountryEnum(Value.IE, "IE"); - PE("PE"), + public static final CountryEnum TT = new CountryEnum(Value.TT, "TT"); - PH("PH"), + public static final CountryEnum BW = new CountryEnum(Value.BW, "BW"); - PN("PN"), + public static final CountryEnum NG = new CountryEnum(Value.NG, "NG"); - PL("PL"), + public static final CountryEnum CO = new CountryEnum(Value.CO, "CO"); - PT("PT"), + public static final CountryEnum GB = new CountryEnum(Value.GB, "GB"); - PR("PR"), + public static final CountryEnum AL = new CountryEnum(Value.AL, "AL"); - QA("QA"), + public static final CountryEnum PN = new CountryEnum(Value.PN, "PN"); - RE("RE"), + public static final CountryEnum GF = new CountryEnum(Value.GF, "GF"); - RO("RO"), + public static final CountryEnum RU = new CountryEnum(Value.RU, "RU"); - RU("RU"), + public static final CountryEnum BG = new CountryEnum(Value.BG, "BG"); - RW("RW"), + public static final CountryEnum SN = new CountryEnum(Value.SN, "SN"); - BL("BL"), + public static final CountryEnum CU = new CountryEnum(Value.CU, "CU"); - SH("SH"), + public static final CountryEnum FR = new CountryEnum(Value.FR, "FR"); - KN("KN"), + public static final CountryEnum MX = new CountryEnum(Value.MX, "MX"); - LC("LC"), + public static final CountryEnum MZ = new CountryEnum(Value.MZ, "MZ"); - MF("MF"), + public static final CountryEnum IQ = new CountryEnum(Value.IQ, "IQ"); - PM("PM"), + public static final CountryEnum PW = new CountryEnum(Value.PW, "PW"); - VC("VC"), + public static final CountryEnum BM = new CountryEnum(Value.BM, "BM"); - WS("WS"), + public static final CountryEnum IS = new CountryEnum(Value.IS, "IS"); - SM("SM"), + public static final CountryEnum PY = new CountryEnum(Value.PY, "PY"); - ST("ST"), + public static final CountryEnum BO = new CountryEnum(Value.BO, "BO"); - SA("SA"), + public static final CountryEnum SV = new CountryEnum(Value.SV, "SV"); - SN("SN"), + public static final CountryEnum LR = new CountryEnum(Value.LR, "LR"); - RS("RS"), + public static final CountryEnum NA = new CountryEnum(Value.NA, "NA"); - SC("SC"), + public static final CountryEnum SX = new CountryEnum(Value.SX, "SX"); - SL("SL"), + public static final CountryEnum GR = new CountryEnum(Value.GR, "GR"); - SG("SG"), + public static final CountryEnum UG = new CountryEnum(Value.UG, "UG"); - SX("SX"), + public static final CountryEnum PG = new CountryEnum(Value.PG, "PG"); - SK("SK"), + public static final CountryEnum AE = new CountryEnum(Value.AE, "AE"); - SI("SI"), + public static final CountryEnum GT = new CountryEnum(Value.GT, "GT"); - SB("SB"), + public static final CountryEnum AG = new CountryEnum(Value.AG, "AG"); - SO("SO"), + public static final CountryEnum MP = new CountryEnum(Value.MP, "MP"); - ZA("ZA"), + public static final CountryEnum SH = new CountryEnum(Value.SH, "SH"); - GS("GS"), + public static final CountryEnum UM = new CountryEnum(Value.UM, "UM"); - KR("KR"), + public static final CountryEnum VE = new CountryEnum(Value.VE, "VE"); - SS("SS"), + public static final CountryEnum MR = new CountryEnum(Value.MR, "MR"); - ES("ES"), + public static final CountryEnum AM = new CountryEnum(Value.AM, "AM"); - LK("LK"), + public static final CountryEnum GE = new CountryEnum(Value.GE, "GE"); - SD("SD"), + public static final CountryEnum VG = new CountryEnum(Value.VG, "VG"); - SR("SR"), + public static final CountryEnum BE = new CountryEnum(Value.BE, "BE"); - SJ("SJ"), + public static final CountryEnum RW = new CountryEnum(Value.RW, "RW"); - SE("SE"), + public static final CountryEnum TF = new CountryEnum(Value.TF, "TF"); - CH("CH"), + public static final CountryEnum KR = new CountryEnum(Value.KR, "KR"); - SY("SY"), + public static final CountryEnum DM = new CountryEnum(Value.DM, "DM"); - TW("TW"), + public static final CountryEnum MA = new CountryEnum(Value.MA, "MA"); - TJ("TJ"), + public static final CountryEnum TG = new CountryEnum(Value.TG, "TG"); - TZ("TZ"), + public static final CountryEnum NP = new CountryEnum(Value.NP, "NP"); - TH("TH"), + public static final CountryEnum GL = new CountryEnum(Value.GL, "GL"); - TL("TL"), + public static final CountryEnum WF = new CountryEnum(Value.WF, "WF"); - TG("TG"), + public static final CountryEnum AU = new CountryEnum(Value.AU, "AU"); - TK("TK"), + public static final CountryEnum PA = new CountryEnum(Value.PA, "PA"); - TO("TO"), + public static final CountryEnum KY = new CountryEnum(Value.KY, "KY"); - TT("TT"), + public static final CountryEnum CF = new CountryEnum(Value.CF, "CF"); - TN("TN"), + public static final CountryEnum KZ = new CountryEnum(Value.KZ, "KZ"); - TR("TR"), + public static final CountryEnum TN = new CountryEnum(Value.TN, "TN"); - TM("TM"), + public static final CountryEnum TO = new CountryEnum(Value.TO, "TO"); - TC("TC"), + public static final CountryEnum VU = new CountryEnum(Value.VU, "VU"); - TV("TV"), + public static final CountryEnum GS = new CountryEnum(Value.GS, "GS"); - UG("UG"), + public static final CountryEnum HK = new CountryEnum(Value.HK, "HK"); - UA("UA"), + public static final CountryEnum AF = new CountryEnum(Value.AF, "AF"); - AE("AE"), + public static final CountryEnum PH = new CountryEnum(Value.PH, "PH"); - GB("GB"), + public static final CountryEnum YT = new CountryEnum(Value.YT, "YT"); - UM("UM"), + public static final CountryEnum RO = new CountryEnum(Value.RO, "RO"); - US("US"), + public static final CountryEnum CM = new CountryEnum(Value.CM, "CM"); - UY("UY"), + public static final CountryEnum SG = new CountryEnum(Value.SG, "SG"); - UZ("UZ"), + public static final CountryEnum DE = new CountryEnum(Value.DE, "DE"); - VU("VU"), + public static final CountryEnum LB = new CountryEnum(Value.LB, "LB"); - VE("VE"), + public static final CountryEnum LY = new CountryEnum(Value.LY, "LY"); - VN("VN"), + public static final CountryEnum TV = new CountryEnum(Value.TV, "TV"); - VG("VG"), + public static final CountryEnum ET = new CountryEnum(Value.ET, "ET"); - VI("VI"), + public static final CountryEnum DO = new CountryEnum(Value.DO, "DO"); - WF("WF"), + public static final CountryEnum MQ = new CountryEnum(Value.MQ, "MQ"); - EH("EH"), + public static final CountryEnum NI = new CountryEnum(Value.NI, "NI"); - YE("YE"), + public static final CountryEnum GD = new CountryEnum(Value.GD, "GD"); - ZM("ZM"), + public static final CountryEnum BF = new CountryEnum(Value.BF, "BF"); - ZW("ZW"); + public static final CountryEnum YE = new CountryEnum(Value.YE, "YE"); - private final String value; + private final Value value; - CountryEnum(String value) { + private final String string; + + CountryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CountryEnum && this.string.equals(((CountryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IL: + return visitor.visitIl(); + case LI: + return visitor.visitLi(); + case BH: + return visitor.visitBh(); + case MW: + return visitor.visitMw(); + case CV: + return visitor.visitCv(); + case EE: + return visitor.visitEe(); + case PT: + return visitor.visitPt(); + case VN: + return visitor.visitVn(); + case BL: + return visitor.visitBl(); + case CZ: + return visitor.visitCz(); + case IT: + return visitor.visitIt(); + case SY: + return visitor.visitSy(); + case KG: + return visitor.visitKg(); + case BT: + return visitor.visitBt(); + case ID: + return visitor.visitId(); + case QA: + return visitor.visitQa(); + case HN: + return visitor.visitHn(); + case LA: + return visitor.visitLa(); + case CN: + return visitor.visitCn(); + case ZM: + return visitor.visitZm(); + case FK: + return visitor.visitFk(); + case TW: + return visitor.visitTw(); + case HR: + return visitor.visitHr(); + case CR: + return visitor.visitCr(); + case FO: + return visitor.visitFo(); + case NL: + return visitor.visitNl(); + case AO: + return visitor.visitAo(); + case DK: + return visitor.visitDk(); + case GI: + return visitor.visitGi(); + case JE: + return visitor.visitJe(); + case AS: + return visitor.visitAs(); + case MC: + return visitor.visitMc(); + case GM: + return visitor.visitGm(); + case KW: + return visitor.visitKw(); + case AW: + return visitor.visitAw(); + case MG: + return visitor.visitMg(); + case GQ: + return visitor.visitGq(); + case JM: + return visitor.visitJm(); + case SA: + return visitor.visitSa(); + case MK: + return visitor.visitMk(); + case KH: + return visitor.visitKh(); + case GU: + return visitor.visitGu(); + case SE: + return visitor.visitSe(); + case ER: + return visitor.visitEr(); + case MO: + return visitor.visitMo(); + case FJ: + return visitor.visitFj(); + case GY: + return visitor.visitGy(); + case SI: + return visitor.visitSi(); + case WS: + return visitor.visitWs(); + case BD: + return visitor.visitBd(); + case MS: + return visitor.visitMs(); + case KP: + return visitor.visitKp(); + case SM: + return visitor.visitSm(); + case MV: + return visitor.visitMv(); + case IM: + return visitor.visitIm(); + case PS: + return visitor.visitPs(); + case BI: + return visitor.visitBi(); + case IO: + return visitor.visitIo(); + case CW: + return visitor.visitCw(); + case SR: + return visitor.visitSr(); + case CY: + return visitor.visitCy(); + case UA: + return visitor.visitUa(); + case EH: + return visitor.visitEh(); + case ST: + return visitor.visitSt(); + case OM: + return visitor.visitOm(); + case BQ: + return visitor.visitBq(); + case AZ: + return visitor.visitAz(); + case SB: + return visitor.visitSb(); + case JO: + return visitor.visitJo(); + case LT: + return visitor.visitLt(); + case ML: + return visitor.visitMl(); + case SD: + return visitor.visitSd(); + case VA: + return visitor.visitVa(); + case LV: + return visitor.visitLv(); + case MN: + return visitor.visitMn(); + case PK: + return visitor.visitPk(); + case VC: + return visitor.visitVc(); + case AI: + return visitor.visitAi(); + case GA: + return visitor.visitGa(); + case BA: + return visitor.visitBa(); + case PM: + return visitor.visitPm(); + case SJ: + return visitor.visitSj(); + case DJ: + return visitor.visitDj(); + case MT: + return visitor.visitMt(); + case SL: + return visitor.visitSl(); + case VI: + return visitor.visitVi(); + case GG: + return visitor.visitGg(); + case GH: + return visitor.visitGh(); + case AQ: + return visitor.visitAq(); + case AR: + return visitor.visitAr(); + case CA: + return visitor.visitCa(); + case ZA: + return visitor.visitZa(); + case TJ: + return visitor.visitTj(); + case ME: + return visitor.visitMe(); + case TK: + return visitor.visitTk(); + case MF: + return visitor.visitMf(); + case UY: + return visitor.visitUy(); + case UZ: + return visitor.visitUz(); + case NU: + return visitor.visitNu(); + case GP: + return visitor.visitGp(); + case PE: + return visitor.visitPe(); + case CI: + return visitor.visitCi(); + case SC: + return visitor.visitSc(); + case SZ: + return visitor.visitSz(); + case LU: + return visitor.visitLu(); + case TR: + return visitor.visitTr(); + case MM: + return visitor.visitMm(); + case NE: + return visitor.visitNe(); + case GW: + return visitor.visitGw(); + case PL: + return visitor.visitPl(); + case BB: + return visitor.visitBb(); + case BY: + return visitor.visitBy(); + case RS: + return visitor.visitRs(); + case KN: + return visitor.visitKn(); + case SK: + return visitor.visitSk(); + case TC: + return visitor.visitTc(); + case TZ: + return visitor.visitTz(); + case MU: + return visitor.visitMu(); + case EC: + return visitor.visitEc(); + case PR: + return visitor.visitPr(); + case SO: + return visitor.visitSo(); + case IN: + return visitor.visitIn(); + case LK: + return visitor.visitLk(); + case BJ: + return visitor.visitBj(); + case MY: + return visitor.visitMy(); + case CX: + return visitor.visitCx(); + case ZW: + return visitor.visitZw(); + case EG: + return visitor.visitEg(); + case RE: + return visitor.visitRe(); + case SS: + return visitor.visitSs(); + case IR: + return visitor.visitIr(); + case BN: + return visitor.visitBn(); + case KE: + return visitor.visitKe(); + case BR: + return visitor.visitBr(); + case CL: + return visitor.visitCl(); + case KI: + return visitor.visitKi(); + case BV: + return visitor.visitBv(); + case FI: + return visitor.visitFi(); + case NF: + return visitor.visitNf(); + case ES: + return visitor.visitEs(); + case LC: + return visitor.visitLc(); + case KM: + return visitor.visitKm(); + case FM: + return visitor.visitFm(); + case BZ: + return visitor.visitBz(); + case TD: + return visitor.visitTd(); + case HT: + return visitor.visitHt(); + case HU: + return visitor.visitHu(); + case US: + return visitor.visitUs(); + case NO: + return visitor.visitNo(); + case TH: + return visitor.visitTh(); + case AT: + return visitor.visitAt(); + case MD: + return visitor.visitMd(); + case CC: + return visitor.visitCc(); + case NR: + return visitor.visitNr(); + case CD: + return visitor.visitCd(); + case GN: + return visitor.visitGn(); + case TL: + return visitor.visitTl(); + case TM: + return visitor.visitTm(); + case AX: + return visitor.visitAx(); + case MH: + return visitor.visitMh(); + case CG: + return visitor.visitCg(); + case CH: + return visitor.visitCh(); + case AD: + return visitor.visitAd(); + case PF: + return visitor.visitPf(); + case LS: + return visitor.visitLs(); + case BS: + return visitor.visitBs(); + case JP: + return visitor.visitJp(); + case NC: + return visitor.visitNc(); + case CK: + return visitor.visitCk(); + case NZ: + return visitor.visitNz(); + case DZ: + return visitor.visitDz(); + case HM: + return visitor.visitHm(); + case IE: + return visitor.visitIe(); + case TT: + return visitor.visitTt(); + case BW: + return visitor.visitBw(); + case NG: + return visitor.visitNg(); + case CO: + return visitor.visitCo(); + case GB: + return visitor.visitGb(); + case AL: + return visitor.visitAl(); + case PN: + return visitor.visitPn(); + case GF: + return visitor.visitGf(); + case RU: + return visitor.visitRu(); + case BG: + return visitor.visitBg(); + case SN: + return visitor.visitSn(); + case CU: + return visitor.visitCu(); + case FR: + return visitor.visitFr(); + case MX: + return visitor.visitMx(); + case MZ: + return visitor.visitMz(); + case IQ: + return visitor.visitIq(); + case PW: + return visitor.visitPw(); + case BM: + return visitor.visitBm(); + case IS: + return visitor.visitIs(); + case PY: + return visitor.visitPy(); + case BO: + return visitor.visitBo(); + case SV: + return visitor.visitSv(); + case LR: + return visitor.visitLr(); + case NA: + return visitor.visitNa(); + case SX: + return visitor.visitSx(); + case GR: + return visitor.visitGr(); + case UG: + return visitor.visitUg(); + case PG: + return visitor.visitPg(); + case AE: + return visitor.visitAe(); + case GT: + return visitor.visitGt(); + case AG: + return visitor.visitAg(); + case MP: + return visitor.visitMp(); + case SH: + return visitor.visitSh(); + case UM: + return visitor.visitUm(); + case VE: + return visitor.visitVe(); + case MR: + return visitor.visitMr(); + case AM: + return visitor.visitAm(); + case GE: + return visitor.visitGe(); + case VG: + return visitor.visitVg(); + case BE: + return visitor.visitBe(); + case RW: + return visitor.visitRw(); + case TF: + return visitor.visitTf(); + case KR: + return visitor.visitKr(); + case DM: + return visitor.visitDm(); + case MA: + return visitor.visitMa(); + case TG: + return visitor.visitTg(); + case NP: + return visitor.visitNp(); + case GL: + return visitor.visitGl(); + case WF: + return visitor.visitWf(); + case AU: + return visitor.visitAu(); + case PA: + return visitor.visitPa(); + case KY: + return visitor.visitKy(); + case CF: + return visitor.visitCf(); + case KZ: + return visitor.visitKz(); + case TN: + return visitor.visitTn(); + case TO: + return visitor.visitTo(); + case VU: + return visitor.visitVu(); + case GS: + return visitor.visitGs(); + case HK: + return visitor.visitHk(); + case AF: + return visitor.visitAf(); + case PH: + return visitor.visitPh(); + case YT: + return visitor.visitYt(); + case RO: + return visitor.visitRo(); + case CM: + return visitor.visitCm(); + case SG: + return visitor.visitSg(); + case DE: + return visitor.visitDe(); + case LB: + return visitor.visitLb(); + case LY: + return visitor.visitLy(); + case TV: + return visitor.visitTv(); + case ET: + return visitor.visitEt(); + case DO: + return visitor.visitDo(); + case MQ: + return visitor.visitMq(); + case NI: + return visitor.visitNi(); + case GD: + return visitor.visitGd(); + case BF: + return visitor.visitBf(); + case YE: + return visitor.visitYe(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CountryEnum valueOf(String value) { + switch (value) { + case "IL": + return IL; + case "LI": + return LI; + case "BH": + return BH; + case "MW": + return MW; + case "CV": + return CV; + case "EE": + return EE; + case "PT": + return PT; + case "VN": + return VN; + case "BL": + return BL; + case "CZ": + return CZ; + case "IT": + return IT; + case "SY": + return SY; + case "KG": + return KG; + case "BT": + return BT; + case "ID": + return ID; + case "QA": + return QA; + case "HN": + return HN; + case "LA": + return LA; + case "CN": + return CN; + case "ZM": + return ZM; + case "FK": + return FK; + case "TW": + return TW; + case "HR": + return HR; + case "CR": + return CR; + case "FO": + return FO; + case "NL": + return NL; + case "AO": + return AO; + case "DK": + return DK; + case "GI": + return GI; + case "JE": + return JE; + case "AS": + return AS; + case "MC": + return MC; + case "GM": + return GM; + case "KW": + return KW; + case "AW": + return AW; + case "MG": + return MG; + case "GQ": + return GQ; + case "JM": + return JM; + case "SA": + return SA; + case "MK": + return MK; + case "KH": + return KH; + case "GU": + return GU; + case "SE": + return SE; + case "ER": + return ER; + case "MO": + return MO; + case "FJ": + return FJ; + case "GY": + return GY; + case "SI": + return SI; + case "WS": + return WS; + case "BD": + return BD; + case "MS": + return MS; + case "KP": + return KP; + case "SM": + return SM; + case "MV": + return MV; + case "IM": + return IM; + case "PS": + return PS; + case "BI": + return BI; + case "IO": + return IO; + case "CW": + return CW; + case "SR": + return SR; + case "CY": + return CY; + case "UA": + return UA; + case "EH": + return EH; + case "ST": + return ST; + case "OM": + return OM; + case "BQ": + return BQ; + case "AZ": + return AZ; + case "SB": + return SB; + case "JO": + return JO; + case "LT": + return LT; + case "ML": + return ML; + case "SD": + return SD; + case "VA": + return VA; + case "LV": + return LV; + case "MN": + return MN; + case "PK": + return PK; + case "VC": + return VC; + case "AI": + return AI; + case "GA": + return GA; + case "BA": + return BA; + case "PM": + return PM; + case "SJ": + return SJ; + case "DJ": + return DJ; + case "MT": + return MT; + case "SL": + return SL; + case "VI": + return VI; + case "GG": + return GG; + case "GH": + return GH; + case "AQ": + return AQ; + case "AR": + return AR; + case "CA": + return CA; + case "ZA": + return ZA; + case "TJ": + return TJ; + case "ME": + return ME; + case "TK": + return TK; + case "MF": + return MF; + case "UY": + return UY; + case "UZ": + return UZ; + case "NU": + return NU; + case "GP": + return GP; + case "PE": + return PE; + case "CI": + return CI; + case "SC": + return SC; + case "SZ": + return SZ; + case "LU": + return LU; + case "TR": + return TR; + case "MM": + return MM; + case "NE": + return NE; + case "GW": + return GW; + case "PL": + return PL; + case "BB": + return BB; + case "BY": + return BY; + case "RS": + return RS; + case "KN": + return KN; + case "SK": + return SK; + case "TC": + return TC; + case "TZ": + return TZ; + case "MU": + return MU; + case "EC": + return EC; + case "PR": + return PR; + case "SO": + return SO; + case "IN": + return IN; + case "LK": + return LK; + case "BJ": + return BJ; + case "MY": + return MY; + case "CX": + return CX; + case "ZW": + return ZW; + case "EG": + return EG; + case "RE": + return RE; + case "SS": + return SS; + case "IR": + return IR; + case "BN": + return BN; + case "KE": + return KE; + case "BR": + return BR; + case "CL": + return CL; + case "KI": + return KI; + case "BV": + return BV; + case "FI": + return FI; + case "NF": + return NF; + case "ES": + return ES; + case "LC": + return LC; + case "KM": + return KM; + case "FM": + return FM; + case "BZ": + return BZ; + case "TD": + return TD; + case "HT": + return HT; + case "HU": + return HU; + case "US": + return US; + case "NO": + return NO; + case "TH": + return TH; + case "AT": + return AT; + case "MD": + return MD; + case "CC": + return CC; + case "NR": + return NR; + case "CD": + return CD; + case "GN": + return GN; + case "TL": + return TL; + case "TM": + return TM; + case "AX": + return AX; + case "MH": + return MH; + case "CG": + return CG; + case "CH": + return CH; + case "AD": + return AD; + case "PF": + return PF; + case "LS": + return LS; + case "BS": + return BS; + case "JP": + return JP; + case "NC": + return NC; + case "CK": + return CK; + case "NZ": + return NZ; + case "DZ": + return DZ; + case "HM": + return HM; + case "IE": + return IE; + case "TT": + return TT; + case "BW": + return BW; + case "NG": + return NG; + case "CO": + return CO; + case "GB": + return GB; + case "AL": + return AL; + case "PN": + return PN; + case "GF": + return GF; + case "RU": + return RU; + case "BG": + return BG; + case "SN": + return SN; + case "CU": + return CU; + case "FR": + return FR; + case "MX": + return MX; + case "MZ": + return MZ; + case "IQ": + return IQ; + case "PW": + return PW; + case "BM": + return BM; + case "IS": + return IS; + case "PY": + return PY; + case "BO": + return BO; + case "SV": + return SV; + case "LR": + return LR; + case "NA": + return NA; + case "SX": + return SX; + case "GR": + return GR; + case "UG": + return UG; + case "PG": + return PG; + case "AE": + return AE; + case "GT": + return GT; + case "AG": + return AG; + case "MP": + return MP; + case "SH": + return SH; + case "UM": + return UM; + case "VE": + return VE; + case "MR": + return MR; + case "AM": + return AM; + case "GE": + return GE; + case "VG": + return VG; + case "BE": + return BE; + case "RW": + return RW; + case "TF": + return TF; + case "KR": + return KR; + case "DM": + return DM; + case "MA": + return MA; + case "TG": + return TG; + case "NP": + return NP; + case "GL": + return GL; + case "WF": + return WF; + case "AU": + return AU; + case "PA": + return PA; + case "KY": + return KY; + case "CF": + return CF; + case "KZ": + return KZ; + case "TN": + return TN; + case "TO": + return TO; + case "VU": + return VU; + case "GS": + return GS; + case "HK": + return HK; + case "AF": + return AF; + case "PH": + return PH; + case "YT": + return YT; + case "RO": + return RO; + case "CM": + return CM; + case "SG": + return SG; + case "DE": + return DE; + case "LB": + return LB; + case "LY": + return LY; + case "TV": + return TV; + case "ET": + return ET; + case "DO": + return DO; + case "MQ": + return MQ; + case "NI": + return NI; + case "GD": + return GD; + case "BF": + return BF; + case "YE": + return YE; + default: + return new CountryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + AF, + + AX, + + AL, + + DZ, + + AS, + + AD, + + AO, + + AI, + + AQ, + + AG, + + AR, + + AM, + + AW, + + AU, + + AT, + + AZ, + + BS, + + BH, + + BD, + + BB, + + BY, + + BE, + + BZ, + + BJ, + + BM, + + BT, + + BO, + + BQ, + + BA, + + BW, + + BV, + + BR, + + IO, + + BN, + + BG, + + BF, + + BI, + + CV, + + KH, + + CM, + + CA, + + KY, + + CF, + + TD, + + CL, + + CN, + + CX, + + CC, + + CO, + + KM, + + CG, + + CD, + + CK, + + CR, + + CI, + + HR, + + CU, + + CW, + + CY, + + CZ, + + DK, + + DJ, + + DM, + + DO, + + EC, + + EG, + + SV, + + GQ, + + ER, + + EE, + + SZ, + + ET, + + FK, + + FO, + + FJ, + + FI, + + FR, + + GF, + + PF, + + TF, + + GA, + + GM, + + GE, + + DE, + + GH, + + GI, + + GR, + + GL, + + GD, + + GP, + + GU, + + GT, + + GG, + + GN, + + GW, + + GY, + + HT, + + HM, + + VA, + + HN, + + HK, + + HU, + + IS, + + IN, + + ID, + + IR, + + IQ, + + IE, + + IM, + + IL, + + IT, + + JM, + + JP, + + JE, + + JO, + + KZ, + + KE, + + KI, + + KW, + + KG, + + LA, + + LV, + + LB, + + LS, + + LR, + + LY, + + LI, + + LT, + + LU, + + MO, + + MG, + + MW, + + MY, + + MV, + + ML, + + MT, + + MH, + + MQ, + + MR, + + MU, + + YT, + + MX, + + FM, + + MD, + + MC, + + MN, + + ME, + + MS, + + MA, + + MZ, + + MM, + + NA, + + NR, + + NP, + + NL, + + NC, + + NZ, + + NI, + + NE, + + NG, + + NU, + + NF, + + KP, + + MK, + + MP, + + NO, + + OM, + + PK, + + PW, + + PS, + + PA, + + PG, + + PY, + + PE, + + PH, + + PN, + + PL, + + PT, + + PR, + + QA, + + RE, + + RO, + + RU, + + RW, + + BL, + + SH, + + KN, + + LC, + + MF, + + PM, + + VC, + + WS, + + SM, + + ST, + + SA, + + SN, + + RS, + + SC, + + SL, + + SG, + + SX, + + SK, + + SI, + + SB, + + SO, + + ZA, + + GS, + + KR, + + SS, + + ES, + + LK, + + SD, + + SR, + + SJ, + + SE, + + CH, + + SY, + + TW, + + TJ, + + TZ, + + TH, + + TL, + + TG, + + TK, + + TO, + + TT, + + TN, + + TR, + + TM, + + TC, + + TV, + + UG, + + UA, + + AE, + + GB, + + UM, + + US, + + UY, + + UZ, + + VU, + + VE, + + VN, + + VG, + + VI, + + WF, + + EH, + + YE, + + ZM, + + ZW, + + UNKNOWN + } + + public interface Visitor { + T visitAf(); + + T visitAx(); + + T visitAl(); + + T visitDz(); + + T visitAs(); + + T visitAd(); + + T visitAo(); + + T visitAi(); + + T visitAq(); + + T visitAg(); + + T visitAr(); + + T visitAm(); + + T visitAw(); + + T visitAu(); + + T visitAt(); + + T visitAz(); + + T visitBs(); + + T visitBh(); + + T visitBd(); + + T visitBb(); + + T visitBy(); + + T visitBe(); + + T visitBz(); + + T visitBj(); + + T visitBm(); + + T visitBt(); + + T visitBo(); + + T visitBq(); + + T visitBa(); + + T visitBw(); + + T visitBv(); + + T visitBr(); + + T visitIo(); + + T visitBn(); + + T visitBg(); + + T visitBf(); + + T visitBi(); + + T visitCv(); + + T visitKh(); + + T visitCm(); + + T visitCa(); + + T visitKy(); + + T visitCf(); + + T visitTd(); + + T visitCl(); + + T visitCn(); + + T visitCx(); + + T visitCc(); + + T visitCo(); + + T visitKm(); + + T visitCg(); + + T visitCd(); + + T visitCk(); + + T visitCr(); + + T visitCi(); + + T visitHr(); + + T visitCu(); + + T visitCw(); + + T visitCy(); + + T visitCz(); + + T visitDk(); + + T visitDj(); + + T visitDm(); + + T visitDo(); + + T visitEc(); + + T visitEg(); + + T visitSv(); + + T visitGq(); + + T visitEr(); + + T visitEe(); + + T visitSz(); + + T visitEt(); + + T visitFk(); + + T visitFo(); + + T visitFj(); + + T visitFi(); + + T visitFr(); + + T visitGf(); + + T visitPf(); + + T visitTf(); + + T visitGa(); + + T visitGm(); + + T visitGe(); + + T visitDe(); + + T visitGh(); + + T visitGi(); + + T visitGr(); + + T visitGl(); + + T visitGd(); + + T visitGp(); + + T visitGu(); + + T visitGt(); + + T visitGg(); + + T visitGn(); + + T visitGw(); + + T visitGy(); + + T visitHt(); + + T visitHm(); + + T visitVa(); + + T visitHn(); + + T visitHk(); + + T visitHu(); + + T visitIs(); + + T visitIn(); + + T visitId(); + + T visitIr(); + + T visitIq(); + + T visitIe(); + + T visitIm(); + + T visitIl(); + + T visitIt(); + + T visitJm(); + + T visitJp(); + + T visitJe(); + + T visitJo(); + + T visitKz(); + + T visitKe(); + + T visitKi(); + + T visitKw(); + + T visitKg(); + + T visitLa(); + + T visitLv(); + + T visitLb(); + + T visitLs(); + + T visitLr(); + + T visitLy(); + + T visitLi(); + + T visitLt(); + + T visitLu(); + + T visitMo(); + + T visitMg(); + + T visitMw(); + + T visitMy(); + + T visitMv(); + + T visitMl(); + + T visitMt(); + + T visitMh(); + + T visitMq(); + + T visitMr(); + + T visitMu(); + + T visitYt(); + + T visitMx(); + + T visitFm(); + + T visitMd(); + + T visitMc(); + + T visitMn(); + + T visitMe(); + + T visitMs(); + + T visitMa(); + + T visitMz(); + + T visitMm(); + + T visitNa(); + + T visitNr(); + + T visitNp(); + + T visitNl(); + + T visitNc(); + + T visitNz(); + + T visitNi(); + + T visitNe(); + + T visitNg(); + + T visitNu(); + + T visitNf(); + + T visitKp(); + + T visitMk(); + + T visitMp(); + + T visitNo(); + + T visitOm(); + + T visitPk(); + + T visitPw(); + + T visitPs(); + + T visitPa(); + + T visitPg(); + + T visitPy(); + + T visitPe(); + + T visitPh(); + + T visitPn(); + + T visitPl(); + + T visitPt(); + + T visitPr(); + + T visitQa(); + + T visitRe(); + + T visitRo(); + + T visitRu(); + + T visitRw(); + + T visitBl(); + + T visitSh(); + + T visitKn(); + + T visitLc(); + + T visitMf(); + + T visitPm(); + + T visitVc(); + + T visitWs(); + + T visitSm(); + + T visitSt(); + + T visitSa(); + + T visitSn(); + + T visitRs(); + + T visitSc(); + + T visitSl(); + + T visitSg(); + + T visitSx(); + + T visitSk(); + + T visitSi(); + + T visitSb(); + + T visitSo(); + + T visitZa(); + + T visitGs(); + + T visitKr(); + + T visitSs(); + + T visitEs(); + + T visitLk(); + + T visitSd(); + + T visitSr(); + + T visitSj(); + + T visitSe(); + + T visitCh(); + + T visitSy(); + + T visitTw(); + + T visitTj(); + + T visitTz(); + + T visitTh(); + + T visitTl(); + + T visitTg(); + + T visitTk(); + + T visitTo(); + + T visitTt(); + + T visitTn(); + + T visitTr(); + + T visitTm(); + + T visitTc(); + + T visitTv(); + + T visitUg(); + + T visitUa(); + + T visitAe(); + + T visitGb(); + + T visitUm(); + + T visitUs(); + + T visitUy(); + + T visitUz(); + + T visitVu(); + + T visitVe(); + + T visitVn(); + + T visitVg(); + + T visitVi(); + + T visitWf(); + + T visitEh(); + + T visitYe(); + + T visitZm(); + + T visitZw(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNoteStatusEnum.java b/src/main/java/com/merge/api/accounting/types/CreditNoteStatusEnum.java index 9a49dac25..392f34d2d 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNoteStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNoteStatusEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNoteStatusEnum { - SUBMITTED("SUBMITTED"), +public final class CreditNoteStatusEnum { + public static final CreditNoteStatusEnum AUTHORIZED = new CreditNoteStatusEnum(Value.AUTHORIZED, "AUTHORIZED"); - AUTHORIZED("AUTHORIZED"), + public static final CreditNoteStatusEnum SUBMITTED = new CreditNoteStatusEnum(Value.SUBMITTED, "SUBMITTED"); - PAID("PAID"); + public static final CreditNoteStatusEnum PAID = new CreditNoteStatusEnum(Value.PAID, "PAID"); - private final String value; + private final Value value; - CreditNoteStatusEnum(String value) { + private final String string; + + CreditNoteStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNoteStatusEnum && this.string.equals(((CreditNoteStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case AUTHORIZED: + return visitor.visitAuthorized(); + case SUBMITTED: + return visitor.visitSubmitted(); + case PAID: + return visitor.visitPaid(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNoteStatusEnum valueOf(String value) { + switch (value) { + case "AUTHORIZED": + return AUTHORIZED; + case "SUBMITTED": + return SUBMITTED; + case "PAID": + return PAID; + default: + return new CreditNoteStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SUBMITTED, + + AUTHORIZED, + + PAID, + + UNKNOWN + } + + public interface Visitor { + T visitSubmitted(); + + T visitAuthorized(); + + T visitPaid(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestExpandItem.java index a2313193e..dd40da52a 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class CreditNotesListRequestExpandItem { + public static final CreditNotesListRequestExpandItem ACCOUNTING_PERIOD = + new CreditNotesListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final CreditNotesListRequestExpandItem LINE_ITEMS = + new CreditNotesListRequestExpandItem(Value.LINE_ITEMS, "line_items"); - COMPANY("company"), + public static final CreditNotesListRequestExpandItem PAYMENTS = + new CreditNotesListRequestExpandItem(Value.PAYMENTS, "payments"); - CONTACT("contact"), + public static final CreditNotesListRequestExpandItem TRACKING_CATEGORIES = + new CreditNotesListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINE_ITEMS("line_items"), + public static final CreditNotesListRequestExpandItem CONTACT = + new CreditNotesListRequestExpandItem(Value.CONTACT, "contact"); - PAYMENTS("payments"), + public static final CreditNotesListRequestExpandItem APPLIED_PAYMENTS = + new CreditNotesListRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - TRACKING_CATEGORIES("tracking_categories"); + public static final CreditNotesListRequestExpandItem COMPANY = + new CreditNotesListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - CreditNotesListRequestExpandItem(String value) { + private final String string; + + CreditNotesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesListRequestExpandItem + && this.string.equals(((CreditNotesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case CONTACT: + return visitor.visitContact(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "contact": + return CONTACT; + case "applied_payments": + return APPLIED_PAYMENTS; + case "company": + return COMPANY; + default: + return new CreditNotesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_PAYMENTS, + + COMPANY, + + CONTACT, + + LINE_ITEMS, + + PAYMENTS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedPayments(); + + T visitCompany(); + + T visitContact(); + + T visitLineItems(); + + T visitPayments(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestRemoteFields.java b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestRemoteFields.java index c37523f8a..1672a8cb6 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesListRequestRemoteFields { - STATUS("status"), +public final class CreditNotesListRequestRemoteFields { + public static final CreditNotesListRequestRemoteFields STATUS = + new CreditNotesListRequestRemoteFields(Value.STATUS, "status"); - STATUS_TYPE("status,type"), + public static final CreditNotesListRequestRemoteFields STATUS_TYPE = + new CreditNotesListRequestRemoteFields(Value.STATUS_TYPE, "status,type"); - TYPE("type"); + public static final CreditNotesListRequestRemoteFields TYPE = + new CreditNotesListRequestRemoteFields(Value.TYPE, "type"); - private final String value; + private final Value value; - CreditNotesListRequestRemoteFields(String value) { + private final String string; + + CreditNotesListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesListRequestRemoteFields + && this.string.equals(((CreditNotesListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case STATUS_TYPE: + return visitor.visitStatusType(); + case TYPE: + return visitor.visitType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesListRequestRemoteFields valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "status,type": + return STATUS_TYPE; + case "type": + return TYPE; + default: + return new CreditNotesListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + STATUS, + + STATUS_TYPE, + + TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitStatus(); + + T visitStatusType(); + + T visitType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestShowEnumOrigins.java index 0e22db305..015132fdb 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesListRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesListRequestShowEnumOrigins { - STATUS("status"), +public final class CreditNotesListRequestShowEnumOrigins { + public static final CreditNotesListRequestShowEnumOrigins STATUS = + new CreditNotesListRequestShowEnumOrigins(Value.STATUS, "status"); - STATUS_TYPE("status,type"), + public static final CreditNotesListRequestShowEnumOrigins STATUS_TYPE = + new CreditNotesListRequestShowEnumOrigins(Value.STATUS_TYPE, "status,type"); - TYPE("type"); + public static final CreditNotesListRequestShowEnumOrigins TYPE = + new CreditNotesListRequestShowEnumOrigins(Value.TYPE, "type"); - private final String value; + private final Value value; - CreditNotesListRequestShowEnumOrigins(String value) { + private final String string; + + CreditNotesListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesListRequestShowEnumOrigins + && this.string.equals(((CreditNotesListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case STATUS_TYPE: + return visitor.visitStatusType(); + case TYPE: + return visitor.visitType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "status,type": + return STATUS_TYPE; + case "type": + return TYPE; + default: + return new CreditNotesListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + STATUS, + + STATUS_TYPE, + + TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitStatus(); + + T visitStatusType(); + + T visitType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestExpandItem.java index b52b64386..8b017eeb6 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class CreditNotesRetrieveRequestExpandItem { + public static final CreditNotesRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new CreditNotesRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final CreditNotesRetrieveRequestExpandItem LINE_ITEMS = + new CreditNotesRetrieveRequestExpandItem(Value.LINE_ITEMS, "line_items"); - COMPANY("company"), + public static final CreditNotesRetrieveRequestExpandItem PAYMENTS = + new CreditNotesRetrieveRequestExpandItem(Value.PAYMENTS, "payments"); - CONTACT("contact"), + public static final CreditNotesRetrieveRequestExpandItem TRACKING_CATEGORIES = + new CreditNotesRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINE_ITEMS("line_items"), + public static final CreditNotesRetrieveRequestExpandItem CONTACT = + new CreditNotesRetrieveRequestExpandItem(Value.CONTACT, "contact"); - PAYMENTS("payments"), + public static final CreditNotesRetrieveRequestExpandItem APPLIED_PAYMENTS = + new CreditNotesRetrieveRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - TRACKING_CATEGORIES("tracking_categories"); + public static final CreditNotesRetrieveRequestExpandItem COMPANY = + new CreditNotesRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - CreditNotesRetrieveRequestExpandItem(String value) { + private final String string; + + CreditNotesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesRetrieveRequestExpandItem + && this.string.equals(((CreditNotesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case CONTACT: + return visitor.visitContact(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "contact": + return CONTACT; + case "applied_payments": + return APPLIED_PAYMENTS; + case "company": + return COMPANY; + default: + return new CreditNotesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_PAYMENTS, + + COMPANY, + + CONTACT, + + LINE_ITEMS, + + PAYMENTS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedPayments(); + + T visitCompany(); + + T visitContact(); + + T visitLineItems(); + + T visitPayments(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestRemoteFields.java index 85e8152f6..79d8547cd 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesRetrieveRequestRemoteFields { - STATUS("status"), +public final class CreditNotesRetrieveRequestRemoteFields { + public static final CreditNotesRetrieveRequestRemoteFields STATUS = + new CreditNotesRetrieveRequestRemoteFields(Value.STATUS, "status"); - STATUS_TYPE("status,type"), + public static final CreditNotesRetrieveRequestRemoteFields STATUS_TYPE = + new CreditNotesRetrieveRequestRemoteFields(Value.STATUS_TYPE, "status,type"); - TYPE("type"); + public static final CreditNotesRetrieveRequestRemoteFields TYPE = + new CreditNotesRetrieveRequestRemoteFields(Value.TYPE, "type"); - private final String value; + private final Value value; - CreditNotesRetrieveRequestRemoteFields(String value) { + private final String string; + + CreditNotesRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesRetrieveRequestRemoteFields + && this.string.equals(((CreditNotesRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case STATUS_TYPE: + return visitor.visitStatusType(); + case TYPE: + return visitor.visitType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "status,type": + return STATUS_TYPE; + case "type": + return TYPE; + default: + return new CreditNotesRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + STATUS, + + STATUS_TYPE, + + TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitStatus(); + + T visitStatusType(); + + T visitType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestShowEnumOrigins.java index d81e01a18..f9101bedb 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/accounting/types/CreditNotesRetrieveRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditNotesRetrieveRequestShowEnumOrigins { - STATUS("status"), +public final class CreditNotesRetrieveRequestShowEnumOrigins { + public static final CreditNotesRetrieveRequestShowEnumOrigins STATUS = + new CreditNotesRetrieveRequestShowEnumOrigins(Value.STATUS, "status"); - STATUS_TYPE("status,type"), + public static final CreditNotesRetrieveRequestShowEnumOrigins STATUS_TYPE = + new CreditNotesRetrieveRequestShowEnumOrigins(Value.STATUS_TYPE, "status,type"); - TYPE("type"); + public static final CreditNotesRetrieveRequestShowEnumOrigins TYPE = + new CreditNotesRetrieveRequestShowEnumOrigins(Value.TYPE, "type"); - private final String value; + private final Value value; - CreditNotesRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + CreditNotesRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditNotesRetrieveRequestShowEnumOrigins + && this.string.equals(((CreditNotesRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case STATUS: + return visitor.visitStatus(); + case STATUS_TYPE: + return visitor.visitStatusType(); + case TYPE: + return visitor.visitType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditNotesRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "status": + return STATUS; + case "status,type": + return STATUS_TYPE; + case "type": + return TYPE; + default: + return new CreditNotesRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + STATUS, + + STATUS_TYPE, + + TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitStatus(); + + T visitStatusType(); + + T visitType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/CreditOrDebitEnum.java b/src/main/java/com/merge/api/accounting/types/CreditOrDebitEnum.java index 525c1eebb..ce4132c1e 100644 --- a/src/main/java/com/merge/api/accounting/types/CreditOrDebitEnum.java +++ b/src/main/java/com/merge/api/accounting/types/CreditOrDebitEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CreditOrDebitEnum { - CREDIT("CREDIT"), +public final class CreditOrDebitEnum { + public static final CreditOrDebitEnum CREDIT = new CreditOrDebitEnum(Value.CREDIT, "CREDIT"); - DEBIT("DEBIT"); + public static final CreditOrDebitEnum DEBIT = new CreditOrDebitEnum(Value.DEBIT, "DEBIT"); - private final String value; + private final Value value; - CreditOrDebitEnum(String value) { + private final String string; + + CreditOrDebitEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CreditOrDebitEnum && this.string.equals(((CreditOrDebitEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREDIT: + return visitor.visitCredit(); + case DEBIT: + return visitor.visitDebit(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CreditOrDebitEnum valueOf(String value) { + switch (value) { + case "CREDIT": + return CREDIT; + case "DEBIT": + return DEBIT; + default: + return new CreditOrDebitEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREDIT, + + DEBIT, + + UNKNOWN + } + + public interface Visitor { + T visitCredit(); + + T visitDebit(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/accounting/types/EnabledActionsEnum.java index 42ff3f4eb..72c49c39a 100644 --- a/src/main/java/com/merge/api/accounting/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/accounting/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/EncodingEnum.java b/src/main/java/com/merge/api/accounting/types/EncodingEnum.java index e1831d861..e01847282 100644 --- a/src/main/java/com/merge/api/accounting/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/accounting/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/EventTypeEnum.java b/src/main/java/com/merge/api/accounting/types/EventTypeEnum.java index 7a3a81899..3e9bf29c4 100644 --- a/src/main/java/com/merge/api/accounting/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ExpensesListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ExpensesListRequestExpandItem.java index da9632ca8..6faed4178 100644 --- a/src/main/java/com/merge/api/accounting/types/ExpensesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ExpensesListRequestExpandItem.java @@ -3,30 +3,128 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ExpensesListRequestExpandItem { - ACCOUNT("account"), +public final class ExpensesListRequestExpandItem { + public static final ExpensesListRequestExpandItem ACCOUNTING_PERIOD = + new ExpensesListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final ExpensesListRequestExpandItem TRACKING_CATEGORIES = + new ExpensesListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - COMPANY("company"), + public static final ExpensesListRequestExpandItem ACCOUNT = + new ExpensesListRequestExpandItem(Value.ACCOUNT, "account"); - CONTACT("contact"), + public static final ExpensesListRequestExpandItem EMPLOYEE = + new ExpensesListRequestExpandItem(Value.EMPLOYEE, "employee"); - EMPLOYEE("employee"), + public static final ExpensesListRequestExpandItem CONTACT = + new ExpensesListRequestExpandItem(Value.CONTACT, "contact"); - TRACKING_CATEGORIES("tracking_categories"); + public static final ExpensesListRequestExpandItem COMPANY = + new ExpensesListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ExpensesListRequestExpandItem(String value) { + private final String string; + + ExpensesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ExpensesListRequestExpandItem + && this.string.equals(((ExpensesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case EMPLOYEE: + return visitor.visitEmployee(); + case CONTACT: + return visitor.visitContact(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ExpensesListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "employee": + return EMPLOYEE; + case "contact": + return CONTACT; + case "company": + return COMPANY; + default: + return new ExpensesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + COMPANY, + + CONTACT, + + EMPLOYEE, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitCompany(); + + T visitContact(); + + T visitEmployee(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ExpensesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ExpensesRetrieveRequestExpandItem.java index 3806f3929..9f58adb9a 100644 --- a/src/main/java/com/merge/api/accounting/types/ExpensesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ExpensesRetrieveRequestExpandItem.java @@ -3,30 +3,128 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ExpensesRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class ExpensesRetrieveRequestExpandItem { + public static final ExpensesRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new ExpensesRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final ExpensesRetrieveRequestExpandItem TRACKING_CATEGORIES = + new ExpensesRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - COMPANY("company"), + public static final ExpensesRetrieveRequestExpandItem ACCOUNT = + new ExpensesRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - CONTACT("contact"), + public static final ExpensesRetrieveRequestExpandItem EMPLOYEE = + new ExpensesRetrieveRequestExpandItem(Value.EMPLOYEE, "employee"); - EMPLOYEE("employee"), + public static final ExpensesRetrieveRequestExpandItem CONTACT = + new ExpensesRetrieveRequestExpandItem(Value.CONTACT, "contact"); - TRACKING_CATEGORIES("tracking_categories"); + public static final ExpensesRetrieveRequestExpandItem COMPANY = + new ExpensesRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ExpensesRetrieveRequestExpandItem(String value) { + private final String string; + + ExpensesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ExpensesRetrieveRequestExpandItem + && this.string.equals(((ExpensesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case EMPLOYEE: + return visitor.visitEmployee(); + case CONTACT: + return visitor.visitContact(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ExpensesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "employee": + return EMPLOYEE; + case "contact": + return CONTACT; + case "company": + return COMPANY; + default: + return new ExpensesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + COMPANY, + + CONTACT, + + EMPLOYEE, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitCompany(); + + T visitContact(); + + T visitEmployee(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/FeedStatusEnum.java b/src/main/java/com/merge/api/accounting/types/FeedStatusEnum.java index d63fdbf97..a670ced3c 100644 --- a/src/main/java/com/merge/api/accounting/types/FeedStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/FeedStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FeedStatusEnum { - ACTIVE("ACTIVE"), +public final class FeedStatusEnum { + public static final FeedStatusEnum ACTIVE = new FeedStatusEnum(Value.ACTIVE, "ACTIVE"); - INACTIVE("INACTIVE"); + public static final FeedStatusEnum INACTIVE = new FeedStatusEnum(Value.INACTIVE, "INACTIVE"); - private final String value; + private final Value value; - FeedStatusEnum(String value) { + private final String string; + + FeedStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FeedStatusEnum && this.string.equals(((FeedStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVE: + return visitor.visitActive(); + case INACTIVE: + return visitor.visitInactive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FeedStatusEnum valueOf(String value) { + switch (value) { + case "ACTIVE": + return ACTIVE; + case "INACTIVE": + return INACTIVE; + default: + return new FeedStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + INACTIVE, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitInactive(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/FieldFormatEnum.java b/src/main/java/com/merge/api/accounting/types/FieldFormatEnum.java index cb3960cf3..aedba5ac6 100644 --- a/src/main/java/com/merge/api/accounting/types/FieldFormatEnum.java +++ b/src/main/java/com/merge/api/accounting/types/FieldFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldFormatEnum { - STRING("string"), +public final class FieldFormatEnum { + public static final FieldFormatEnum NUMBER = new FieldFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldFormatEnum STRING = new FieldFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldFormatEnum BOOL = new FieldFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldFormatEnum LIST = new FieldFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldFormatEnum DATETIME = new FieldFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldFormatEnum DATE = new FieldFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldFormatEnum(String value) { + private final String string; + + FieldFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldFormatEnum && this.string.equals(((FieldFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/FieldTypeEnum.java b/src/main/java/com/merge/api/accounting/types/FieldTypeEnum.java index db2e9b194..a05c68f09 100644 --- a/src/main/java/com/merge/api/accounting/types/FieldTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/FieldTypeEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldTypeEnum { - STRING("string"), +public final class FieldTypeEnum { + public static final FieldTypeEnum NUMBER = new FieldTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldTypeEnum STRING = new FieldTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldTypeEnum BOOL = new FieldTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldTypeEnum LIST = new FieldTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldTypeEnum DATETIME = new FieldTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldTypeEnum DATE = new FieldTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldTypeEnum(String value) { + private final String string; + + FieldTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldTypeEnum && this.string.equals(((FieldTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsListRequestExpandItem.java index 5d930f231..b3362c4c2 100644 --- a/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsListRequestExpandItem.java @@ -3,26 +3,107 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GeneralLedgerTransactionsListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class GeneralLedgerTransactionsListRequestExpandItem { + public static final GeneralLedgerTransactionsListRequestExpandItem GENERAL_LEDGER_TRANSACTION_LINES = + new GeneralLedgerTransactionsListRequestExpandItem( + Value.GENERAL_LEDGER_TRANSACTION_LINES, "general_ledger_transaction_lines"); - COMPANY("company"), + public static final GeneralLedgerTransactionsListRequestExpandItem ACCOUNTING_PERIOD = + new GeneralLedgerTransactionsListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - GENERAL_LEDGER_TRANSACTION_LINES("general_ledger_transaction_lines"), + public static final GeneralLedgerTransactionsListRequestExpandItem TRACKING_CATEGORIES = + new GeneralLedgerTransactionsListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - TRACKING_CATEGORIES("tracking_categories"); + public static final GeneralLedgerTransactionsListRequestExpandItem COMPANY = + new GeneralLedgerTransactionsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - GeneralLedgerTransactionsListRequestExpandItem(String value) { + private final String string; + + GeneralLedgerTransactionsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof GeneralLedgerTransactionsListRequestExpandItem + && this.string.equals(((GeneralLedgerTransactionsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENERAL_LEDGER_TRANSACTION_LINES: + return visitor.visitGeneralLedgerTransactionLines(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GeneralLedgerTransactionsListRequestExpandItem valueOf(String value) { + switch (value) { + case "general_ledger_transaction_lines": + return GENERAL_LEDGER_TRANSACTION_LINES; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "company": + return COMPANY; + default: + return new GeneralLedgerTransactionsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + GENERAL_LEDGER_TRANSACTION_LINES, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitGeneralLedgerTransactionLines(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsRetrieveRequestExpandItem.java index bfd381044..97fe708ff 100644 --- a/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/GeneralLedgerTransactionsRetrieveRequestExpandItem.java @@ -3,26 +3,107 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GeneralLedgerTransactionsRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class GeneralLedgerTransactionsRetrieveRequestExpandItem { + public static final GeneralLedgerTransactionsRetrieveRequestExpandItem GENERAL_LEDGER_TRANSACTION_LINES = + new GeneralLedgerTransactionsRetrieveRequestExpandItem( + Value.GENERAL_LEDGER_TRANSACTION_LINES, "general_ledger_transaction_lines"); - COMPANY("company"), + public static final GeneralLedgerTransactionsRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new GeneralLedgerTransactionsRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - GENERAL_LEDGER_TRANSACTION_LINES("general_ledger_transaction_lines"), + public static final GeneralLedgerTransactionsRetrieveRequestExpandItem TRACKING_CATEGORIES = + new GeneralLedgerTransactionsRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - TRACKING_CATEGORIES("tracking_categories"); + public static final GeneralLedgerTransactionsRetrieveRequestExpandItem COMPANY = + new GeneralLedgerTransactionsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - GeneralLedgerTransactionsRetrieveRequestExpandItem(String value) { + private final String string; + + GeneralLedgerTransactionsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof GeneralLedgerTransactionsRetrieveRequestExpandItem + && this.string.equals(((GeneralLedgerTransactionsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENERAL_LEDGER_TRANSACTION_LINES: + return visitor.visitGeneralLedgerTransactionLines(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GeneralLedgerTransactionsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "general_ledger_transaction_lines": + return GENERAL_LEDGER_TRANSACTION_LINES; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "company": + return COMPANY; + default: + return new GeneralLedgerTransactionsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + GENERAL_LEDGER_TRANSACTION_LINES, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitGeneralLedgerTransactionLines(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoiceStatusEnum.java b/src/main/java/com/merge/api/accounting/types/InvoiceStatusEnum.java index 1c25cceea..0f148a861 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoiceStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/InvoiceStatusEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoiceStatusEnum { - PAID("PAID"), +public final class InvoiceStatusEnum { + public static final InvoiceStatusEnum PARTIALLY_PAID = + new InvoiceStatusEnum(Value.PARTIALLY_PAID, "PARTIALLY_PAID"); - DRAFT("DRAFT"), + public static final InvoiceStatusEnum SUBMITTED = new InvoiceStatusEnum(Value.SUBMITTED, "SUBMITTED"); - SUBMITTED("SUBMITTED"), + public static final InvoiceStatusEnum DRAFT = new InvoiceStatusEnum(Value.DRAFT, "DRAFT"); - PARTIALLY_PAID("PARTIALLY_PAID"), + public static final InvoiceStatusEnum PAID = new InvoiceStatusEnum(Value.PAID, "PAID"); - OPEN("OPEN"), + public static final InvoiceStatusEnum OPEN = new InvoiceStatusEnum(Value.OPEN, "OPEN"); - VOID("VOID"); + public static final InvoiceStatusEnum VOID = new InvoiceStatusEnum(Value.VOID, "VOID"); - private final String value; + private final Value value; - InvoiceStatusEnum(String value) { + private final String string; + + InvoiceStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoiceStatusEnum && this.string.equals(((InvoiceStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PARTIALLY_PAID: + return visitor.visitPartiallyPaid(); + case SUBMITTED: + return visitor.visitSubmitted(); + case DRAFT: + return visitor.visitDraft(); + case PAID: + return visitor.visitPaid(); + case OPEN: + return visitor.visitOpen(); + case VOID: + return visitor.visitVoid(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoiceStatusEnum valueOf(String value) { + switch (value) { + case "PARTIALLY_PAID": + return PARTIALLY_PAID; + case "SUBMITTED": + return SUBMITTED; + case "DRAFT": + return DRAFT; + case "PAID": + return PAID; + case "OPEN": + return OPEN; + case "VOID": + return VOID; + default: + return new InvoiceStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PAID, + + DRAFT, + + SUBMITTED, + + PARTIALLY_PAID, + + OPEN, + + VOID, + + UNKNOWN + } + + public interface Visitor { + T visitPaid(); + + T visitDraft(); + + T visitSubmitted(); + + T visitPartiallyPaid(); + + T visitOpen(); + + T visitVoid(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoiceTypeEnum.java b/src/main/java/com/merge/api/accounting/types/InvoiceTypeEnum.java index 36fa4bdcc..b136a0e9f 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoiceTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/InvoiceTypeEnum.java @@ -3,22 +3,83 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoiceTypeEnum { - ACCOUNTS_RECEIVABLE("ACCOUNTS_RECEIVABLE"), +public final class InvoiceTypeEnum { + public static final InvoiceTypeEnum ACCOUNTS_PAYABLE = + new InvoiceTypeEnum(Value.ACCOUNTS_PAYABLE, "ACCOUNTS_PAYABLE"); - ACCOUNTS_PAYABLE("ACCOUNTS_PAYABLE"); + public static final InvoiceTypeEnum ACCOUNTS_RECEIVABLE = + new InvoiceTypeEnum(Value.ACCOUNTS_RECEIVABLE, "ACCOUNTS_RECEIVABLE"); - private final String value; + private final Value value; - InvoiceTypeEnum(String value) { + private final String string; + + InvoiceTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoiceTypeEnum && this.string.equals(((InvoiceTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTS_PAYABLE: + return visitor.visitAccountsPayable(); + case ACCOUNTS_RECEIVABLE: + return visitor.visitAccountsReceivable(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoiceTypeEnum valueOf(String value) { + switch (value) { + case "ACCOUNTS_PAYABLE": + return ACCOUNTS_PAYABLE; + case "ACCOUNTS_RECEIVABLE": + return ACCOUNTS_RECEIVABLE; + default: + return new InvoiceTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTS_RECEIVABLE, + + ACCOUNTS_PAYABLE, + + UNKNOWN + } + + public interface Visitor { + T visitAccountsReceivable(); + + T visitAccountsPayable(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestExpandItem.java index 8c31a2599..88d34100d 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestExpandItem.java @@ -3,42 +3,194 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoicesListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class InvoicesListRequestExpandItem { + public static final InvoicesListRequestExpandItem APPLIED_VENDOR_CREDITS = + new InvoicesListRequestExpandItem(Value.APPLIED_VENDOR_CREDITS, "applied_vendor_credits"); - APPLIED_CREDIT_NOTES("applied_credit_notes"), + public static final InvoicesListRequestExpandItem ACCOUNTING_PERIOD = + new InvoicesListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final InvoicesListRequestExpandItem LINE_ITEMS = + new InvoicesListRequestExpandItem(Value.LINE_ITEMS, "line_items"); - APPLIED_VENDOR_CREDITS("applied_vendor_credits"), + public static final InvoicesListRequestExpandItem PAYMENTS = + new InvoicesListRequestExpandItem(Value.PAYMENTS, "payments"); - COMPANY("company"), + public static final InvoicesListRequestExpandItem TRACKING_CATEGORIES = + new InvoicesListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - CONTACT("contact"), + public static final InvoicesListRequestExpandItem PURCHASE_ORDERS = + new InvoicesListRequestExpandItem(Value.PURCHASE_ORDERS, "purchase_orders"); - EMPLOYEE("employee"), + public static final InvoicesListRequestExpandItem EMPLOYEE = + new InvoicesListRequestExpandItem(Value.EMPLOYEE, "employee"); - LINE_ITEMS("line_items"), + public static final InvoicesListRequestExpandItem CONTACT = + new InvoicesListRequestExpandItem(Value.CONTACT, "contact"); - PAYMENT_TERM("payment_term"), + public static final InvoicesListRequestExpandItem PAYMENT_TERM = + new InvoicesListRequestExpandItem(Value.PAYMENT_TERM, "payment_term"); - PAYMENTS("payments"), + public static final InvoicesListRequestExpandItem APPLIED_PAYMENTS = + new InvoicesListRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - PURCHASE_ORDERS("purchase_orders"), + public static final InvoicesListRequestExpandItem APPLIED_CREDIT_NOTES = + new InvoicesListRequestExpandItem(Value.APPLIED_CREDIT_NOTES, "applied_credit_notes"); - TRACKING_CATEGORIES("tracking_categories"); + public static final InvoicesListRequestExpandItem COMPANY = + new InvoicesListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - InvoicesListRequestExpandItem(String value) { + private final String string; + + InvoicesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoicesListRequestExpandItem + && this.string.equals(((InvoicesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case APPLIED_VENDOR_CREDITS: + return visitor.visitAppliedVendorCredits(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case PURCHASE_ORDERS: + return visitor.visitPurchaseOrders(); + case EMPLOYEE: + return visitor.visitEmployee(); + case CONTACT: + return visitor.visitContact(); + case PAYMENT_TERM: + return visitor.visitPaymentTerm(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case APPLIED_CREDIT_NOTES: + return visitor.visitAppliedCreditNotes(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoicesListRequestExpandItem valueOf(String value) { + switch (value) { + case "applied_vendor_credits": + return APPLIED_VENDOR_CREDITS; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "purchase_orders": + return PURCHASE_ORDERS; + case "employee": + return EMPLOYEE; + case "contact": + return CONTACT; + case "payment_term": + return PAYMENT_TERM; + case "applied_payments": + return APPLIED_PAYMENTS; + case "applied_credit_notes": + return APPLIED_CREDIT_NOTES; + case "company": + return COMPANY; + default: + return new InvoicesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_CREDIT_NOTES, + + APPLIED_PAYMENTS, + + APPLIED_VENDOR_CREDITS, + + COMPANY, + + CONTACT, + + EMPLOYEE, + + LINE_ITEMS, + + PAYMENT_TERM, + + PAYMENTS, + + PURCHASE_ORDERS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedCreditNotes(); + + T visitAppliedPayments(); + + T visitAppliedVendorCredits(); + + T visitCompany(); + + T visitContact(); + + T visitEmployee(); + + T visitLineItems(); + + T visitPaymentTerm(); + + T visitPayments(); + + T visitPurchaseOrders(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestStatus.java b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestStatus.java index f094e8a87..96a5105c1 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestStatus.java +++ b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestStatus.java @@ -3,30 +3,124 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoicesListRequestStatus { - DRAFT("DRAFT"), +public final class InvoicesListRequestStatus { + public static final InvoicesListRequestStatus PARTIALLY_PAID = + new InvoicesListRequestStatus(Value.PARTIALLY_PAID, "PARTIALLY_PAID"); - OPEN("OPEN"), + public static final InvoicesListRequestStatus SUBMITTED = + new InvoicesListRequestStatus(Value.SUBMITTED, "SUBMITTED"); - PAID("PAID"), + public static final InvoicesListRequestStatus DRAFT = new InvoicesListRequestStatus(Value.DRAFT, "DRAFT"); - PARTIALLY_PAID("PARTIALLY_PAID"), + public static final InvoicesListRequestStatus PAID = new InvoicesListRequestStatus(Value.PAID, "PAID"); - SUBMITTED("SUBMITTED"), + public static final InvoicesListRequestStatus OPEN = new InvoicesListRequestStatus(Value.OPEN, "OPEN"); - VOID("VOID"); + public static final InvoicesListRequestStatus VOID = new InvoicesListRequestStatus(Value.VOID, "VOID"); - private final String value; + private final Value value; - InvoicesListRequestStatus(String value) { + private final String string; + + InvoicesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoicesListRequestStatus + && this.string.equals(((InvoicesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PARTIALLY_PAID: + return visitor.visitPartiallyPaid(); + case SUBMITTED: + return visitor.visitSubmitted(); + case DRAFT: + return visitor.visitDraft(); + case PAID: + return visitor.visitPaid(); + case OPEN: + return visitor.visitOpen(); + case VOID: + return visitor.visitVoid(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoicesListRequestStatus valueOf(String value) { + switch (value) { + case "PARTIALLY_PAID": + return PARTIALLY_PAID; + case "SUBMITTED": + return SUBMITTED; + case "DRAFT": + return DRAFT; + case "PAID": + return PAID; + case "OPEN": + return OPEN; + case "VOID": + return VOID; + default: + return new InvoicesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + DRAFT, + + OPEN, + + PAID, + + PARTIALLY_PAID, + + SUBMITTED, + + VOID, + + UNKNOWN + } + + public interface Visitor { + T visitDraft(); + + T visitOpen(); + + T visitPaid(); + + T visitPartiallyPaid(); + + T visitSubmitted(); + + T visitVoid(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestType.java b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestType.java index 40c2fb877..58ef23299 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoicesListRequestType.java +++ b/src/main/java/com/merge/api/accounting/types/InvoicesListRequestType.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoicesListRequestType { - ACCOUNTS_PAYABLE("ACCOUNTS_PAYABLE"), +public final class InvoicesListRequestType { + public static final InvoicesListRequestType ACCOUNTS_PAYABLE = + new InvoicesListRequestType(Value.ACCOUNTS_PAYABLE, "ACCOUNTS_PAYABLE"); - ACCOUNTS_RECEIVABLE("ACCOUNTS_RECEIVABLE"); + public static final InvoicesListRequestType ACCOUNTS_RECEIVABLE = + new InvoicesListRequestType(Value.ACCOUNTS_RECEIVABLE, "ACCOUNTS_RECEIVABLE"); - private final String value; + private final Value value; - InvoicesListRequestType(String value) { + private final String string; + + InvoicesListRequestType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoicesListRequestType + && this.string.equals(((InvoicesListRequestType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTS_PAYABLE: + return visitor.visitAccountsPayable(); + case ACCOUNTS_RECEIVABLE: + return visitor.visitAccountsReceivable(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoicesListRequestType valueOf(String value) { + switch (value) { + case "ACCOUNTS_PAYABLE": + return ACCOUNTS_PAYABLE; + case "ACCOUNTS_RECEIVABLE": + return ACCOUNTS_RECEIVABLE; + default: + return new InvoicesListRequestType(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTS_PAYABLE, + + ACCOUNTS_RECEIVABLE, + + UNKNOWN + } + + public interface Visitor { + T visitAccountsPayable(); + + T visitAccountsReceivable(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/InvoicesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/InvoicesRetrieveRequestExpandItem.java index 794da45c5..cec11aa65 100644 --- a/src/main/java/com/merge/api/accounting/types/InvoicesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/InvoicesRetrieveRequestExpandItem.java @@ -3,42 +3,194 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InvoicesRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class InvoicesRetrieveRequestExpandItem { + public static final InvoicesRetrieveRequestExpandItem APPLIED_VENDOR_CREDITS = + new InvoicesRetrieveRequestExpandItem(Value.APPLIED_VENDOR_CREDITS, "applied_vendor_credits"); - APPLIED_CREDIT_NOTES("applied_credit_notes"), + public static final InvoicesRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new InvoicesRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final InvoicesRetrieveRequestExpandItem LINE_ITEMS = + new InvoicesRetrieveRequestExpandItem(Value.LINE_ITEMS, "line_items"); - APPLIED_VENDOR_CREDITS("applied_vendor_credits"), + public static final InvoicesRetrieveRequestExpandItem PAYMENTS = + new InvoicesRetrieveRequestExpandItem(Value.PAYMENTS, "payments"); - COMPANY("company"), + public static final InvoicesRetrieveRequestExpandItem TRACKING_CATEGORIES = + new InvoicesRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - CONTACT("contact"), + public static final InvoicesRetrieveRequestExpandItem PURCHASE_ORDERS = + new InvoicesRetrieveRequestExpandItem(Value.PURCHASE_ORDERS, "purchase_orders"); - EMPLOYEE("employee"), + public static final InvoicesRetrieveRequestExpandItem EMPLOYEE = + new InvoicesRetrieveRequestExpandItem(Value.EMPLOYEE, "employee"); - LINE_ITEMS("line_items"), + public static final InvoicesRetrieveRequestExpandItem CONTACT = + new InvoicesRetrieveRequestExpandItem(Value.CONTACT, "contact"); - PAYMENT_TERM("payment_term"), + public static final InvoicesRetrieveRequestExpandItem PAYMENT_TERM = + new InvoicesRetrieveRequestExpandItem(Value.PAYMENT_TERM, "payment_term"); - PAYMENTS("payments"), + public static final InvoicesRetrieveRequestExpandItem APPLIED_PAYMENTS = + new InvoicesRetrieveRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - PURCHASE_ORDERS("purchase_orders"), + public static final InvoicesRetrieveRequestExpandItem APPLIED_CREDIT_NOTES = + new InvoicesRetrieveRequestExpandItem(Value.APPLIED_CREDIT_NOTES, "applied_credit_notes"); - TRACKING_CATEGORIES("tracking_categories"); + public static final InvoicesRetrieveRequestExpandItem COMPANY = + new InvoicesRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - InvoicesRetrieveRequestExpandItem(String value) { + private final String string; + + InvoicesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InvoicesRetrieveRequestExpandItem + && this.string.equals(((InvoicesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case APPLIED_VENDOR_CREDITS: + return visitor.visitAppliedVendorCredits(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case PURCHASE_ORDERS: + return visitor.visitPurchaseOrders(); + case EMPLOYEE: + return visitor.visitEmployee(); + case CONTACT: + return visitor.visitContact(); + case PAYMENT_TERM: + return visitor.visitPaymentTerm(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case APPLIED_CREDIT_NOTES: + return visitor.visitAppliedCreditNotes(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InvoicesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "applied_vendor_credits": + return APPLIED_VENDOR_CREDITS; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "purchase_orders": + return PURCHASE_ORDERS; + case "employee": + return EMPLOYEE; + case "contact": + return CONTACT; + case "payment_term": + return PAYMENT_TERM; + case "applied_payments": + return APPLIED_PAYMENTS; + case "applied_credit_notes": + return APPLIED_CREDIT_NOTES; + case "company": + return COMPANY; + default: + return new InvoicesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_CREDIT_NOTES, + + APPLIED_PAYMENTS, + + APPLIED_VENDOR_CREDITS, + + COMPANY, + + CONTACT, + + EMPLOYEE, + + LINE_ITEMS, + + PAYMENT_TERM, + + PAYMENTS, + + PURCHASE_ORDERS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedCreditNotes(); + + T visitAppliedPayments(); + + T visitAppliedVendorCredits(); + + T visitCompany(); + + T visitContact(); + + T visitEmployee(); + + T visitLineItems(); + + T visitPaymentTerm(); + + T visitPayments(); + + T visitPurchaseOrders(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/IssueStatusEnum.java b/src/main/java/com/merge/api/accounting/types/IssueStatusEnum.java index 3abd62e27..665026ac7 100644 --- a/src/main/java/com/merge/api/accounting/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/accounting/types/IssuesListRequestStatus.java index c27537fc4..caf453aa8 100644 --- a/src/main/java/com/merge/api/accounting/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/accounting/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ItemFormatEnum.java b/src/main/java/com/merge/api/accounting/types/ItemFormatEnum.java index 8b917a55a..b00892779 100644 --- a/src/main/java/com/merge/api/accounting/types/ItemFormatEnum.java +++ b/src/main/java/com/merge/api/accounting/types/ItemFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemFormatEnum { - STRING("string"), +public final class ItemFormatEnum { + public static final ItemFormatEnum NUMBER = new ItemFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemFormatEnum STRING = new ItemFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemFormatEnum BOOL = new ItemFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemFormatEnum LIST = new ItemFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemFormatEnum DATETIME = new ItemFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemFormatEnum DATE = new ItemFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemFormatEnum(String value) { + private final String string; + + ItemFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ItemFormatEnum && this.string.equals(((ItemFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ItemTypeEnum.java b/src/main/java/com/merge/api/accounting/types/ItemTypeEnum.java index ea27bb66c..14f312706 100644 --- a/src/main/java/com/merge/api/accounting/types/ItemTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/ItemTypeEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemTypeEnum { - STRING("string"), +public final class ItemTypeEnum { + public static final ItemTypeEnum NUMBER = new ItemTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemTypeEnum STRING = new ItemTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemTypeEnum BOOL = new ItemTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemTypeEnum LIST = new ItemTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemTypeEnum DATETIME = new ItemTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemTypeEnum DATE = new ItemTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemTypeEnum(String value) { + private final String string; + + ItemTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ItemTypeEnum && this.string.equals(((ItemTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ItemsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ItemsListRequestExpandItem.java index 5bc688daa..82866dcf0 100644 --- a/src/main/java/com/merge/api/accounting/types/ItemsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ItemsListRequestExpandItem.java @@ -3,28 +3,116 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemsListRequestExpandItem { - COMPANY("company"), +public final class ItemsListRequestExpandItem { + public static final ItemsListRequestExpandItem PURCHASE_ACCOUNT = + new ItemsListRequestExpandItem(Value.PURCHASE_ACCOUNT, "purchase_account"); - PURCHASE_ACCOUNT("purchase_account"), + public static final ItemsListRequestExpandItem SALES_TAX_RATE = + new ItemsListRequestExpandItem(Value.SALES_TAX_RATE, "sales_tax_rate"); - PURCHASE_TAX_RATE("purchase_tax_rate"), + public static final ItemsListRequestExpandItem PURCHASE_TAX_RATE = + new ItemsListRequestExpandItem(Value.PURCHASE_TAX_RATE, "purchase_tax_rate"); - SALES_ACCOUNT("sales_account"), + public static final ItemsListRequestExpandItem SALES_ACCOUNT = + new ItemsListRequestExpandItem(Value.SALES_ACCOUNT, "sales_account"); - SALES_TAX_RATE("sales_tax_rate"); + public static final ItemsListRequestExpandItem COMPANY = new ItemsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ItemsListRequestExpandItem(String value) { + private final String string; + + ItemsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ItemsListRequestExpandItem + && this.string.equals(((ItemsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PURCHASE_ACCOUNT: + return visitor.visitPurchaseAccount(); + case SALES_TAX_RATE: + return visitor.visitSalesTaxRate(); + case PURCHASE_TAX_RATE: + return visitor.visitPurchaseTaxRate(); + case SALES_ACCOUNT: + return visitor.visitSalesAccount(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemsListRequestExpandItem valueOf(String value) { + switch (value) { + case "purchase_account": + return PURCHASE_ACCOUNT; + case "sales_tax_rate": + return SALES_TAX_RATE; + case "purchase_tax_rate": + return PURCHASE_TAX_RATE; + case "sales_account": + return SALES_ACCOUNT; + case "company": + return COMPANY; + default: + return new ItemsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + PURCHASE_ACCOUNT, + + PURCHASE_TAX_RATE, + + SALES_ACCOUNT, + + SALES_TAX_RATE, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitPurchaseAccount(); + + T visitPurchaseTaxRate(); + + T visitSalesAccount(); + + T visitSalesTaxRate(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ItemsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ItemsRetrieveRequestExpandItem.java index 65914eed2..c062f1403 100644 --- a/src/main/java/com/merge/api/accounting/types/ItemsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ItemsRetrieveRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemsRetrieveRequestExpandItem { - COMPANY("company"), +public final class ItemsRetrieveRequestExpandItem { + public static final ItemsRetrieveRequestExpandItem PURCHASE_ACCOUNT = + new ItemsRetrieveRequestExpandItem(Value.PURCHASE_ACCOUNT, "purchase_account"); - PURCHASE_ACCOUNT("purchase_account"), + public static final ItemsRetrieveRequestExpandItem SALES_TAX_RATE = + new ItemsRetrieveRequestExpandItem(Value.SALES_TAX_RATE, "sales_tax_rate"); - PURCHASE_TAX_RATE("purchase_tax_rate"), + public static final ItemsRetrieveRequestExpandItem PURCHASE_TAX_RATE = + new ItemsRetrieveRequestExpandItem(Value.PURCHASE_TAX_RATE, "purchase_tax_rate"); - SALES_ACCOUNT("sales_account"), + public static final ItemsRetrieveRequestExpandItem SALES_ACCOUNT = + new ItemsRetrieveRequestExpandItem(Value.SALES_ACCOUNT, "sales_account"); - SALES_TAX_RATE("sales_tax_rate"); + public static final ItemsRetrieveRequestExpandItem COMPANY = + new ItemsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ItemsRetrieveRequestExpandItem(String value) { + private final String string; + + ItemsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ItemsRetrieveRequestExpandItem + && this.string.equals(((ItemsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PURCHASE_ACCOUNT: + return visitor.visitPurchaseAccount(); + case SALES_TAX_RATE: + return visitor.visitSalesTaxRate(); + case PURCHASE_TAX_RATE: + return visitor.visitPurchaseTaxRate(); + case SALES_ACCOUNT: + return visitor.visitSalesAccount(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "purchase_account": + return PURCHASE_ACCOUNT; + case "sales_tax_rate": + return SALES_TAX_RATE; + case "purchase_tax_rate": + return PURCHASE_TAX_RATE; + case "sales_account": + return SALES_ACCOUNT; + case "company": + return COMPANY; + default: + return new ItemsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + PURCHASE_ACCOUNT, + + PURCHASE_TAX_RATE, + + SALES_ACCOUNT, + + SALES_TAX_RATE, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitPurchaseAccount(); + + T visitPurchaseTaxRate(); + + T visitSalesAccount(); + + T visitSalesTaxRate(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/JournalEntriesListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/JournalEntriesListRequestExpandItem.java index 6154cfefd..f339be441 100644 --- a/src/main/java/com/merge/api/accounting/types/JournalEntriesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/JournalEntriesListRequestExpandItem.java @@ -3,30 +3,128 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JournalEntriesListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class JournalEntriesListRequestExpandItem { + public static final JournalEntriesListRequestExpandItem ACCOUNTING_PERIOD = + new JournalEntriesListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final JournalEntriesListRequestExpandItem PAYMENTS = + new JournalEntriesListRequestExpandItem(Value.PAYMENTS, "payments"); - COMPANY("company"), + public static final JournalEntriesListRequestExpandItem TRACKING_CATEGORIES = + new JournalEntriesListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINES("lines"), + public static final JournalEntriesListRequestExpandItem APPLIED_PAYMENTS = + new JournalEntriesListRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - PAYMENTS("payments"), + public static final JournalEntriesListRequestExpandItem LINES = + new JournalEntriesListRequestExpandItem(Value.LINES, "lines"); - TRACKING_CATEGORIES("tracking_categories"); + public static final JournalEntriesListRequestExpandItem COMPANY = + new JournalEntriesListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - JournalEntriesListRequestExpandItem(String value) { + private final String string; + + JournalEntriesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JournalEntriesListRequestExpandItem + && this.string.equals(((JournalEntriesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case LINES: + return visitor.visitLines(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JournalEntriesListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "applied_payments": + return APPLIED_PAYMENTS; + case "lines": + return LINES; + case "company": + return COMPANY; + default: + return new JournalEntriesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_PAYMENTS, + + COMPANY, + + LINES, + + PAYMENTS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedPayments(); + + T visitCompany(); + + T visitLines(); + + T visitPayments(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/JournalEntriesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/JournalEntriesRetrieveRequestExpandItem.java index 70d051527..d8581c80a 100644 --- a/src/main/java/com/merge/api/accounting/types/JournalEntriesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/JournalEntriesRetrieveRequestExpandItem.java @@ -3,30 +3,128 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JournalEntriesRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class JournalEntriesRetrieveRequestExpandItem { + public static final JournalEntriesRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new JournalEntriesRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - APPLIED_PAYMENTS("applied_payments"), + public static final JournalEntriesRetrieveRequestExpandItem PAYMENTS = + new JournalEntriesRetrieveRequestExpandItem(Value.PAYMENTS, "payments"); - COMPANY("company"), + public static final JournalEntriesRetrieveRequestExpandItem TRACKING_CATEGORIES = + new JournalEntriesRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINES("lines"), + public static final JournalEntriesRetrieveRequestExpandItem APPLIED_PAYMENTS = + new JournalEntriesRetrieveRequestExpandItem(Value.APPLIED_PAYMENTS, "applied_payments"); - PAYMENTS("payments"), + public static final JournalEntriesRetrieveRequestExpandItem LINES = + new JournalEntriesRetrieveRequestExpandItem(Value.LINES, "lines"); - TRACKING_CATEGORIES("tracking_categories"); + public static final JournalEntriesRetrieveRequestExpandItem COMPANY = + new JournalEntriesRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - JournalEntriesRetrieveRequestExpandItem(String value) { + private final String string; + + JournalEntriesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JournalEntriesRetrieveRequestExpandItem + && this.string.equals(((JournalEntriesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case PAYMENTS: + return visitor.visitPayments(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case APPLIED_PAYMENTS: + return visitor.visitAppliedPayments(); + case LINES: + return visitor.visitLines(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JournalEntriesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "payments": + return PAYMENTS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "applied_payments": + return APPLIED_PAYMENTS; + case "lines": + return LINES; + case "company": + return COMPANY; + default: + return new JournalEntriesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + APPLIED_PAYMENTS, + + COMPANY, + + LINES, + + PAYMENTS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitAppliedPayments(); + + T visitCompany(); + + T visitLines(); + + T visitPayments(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/LanguageEnum.java b/src/main/java/com/merge/api/accounting/types/LanguageEnum.java index ba55cded9..b5dda4189 100644 --- a/src/main/java/com/merge/api/accounting/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/accounting/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/accounting/types/LastSyncResultEnum.java index d9943d35b..eb323c3c8 100644 --- a/src/main/java/com/merge/api/accounting/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/accounting/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/accounting/types/LinkedAccountsListRequestCategory.java index 47adc372d..7bc0c2737 100644 --- a/src/main/java/com/merge/api/accounting/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/accounting/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/MethodEnum.java b/src/main/java/com/merge/api/accounting/types/MethodEnum.java index 48ec99825..b8433fb6a 100644 --- a/src/main/java/com/merge/api/accounting/types/MethodEnum.java +++ b/src/main/java/com/merge/api/accounting/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/MethodTypeEnum.java b/src/main/java/com/merge/api/accounting/types/MethodTypeEnum.java index 1d4d5c797..dc622b142 100644 --- a/src/main/java/com/merge/api/accounting/types/MethodTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/MethodTypeEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodTypeEnum { - CREDIT_CARD("CREDIT_CARD"), +public final class MethodTypeEnum { + public static final MethodTypeEnum CHECK = new MethodTypeEnum(Value.CHECK, "CHECK"); - DEBIT_CARD("DEBIT_CARD"), + public static final MethodTypeEnum ACH = new MethodTypeEnum(Value.ACH, "ACH"); - ACH("ACH"), + public static final MethodTypeEnum DEBIT_CARD = new MethodTypeEnum(Value.DEBIT_CARD, "DEBIT_CARD"); - CASH("CASH"), + public static final MethodTypeEnum CASH = new MethodTypeEnum(Value.CASH, "CASH"); - CHECK("CHECK"); + public static final MethodTypeEnum CREDIT_CARD = new MethodTypeEnum(Value.CREDIT_CARD, "CREDIT_CARD"); - private final String value; + private final Value value; - MethodTypeEnum(String value) { + private final String string; + + MethodTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof MethodTypeEnum && this.string.equals(((MethodTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CHECK: + return visitor.visitCheck(); + case ACH: + return visitor.visitAch(); + case DEBIT_CARD: + return visitor.visitDebitCard(); + case CASH: + return visitor.visitCash(); + case CREDIT_CARD: + return visitor.visitCreditCard(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodTypeEnum valueOf(String value) { + switch (value) { + case "CHECK": + return CHECK; + case "ACH": + return ACH; + case "DEBIT_CARD": + return DEBIT_CARD; + case "CASH": + return CASH; + case "CREDIT_CARD": + return CREDIT_CARD; + default: + return new MethodTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREDIT_CARD, + + DEBIT_CARD, + + ACH, + + CASH, + + CHECK, + + UNKNOWN + } + + public interface Visitor { + T visitCreditCard(); + + T visitDebitCard(); + + T visitAch(); + + T visitCash(); + + T visitCheck(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PaymentTypeEnum.java b/src/main/java/com/merge/api/accounting/types/PaymentTypeEnum.java index 0177a9285..b01ff57e9 100644 --- a/src/main/java/com/merge/api/accounting/types/PaymentTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/PaymentTypeEnum.java @@ -3,22 +3,83 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PaymentTypeEnum { - ACCOUNTS_PAYABLE("ACCOUNTS_PAYABLE"), +public final class PaymentTypeEnum { + public static final PaymentTypeEnum ACCOUNTS_PAYABLE = + new PaymentTypeEnum(Value.ACCOUNTS_PAYABLE, "ACCOUNTS_PAYABLE"); - ACCOUNTS_RECEIVABLE("ACCOUNTS_RECEIVABLE"); + public static final PaymentTypeEnum ACCOUNTS_RECEIVABLE = + new PaymentTypeEnum(Value.ACCOUNTS_RECEIVABLE, "ACCOUNTS_RECEIVABLE"); - private final String value; + private final Value value; - PaymentTypeEnum(String value) { + private final String string; + + PaymentTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PaymentTypeEnum && this.string.equals(((PaymentTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTS_PAYABLE: + return visitor.visitAccountsPayable(); + case ACCOUNTS_RECEIVABLE: + return visitor.visitAccountsReceivable(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PaymentTypeEnum valueOf(String value) { + switch (value) { + case "ACCOUNTS_PAYABLE": + return ACCOUNTS_PAYABLE; + case "ACCOUNTS_RECEIVABLE": + return ACCOUNTS_RECEIVABLE; + default: + return new PaymentTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTS_PAYABLE, + + ACCOUNTS_RECEIVABLE, + + UNKNOWN + } + + public interface Visitor { + T visitAccountsPayable(); + + T visitAccountsReceivable(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PaymentsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/PaymentsListRequestExpandItem.java index 7ce23dedf..864c9daa3 100644 --- a/src/main/java/com/merge/api/accounting/types/PaymentsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/PaymentsListRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PaymentsListRequestExpandItem { - ACCOUNT("account"), +public final class PaymentsListRequestExpandItem { + public static final PaymentsListRequestExpandItem ACCOUNTING_PERIOD = + new PaymentsListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final PaymentsListRequestExpandItem TRACKING_CATEGORIES = + new PaymentsListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - APPLIED_TO_LINES("applied_to_lines"), + public static final PaymentsListRequestExpandItem ACCOUNT = + new PaymentsListRequestExpandItem(Value.ACCOUNT, "account"); - COMPANY("company"), + public static final PaymentsListRequestExpandItem APPLIED_TO_LINES = + new PaymentsListRequestExpandItem(Value.APPLIED_TO_LINES, "applied_to_lines"); - CONTACT("contact"), + public static final PaymentsListRequestExpandItem CONTACT = + new PaymentsListRequestExpandItem(Value.CONTACT, "contact"); - PAYMENT_METHOD("payment_method"), + public static final PaymentsListRequestExpandItem PAYMENT_METHOD = + new PaymentsListRequestExpandItem(Value.PAYMENT_METHOD, "payment_method"); - TRACKING_CATEGORIES("tracking_categories"); + public static final PaymentsListRequestExpandItem COMPANY = + new PaymentsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - PaymentsListRequestExpandItem(String value) { + private final String string; + + PaymentsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PaymentsListRequestExpandItem + && this.string.equals(((PaymentsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case APPLIED_TO_LINES: + return visitor.visitAppliedToLines(); + case CONTACT: + return visitor.visitContact(); + case PAYMENT_METHOD: + return visitor.visitPaymentMethod(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PaymentsListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "applied_to_lines": + return APPLIED_TO_LINES; + case "contact": + return CONTACT; + case "payment_method": + return PAYMENT_METHOD; + case "company": + return COMPANY; + default: + return new PaymentsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + APPLIED_TO_LINES, + + COMPANY, + + CONTACT, + + PAYMENT_METHOD, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitAppliedToLines(); + + T visitCompany(); + + T visitContact(); + + T visitPaymentMethod(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PaymentsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/PaymentsRetrieveRequestExpandItem.java index e398d4997..a3195e148 100644 --- a/src/main/java/com/merge/api/accounting/types/PaymentsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/PaymentsRetrieveRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PaymentsRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class PaymentsRetrieveRequestExpandItem { + public static final PaymentsRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new PaymentsRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final PaymentsRetrieveRequestExpandItem TRACKING_CATEGORIES = + new PaymentsRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - APPLIED_TO_LINES("applied_to_lines"), + public static final PaymentsRetrieveRequestExpandItem ACCOUNT = + new PaymentsRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - COMPANY("company"), + public static final PaymentsRetrieveRequestExpandItem APPLIED_TO_LINES = + new PaymentsRetrieveRequestExpandItem(Value.APPLIED_TO_LINES, "applied_to_lines"); - CONTACT("contact"), + public static final PaymentsRetrieveRequestExpandItem CONTACT = + new PaymentsRetrieveRequestExpandItem(Value.CONTACT, "contact"); - PAYMENT_METHOD("payment_method"), + public static final PaymentsRetrieveRequestExpandItem PAYMENT_METHOD = + new PaymentsRetrieveRequestExpandItem(Value.PAYMENT_METHOD, "payment_method"); - TRACKING_CATEGORIES("tracking_categories"); + public static final PaymentsRetrieveRequestExpandItem COMPANY = + new PaymentsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - PaymentsRetrieveRequestExpandItem(String value) { + private final String string; + + PaymentsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PaymentsRetrieveRequestExpandItem + && this.string.equals(((PaymentsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case APPLIED_TO_LINES: + return visitor.visitAppliedToLines(); + case CONTACT: + return visitor.visitContact(); + case PAYMENT_METHOD: + return visitor.visitPaymentMethod(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PaymentsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "applied_to_lines": + return APPLIED_TO_LINES; + case "contact": + return CONTACT; + case "payment_method": + return PAYMENT_METHOD; + case "company": + return COMPANY; + default: + return new PaymentsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + APPLIED_TO_LINES, + + COMPANY, + + CONTACT, + + PAYMENT_METHOD, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitAppliedToLines(); + + T visitCompany(); + + T visitContact(); + + T visitPaymentMethod(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PostingStatusEnum.java b/src/main/java/com/merge/api/accounting/types/PostingStatusEnum.java index 26d904fc4..19396852a 100644 --- a/src/main/java/com/merge/api/accounting/types/PostingStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/PostingStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PostingStatusEnum { - UNPOSTED("UNPOSTED"), +public final class PostingStatusEnum { + public static final PostingStatusEnum UNPOSTED = new PostingStatusEnum(Value.UNPOSTED, "UNPOSTED"); - POSTED("POSTED"); + public static final PostingStatusEnum POSTED = new PostingStatusEnum(Value.POSTED, "POSTED"); - private final String value; + private final Value value; - PostingStatusEnum(String value) { + private final String string; + + PostingStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PostingStatusEnum && this.string.equals(((PostingStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case UNPOSTED: + return visitor.visitUnposted(); + case POSTED: + return visitor.visitPosted(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PostingStatusEnum valueOf(String value) { + switch (value) { + case "UNPOSTED": + return UNPOSTED; + case "POSTED": + return POSTED; + default: + return new PostingStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + UNPOSTED, + + POSTED, + + UNKNOWN + } + + public interface Visitor { + T visitUnposted(); + + T visitPosted(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ProjectsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ProjectsListRequestExpandItem.java index ee616baa3..c93fa0e61 100644 --- a/src/main/java/com/merge/api/accounting/types/ProjectsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ProjectsListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ProjectsListRequestExpandItem { - COMPANY("company"), +public final class ProjectsListRequestExpandItem { + public static final ProjectsListRequestExpandItem CONTACT = + new ProjectsListRequestExpandItem(Value.CONTACT, "contact"); - CONTACT("contact"); + public static final ProjectsListRequestExpandItem COMPANY = + new ProjectsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ProjectsListRequestExpandItem(String value) { + private final String string; + + ProjectsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ProjectsListRequestExpandItem + && this.string.equals(((ProjectsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CONTACT: + return visitor.visitContact(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ProjectsListRequestExpandItem valueOf(String value) { + switch (value) { + case "contact": + return CONTACT; + case "company": + return COMPANY; + default: + return new ProjectsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + CONTACT, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitContact(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ProjectsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/ProjectsRetrieveRequestExpandItem.java index e30b133de..f31f1e096 100644 --- a/src/main/java/com/merge/api/accounting/types/ProjectsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/ProjectsRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ProjectsRetrieveRequestExpandItem { - COMPANY("company"), +public final class ProjectsRetrieveRequestExpandItem { + public static final ProjectsRetrieveRequestExpandItem CONTACT = + new ProjectsRetrieveRequestExpandItem(Value.CONTACT, "contact"); - CONTACT("contact"); + public static final ProjectsRetrieveRequestExpandItem COMPANY = + new ProjectsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - ProjectsRetrieveRequestExpandItem(String value) { + private final String string; + + ProjectsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ProjectsRetrieveRequestExpandItem + && this.string.equals(((ProjectsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CONTACT: + return visitor.visitContact(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ProjectsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "contact": + return CONTACT; + case "company": + return COMPANY; + default: + return new ProjectsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + CONTACT, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitContact(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PurchaseOrderStatusEnum.java b/src/main/java/com/merge/api/accounting/types/PurchaseOrderStatusEnum.java index 1171abea2..6aa4c2d65 100644 --- a/src/main/java/com/merge/api/accounting/types/PurchaseOrderStatusEnum.java +++ b/src/main/java/com/merge/api/accounting/types/PurchaseOrderStatusEnum.java @@ -3,28 +3,113 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PurchaseOrderStatusEnum { - DRAFT("DRAFT"), +public final class PurchaseOrderStatusEnum { + public static final PurchaseOrderStatusEnum AUTHORIZED = + new PurchaseOrderStatusEnum(Value.AUTHORIZED, "AUTHORIZED"); - SUBMITTED("SUBMITTED"), + public static final PurchaseOrderStatusEnum SUBMITTED = new PurchaseOrderStatusEnum(Value.SUBMITTED, "SUBMITTED"); - AUTHORIZED("AUTHORIZED"), + public static final PurchaseOrderStatusEnum DELETED = new PurchaseOrderStatusEnum(Value.DELETED, "DELETED"); - BILLED("BILLED"), + public static final PurchaseOrderStatusEnum DRAFT = new PurchaseOrderStatusEnum(Value.DRAFT, "DRAFT"); - DELETED("DELETED"); + public static final PurchaseOrderStatusEnum BILLED = new PurchaseOrderStatusEnum(Value.BILLED, "BILLED"); - private final String value; + private final Value value; - PurchaseOrderStatusEnum(String value) { + private final String string; + + PurchaseOrderStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PurchaseOrderStatusEnum + && this.string.equals(((PurchaseOrderStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case AUTHORIZED: + return visitor.visitAuthorized(); + case SUBMITTED: + return visitor.visitSubmitted(); + case DELETED: + return visitor.visitDeleted(); + case DRAFT: + return visitor.visitDraft(); + case BILLED: + return visitor.visitBilled(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PurchaseOrderStatusEnum valueOf(String value) { + switch (value) { + case "AUTHORIZED": + return AUTHORIZED; + case "SUBMITTED": + return SUBMITTED; + case "DELETED": + return DELETED; + case "DRAFT": + return DRAFT; + case "BILLED": + return BILLED; + default: + return new PurchaseOrderStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + DRAFT, + + SUBMITTED, + + AUTHORIZED, + + BILLED, + + DELETED, + + UNKNOWN + } + + public interface Visitor { + T visitDraft(); + + T visitSubmitted(); + + T visitAuthorized(); + + T visitBilled(); + + T visitDeleted(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PurchaseOrdersListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/PurchaseOrdersListRequestExpandItem.java index 5685062d1..d77abadac 100644 --- a/src/main/java/com/merge/api/accounting/types/PurchaseOrdersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/PurchaseOrdersListRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PurchaseOrdersListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class PurchaseOrdersListRequestExpandItem { + public static final PurchaseOrdersListRequestExpandItem DELIVERY_ADDRESS = + new PurchaseOrdersListRequestExpandItem(Value.DELIVERY_ADDRESS, "delivery_address"); - COMPANY("company"), + public static final PurchaseOrdersListRequestExpandItem ACCOUNTING_PERIOD = + new PurchaseOrdersListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - DELIVERY_ADDRESS("delivery_address"), + public static final PurchaseOrdersListRequestExpandItem LINE_ITEMS = + new PurchaseOrdersListRequestExpandItem(Value.LINE_ITEMS, "line_items"); - LINE_ITEMS("line_items"), + public static final PurchaseOrdersListRequestExpandItem TRACKING_CATEGORIES = + new PurchaseOrdersListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - PAYMENT_TERM("payment_term"), + public static final PurchaseOrdersListRequestExpandItem VENDOR = + new PurchaseOrdersListRequestExpandItem(Value.VENDOR, "vendor"); - TRACKING_CATEGORIES("tracking_categories"), + public static final PurchaseOrdersListRequestExpandItem PAYMENT_TERM = + new PurchaseOrdersListRequestExpandItem(Value.PAYMENT_TERM, "payment_term"); - VENDOR("vendor"); + public static final PurchaseOrdersListRequestExpandItem COMPANY = + new PurchaseOrdersListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - PurchaseOrdersListRequestExpandItem(String value) { + private final String string; + + PurchaseOrdersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PurchaseOrdersListRequestExpandItem + && this.string.equals(((PurchaseOrdersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DELIVERY_ADDRESS: + return visitor.visitDeliveryAddress(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case VENDOR: + return visitor.visitVendor(); + case PAYMENT_TERM: + return visitor.visitPaymentTerm(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PurchaseOrdersListRequestExpandItem valueOf(String value) { + switch (value) { + case "delivery_address": + return DELIVERY_ADDRESS; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "vendor": + return VENDOR; + case "payment_term": + return PAYMENT_TERM; + case "company": + return COMPANY; + default: + return new PurchaseOrdersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + DELIVERY_ADDRESS, + + LINE_ITEMS, + + PAYMENT_TERM, + + TRACKING_CATEGORIES, + + VENDOR, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitDeliveryAddress(); + + T visitLineItems(); + + T visitPaymentTerm(); + + T visitTrackingCategories(); + + T visitVendor(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/PurchaseOrdersRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/PurchaseOrdersRetrieveRequestExpandItem.java index 5fcdf856d..230f6cc2d 100644 --- a/src/main/java/com/merge/api/accounting/types/PurchaseOrdersRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/PurchaseOrdersRetrieveRequestExpandItem.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PurchaseOrdersRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class PurchaseOrdersRetrieveRequestExpandItem { + public static final PurchaseOrdersRetrieveRequestExpandItem DELIVERY_ADDRESS = + new PurchaseOrdersRetrieveRequestExpandItem(Value.DELIVERY_ADDRESS, "delivery_address"); - COMPANY("company"), + public static final PurchaseOrdersRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new PurchaseOrdersRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - DELIVERY_ADDRESS("delivery_address"), + public static final PurchaseOrdersRetrieveRequestExpandItem LINE_ITEMS = + new PurchaseOrdersRetrieveRequestExpandItem(Value.LINE_ITEMS, "line_items"); - LINE_ITEMS("line_items"), + public static final PurchaseOrdersRetrieveRequestExpandItem TRACKING_CATEGORIES = + new PurchaseOrdersRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - PAYMENT_TERM("payment_term"), + public static final PurchaseOrdersRetrieveRequestExpandItem VENDOR = + new PurchaseOrdersRetrieveRequestExpandItem(Value.VENDOR, "vendor"); - TRACKING_CATEGORIES("tracking_categories"), + public static final PurchaseOrdersRetrieveRequestExpandItem PAYMENT_TERM = + new PurchaseOrdersRetrieveRequestExpandItem(Value.PAYMENT_TERM, "payment_term"); - VENDOR("vendor"); + public static final PurchaseOrdersRetrieveRequestExpandItem COMPANY = + new PurchaseOrdersRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - PurchaseOrdersRetrieveRequestExpandItem(String value) { + private final String string; + + PurchaseOrdersRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PurchaseOrdersRetrieveRequestExpandItem + && this.string.equals(((PurchaseOrdersRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DELIVERY_ADDRESS: + return visitor.visitDeliveryAddress(); + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case VENDOR: + return visitor.visitVendor(); + case PAYMENT_TERM: + return visitor.visitPaymentTerm(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PurchaseOrdersRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "delivery_address": + return DELIVERY_ADDRESS; + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "vendor": + return VENDOR; + case "payment_term": + return PAYMENT_TERM; + case "company": + return COMPANY; + default: + return new PurchaseOrdersRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + DELIVERY_ADDRESS, + + LINE_ITEMS, + + PAYMENT_TERM, + + TRACKING_CATEGORIES, + + VENDOR, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitDeliveryAddress(); + + T visitLineItems(); + + T visitPaymentTerm(); + + T visitTrackingCategories(); + + T visitVendor(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/RequestFormatEnum.java b/src/main/java/com/merge/api/accounting/types/RequestFormatEnum.java index ebe4b5f3b..e3bc85499 100644 --- a/src/main/java/com/merge/api/accounting/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/accounting/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/accounting/types/ResponseTypeEnum.java index 48ead3b49..044ac587c 100644 --- a/src/main/java/com/merge/api/accounting/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/RoleEnum.java b/src/main/java/com/merge/api/accounting/types/RoleEnum.java index cc54acbd1..f8971d919 100644 --- a/src/main/java/com/merge/api/accounting/types/RoleEnum.java +++ b/src/main/java/com/merge/api/accounting/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/accounting/types/SelectiveSyncConfigurationsUsageEnum.java index 44a9d4ec4..eb35b3bb6 100644 --- a/src/main/java/com/merge/api/accounting/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/accounting/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/Status7D1Enum.java b/src/main/java/com/merge/api/accounting/types/Status7D1Enum.java index c2625fc50..4c17a19d0 100644 --- a/src/main/java/com/merge/api/accounting/types/Status7D1Enum.java +++ b/src/main/java/com/merge/api/accounting/types/Status7D1Enum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum Status7D1Enum { - ACTIVE("ACTIVE"), +public final class Status7D1Enum { + public static final Status7D1Enum ARCHIVED = new Status7D1Enum(Value.ARCHIVED, "ARCHIVED"); - ARCHIVED("ARCHIVED"); + public static final Status7D1Enum ACTIVE = new Status7D1Enum(Value.ACTIVE, "ACTIVE"); - private final String value; + private final Value value; - Status7D1Enum(String value) { + private final String string; + + Status7D1Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof Status7D1Enum && this.string.equals(((Status7D1Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ARCHIVED: + return visitor.visitArchived(); + case ACTIVE: + return visitor.visitActive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static Status7D1Enum valueOf(String value) { + switch (value) { + case "ARCHIVED": + return ARCHIVED; + case "ACTIVE": + return ACTIVE; + default: + return new Status7D1Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + ARCHIVED, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitArchived(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/Status895Enum.java b/src/main/java/com/merge/api/accounting/types/Status895Enum.java index a36aa2e32..72bd110a4 100644 --- a/src/main/java/com/merge/api/accounting/types/Status895Enum.java +++ b/src/main/java/com/merge/api/accounting/types/Status895Enum.java @@ -3,22 +3,81 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum Status895Enum { - ACTIVE("ACTIVE"), +public final class Status895Enum { + public static final Status895Enum ACTIVE = new Status895Enum(Value.ACTIVE, "ACTIVE"); - INACTIVE("INACTIVE"); + public static final Status895Enum INACTIVE = new Status895Enum(Value.INACTIVE, "INACTIVE"); - private final String value; + private final Value value; - Status895Enum(String value) { + private final String string; + + Status895Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof Status895Enum && this.string.equals(((Status895Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVE: + return visitor.visitActive(); + case INACTIVE: + return visitor.visitInactive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static Status895Enum valueOf(String value) { + switch (value) { + case "ACTIVE": + return ACTIVE; + case "INACTIVE": + return INACTIVE; + default: + return new Status895Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + INACTIVE, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitInactive(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/StatusFd5Enum.java b/src/main/java/com/merge/api/accounting/types/StatusFd5Enum.java index 9c0e8f2cd..9590cc48f 100644 --- a/src/main/java/com/merge/api/accounting/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/accounting/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/TransactionCurrencyEnum.java b/src/main/java/com/merge/api/accounting/types/TransactionCurrencyEnum.java index 61aeffc31..e2a29722c 100644 --- a/src/main/java/com/merge/api/accounting/types/TransactionCurrencyEnum.java +++ b/src/main/java/com/merge/api/accounting/types/TransactionCurrencyEnum.java @@ -3,630 +3,3122 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TransactionCurrencyEnum { - XUA("XUA"), +public final class TransactionCurrencyEnum { + public static final TransactionCurrencyEnum PES = new TransactionCurrencyEnum(Value.PES, "PES"); - AFN("AFN"), + public static final TransactionCurrencyEnum UAK = new TransactionCurrencyEnum(Value.UAK, "UAK"); - AFA("AFA"), + public static final TransactionCurrencyEnum PHP = new TransactionCurrencyEnum(Value.PHP, "PHP"); - ALL("ALL"), + public static final TransactionCurrencyEnum XAU = new TransactionCurrencyEnum(Value.XAU, "XAU"); - ALK("ALK"), + public static final TransactionCurrencyEnum XCD = new TransactionCurrencyEnum(Value.XCD, "XCD"); - DZD("DZD"), + public static final TransactionCurrencyEnum MVR = new TransactionCurrencyEnum(Value.MVR, "MVR"); - ADP("ADP"), + public static final TransactionCurrencyEnum ARP = new TransactionCurrencyEnum(Value.ARP, "ARP"); - AOA("AOA"), + public static final TransactionCurrencyEnum JOD = new TransactionCurrencyEnum(Value.JOD, "JOD"); - AOK("AOK"), + public static final TransactionCurrencyEnum XDR = new TransactionCurrencyEnum(Value.XDR, "XDR"); - AON("AON"), + public static final TransactionCurrencyEnum HKD = new TransactionCurrencyEnum(Value.HKD, "HKD"); - AOR("AOR"), + public static final TransactionCurrencyEnum INR = new TransactionCurrencyEnum(Value.INR, "INR"); - ARA("ARA"), + public static final TransactionCurrencyEnum THB = new TransactionCurrencyEnum(Value.THB, "THB"); - ARS("ARS"), + public static final TransactionCurrencyEnum GWP = new TransactionCurrencyEnum(Value.GWP, "GWP"); - ARM("ARM"), + public static final TransactionCurrencyEnum XXX = new TransactionCurrencyEnum(Value.XXX, "XXX"); - ARP("ARP"), + public static final TransactionCurrencyEnum ITL = new TransactionCurrencyEnum(Value.ITL, "ITL"); - ARL("ARL"), + public static final TransactionCurrencyEnum STN = new TransactionCurrencyEnum(Value.STN, "STN"); - AMD("AMD"), + public static final TransactionCurrencyEnum CAD = new TransactionCurrencyEnum(Value.CAD, "CAD"); - AWG("AWG"), + public static final TransactionCurrencyEnum ESP = new TransactionCurrencyEnum(Value.ESP, "ESP"); - AUD("AUD"), + public static final TransactionCurrencyEnum XPF = new TransactionCurrencyEnum(Value.XPF, "XPF"); - ATS("ATS"), + public static final TransactionCurrencyEnum MAF = new TransactionCurrencyEnum(Value.MAF, "MAF"); - AZN("AZN"), + public static final TransactionCurrencyEnum COP = new TransactionCurrencyEnum(Value.COP, "COP"); - AZM("AZM"), + public static final TransactionCurrencyEnum MDC = new TransactionCurrencyEnum(Value.MDC, "MDC"); - BSD("BSD"), + public static final TransactionCurrencyEnum ZAR = new TransactionCurrencyEnum(Value.ZAR, "ZAR"); - BHD("BHD"), + public static final TransactionCurrencyEnum MRO = new TransactionCurrencyEnum(Value.MRO, "MRO"); - BDT("BDT"), + public static final TransactionCurrencyEnum VEB = new TransactionCurrencyEnum(Value.VEB, "VEB"); - BBD("BBD"), + public static final TransactionCurrencyEnum LSL = new TransactionCurrencyEnum(Value.LSL, "LSL"); - BYN("BYN"), + public static final TransactionCurrencyEnum SKK = new TransactionCurrencyEnum(Value.SKK, "SKK"); - BYB("BYB"), + public static final TransactionCurrencyEnum VUV = new TransactionCurrencyEnum(Value.VUV, "VUV"); - BYR("BYR"), + public static final TransactionCurrencyEnum XBB = new TransactionCurrencyEnum(Value.XBB, "XBB"); - BEF("BEF"), + public static final TransactionCurrencyEnum TND = new TransactionCurrencyEnum(Value.TND, "TND"); - BEC("BEC"), + public static final TransactionCurrencyEnum CSK = new TransactionCurrencyEnum(Value.CSK, "CSK"); - BEL("BEL"), + public static final TransactionCurrencyEnum IMP = new TransactionCurrencyEnum(Value.IMP, "IMP"); - BZD("BZD"), + public static final TransactionCurrencyEnum AOK = new TransactionCurrencyEnum(Value.AOK, "AOK"); - BMD("BMD"), + public static final TransactionCurrencyEnum GIP = new TransactionCurrencyEnum(Value.GIP, "GIP"); - BTN("BTN"), + public static final TransactionCurrencyEnum ISJ = new TransactionCurrencyEnum(Value.ISJ, "ISJ"); - BOB("BOB"), + public static final TransactionCurrencyEnum BMD = new TransactionCurrencyEnum(Value.BMD, "BMD"); - BOL("BOL"), + public static final TransactionCurrencyEnum LUC = new TransactionCurrencyEnum(Value.LUC, "LUC"); - BOV("BOV"), + public static final TransactionCurrencyEnum BGN = new TransactionCurrencyEnum(Value.BGN, "BGN"); - BOP("BOP"), + public static final TransactionCurrencyEnum ARL = new TransactionCurrencyEnum(Value.ARL, "ARL"); - BAM("BAM"), + public static final TransactionCurrencyEnum SSP = new TransactionCurrencyEnum(Value.SSP, "SSP"); - BAD("BAD"), + public static final TransactionCurrencyEnum MNT = new TransactionCurrencyEnum(Value.MNT, "MNT"); - BAN("BAN"), + public static final TransactionCurrencyEnum SLL = new TransactionCurrencyEnum(Value.SLL, "SLL"); - BWP("BWP"), + public static final TransactionCurrencyEnum ATS = new TransactionCurrencyEnum(Value.ATS, "ATS"); - BRC("BRC"), + public static final TransactionCurrencyEnum XFU = new TransactionCurrencyEnum(Value.XFU, "XFU"); - BRZ("BRZ"), + public static final TransactionCurrencyEnum XRE = new TransactionCurrencyEnum(Value.XRE, "XRE"); - BRE("BRE"), + public static final TransactionCurrencyEnum BAD = new TransactionCurrencyEnum(Value.BAD, "BAD"); - BRR("BRR"), + public static final TransactionCurrencyEnum AZM = new TransactionCurrencyEnum(Value.AZM, "AZM"); - BRN("BRN"), + public static final TransactionCurrencyEnum BRL = new TransactionCurrencyEnum(Value.BRL, "BRL"); - BRB("BRB"), + public static final TransactionCurrencyEnum AZN = new TransactionCurrencyEnum(Value.AZN, "AZN"); - BRL("BRL"), + public static final TransactionCurrencyEnum TWD = new TransactionCurrencyEnum(Value.TWD, "TWD"); - GBP("GBP"), + public static final TransactionCurrencyEnum NOK = new TransactionCurrencyEnum(Value.NOK, "NOK"); - BND("BND"), + public static final TransactionCurrencyEnum SIT = new TransactionCurrencyEnum(Value.SIT, "SIT"); - BGL("BGL"), + public static final TransactionCurrencyEnum KZT = new TransactionCurrencyEnum(Value.KZT, "KZT"); - BGN("BGN"), + public static final TransactionCurrencyEnum GQE = new TransactionCurrencyEnum(Value.GQE, "GQE"); - BGO("BGO"), + public static final TransactionCurrencyEnum ILR = new TransactionCurrencyEnum(Value.ILR, "ILR"); - BGM("BGM"), + public static final TransactionCurrencyEnum GHS = new TransactionCurrencyEnum(Value.GHS, "GHS"); - BUK("BUK"), + public static final TransactionCurrencyEnum VNN = new TransactionCurrencyEnum(Value.VNN, "VNN"); - BIF("BIF"), + public static final TransactionCurrencyEnum COU = new TransactionCurrencyEnum(Value.COU, "COU"); - XPF("XPF"), + public static final TransactionCurrencyEnum CDF = new TransactionCurrencyEnum(Value.CDF, "CDF"); - KHR("KHR"), + public static final TransactionCurrencyEnum EGP = new TransactionCurrencyEnum(Value.EGP, "EGP"); - CAD("CAD"), + public static final TransactionCurrencyEnum KPW = new TransactionCurrencyEnum(Value.KPW, "KPW"); - CVE("CVE"), + public static final TransactionCurrencyEnum VEF = new TransactionCurrencyEnum(Value.VEF, "VEF"); - KYD("KYD"), + public static final TransactionCurrencyEnum XBC = new TransactionCurrencyEnum(Value.XBC, "XBC"); - XAF("XAF"), + public static final TransactionCurrencyEnum SDG = new TransactionCurrencyEnum(Value.SDG, "SDG"); - CLE("CLE"), + public static final TransactionCurrencyEnum GRD = new TransactionCurrencyEnum(Value.GRD, "GRD"); - CLP("CLP"), + public static final TransactionCurrencyEnum MDL = new TransactionCurrencyEnum(Value.MDL, "MDL"); - CLF("CLF"), + public static final TransactionCurrencyEnum BEF = new TransactionCurrencyEnum(Value.BEF, "BEF"); - CNX("CNX"), + public static final TransactionCurrencyEnum SBD = new TransactionCurrencyEnum(Value.SBD, "SBD"); - CNY("CNY"), + public static final TransactionCurrencyEnum AUD = new TransactionCurrencyEnum(Value.AUD, "AUD"); - CNH("CNH"), + public static final TransactionCurrencyEnum BRE = new TransactionCurrencyEnum(Value.BRE, "BRE"); - COP("COP"), + public static final TransactionCurrencyEnum ISK = new TransactionCurrencyEnum(Value.ISK, "ISK"); - COU("COU"), + public static final TransactionCurrencyEnum HTG = new TransactionCurrencyEnum(Value.HTG, "HTG"); - KMF("KMF"), + public static final TransactionCurrencyEnum KGS = new TransactionCurrencyEnum(Value.KGS, "KGS"); - CDF("CDF"), + public static final TransactionCurrencyEnum AON = new TransactionCurrencyEnum(Value.AON, "AON"); - CRC("CRC"), + public static final TransactionCurrencyEnum BGM = new TransactionCurrencyEnum(Value.BGM, "BGM"); - HRD("HRD"), + public static final TransactionCurrencyEnum HRD = new TransactionCurrencyEnum(Value.HRD, "HRD"); - HRK("HRK"), + public static final TransactionCurrencyEnum UYW = new TransactionCurrencyEnum(Value.UYW, "UYW"); - CUC("CUC"), + public static final TransactionCurrencyEnum KES = new TransactionCurrencyEnum(Value.KES, "KES"); - CUP("CUP"), + public static final TransactionCurrencyEnum SDP = new TransactionCurrencyEnum(Value.SDP, "SDP"); - CYP("CYP"), + public static final TransactionCurrencyEnum PLZ = new TransactionCurrencyEnum(Value.PLZ, "PLZ"); - CZK("CZK"), + public static final TransactionCurrencyEnum CLP = new TransactionCurrencyEnum(Value.CLP, "CLP"); - CSK("CSK"), + public static final TransactionCurrencyEnum KHR = new TransactionCurrencyEnum(Value.KHR, "KHR"); - DKK("DKK"), + public static final TransactionCurrencyEnum NGN = new TransactionCurrencyEnum(Value.NGN, "NGN"); - DJF("DJF"), + public static final TransactionCurrencyEnum NZD = new TransactionCurrencyEnum(Value.NZD, "NZD"); - DOP("DOP"), + public static final TransactionCurrencyEnum HRK = new TransactionCurrencyEnum(Value.HRK, "HRK"); - NLG("NLG"), + public static final TransactionCurrencyEnum IDR = new TransactionCurrencyEnum(Value.IDR, "IDR"); - XCD("XCD"), + public static final TransactionCurrencyEnum MYR = new TransactionCurrencyEnum(Value.MYR, "MYR"); - DDM("DDM"), + public static final TransactionCurrencyEnum BWP = new TransactionCurrencyEnum(Value.BWP, "BWP"); - ECS("ECS"), + public static final TransactionCurrencyEnum BIF = new TransactionCurrencyEnum(Value.BIF, "BIF"); - ECV("ECV"), + public static final TransactionCurrencyEnum PKR = new TransactionCurrencyEnum(Value.PKR, "PKR"); - EGP("EGP"), + public static final TransactionCurrencyEnum ZWD = new TransactionCurrencyEnum(Value.ZWD, "ZWD"); - GQE("GQE"), + public static final TransactionCurrencyEnum FJD = new TransactionCurrencyEnum(Value.FJD, "FJD"); - ERN("ERN"), + public static final TransactionCurrencyEnum MGA = new TransactionCurrencyEnum(Value.MGA, "MGA"); - EEK("EEK"), + public static final TransactionCurrencyEnum PGK = new TransactionCurrencyEnum(Value.PGK, "PGK"); - ETB("ETB"), + public static final TransactionCurrencyEnum JPY = new TransactionCurrencyEnum(Value.JPY, "JPY"); - EUR("EUR"), + public static final TransactionCurrencyEnum GYD = new TransactionCurrencyEnum(Value.GYD, "GYD"); - XBA("XBA"), + public static final TransactionCurrencyEnum NIC = new TransactionCurrencyEnum(Value.NIC, "NIC"); - XEU("XEU"), + public static final TransactionCurrencyEnum SOS = new TransactionCurrencyEnum(Value.SOS, "SOS"); - XBB("XBB"), + public static final TransactionCurrencyEnum LKR = new TransactionCurrencyEnum(Value.LKR, "LKR"); - XBC("XBC"), + public static final TransactionCurrencyEnum MKN = new TransactionCurrencyEnum(Value.MKN, "MKN"); - XBD("XBD"), + public static final TransactionCurrencyEnum MLF = new TransactionCurrencyEnum(Value.MLF, "MLF"); - FKP("FKP"), + public static final TransactionCurrencyEnum KMF = new TransactionCurrencyEnum(Value.KMF, "KMF"); - FJD("FJD"), + public static final TransactionCurrencyEnum HNL = new TransactionCurrencyEnum(Value.HNL, "HNL"); - FIM("FIM"), + public static final TransactionCurrencyEnum GHC = new TransactionCurrencyEnum(Value.GHC, "GHC"); - FRF("FRF"), + public static final TransactionCurrencyEnum GWE = new TransactionCurrencyEnum(Value.GWE, "GWE"); - XFO("XFO"), + public static final TransactionCurrencyEnum TJS = new TransactionCurrencyEnum(Value.TJS, "TJS"); - XFU("XFU"), + public static final TransactionCurrencyEnum SCR = new TransactionCurrencyEnum(Value.SCR, "SCR"); - GMD("GMD"), + public static final TransactionCurrencyEnum PEN = new TransactionCurrencyEnum(Value.PEN, "PEN"); - GEK("GEK"), + public static final TransactionCurrencyEnum USD = new TransactionCurrencyEnum(Value.USD, "USD"); - GEL("GEL"), + public static final TransactionCurrencyEnum LBP = new TransactionCurrencyEnum(Value.LBP, "LBP"); - DEM("DEM"), + public static final TransactionCurrencyEnum GEL = new TransactionCurrencyEnum(Value.GEL, "GEL"); - GHS("GHS"), + public static final TransactionCurrencyEnum MTL = new TransactionCurrencyEnum(Value.MTL, "MTL"); - GHC("GHC"), + public static final TransactionCurrencyEnum SRD = new TransactionCurrencyEnum(Value.SRD, "SRD"); - GIP("GIP"), + public static final TransactionCurrencyEnum XSU = new TransactionCurrencyEnum(Value.XSU, "XSU"); - XAU("XAU"), + public static final TransactionCurrencyEnum MWK = new TransactionCurrencyEnum(Value.MWK, "MWK"); - GRD("GRD"), + public static final TransactionCurrencyEnum VES = new TransactionCurrencyEnum(Value.VES, "VES"); - GTQ("GTQ"), + public static final TransactionCurrencyEnum BND = new TransactionCurrencyEnum(Value.BND, "BND"); - GWP("GWP"), + public static final TransactionCurrencyEnum AOA = new TransactionCurrencyEnum(Value.AOA, "AOA"); - GNF("GNF"), + public static final TransactionCurrencyEnum ZMW = new TransactionCurrencyEnum(Value.ZMW, "ZMW"); - GNS("GNS"), + public static final TransactionCurrencyEnum CNX = new TransactionCurrencyEnum(Value.CNX, "CNX"); - GYD("GYD"), + public static final TransactionCurrencyEnum ILP = new TransactionCurrencyEnum(Value.ILP, "ILP"); - HTG("HTG"), + public static final TransactionCurrencyEnum SYP = new TransactionCurrencyEnum(Value.SYP, "SYP"); - HNL("HNL"), + public static final TransactionCurrencyEnum JMD = new TransactionCurrencyEnum(Value.JMD, "JMD"); - HKD("HKD"), + public static final TransactionCurrencyEnum UYI = new TransactionCurrencyEnum(Value.UYI, "UYI"); - HUF("HUF"), + public static final TransactionCurrencyEnum BRR = new TransactionCurrencyEnum(Value.BRR, "BRR"); - IMP("IMP"), + public static final TransactionCurrencyEnum XAF = new TransactionCurrencyEnum(Value.XAF, "XAF"); - ISK("ISK"), + public static final TransactionCurrencyEnum FIM = new TransactionCurrencyEnum(Value.FIM, "FIM"); - ISJ("ISJ"), + public static final TransactionCurrencyEnum CZK = new TransactionCurrencyEnum(Value.CZK, "CZK"); - INR("INR"), + public static final TransactionCurrencyEnum AED = new TransactionCurrencyEnum(Value.AED, "AED"); - IDR("IDR"), + public static final TransactionCurrencyEnum USS = new TransactionCurrencyEnum(Value.USS, "USS"); - IRR("IRR"), + public static final TransactionCurrencyEnum EEK = new TransactionCurrencyEnum(Value.EEK, "EEK"); - IQD("IQD"), + public static final TransactionCurrencyEnum CVE = new TransactionCurrencyEnum(Value.CVE, "CVE"); - IEP("IEP"), + public static final TransactionCurrencyEnum CNH = new TransactionCurrencyEnum(Value.CNH, "CNH"); - ILS("ILS"), + public static final TransactionCurrencyEnum QAR = new TransactionCurrencyEnum(Value.QAR, "QAR"); - ILP("ILP"), + public static final TransactionCurrencyEnum TOP = new TransactionCurrencyEnum(Value.TOP, "TOP"); - ILR("ILR"), + public static final TransactionCurrencyEnum ZWL = new TransactionCurrencyEnum(Value.ZWL, "ZWL"); - ITL("ITL"), + public static final TransactionCurrencyEnum TJR = new TransactionCurrencyEnum(Value.TJR, "TJR"); - JMD("JMD"), + public static final TransactionCurrencyEnum UYP = new TransactionCurrencyEnum(Value.UYP, "UYP"); - JPY("JPY"), + public static final TransactionCurrencyEnum BRC = new TransactionCurrencyEnum(Value.BRC, "BRC"); - JOD("JOD"), + public static final TransactionCurrencyEnum BRZ = new TransactionCurrencyEnum(Value.BRZ, "BRZ"); - KZT("KZT"), + public static final TransactionCurrencyEnum ERN = new TransactionCurrencyEnum(Value.ERN, "ERN"); - KES("KES"), + public static final TransactionCurrencyEnum ZRN = new TransactionCurrencyEnum(Value.ZRN, "ZRN"); - KWD("KWD"), + public static final TransactionCurrencyEnum SUR = new TransactionCurrencyEnum(Value.SUR, "SUR"); - KGS("KGS"), + public static final TransactionCurrencyEnum RHD = new TransactionCurrencyEnum(Value.RHD, "RHD"); - LAK("LAK"), + public static final TransactionCurrencyEnum RWF = new TransactionCurrencyEnum(Value.RWF, "RWF"); - LVL("LVL"), + public static final TransactionCurrencyEnum BGO = new TransactionCurrencyEnum(Value.BGO, "BGO"); - LVR("LVR"), + public static final TransactionCurrencyEnum GEK = new TransactionCurrencyEnum(Value.GEK, "GEK"); - LBP("LBP"), + public static final TransactionCurrencyEnum BOL = new TransactionCurrencyEnum(Value.BOL, "BOL"); - LSL("LSL"), + public static final TransactionCurrencyEnum SAR = new TransactionCurrencyEnum(Value.SAR, "SAR"); - LRD("LRD"), + public static final TransactionCurrencyEnum MVP = new TransactionCurrencyEnum(Value.MVP, "MVP"); - LYD("LYD"), + public static final TransactionCurrencyEnum BTN = new TransactionCurrencyEnum(Value.BTN, "BTN"); - LTL("LTL"), + public static final TransactionCurrencyEnum ZAL = new TransactionCurrencyEnum(Value.ZAL, "ZAL"); - LTT("LTT"), + public static final TransactionCurrencyEnum TZS = new TransactionCurrencyEnum(Value.TZS, "TZS"); - LUL("LUL"), + public static final TransactionCurrencyEnum DJF = new TransactionCurrencyEnum(Value.DJF, "DJF"); - LUC("LUC"), + public static final TransactionCurrencyEnum GTQ = new TransactionCurrencyEnum(Value.GTQ, "GTQ"); - LUF("LUF"), + public static final TransactionCurrencyEnum ECS = new TransactionCurrencyEnum(Value.ECS, "ECS"); - MOP("MOP"), + public static final TransactionCurrencyEnum CHF = new TransactionCurrencyEnum(Value.CHF, "CHF"); - MKD("MKD"), + public static final TransactionCurrencyEnum ANG = new TransactionCurrencyEnum(Value.ANG, "ANG"); - MKN("MKN"), + public static final TransactionCurrencyEnum BSD = new TransactionCurrencyEnum(Value.BSD, "BSD"); - MGA("MGA"), + public static final TransactionCurrencyEnum LTT = new TransactionCurrencyEnum(Value.LTT, "LTT"); - MGF("MGF"), + public static final TransactionCurrencyEnum MAD = new TransactionCurrencyEnum(Value.MAD, "MAD"); - MWK("MWK"), + public static final TransactionCurrencyEnum XPD = new TransactionCurrencyEnum(Value.XPD, "XPD"); - MYR("MYR"), + public static final TransactionCurrencyEnum MOP = new TransactionCurrencyEnum(Value.MOP, "MOP"); - MVR("MVR"), + public static final TransactionCurrencyEnum BYB = new TransactionCurrencyEnum(Value.BYB, "BYB"); - MVP("MVP"), + public static final TransactionCurrencyEnum LYD = new TransactionCurrencyEnum(Value.LYD, "LYD"); - MLF("MLF"), + public static final TransactionCurrencyEnum XTS = new TransactionCurrencyEnum(Value.XTS, "XTS"); - MTL("MTL"), + public static final TransactionCurrencyEnum KWD = new TransactionCurrencyEnum(Value.KWD, "KWD"); - MTP("MTP"), + public static final TransactionCurrencyEnum BAN = new TransactionCurrencyEnum(Value.BAN, "BAN"); - MRU("MRU"), + public static final TransactionCurrencyEnum SVC = new TransactionCurrencyEnum(Value.SVC, "SVC"); - MRO("MRO"), + public static final TransactionCurrencyEnum ALL = new TransactionCurrencyEnum(Value.ALL, "ALL"); - MUR("MUR"), + public static final TransactionCurrencyEnum SHP = new TransactionCurrencyEnum(Value.SHP, "SHP"); - MXV("MXV"), + public static final TransactionCurrencyEnum MGF = new TransactionCurrencyEnum(Value.MGF, "MGF"); - MXN("MXN"), + public static final TransactionCurrencyEnum MRU = new TransactionCurrencyEnum(Value.MRU, "MRU"); - MXP("MXP"), + public static final TransactionCurrencyEnum BRB = new TransactionCurrencyEnum(Value.BRB, "BRB"); - MDC("MDC"), + public static final TransactionCurrencyEnum CUP = new TransactionCurrencyEnum(Value.CUP, "CUP"); - MDL("MDL"), + public static final TransactionCurrencyEnum LRD = new TransactionCurrencyEnum(Value.LRD, "LRD"); - MCF("MCF"), + public static final TransactionCurrencyEnum MUR = new TransactionCurrencyEnum(Value.MUR, "MUR"); - MNT("MNT"), + public static final TransactionCurrencyEnum PAB = new TransactionCurrencyEnum(Value.PAB, "PAB"); - MAD("MAD"), + public static final TransactionCurrencyEnum KRH = new TransactionCurrencyEnum(Value.KRH, "KRH"); - MAF("MAF"), + public static final TransactionCurrencyEnum XBD = new TransactionCurrencyEnum(Value.XBD, "XBD"); - MZE("MZE"), + public static final TransactionCurrencyEnum YER = new TransactionCurrencyEnum(Value.YER, "YER"); - MZN("MZN"), + public static final TransactionCurrencyEnum AFA = new TransactionCurrencyEnum(Value.AFA, "AFA"); - MZM("MZM"), + public static final TransactionCurrencyEnum BGL = new TransactionCurrencyEnum(Value.BGL, "BGL"); - MMK("MMK"), + public static final TransactionCurrencyEnum STD = new TransactionCurrencyEnum(Value.STD, "STD"); - NAD("NAD"), + public static final TransactionCurrencyEnum NPR = new TransactionCurrencyEnum(Value.NPR, "NPR"); - NPR("NPR"), + public static final TransactionCurrencyEnum XPT = new TransactionCurrencyEnum(Value.XPT, "XPT"); - ANG("ANG"), + public static final TransactionCurrencyEnum UGX = new TransactionCurrencyEnum(Value.UGX, "UGX"); - TWD("TWD"), + public static final TransactionCurrencyEnum YUR = new TransactionCurrencyEnum(Value.YUR, "YUR"); - NZD("NZD"), + public static final TransactionCurrencyEnum TTD = new TransactionCurrencyEnum(Value.TTD, "TTD"); - NIO("NIO"), + public static final TransactionCurrencyEnum BYR = new TransactionCurrencyEnum(Value.BYR, "BYR"); - NIC("NIC"), + public static final TransactionCurrencyEnum EUR = new TransactionCurrencyEnum(Value.EUR, "EUR"); - NGN("NGN"), + public static final TransactionCurrencyEnum SEK = new TransactionCurrencyEnum(Value.SEK, "SEK"); - KPW("KPW"), + public static final TransactionCurrencyEnum KYD = new TransactionCurrencyEnum(Value.KYD, "KYD"); - NOK("NOK"), + public static final TransactionCurrencyEnum GNF = new TransactionCurrencyEnum(Value.GNF, "GNF"); - OMR("OMR"), + public static final TransactionCurrencyEnum BUK = new TransactionCurrencyEnum(Value.BUK, "BUK"); - PKR("PKR"), + public static final TransactionCurrencyEnum AFN = new TransactionCurrencyEnum(Value.AFN, "AFN"); - XPD("XPD"), + public static final TransactionCurrencyEnum CNY = new TransactionCurrencyEnum(Value.CNY, "CNY"); - PAB("PAB"), + public static final TransactionCurrencyEnum PYG = new TransactionCurrencyEnum(Value.PYG, "PYG"); - PGK("PGK"), + public static final TransactionCurrencyEnum CSD = new TransactionCurrencyEnum(Value.CSD, "CSD"); - PYG("PYG"), + public static final TransactionCurrencyEnum BOV = new TransactionCurrencyEnum(Value.BOV, "BOV"); - PEI("PEI"), + public static final TransactionCurrencyEnum XAG = new TransactionCurrencyEnum(Value.XAG, "XAG"); - PEN("PEN"), + public static final TransactionCurrencyEnum ARA = new TransactionCurrencyEnum(Value.ARA, "ARA"); - PES("PES"), + public static final TransactionCurrencyEnum DEM = new TransactionCurrencyEnum(Value.DEM, "DEM"); - PHP("PHP"), + public static final TransactionCurrencyEnum BOB = new TransactionCurrencyEnum(Value.BOB, "BOB"); - XPT("XPT"), + public static final TransactionCurrencyEnum ALK = new TransactionCurrencyEnum(Value.ALK, "ALK"); - PLN("PLN"), + public static final TransactionCurrencyEnum IEP = new TransactionCurrencyEnum(Value.IEP, "IEP"); - PLZ("PLZ"), + public static final TransactionCurrencyEnum XEU = new TransactionCurrencyEnum(Value.XEU, "XEU"); - PTE("PTE"), + public static final TransactionCurrencyEnum AWG = new TransactionCurrencyEnum(Value.AWG, "AWG"); - GWE("GWE"), + public static final TransactionCurrencyEnum DKK = new TransactionCurrencyEnum(Value.DKK, "DKK"); - QAR("QAR"), + public static final TransactionCurrencyEnum IQD = new TransactionCurrencyEnum(Value.IQD, "IQD"); - XRE("XRE"), + public static final TransactionCurrencyEnum MXP = new TransactionCurrencyEnum(Value.MXP, "MXP"); - RHD("RHD"), + public static final TransactionCurrencyEnum TVD = new TransactionCurrencyEnum(Value.TVD, "TVD"); - RON("RON"), + public static final TransactionCurrencyEnum ZWN = new TransactionCurrencyEnum(Value.ZWN, "ZWN"); - ROL("ROL"), + public static final TransactionCurrencyEnum XOF = new TransactionCurrencyEnum(Value.XOF, "XOF"); - RUB("RUB"), + public static final TransactionCurrencyEnum WST = new TransactionCurrencyEnum(Value.WST, "WST"); - RUR("RUR"), + public static final TransactionCurrencyEnum UAH = new TransactionCurrencyEnum(Value.UAH, "UAH"); - RWF("RWF"), + public static final TransactionCurrencyEnum BYN = new TransactionCurrencyEnum(Value.BYN, "BYN"); - SVC("SVC"), + public static final TransactionCurrencyEnum LUF = new TransactionCurrencyEnum(Value.LUF, "LUF"); - WST("WST"), + public static final TransactionCurrencyEnum ZWR = new TransactionCurrencyEnum(Value.ZWR, "ZWR"); - SAR("SAR"), + public static final TransactionCurrencyEnum ARM = new TransactionCurrencyEnum(Value.ARM, "ARM"); - RSD("RSD"), + public static final TransactionCurrencyEnum KRO = new TransactionCurrencyEnum(Value.KRO, "KRO"); - CSD("CSD"), + public static final TransactionCurrencyEnum AOR = new TransactionCurrencyEnum(Value.AOR, "AOR"); - SCR("SCR"), + public static final TransactionCurrencyEnum ROL = new TransactionCurrencyEnum(Value.ROL, "ROL"); - SLL("SLL"), + public static final TransactionCurrencyEnum DDM = new TransactionCurrencyEnum(Value.DDM, "DDM"); - XAG("XAG"), + public static final TransactionCurrencyEnum CHE = new TransactionCurrencyEnum(Value.CHE, "CHE"); - SGD("SGD"), + public static final TransactionCurrencyEnum CUC = new TransactionCurrencyEnum(Value.CUC, "CUC"); - SKK("SKK"), + public static final TransactionCurrencyEnum RON = new TransactionCurrencyEnum(Value.RON, "RON"); - SIT("SIT"), + public static final TransactionCurrencyEnum MKD = new TransactionCurrencyEnum(Value.MKD, "MKD"); - SBD("SBD"), + public static final TransactionCurrencyEnum HUF = new TransactionCurrencyEnum(Value.HUF, "HUF"); - SOS("SOS"), + public static final TransactionCurrencyEnum ARS = new TransactionCurrencyEnum(Value.ARS, "ARS"); - ZAR("ZAR"), + public static final TransactionCurrencyEnum CYP = new TransactionCurrencyEnum(Value.CYP, "CYP"); - ZAL("ZAL"), + public static final TransactionCurrencyEnum ECV = new TransactionCurrencyEnum(Value.ECV, "ECV"); - KRH("KRH"), + public static final TransactionCurrencyEnum DZD = new TransactionCurrencyEnum(Value.DZD, "DZD"); - KRW("KRW"), + public static final TransactionCurrencyEnum PTE = new TransactionCurrencyEnum(Value.PTE, "PTE"); - KRO("KRO"), + public static final TransactionCurrencyEnum FKP = new TransactionCurrencyEnum(Value.FKP, "FKP"); - SSP("SSP"), + public static final TransactionCurrencyEnum KRW = new TransactionCurrencyEnum(Value.KRW, "KRW"); - SUR("SUR"), + public static final TransactionCurrencyEnum YUD = new TransactionCurrencyEnum(Value.YUD, "YUD"); - ESP("ESP"), + public static final TransactionCurrencyEnum ZRZ = new TransactionCurrencyEnum(Value.ZRZ, "ZRZ"); - ESA("ESA"), + public static final TransactionCurrencyEnum BBD = new TransactionCurrencyEnum(Value.BBD, "BBD"); - ESB("ESB"), + public static final TransactionCurrencyEnum DOP = new TransactionCurrencyEnum(Value.DOP, "DOP"); - XDR("XDR"), + public static final TransactionCurrencyEnum SDD = new TransactionCurrencyEnum(Value.SDD, "SDD"); - LKR("LKR"), + public static final TransactionCurrencyEnum TRL = new TransactionCurrencyEnum(Value.TRL, "TRL"); - SHP("SHP"), + public static final TransactionCurrencyEnum AMD = new TransactionCurrencyEnum(Value.AMD, "AMD"); - XSU("XSU"), + public static final TransactionCurrencyEnum BEC = new TransactionCurrencyEnum(Value.BEC, "BEC"); - SDD("SDD"), + public static final TransactionCurrencyEnum ESA = new TransactionCurrencyEnum(Value.ESA, "ESA"); - SDG("SDG"), + public static final TransactionCurrencyEnum LVL = new TransactionCurrencyEnum(Value.LVL, "LVL"); - SDP("SDP"), + public static final TransactionCurrencyEnum CLF = new TransactionCurrencyEnum(Value.CLF, "CLF"); - SRD("SRD"), + public static final TransactionCurrencyEnum ZMK = new TransactionCurrencyEnum(Value.ZMK, "ZMK"); - SRG("SRG"), + public static final TransactionCurrencyEnum IRR = new TransactionCurrencyEnum(Value.IRR, "IRR"); - SZL("SZL"), + public static final TransactionCurrencyEnum YUN = new TransactionCurrencyEnum(Value.YUN, "YUN"); - SEK("SEK"), + public static final TransactionCurrencyEnum BHD = new TransactionCurrencyEnum(Value.BHD, "BHD"); - CHF("CHF"), + public static final TransactionCurrencyEnum LVR = new TransactionCurrencyEnum(Value.LVR, "LVR"); - SYP("SYP"), + public static final TransactionCurrencyEnum CHW = new TransactionCurrencyEnum(Value.CHW, "CHW"); - STN("STN"), + public static final TransactionCurrencyEnum RUB = new TransactionCurrencyEnum(Value.RUB, "RUB"); - STD("STD"), + public static final TransactionCurrencyEnum UYU = new TransactionCurrencyEnum(Value.UYU, "UYU"); - TVD("TVD"), + public static final TransactionCurrencyEnum TMT = new TransactionCurrencyEnum(Value.TMT, "TMT"); - TJR("TJR"), + public static final TransactionCurrencyEnum BEL = new TransactionCurrencyEnum(Value.BEL, "BEL"); - TJS("TJS"), + public static final TransactionCurrencyEnum NIO = new TransactionCurrencyEnum(Value.NIO, "NIO"); - TZS("TZS"), + public static final TransactionCurrencyEnum XUA = new TransactionCurrencyEnum(Value.XUA, "XUA"); - XTS("XTS"), + public static final TransactionCurrencyEnum ETB = new TransactionCurrencyEnum(Value.ETB, "ETB"); - THB("THB"), + public static final TransactionCurrencyEnum MXV = new TransactionCurrencyEnum(Value.MXV, "MXV"); - XXX("XXX"), + public static final TransactionCurrencyEnum VND = new TransactionCurrencyEnum(Value.VND, "VND"); - TPE("TPE"), + public static final TransactionCurrencyEnum MCF = new TransactionCurrencyEnum(Value.MCF, "MCF"); - TOP("TOP"), + public static final TransactionCurrencyEnum MZE = new TransactionCurrencyEnum(Value.MZE, "MZE"); - TTD("TTD"), + public static final TransactionCurrencyEnum BOP = new TransactionCurrencyEnum(Value.BOP, "BOP"); - TND("TND"), + public static final TransactionCurrencyEnum SRG = new TransactionCurrencyEnum(Value.SRG, "SRG"); - TRY("TRY"), + public static final TransactionCurrencyEnum BRN = new TransactionCurrencyEnum(Value.BRN, "BRN"); - TRL("TRL"), + public static final TransactionCurrencyEnum MTP = new TransactionCurrencyEnum(Value.MTP, "MTP"); - TMT("TMT"), + public static final TransactionCurrencyEnum LUL = new TransactionCurrencyEnum(Value.LUL, "LUL"); - TMM("TMM"), + public static final TransactionCurrencyEnum MMK = new TransactionCurrencyEnum(Value.MMK, "MMK"); - USD("USD"), + public static final TransactionCurrencyEnum RSD = new TransactionCurrencyEnum(Value.RSD, "RSD"); - USN("USN"), + public static final TransactionCurrencyEnum UZS = new TransactionCurrencyEnum(Value.UZS, "UZS"); - USS("USS"), + public static final TransactionCurrencyEnum USN = new TransactionCurrencyEnum(Value.USN, "USN"); - UGX("UGX"), + public static final TransactionCurrencyEnum LAK = new TransactionCurrencyEnum(Value.LAK, "LAK"); - UGS("UGS"), + public static final TransactionCurrencyEnum NAD = new TransactionCurrencyEnum(Value.NAD, "NAD"); - UAH("UAH"), + public static final TransactionCurrencyEnum ILS = new TransactionCurrencyEnum(Value.ILS, "ILS"); - UAK("UAK"), + public static final TransactionCurrencyEnum MZM = new TransactionCurrencyEnum(Value.MZM, "MZM"); - AED("AED"), + public static final TransactionCurrencyEnum MZN = new TransactionCurrencyEnum(Value.MZN, "MZN"); - UYW("UYW"), + public static final TransactionCurrencyEnum TPE = new TransactionCurrencyEnum(Value.TPE, "TPE"); - UYU("UYU"), + public static final TransactionCurrencyEnum BAM = new TransactionCurrencyEnum(Value.BAM, "BAM"); - UYP("UYP"), + public static final TransactionCurrencyEnum PLN = new TransactionCurrencyEnum(Value.PLN, "PLN"); - UYI("UYI"), + public static final TransactionCurrencyEnum SZL = new TransactionCurrencyEnum(Value.SZL, "SZL"); - UZS("UZS"), + public static final TransactionCurrencyEnum XBA = new TransactionCurrencyEnum(Value.XBA, "XBA"); - VUV("VUV"), + public static final TransactionCurrencyEnum PEI = new TransactionCurrencyEnum(Value.PEI, "PEI"); - VES("VES"), + public static final TransactionCurrencyEnum ADP = new TransactionCurrencyEnum(Value.ADP, "ADP"); - VEB("VEB"), + public static final TransactionCurrencyEnum FRF = new TransactionCurrencyEnum(Value.FRF, "FRF"); - VEF("VEF"), + public static final TransactionCurrencyEnum CLE = new TransactionCurrencyEnum(Value.CLE, "CLE"); - VND("VND"), + public static final TransactionCurrencyEnum RUR = new TransactionCurrencyEnum(Value.RUR, "RUR"); - VNN("VNN"), + public static final TransactionCurrencyEnum ESB = new TransactionCurrencyEnum(Value.ESB, "ESB"); - CHE("CHE"), + public static final TransactionCurrencyEnum TMM = new TransactionCurrencyEnum(Value.TMM, "TMM"); - CHW("CHW"), + public static final TransactionCurrencyEnum MXN = new TransactionCurrencyEnum(Value.MXN, "MXN"); - XOF("XOF"), + public static final TransactionCurrencyEnum YDD = new TransactionCurrencyEnum(Value.YDD, "YDD"); - YDD("YDD"), + public static final TransactionCurrencyEnum SGD = new TransactionCurrencyEnum(Value.SGD, "SGD"); - YER("YER"), + public static final TransactionCurrencyEnum XFO = new TransactionCurrencyEnum(Value.XFO, "XFO"); - YUN("YUN"), + public static final TransactionCurrencyEnum GMD = new TransactionCurrencyEnum(Value.GMD, "GMD"); - YUD("YUD"), + public static final TransactionCurrencyEnum UGS = new TransactionCurrencyEnum(Value.UGS, "UGS"); - YUM("YUM"), + public static final TransactionCurrencyEnum YUM = new TransactionCurrencyEnum(Value.YUM, "YUM"); - YUR("YUR"), + public static final TransactionCurrencyEnum GNS = new TransactionCurrencyEnum(Value.GNS, "GNS"); - ZWN("ZWN"), + public static final TransactionCurrencyEnum LTL = new TransactionCurrencyEnum(Value.LTL, "LTL"); - ZRN("ZRN"), + public static final TransactionCurrencyEnum NLG = new TransactionCurrencyEnum(Value.NLG, "NLG"); - ZRZ("ZRZ"), + public static final TransactionCurrencyEnum BZD = new TransactionCurrencyEnum(Value.BZD, "BZD"); - ZMW("ZMW"), + public static final TransactionCurrencyEnum CRC = new TransactionCurrencyEnum(Value.CRC, "CRC"); - ZMK("ZMK"), + public static final TransactionCurrencyEnum TRY = new TransactionCurrencyEnum(Value.TRY, "TRY"); - ZWD("ZWD"), + public static final TransactionCurrencyEnum OMR = new TransactionCurrencyEnum(Value.OMR, "OMR"); - ZWR("ZWR"), + public static final TransactionCurrencyEnum BDT = new TransactionCurrencyEnum(Value.BDT, "BDT"); - ZWL("ZWL"); + public static final TransactionCurrencyEnum GBP = new TransactionCurrencyEnum(Value.GBP, "GBP"); - private final String value; + private final Value value; - TransactionCurrencyEnum(String value) { + private final String string; + + TransactionCurrencyEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TransactionCurrencyEnum + && this.string.equals(((TransactionCurrencyEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PES: + return visitor.visitPes(); + case UAK: + return visitor.visitUak(); + case PHP: + return visitor.visitPhp(); + case XAU: + return visitor.visitXau(); + case XCD: + return visitor.visitXcd(); + case MVR: + return visitor.visitMvr(); + case ARP: + return visitor.visitArp(); + case JOD: + return visitor.visitJod(); + case XDR: + return visitor.visitXdr(); + case HKD: + return visitor.visitHkd(); + case INR: + return visitor.visitInr(); + case THB: + return visitor.visitThb(); + case GWP: + return visitor.visitGwp(); + case XXX: + return visitor.visitXxx(); + case ITL: + return visitor.visitItl(); + case STN: + return visitor.visitStn(); + case CAD: + return visitor.visitCad(); + case ESP: + return visitor.visitEsp(); + case XPF: + return visitor.visitXpf(); + case MAF: + return visitor.visitMaf(); + case COP: + return visitor.visitCop(); + case MDC: + return visitor.visitMdc(); + case ZAR: + return visitor.visitZar(); + case MRO: + return visitor.visitMro(); + case VEB: + return visitor.visitVeb(); + case LSL: + return visitor.visitLsl(); + case SKK: + return visitor.visitSkk(); + case VUV: + return visitor.visitVuv(); + case XBB: + return visitor.visitXbb(); + case TND: + return visitor.visitTnd(); + case CSK: + return visitor.visitCsk(); + case IMP: + return visitor.visitImp(); + case AOK: + return visitor.visitAok(); + case GIP: + return visitor.visitGip(); + case ISJ: + return visitor.visitIsj(); + case BMD: + return visitor.visitBmd(); + case LUC: + return visitor.visitLuc(); + case BGN: + return visitor.visitBgn(); + case ARL: + return visitor.visitArl(); + case SSP: + return visitor.visitSsp(); + case MNT: + return visitor.visitMnt(); + case SLL: + return visitor.visitSll(); + case ATS: + return visitor.visitAts(); + case XFU: + return visitor.visitXfu(); + case XRE: + return visitor.visitXre(); + case BAD: + return visitor.visitBad(); + case AZM: + return visitor.visitAzm(); + case BRL: + return visitor.visitBrl(); + case AZN: + return visitor.visitAzn(); + case TWD: + return visitor.visitTwd(); + case NOK: + return visitor.visitNok(); + case SIT: + return visitor.visitSit(); + case KZT: + return visitor.visitKzt(); + case GQE: + return visitor.visitGqe(); + case ILR: + return visitor.visitIlr(); + case GHS: + return visitor.visitGhs(); + case VNN: + return visitor.visitVnn(); + case COU: + return visitor.visitCou(); + case CDF: + return visitor.visitCdf(); + case EGP: + return visitor.visitEgp(); + case KPW: + return visitor.visitKpw(); + case VEF: + return visitor.visitVef(); + case XBC: + return visitor.visitXbc(); + case SDG: + return visitor.visitSdg(); + case GRD: + return visitor.visitGrd(); + case MDL: + return visitor.visitMdl(); + case BEF: + return visitor.visitBef(); + case SBD: + return visitor.visitSbd(); + case AUD: + return visitor.visitAud(); + case BRE: + return visitor.visitBre(); + case ISK: + return visitor.visitIsk(); + case HTG: + return visitor.visitHtg(); + case KGS: + return visitor.visitKgs(); + case AON: + return visitor.visitAon(); + case BGM: + return visitor.visitBgm(); + case HRD: + return visitor.visitHrd(); + case UYW: + return visitor.visitUyw(); + case KES: + return visitor.visitKes(); + case SDP: + return visitor.visitSdp(); + case PLZ: + return visitor.visitPlz(); + case CLP: + return visitor.visitClp(); + case KHR: + return visitor.visitKhr(); + case NGN: + return visitor.visitNgn(); + case NZD: + return visitor.visitNzd(); + case HRK: + return visitor.visitHrk(); + case IDR: + return visitor.visitIdr(); + case MYR: + return visitor.visitMyr(); + case BWP: + return visitor.visitBwp(); + case BIF: + return visitor.visitBif(); + case PKR: + return visitor.visitPkr(); + case ZWD: + return visitor.visitZwd(); + case FJD: + return visitor.visitFjd(); + case MGA: + return visitor.visitMga(); + case PGK: + return visitor.visitPgk(); + case JPY: + return visitor.visitJpy(); + case GYD: + return visitor.visitGyd(); + case NIC: + return visitor.visitNic(); + case SOS: + return visitor.visitSos(); + case LKR: + return visitor.visitLkr(); + case MKN: + return visitor.visitMkn(); + case MLF: + return visitor.visitMlf(); + case KMF: + return visitor.visitKmf(); + case HNL: + return visitor.visitHnl(); + case GHC: + return visitor.visitGhc(); + case GWE: + return visitor.visitGwe(); + case TJS: + return visitor.visitTjs(); + case SCR: + return visitor.visitScr(); + case PEN: + return visitor.visitPen(); + case USD: + return visitor.visitUsd(); + case LBP: + return visitor.visitLbp(); + case GEL: + return visitor.visitGel(); + case MTL: + return visitor.visitMtl(); + case SRD: + return visitor.visitSrd(); + case XSU: + return visitor.visitXsu(); + case MWK: + return visitor.visitMwk(); + case VES: + return visitor.visitVes(); + case BND: + return visitor.visitBnd(); + case AOA: + return visitor.visitAoa(); + case ZMW: + return visitor.visitZmw(); + case CNX: + return visitor.visitCnx(); + case ILP: + return visitor.visitIlp(); + case SYP: + return visitor.visitSyp(); + case JMD: + return visitor.visitJmd(); + case UYI: + return visitor.visitUyi(); + case BRR: + return visitor.visitBrr(); + case XAF: + return visitor.visitXaf(); + case FIM: + return visitor.visitFim(); + case CZK: + return visitor.visitCzk(); + case AED: + return visitor.visitAed(); + case USS: + return visitor.visitUss(); + case EEK: + return visitor.visitEek(); + case CVE: + return visitor.visitCve(); + case CNH: + return visitor.visitCnh(); + case QAR: + return visitor.visitQar(); + case TOP: + return visitor.visitTop(); + case ZWL: + return visitor.visitZwl(); + case TJR: + return visitor.visitTjr(); + case UYP: + return visitor.visitUyp(); + case BRC: + return visitor.visitBrc(); + case BRZ: + return visitor.visitBrz(); + case ERN: + return visitor.visitErn(); + case ZRN: + return visitor.visitZrn(); + case SUR: + return visitor.visitSur(); + case RHD: + return visitor.visitRhd(); + case RWF: + return visitor.visitRwf(); + case BGO: + return visitor.visitBgo(); + case GEK: + return visitor.visitGek(); + case BOL: + return visitor.visitBol(); + case SAR: + return visitor.visitSar(); + case MVP: + return visitor.visitMvp(); + case BTN: + return visitor.visitBtn(); + case ZAL: + return visitor.visitZal(); + case TZS: + return visitor.visitTzs(); + case DJF: + return visitor.visitDjf(); + case GTQ: + return visitor.visitGtq(); + case ECS: + return visitor.visitEcs(); + case CHF: + return visitor.visitChf(); + case ANG: + return visitor.visitAng(); + case BSD: + return visitor.visitBsd(); + case LTT: + return visitor.visitLtt(); + case MAD: + return visitor.visitMad(); + case XPD: + return visitor.visitXpd(); + case MOP: + return visitor.visitMop(); + case BYB: + return visitor.visitByb(); + case LYD: + return visitor.visitLyd(); + case XTS: + return visitor.visitXts(); + case KWD: + return visitor.visitKwd(); + case BAN: + return visitor.visitBan(); + case SVC: + return visitor.visitSvc(); + case ALL: + return visitor.visitAll(); + case SHP: + return visitor.visitShp(); + case MGF: + return visitor.visitMgf(); + case MRU: + return visitor.visitMru(); + case BRB: + return visitor.visitBrb(); + case CUP: + return visitor.visitCup(); + case LRD: + return visitor.visitLrd(); + case MUR: + return visitor.visitMur(); + case PAB: + return visitor.visitPab(); + case KRH: + return visitor.visitKrh(); + case XBD: + return visitor.visitXbd(); + case YER: + return visitor.visitYer(); + case AFA: + return visitor.visitAfa(); + case BGL: + return visitor.visitBgl(); + case STD: + return visitor.visitStd(); + case NPR: + return visitor.visitNpr(); + case XPT: + return visitor.visitXpt(); + case UGX: + return visitor.visitUgx(); + case YUR: + return visitor.visitYur(); + case TTD: + return visitor.visitTtd(); + case BYR: + return visitor.visitByr(); + case EUR: + return visitor.visitEur(); + case SEK: + return visitor.visitSek(); + case KYD: + return visitor.visitKyd(); + case GNF: + return visitor.visitGnf(); + case BUK: + return visitor.visitBuk(); + case AFN: + return visitor.visitAfn(); + case CNY: + return visitor.visitCny(); + case PYG: + return visitor.visitPyg(); + case CSD: + return visitor.visitCsd(); + case BOV: + return visitor.visitBov(); + case XAG: + return visitor.visitXag(); + case ARA: + return visitor.visitAra(); + case DEM: + return visitor.visitDem(); + case BOB: + return visitor.visitBob(); + case ALK: + return visitor.visitAlk(); + case IEP: + return visitor.visitIep(); + case XEU: + return visitor.visitXeu(); + case AWG: + return visitor.visitAwg(); + case DKK: + return visitor.visitDkk(); + case IQD: + return visitor.visitIqd(); + case MXP: + return visitor.visitMxp(); + case TVD: + return visitor.visitTvd(); + case ZWN: + return visitor.visitZwn(); + case XOF: + return visitor.visitXof(); + case WST: + return visitor.visitWst(); + case UAH: + return visitor.visitUah(); + case BYN: + return visitor.visitByn(); + case LUF: + return visitor.visitLuf(); + case ZWR: + return visitor.visitZwr(); + case ARM: + return visitor.visitArm(); + case KRO: + return visitor.visitKro(); + case AOR: + return visitor.visitAor(); + case ROL: + return visitor.visitRol(); + case DDM: + return visitor.visitDdm(); + case CHE: + return visitor.visitChe(); + case CUC: + return visitor.visitCuc(); + case RON: + return visitor.visitRon(); + case MKD: + return visitor.visitMkd(); + case HUF: + return visitor.visitHuf(); + case ARS: + return visitor.visitArs(); + case CYP: + return visitor.visitCyp(); + case ECV: + return visitor.visitEcv(); + case DZD: + return visitor.visitDzd(); + case PTE: + return visitor.visitPte(); + case FKP: + return visitor.visitFkp(); + case KRW: + return visitor.visitKrw(); + case YUD: + return visitor.visitYud(); + case ZRZ: + return visitor.visitZrz(); + case BBD: + return visitor.visitBbd(); + case DOP: + return visitor.visitDop(); + case SDD: + return visitor.visitSdd(); + case TRL: + return visitor.visitTrl(); + case AMD: + return visitor.visitAmd(); + case BEC: + return visitor.visitBec(); + case ESA: + return visitor.visitEsa(); + case LVL: + return visitor.visitLvl(); + case CLF: + return visitor.visitClf(); + case ZMK: + return visitor.visitZmk(); + case IRR: + return visitor.visitIrr(); + case YUN: + return visitor.visitYun(); + case BHD: + return visitor.visitBhd(); + case LVR: + return visitor.visitLvr(); + case CHW: + return visitor.visitChw(); + case RUB: + return visitor.visitRub(); + case UYU: + return visitor.visitUyu(); + case TMT: + return visitor.visitTmt(); + case BEL: + return visitor.visitBel(); + case NIO: + return visitor.visitNio(); + case XUA: + return visitor.visitXua(); + case ETB: + return visitor.visitEtb(); + case MXV: + return visitor.visitMxv(); + case VND: + return visitor.visitVnd(); + case MCF: + return visitor.visitMcf(); + case MZE: + return visitor.visitMze(); + case BOP: + return visitor.visitBop(); + case SRG: + return visitor.visitSrg(); + case BRN: + return visitor.visitBrn(); + case MTP: + return visitor.visitMtp(); + case LUL: + return visitor.visitLul(); + case MMK: + return visitor.visitMmk(); + case RSD: + return visitor.visitRsd(); + case UZS: + return visitor.visitUzs(); + case USN: + return visitor.visitUsn(); + case LAK: + return visitor.visitLak(); + case NAD: + return visitor.visitNad(); + case ILS: + return visitor.visitIls(); + case MZM: + return visitor.visitMzm(); + case MZN: + return visitor.visitMzn(); + case TPE: + return visitor.visitTpe(); + case BAM: + return visitor.visitBam(); + case PLN: + return visitor.visitPln(); + case SZL: + return visitor.visitSzl(); + case XBA: + return visitor.visitXba(); + case PEI: + return visitor.visitPei(); + case ADP: + return visitor.visitAdp(); + case FRF: + return visitor.visitFrf(); + case CLE: + return visitor.visitCle(); + case RUR: + return visitor.visitRur(); + case ESB: + return visitor.visitEsb(); + case TMM: + return visitor.visitTmm(); + case MXN: + return visitor.visitMxn(); + case YDD: + return visitor.visitYdd(); + case SGD: + return visitor.visitSgd(); + case XFO: + return visitor.visitXfo(); + case GMD: + return visitor.visitGmd(); + case UGS: + return visitor.visitUgs(); + case YUM: + return visitor.visitYum(); + case GNS: + return visitor.visitGns(); + case LTL: + return visitor.visitLtl(); + case NLG: + return visitor.visitNlg(); + case BZD: + return visitor.visitBzd(); + case CRC: + return visitor.visitCrc(); + case TRY: + return visitor.visitTry(); + case OMR: + return visitor.visitOmr(); + case BDT: + return visitor.visitBdt(); + case GBP: + return visitor.visitGbp(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TransactionCurrencyEnum valueOf(String value) { + switch (value) { + case "PES": + return PES; + case "UAK": + return UAK; + case "PHP": + return PHP; + case "XAU": + return XAU; + case "XCD": + return XCD; + case "MVR": + return MVR; + case "ARP": + return ARP; + case "JOD": + return JOD; + case "XDR": + return XDR; + case "HKD": + return HKD; + case "INR": + return INR; + case "THB": + return THB; + case "GWP": + return GWP; + case "XXX": + return XXX; + case "ITL": + return ITL; + case "STN": + return STN; + case "CAD": + return CAD; + case "ESP": + return ESP; + case "XPF": + return XPF; + case "MAF": + return MAF; + case "COP": + return COP; + case "MDC": + return MDC; + case "ZAR": + return ZAR; + case "MRO": + return MRO; + case "VEB": + return VEB; + case "LSL": + return LSL; + case "SKK": + return SKK; + case "VUV": + return VUV; + case "XBB": + return XBB; + case "TND": + return TND; + case "CSK": + return CSK; + case "IMP": + return IMP; + case "AOK": + return AOK; + case "GIP": + return GIP; + case "ISJ": + return ISJ; + case "BMD": + return BMD; + case "LUC": + return LUC; + case "BGN": + return BGN; + case "ARL": + return ARL; + case "SSP": + return SSP; + case "MNT": + return MNT; + case "SLL": + return SLL; + case "ATS": + return ATS; + case "XFU": + return XFU; + case "XRE": + return XRE; + case "BAD": + return BAD; + case "AZM": + return AZM; + case "BRL": + return BRL; + case "AZN": + return AZN; + case "TWD": + return TWD; + case "NOK": + return NOK; + case "SIT": + return SIT; + case "KZT": + return KZT; + case "GQE": + return GQE; + case "ILR": + return ILR; + case "GHS": + return GHS; + case "VNN": + return VNN; + case "COU": + return COU; + case "CDF": + return CDF; + case "EGP": + return EGP; + case "KPW": + return KPW; + case "VEF": + return VEF; + case "XBC": + return XBC; + case "SDG": + return SDG; + case "GRD": + return GRD; + case "MDL": + return MDL; + case "BEF": + return BEF; + case "SBD": + return SBD; + case "AUD": + return AUD; + case "BRE": + return BRE; + case "ISK": + return ISK; + case "HTG": + return HTG; + case "KGS": + return KGS; + case "AON": + return AON; + case "BGM": + return BGM; + case "HRD": + return HRD; + case "UYW": + return UYW; + case "KES": + return KES; + case "SDP": + return SDP; + case "PLZ": + return PLZ; + case "CLP": + return CLP; + case "KHR": + return KHR; + case "NGN": + return NGN; + case "NZD": + return NZD; + case "HRK": + return HRK; + case "IDR": + return IDR; + case "MYR": + return MYR; + case "BWP": + return BWP; + case "BIF": + return BIF; + case "PKR": + return PKR; + case "ZWD": + return ZWD; + case "FJD": + return FJD; + case "MGA": + return MGA; + case "PGK": + return PGK; + case "JPY": + return JPY; + case "GYD": + return GYD; + case "NIC": + return NIC; + case "SOS": + return SOS; + case "LKR": + return LKR; + case "MKN": + return MKN; + case "MLF": + return MLF; + case "KMF": + return KMF; + case "HNL": + return HNL; + case "GHC": + return GHC; + case "GWE": + return GWE; + case "TJS": + return TJS; + case "SCR": + return SCR; + case "PEN": + return PEN; + case "USD": + return USD; + case "LBP": + return LBP; + case "GEL": + return GEL; + case "MTL": + return MTL; + case "SRD": + return SRD; + case "XSU": + return XSU; + case "MWK": + return MWK; + case "VES": + return VES; + case "BND": + return BND; + case "AOA": + return AOA; + case "ZMW": + return ZMW; + case "CNX": + return CNX; + case "ILP": + return ILP; + case "SYP": + return SYP; + case "JMD": + return JMD; + case "UYI": + return UYI; + case "BRR": + return BRR; + case "XAF": + return XAF; + case "FIM": + return FIM; + case "CZK": + return CZK; + case "AED": + return AED; + case "USS": + return USS; + case "EEK": + return EEK; + case "CVE": + return CVE; + case "CNH": + return CNH; + case "QAR": + return QAR; + case "TOP": + return TOP; + case "ZWL": + return ZWL; + case "TJR": + return TJR; + case "UYP": + return UYP; + case "BRC": + return BRC; + case "BRZ": + return BRZ; + case "ERN": + return ERN; + case "ZRN": + return ZRN; + case "SUR": + return SUR; + case "RHD": + return RHD; + case "RWF": + return RWF; + case "BGO": + return BGO; + case "GEK": + return GEK; + case "BOL": + return BOL; + case "SAR": + return SAR; + case "MVP": + return MVP; + case "BTN": + return BTN; + case "ZAL": + return ZAL; + case "TZS": + return TZS; + case "DJF": + return DJF; + case "GTQ": + return GTQ; + case "ECS": + return ECS; + case "CHF": + return CHF; + case "ANG": + return ANG; + case "BSD": + return BSD; + case "LTT": + return LTT; + case "MAD": + return MAD; + case "XPD": + return XPD; + case "MOP": + return MOP; + case "BYB": + return BYB; + case "LYD": + return LYD; + case "XTS": + return XTS; + case "KWD": + return KWD; + case "BAN": + return BAN; + case "SVC": + return SVC; + case "ALL": + return ALL; + case "SHP": + return SHP; + case "MGF": + return MGF; + case "MRU": + return MRU; + case "BRB": + return BRB; + case "CUP": + return CUP; + case "LRD": + return LRD; + case "MUR": + return MUR; + case "PAB": + return PAB; + case "KRH": + return KRH; + case "XBD": + return XBD; + case "YER": + return YER; + case "AFA": + return AFA; + case "BGL": + return BGL; + case "STD": + return STD; + case "NPR": + return NPR; + case "XPT": + return XPT; + case "UGX": + return UGX; + case "YUR": + return YUR; + case "TTD": + return TTD; + case "BYR": + return BYR; + case "EUR": + return EUR; + case "SEK": + return SEK; + case "KYD": + return KYD; + case "GNF": + return GNF; + case "BUK": + return BUK; + case "AFN": + return AFN; + case "CNY": + return CNY; + case "PYG": + return PYG; + case "CSD": + return CSD; + case "BOV": + return BOV; + case "XAG": + return XAG; + case "ARA": + return ARA; + case "DEM": + return DEM; + case "BOB": + return BOB; + case "ALK": + return ALK; + case "IEP": + return IEP; + case "XEU": + return XEU; + case "AWG": + return AWG; + case "DKK": + return DKK; + case "IQD": + return IQD; + case "MXP": + return MXP; + case "TVD": + return TVD; + case "ZWN": + return ZWN; + case "XOF": + return XOF; + case "WST": + return WST; + case "UAH": + return UAH; + case "BYN": + return BYN; + case "LUF": + return LUF; + case "ZWR": + return ZWR; + case "ARM": + return ARM; + case "KRO": + return KRO; + case "AOR": + return AOR; + case "ROL": + return ROL; + case "DDM": + return DDM; + case "CHE": + return CHE; + case "CUC": + return CUC; + case "RON": + return RON; + case "MKD": + return MKD; + case "HUF": + return HUF; + case "ARS": + return ARS; + case "CYP": + return CYP; + case "ECV": + return ECV; + case "DZD": + return DZD; + case "PTE": + return PTE; + case "FKP": + return FKP; + case "KRW": + return KRW; + case "YUD": + return YUD; + case "ZRZ": + return ZRZ; + case "BBD": + return BBD; + case "DOP": + return DOP; + case "SDD": + return SDD; + case "TRL": + return TRL; + case "AMD": + return AMD; + case "BEC": + return BEC; + case "ESA": + return ESA; + case "LVL": + return LVL; + case "CLF": + return CLF; + case "ZMK": + return ZMK; + case "IRR": + return IRR; + case "YUN": + return YUN; + case "BHD": + return BHD; + case "LVR": + return LVR; + case "CHW": + return CHW; + case "RUB": + return RUB; + case "UYU": + return UYU; + case "TMT": + return TMT; + case "BEL": + return BEL; + case "NIO": + return NIO; + case "XUA": + return XUA; + case "ETB": + return ETB; + case "MXV": + return MXV; + case "VND": + return VND; + case "MCF": + return MCF; + case "MZE": + return MZE; + case "BOP": + return BOP; + case "SRG": + return SRG; + case "BRN": + return BRN; + case "MTP": + return MTP; + case "LUL": + return LUL; + case "MMK": + return MMK; + case "RSD": + return RSD; + case "UZS": + return UZS; + case "USN": + return USN; + case "LAK": + return LAK; + case "NAD": + return NAD; + case "ILS": + return ILS; + case "MZM": + return MZM; + case "MZN": + return MZN; + case "TPE": + return TPE; + case "BAM": + return BAM; + case "PLN": + return PLN; + case "SZL": + return SZL; + case "XBA": + return XBA; + case "PEI": + return PEI; + case "ADP": + return ADP; + case "FRF": + return FRF; + case "CLE": + return CLE; + case "RUR": + return RUR; + case "ESB": + return ESB; + case "TMM": + return TMM; + case "MXN": + return MXN; + case "YDD": + return YDD; + case "SGD": + return SGD; + case "XFO": + return XFO; + case "GMD": + return GMD; + case "UGS": + return UGS; + case "YUM": + return YUM; + case "GNS": + return GNS; + case "LTL": + return LTL; + case "NLG": + return NLG; + case "BZD": + return BZD; + case "CRC": + return CRC; + case "TRY": + return TRY; + case "OMR": + return OMR; + case "BDT": + return BDT; + case "GBP": + return GBP; + default: + return new TransactionCurrencyEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + XUA, + + AFN, + + AFA, + + ALL, + + ALK, + + DZD, + + ADP, + + AOA, + + AOK, + + AON, + + AOR, + + ARA, + + ARS, + + ARM, + + ARP, + + ARL, + + AMD, + + AWG, + + AUD, + + ATS, + + AZN, + + AZM, + + BSD, + + BHD, + + BDT, + + BBD, + + BYN, + + BYB, + + BYR, + + BEF, + + BEC, + + BEL, + + BZD, + + BMD, + + BTN, + + BOB, + + BOL, + + BOV, + + BOP, + + BAM, + + BAD, + + BAN, + + BWP, + + BRC, + + BRZ, + + BRE, + + BRR, + + BRN, + + BRB, + + BRL, + + GBP, + + BND, + + BGL, + + BGN, + + BGO, + + BGM, + + BUK, + + BIF, + + XPF, + + KHR, + + CAD, + + CVE, + + KYD, + + XAF, + + CLE, + + CLP, + + CLF, + + CNX, + + CNY, + + CNH, + + COP, + + COU, + + KMF, + + CDF, + + CRC, + + HRD, + + HRK, + + CUC, + + CUP, + + CYP, + + CZK, + + CSK, + + DKK, + + DJF, + + DOP, + + NLG, + + XCD, + + DDM, + + ECS, + + ECV, + + EGP, + + GQE, + + ERN, + + EEK, + + ETB, + + EUR, + + XBA, + + XEU, + + XBB, + + XBC, + + XBD, + + FKP, + + FJD, + + FIM, + + FRF, + + XFO, + + XFU, + + GMD, + + GEK, + + GEL, + + DEM, + + GHS, + + GHC, + + GIP, + + XAU, + + GRD, + + GTQ, + + GWP, + + GNF, + + GNS, + + GYD, + + HTG, + + HNL, + + HKD, + + HUF, + + IMP, + + ISK, + + ISJ, + + INR, + + IDR, + + IRR, + + IQD, + + IEP, + + ILS, + + ILP, + + ILR, + + ITL, + + JMD, + + JPY, + + JOD, + + KZT, + + KES, + + KWD, + + KGS, + + LAK, + + LVL, + + LVR, + + LBP, + + LSL, + + LRD, + + LYD, + + LTL, + + LTT, + + LUL, + + LUC, + + LUF, + + MOP, + + MKD, + + MKN, + + MGA, + + MGF, + + MWK, + + MYR, + + MVR, + + MVP, + + MLF, + + MTL, + + MTP, + + MRU, + + MRO, + + MUR, + + MXV, + + MXN, + + MXP, + + MDC, + + MDL, + + MCF, + + MNT, + + MAD, + + MAF, + + MZE, + + MZN, + + MZM, + + MMK, + + NAD, + + NPR, + + ANG, + + TWD, + + NZD, + + NIO, + + NIC, + + NGN, + + KPW, + + NOK, + + OMR, + + PKR, + + XPD, + + PAB, + + PGK, + + PYG, + + PEI, + + PEN, + + PES, + + PHP, + + XPT, + + PLN, + + PLZ, + + PTE, + + GWE, + + QAR, + + XRE, + + RHD, + + RON, + + ROL, + + RUB, + + RUR, + + RWF, + + SVC, + + WST, + + SAR, + + RSD, + + CSD, + + SCR, + + SLL, + + XAG, + + SGD, + + SKK, + + SIT, + + SBD, + + SOS, + + ZAR, + + ZAL, + + KRH, + + KRW, + + KRO, + + SSP, + + SUR, + + ESP, + + ESA, + + ESB, + + XDR, + + LKR, + + SHP, + + XSU, + + SDD, + + SDG, + + SDP, + + SRD, + + SRG, + + SZL, + + SEK, + + CHF, + + SYP, + + STN, + + STD, + + TVD, + + TJR, + + TJS, + + TZS, + + XTS, + + THB, + + XXX, + + TPE, + + TOP, + + TTD, + + TND, + + TRY, + + TRL, + + TMT, + + TMM, + + USD, + + USN, + + USS, + + UGX, + + UGS, + + UAH, + + UAK, + + AED, + + UYW, + + UYU, + + UYP, + + UYI, + + UZS, + + VUV, + + VES, + + VEB, + + VEF, + + VND, + + VNN, + + CHE, + + CHW, + + XOF, + + YDD, + + YER, + + YUN, + + YUD, + + YUM, + + YUR, + + ZWN, + + ZRN, + + ZRZ, + + ZMW, + + ZMK, + + ZWD, + + ZWR, + + ZWL, + + UNKNOWN + } + + public interface Visitor { + T visitXua(); + + T visitAfn(); + + T visitAfa(); + + T visitAll(); + + T visitAlk(); + + T visitDzd(); + + T visitAdp(); + + T visitAoa(); + + T visitAok(); + + T visitAon(); + + T visitAor(); + + T visitAra(); + + T visitArs(); + + T visitArm(); + + T visitArp(); + + T visitArl(); + + T visitAmd(); + + T visitAwg(); + + T visitAud(); + + T visitAts(); + + T visitAzn(); + + T visitAzm(); + + T visitBsd(); + + T visitBhd(); + + T visitBdt(); + + T visitBbd(); + + T visitByn(); + + T visitByb(); + + T visitByr(); + + T visitBef(); + + T visitBec(); + + T visitBel(); + + T visitBzd(); + + T visitBmd(); + + T visitBtn(); + + T visitBob(); + + T visitBol(); + + T visitBov(); + + T visitBop(); + + T visitBam(); + + T visitBad(); + + T visitBan(); + + T visitBwp(); + + T visitBrc(); + + T visitBrz(); + + T visitBre(); + + T visitBrr(); + + T visitBrn(); + + T visitBrb(); + + T visitBrl(); + + T visitGbp(); + + T visitBnd(); + + T visitBgl(); + + T visitBgn(); + + T visitBgo(); + + T visitBgm(); + + T visitBuk(); + + T visitBif(); + + T visitXpf(); + + T visitKhr(); + + T visitCad(); + + T visitCve(); + + T visitKyd(); + + T visitXaf(); + + T visitCle(); + + T visitClp(); + + T visitClf(); + + T visitCnx(); + + T visitCny(); + + T visitCnh(); + + T visitCop(); + + T visitCou(); + + T visitKmf(); + + T visitCdf(); + + T visitCrc(); + + T visitHrd(); + + T visitHrk(); + + T visitCuc(); + + T visitCup(); + + T visitCyp(); + + T visitCzk(); + + T visitCsk(); + + T visitDkk(); + + T visitDjf(); + + T visitDop(); + + T visitNlg(); + + T visitXcd(); + + T visitDdm(); + + T visitEcs(); + + T visitEcv(); + + T visitEgp(); + + T visitGqe(); + + T visitErn(); + + T visitEek(); + + T visitEtb(); + + T visitEur(); + + T visitXba(); + + T visitXeu(); + + T visitXbb(); + + T visitXbc(); + + T visitXbd(); + + T visitFkp(); + + T visitFjd(); + + T visitFim(); + + T visitFrf(); + + T visitXfo(); + + T visitXfu(); + + T visitGmd(); + + T visitGek(); + + T visitGel(); + + T visitDem(); + + T visitGhs(); + + T visitGhc(); + + T visitGip(); + + T visitXau(); + + T visitGrd(); + + T visitGtq(); + + T visitGwp(); + + T visitGnf(); + + T visitGns(); + + T visitGyd(); + + T visitHtg(); + + T visitHnl(); + + T visitHkd(); + + T visitHuf(); + + T visitImp(); + + T visitIsk(); + + T visitIsj(); + + T visitInr(); + + T visitIdr(); + + T visitIrr(); + + T visitIqd(); + + T visitIep(); + + T visitIls(); + + T visitIlp(); + + T visitIlr(); + + T visitItl(); + + T visitJmd(); + + T visitJpy(); + + T visitJod(); + + T visitKzt(); + + T visitKes(); + + T visitKwd(); + + T visitKgs(); + + T visitLak(); + + T visitLvl(); + + T visitLvr(); + + T visitLbp(); + + T visitLsl(); + + T visitLrd(); + + T visitLyd(); + + T visitLtl(); + + T visitLtt(); + + T visitLul(); + + T visitLuc(); + + T visitLuf(); + + T visitMop(); + + T visitMkd(); + + T visitMkn(); + + T visitMga(); + + T visitMgf(); + + T visitMwk(); + + T visitMyr(); + + T visitMvr(); + + T visitMvp(); + + T visitMlf(); + + T visitMtl(); + + T visitMtp(); + + T visitMru(); + + T visitMro(); + + T visitMur(); + + T visitMxv(); + + T visitMxn(); + + T visitMxp(); + + T visitMdc(); + + T visitMdl(); + + T visitMcf(); + + T visitMnt(); + + T visitMad(); + + T visitMaf(); + + T visitMze(); + + T visitMzn(); + + T visitMzm(); + + T visitMmk(); + + T visitNad(); + + T visitNpr(); + + T visitAng(); + + T visitTwd(); + + T visitNzd(); + + T visitNio(); + + T visitNic(); + + T visitNgn(); + + T visitKpw(); + + T visitNok(); + + T visitOmr(); + + T visitPkr(); + + T visitXpd(); + + T visitPab(); + + T visitPgk(); + + T visitPyg(); + + T visitPei(); + + T visitPen(); + + T visitPes(); + + T visitPhp(); + + T visitXpt(); + + T visitPln(); + + T visitPlz(); + + T visitPte(); + + T visitGwe(); + + T visitQar(); + + T visitXre(); + + T visitRhd(); + + T visitRon(); + + T visitRol(); + + T visitRub(); + + T visitRur(); + + T visitRwf(); + + T visitSvc(); + + T visitWst(); + + T visitSar(); + + T visitRsd(); + + T visitCsd(); + + T visitScr(); + + T visitSll(); + + T visitXag(); + + T visitSgd(); + + T visitSkk(); + + T visitSit(); + + T visitSbd(); + + T visitSos(); + + T visitZar(); + + T visitZal(); + + T visitKrh(); + + T visitKrw(); + + T visitKro(); + + T visitSsp(); + + T visitSur(); + + T visitEsp(); + + T visitEsa(); + + T visitEsb(); + + T visitXdr(); + + T visitLkr(); + + T visitShp(); + + T visitXsu(); + + T visitSdd(); + + T visitSdg(); + + T visitSdp(); + + T visitSrd(); + + T visitSrg(); + + T visitSzl(); + + T visitSek(); + + T visitChf(); + + T visitSyp(); + + T visitStn(); + + T visitStd(); + + T visitTvd(); + + T visitTjr(); + + T visitTjs(); + + T visitTzs(); + + T visitXts(); + + T visitThb(); + + T visitXxx(); + + T visitTpe(); + + T visitTop(); + + T visitTtd(); + + T visitTnd(); + + T visitTry(); + + T visitTrl(); + + T visitTmt(); + + T visitTmm(); + + T visitUsd(); + + T visitUsn(); + + T visitUss(); + + T visitUgx(); + + T visitUgs(); + + T visitUah(); + + T visitUak(); + + T visitAed(); + + T visitUyw(); + + T visitUyu(); + + T visitUyp(); + + T visitUyi(); + + T visitUzs(); + + T visitVuv(); + + T visitVes(); + + T visitVeb(); + + T visitVef(); + + T visitVnd(); + + T visitVnn(); + + T visitChe(); + + T visitChw(); + + T visitXof(); + + T visitYdd(); + + T visitYer(); + + T visitYun(); + + T visitYud(); + + T visitYum(); + + T visitYur(); + + T visitZwn(); + + T visitZrn(); + + T visitZrz(); + + T visitZmw(); + + T visitZmk(); + + T visitZwd(); + + T visitZwr(); + + T visitZwl(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/TransactionsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/TransactionsListRequestExpandItem.java index 352d734e1..988b2f696 100644 --- a/src/main/java/com/merge/api/accounting/types/TransactionsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/TransactionsListRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TransactionsListRequestExpandItem { - ACCOUNT("account"), +public final class TransactionsListRequestExpandItem { + public static final TransactionsListRequestExpandItem ACCOUNTING_PERIOD = + new TransactionsListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final TransactionsListRequestExpandItem LINE_ITEMS = + new TransactionsListRequestExpandItem(Value.LINE_ITEMS, "line_items"); - CONTACT("contact"), + public static final TransactionsListRequestExpandItem TRACKING_CATEGORIES = + new TransactionsListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINE_ITEMS("line_items"), + public static final TransactionsListRequestExpandItem ACCOUNT = + new TransactionsListRequestExpandItem(Value.ACCOUNT, "account"); - TRACKING_CATEGORIES("tracking_categories"); + public static final TransactionsListRequestExpandItem CONTACT = + new TransactionsListRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - TransactionsListRequestExpandItem(String value) { + private final String string; + + TransactionsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TransactionsListRequestExpandItem + && this.string.equals(((TransactionsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TransactionsListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "contact": + return CONTACT; + default: + return new TransactionsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + CONTACT, + + LINE_ITEMS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitContact(); + + T visitLineItems(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/TransactionsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/TransactionsRetrieveRequestExpandItem.java index 0f0a9a430..a2a4f8075 100644 --- a/src/main/java/com/merge/api/accounting/types/TransactionsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/TransactionsRetrieveRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TransactionsRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class TransactionsRetrieveRequestExpandItem { + public static final TransactionsRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new TransactionsRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - ACCOUNTING_PERIOD("accounting_period"), + public static final TransactionsRetrieveRequestExpandItem LINE_ITEMS = + new TransactionsRetrieveRequestExpandItem(Value.LINE_ITEMS, "line_items"); - CONTACT("contact"), + public static final TransactionsRetrieveRequestExpandItem TRACKING_CATEGORIES = + new TransactionsRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINE_ITEMS("line_items"), + public static final TransactionsRetrieveRequestExpandItem ACCOUNT = + new TransactionsRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - TRACKING_CATEGORIES("tracking_categories"); + public static final TransactionsRetrieveRequestExpandItem CONTACT = + new TransactionsRetrieveRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - TransactionsRetrieveRequestExpandItem(String value) { + private final String string; + + TransactionsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TransactionsRetrieveRequestExpandItem + && this.string.equals(((TransactionsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case LINE_ITEMS: + return visitor.visitLineItems(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case ACCOUNT: + return visitor.visitAccount(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TransactionsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "line_items": + return LINE_ITEMS; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "account": + return ACCOUNT; + case "contact": + return CONTACT; + default: + return new TransactionsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ACCOUNTING_PERIOD, + + CONTACT, + + LINE_ITEMS, + + TRACKING_CATEGORIES, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAccountingPeriod(); + + T visitContact(); + + T visitLineItems(); + + T visitTrackingCategories(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/Type2BbEnum.java b/src/main/java/com/merge/api/accounting/types/Type2BbEnum.java index 22d8fd561..15f3349b9 100644 --- a/src/main/java/com/merge/api/accounting/types/Type2BbEnum.java +++ b/src/main/java/com/merge/api/accounting/types/Type2BbEnum.java @@ -3,26 +3,100 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum Type2BbEnum { - INVENTORY("INVENTORY"), +public final class Type2BbEnum { + public static final Type2BbEnum NON_INVENTORY = new Type2BbEnum(Value.NON_INVENTORY, "NON_INVENTORY"); - NON_INVENTORY("NON_INVENTORY"), + public static final Type2BbEnum INVENTORY = new Type2BbEnum(Value.INVENTORY, "INVENTORY"); - SERVICE("SERVICE"), + public static final Type2BbEnum SERVICE = new Type2BbEnum(Value.SERVICE, "SERVICE"); - UNKNOWN("UNKNOWN"); + public static final Type2BbEnum UNKNOWN = new Type2BbEnum(Value.UNKNOWN, "UNKNOWN"); - private final String value; + private final Value value; - Type2BbEnum(String value) { + private final String string; + + Type2BbEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof Type2BbEnum && this.string.equals(((Type2BbEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NON_INVENTORY: + return visitor.visitNonInventory(); + case INVENTORY: + return visitor.visitInventory(); + case SERVICE: + return visitor.visitService(); + case UNKNOWN: + return visitor.visitUnknown(); + case _UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static Type2BbEnum valueOf(String value) { + switch (value) { + case "NON_INVENTORY": + return NON_INVENTORY; + case "INVENTORY": + return INVENTORY; + case "SERVICE": + return SERVICE; + case "UNKNOWN": + return UNKNOWN; + default: + return new Type2BbEnum(Value._UNKNOWN, value); + } + } + + public enum Value { + INVENTORY, + + NON_INVENTORY, + + SERVICE, + + UNKNOWN, + + _UNKNOWN + } + + public interface Visitor { + T visitInventory(); + + T visitNonInventory(); + + T visitService(); + + T visitUnknown(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/UnderlyingTransactionTypeEnum.java b/src/main/java/com/merge/api/accounting/types/UnderlyingTransactionTypeEnum.java index 992ff11ce..122b65382 100644 --- a/src/main/java/com/merge/api/accounting/types/UnderlyingTransactionTypeEnum.java +++ b/src/main/java/com/merge/api/accounting/types/UnderlyingTransactionTypeEnum.java @@ -3,32 +3,139 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum UnderlyingTransactionTypeEnum { - INVOICE("INVOICE"), +public final class UnderlyingTransactionTypeEnum { + public static final UnderlyingTransactionTypeEnum JOURNAL_ENTRY = + new UnderlyingTransactionTypeEnum(Value.JOURNAL_ENTRY, "JOURNAL_ENTRY"); - EXPENSE("EXPENSE"), + public static final UnderlyingTransactionTypeEnum EXPENSE = + new UnderlyingTransactionTypeEnum(Value.EXPENSE, "EXPENSE"); - TRANSACTION("TRANSACTION"), + public static final UnderlyingTransactionTypeEnum INVOICE = + new UnderlyingTransactionTypeEnum(Value.INVOICE, "INVOICE"); - JOURNAL_ENTRY("JOURNAL_ENTRY"), + public static final UnderlyingTransactionTypeEnum VENDOR_CREDIT = + new UnderlyingTransactionTypeEnum(Value.VENDOR_CREDIT, "VENDOR_CREDIT"); - PAYMENT("PAYMENT"), + public static final UnderlyingTransactionTypeEnum TRANSACTION = + new UnderlyingTransactionTypeEnum(Value.TRANSACTION, "TRANSACTION"); - VENDOR_CREDIT("VENDOR_CREDIT"), + public static final UnderlyingTransactionTypeEnum CREDIT_NOTE = + new UnderlyingTransactionTypeEnum(Value.CREDIT_NOTE, "CREDIT_NOTE"); - CREDIT_NOTE("CREDIT_NOTE"); + public static final UnderlyingTransactionTypeEnum PAYMENT = + new UnderlyingTransactionTypeEnum(Value.PAYMENT, "PAYMENT"); - private final String value; + private final Value value; - UnderlyingTransactionTypeEnum(String value) { + private final String string; + + UnderlyingTransactionTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof UnderlyingTransactionTypeEnum + && this.string.equals(((UnderlyingTransactionTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case JOURNAL_ENTRY: + return visitor.visitJournalEntry(); + case EXPENSE: + return visitor.visitExpense(); + case INVOICE: + return visitor.visitInvoice(); + case VENDOR_CREDIT: + return visitor.visitVendorCredit(); + case TRANSACTION: + return visitor.visitTransaction(); + case CREDIT_NOTE: + return visitor.visitCreditNote(); + case PAYMENT: + return visitor.visitPayment(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static UnderlyingTransactionTypeEnum valueOf(String value) { + switch (value) { + case "JOURNAL_ENTRY": + return JOURNAL_ENTRY; + case "EXPENSE": + return EXPENSE; + case "INVOICE": + return INVOICE; + case "VENDOR_CREDIT": + return VENDOR_CREDIT; + case "TRANSACTION": + return TRANSACTION; + case "CREDIT_NOTE": + return CREDIT_NOTE; + case "PAYMENT": + return PAYMENT; + default: + return new UnderlyingTransactionTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + INVOICE, + + EXPENSE, + + TRANSACTION, + + JOURNAL_ENTRY, + + PAYMENT, + + VENDOR_CREDIT, + + CREDIT_NOTE, + + UNKNOWN + } + + public interface Visitor { + T visitInvoice(); + + T visitExpense(); + + T visitTransaction(); + + T visitJournalEntry(); + + T visitPayment(); + + T visitVendorCredit(); + + T visitCreditNote(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/VendorCreditsListRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/VendorCreditsListRequestExpandItem.java index cfd679beb..218b0ccd7 100644 --- a/src/main/java/com/merge/api/accounting/types/VendorCreditsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/VendorCreditsListRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum VendorCreditsListRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class VendorCreditsListRequestExpandItem { + public static final VendorCreditsListRequestExpandItem ACCOUNTING_PERIOD = + new VendorCreditsListRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - COMPANY("company"), + public static final VendorCreditsListRequestExpandItem TRACKING_CATEGORIES = + new VendorCreditsListRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINES("lines"), + public static final VendorCreditsListRequestExpandItem VENDOR = + new VendorCreditsListRequestExpandItem(Value.VENDOR, "vendor"); - TRACKING_CATEGORIES("tracking_categories"), + public static final VendorCreditsListRequestExpandItem LINES = + new VendorCreditsListRequestExpandItem(Value.LINES, "lines"); - VENDOR("vendor"); + public static final VendorCreditsListRequestExpandItem COMPANY = + new VendorCreditsListRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - VendorCreditsListRequestExpandItem(String value) { + private final String string; + + VendorCreditsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof VendorCreditsListRequestExpandItem + && this.string.equals(((VendorCreditsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case VENDOR: + return visitor.visitVendor(); + case LINES: + return visitor.visitLines(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static VendorCreditsListRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "vendor": + return VENDOR; + case "lines": + return LINES; + case "company": + return COMPANY; + default: + return new VendorCreditsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + LINES, + + TRACKING_CATEGORIES, + + VENDOR, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitLines(); + + T visitTrackingCategories(); + + T visitVendor(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/accounting/types/VendorCreditsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/accounting/types/VendorCreditsRetrieveRequestExpandItem.java index 6ec42e383..248230096 100644 --- a/src/main/java/com/merge/api/accounting/types/VendorCreditsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/accounting/types/VendorCreditsRetrieveRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.accounting.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum VendorCreditsRetrieveRequestExpandItem { - ACCOUNTING_PERIOD("accounting_period"), +public final class VendorCreditsRetrieveRequestExpandItem { + public static final VendorCreditsRetrieveRequestExpandItem ACCOUNTING_PERIOD = + new VendorCreditsRetrieveRequestExpandItem(Value.ACCOUNTING_PERIOD, "accounting_period"); - COMPANY("company"), + public static final VendorCreditsRetrieveRequestExpandItem TRACKING_CATEGORIES = + new VendorCreditsRetrieveRequestExpandItem(Value.TRACKING_CATEGORIES, "tracking_categories"); - LINES("lines"), + public static final VendorCreditsRetrieveRequestExpandItem VENDOR = + new VendorCreditsRetrieveRequestExpandItem(Value.VENDOR, "vendor"); - TRACKING_CATEGORIES("tracking_categories"), + public static final VendorCreditsRetrieveRequestExpandItem LINES = + new VendorCreditsRetrieveRequestExpandItem(Value.LINES, "lines"); - VENDOR("vendor"); + public static final VendorCreditsRetrieveRequestExpandItem COMPANY = + new VendorCreditsRetrieveRequestExpandItem(Value.COMPANY, "company"); - private final String value; + private final Value value; - VendorCreditsRetrieveRequestExpandItem(String value) { + private final String string; + + VendorCreditsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof VendorCreditsRetrieveRequestExpandItem + && this.string.equals(((VendorCreditsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACCOUNTING_PERIOD: + return visitor.visitAccountingPeriod(); + case TRACKING_CATEGORIES: + return visitor.visitTrackingCategories(); + case VENDOR: + return visitor.visitVendor(); + case LINES: + return visitor.visitLines(); + case COMPANY: + return visitor.visitCompany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static VendorCreditsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "accounting_period": + return ACCOUNTING_PERIOD; + case "tracking_categories": + return TRACKING_CATEGORIES; + case "vendor": + return VENDOR; + case "lines": + return LINES; + case "company": + return COMPANY; + default: + return new VendorCreditsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING_PERIOD, + + COMPANY, + + LINES, + + TRACKING_CATEGORIES, + + VENDOR, + + UNKNOWN + } + + public interface Visitor { + T visitAccountingPeriod(); + + T visitCompany(); + + T visitLines(); + + T visitTrackingCategories(); + + T visitVendor(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/AccessRoleEnum.java b/src/main/java/com/merge/api/ats/types/AccessRoleEnum.java index 368371d0e..4cfce6dfe 100644 --- a/src/main/java/com/merge/api/ats/types/AccessRoleEnum.java +++ b/src/main/java/com/merge/api/ats/types/AccessRoleEnum.java @@ -3,28 +3,112 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccessRoleEnum { - SUPER_ADMIN("SUPER_ADMIN"), +public final class AccessRoleEnum { + public static final AccessRoleEnum LIMITED_TEAM_MEMBER = + new AccessRoleEnum(Value.LIMITED_TEAM_MEMBER, "LIMITED_TEAM_MEMBER"); - ADMIN("ADMIN"), + public static final AccessRoleEnum INTERVIEWER = new AccessRoleEnum(Value.INTERVIEWER, "INTERVIEWER"); - TEAM_MEMBER("TEAM_MEMBER"), + public static final AccessRoleEnum ADMIN = new AccessRoleEnum(Value.ADMIN, "ADMIN"); - LIMITED_TEAM_MEMBER("LIMITED_TEAM_MEMBER"), + public static final AccessRoleEnum SUPER_ADMIN = new AccessRoleEnum(Value.SUPER_ADMIN, "SUPER_ADMIN"); - INTERVIEWER("INTERVIEWER"); + public static final AccessRoleEnum TEAM_MEMBER = new AccessRoleEnum(Value.TEAM_MEMBER, "TEAM_MEMBER"); - private final String value; + private final Value value; - AccessRoleEnum(String value) { + private final String string; + + AccessRoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccessRoleEnum && this.string.equals(((AccessRoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case LIMITED_TEAM_MEMBER: + return visitor.visitLimitedTeamMember(); + case INTERVIEWER: + return visitor.visitInterviewer(); + case ADMIN: + return visitor.visitAdmin(); + case SUPER_ADMIN: + return visitor.visitSuperAdmin(); + case TEAM_MEMBER: + return visitor.visitTeamMember(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccessRoleEnum valueOf(String value) { + switch (value) { + case "LIMITED_TEAM_MEMBER": + return LIMITED_TEAM_MEMBER; + case "INTERVIEWER": + return INTERVIEWER; + case "ADMIN": + return ADMIN; + case "SUPER_ADMIN": + return SUPER_ADMIN; + case "TEAM_MEMBER": + return TEAM_MEMBER; + default: + return new AccessRoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SUPER_ADMIN, + + ADMIN, + + TEAM_MEMBER, + + LIMITED_TEAM_MEMBER, + + INTERVIEWER, + + UNKNOWN + } + + public interface Visitor { + T visitSuperAdmin(); + + T visitAdmin(); + + T visitTeamMember(); + + T visitLimitedTeamMember(); + + T visitInterviewer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/ats/types/AccountDetailsAndActionsStatusEnum.java index a6dd1f03a..734edd260 100644 --- a/src/main/java/com/merge/api/ats/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ActivitiesListRequestRemoteFields.java b/src/main/java/com/merge/api/ats/types/ActivitiesListRequestRemoteFields.java index 24653aa7f..4dd978aa6 100644 --- a/src/main/java/com/merge/api/ats/types/ActivitiesListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ats/types/ActivitiesListRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivitiesListRequestRemoteFields { - ACTIVITY_TYPE("activity_type"), +public final class ActivitiesListRequestRemoteFields { + public static final ActivitiesListRequestRemoteFields ACTIVITY_TYPE = + new ActivitiesListRequestRemoteFields(Value.ACTIVITY_TYPE, "activity_type"); - ACTIVITY_TYPE_VISIBILITY("activity_type,visibility"), + public static final ActivitiesListRequestRemoteFields ACTIVITY_TYPE_VISIBILITY = + new ActivitiesListRequestRemoteFields(Value.ACTIVITY_TYPE_VISIBILITY, "activity_type,visibility"); - VISIBILITY("visibility"); + public static final ActivitiesListRequestRemoteFields VISIBILITY = + new ActivitiesListRequestRemoteFields(Value.VISIBILITY, "visibility"); - private final String value; + private final Value value; - ActivitiesListRequestRemoteFields(String value) { + private final String string; + + ActivitiesListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivitiesListRequestRemoteFields + && this.string.equals(((ActivitiesListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVITY_TYPE: + return visitor.visitActivityType(); + case ACTIVITY_TYPE_VISIBILITY: + return visitor.visitActivityTypeVisibility(); + case VISIBILITY: + return visitor.visitVisibility(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivitiesListRequestRemoteFields valueOf(String value) { + switch (value) { + case "activity_type": + return ACTIVITY_TYPE; + case "activity_type,visibility": + return ACTIVITY_TYPE_VISIBILITY; + case "visibility": + return VISIBILITY; + default: + return new ActivitiesListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVITY_TYPE, + + ACTIVITY_TYPE_VISIBILITY, + + VISIBILITY, + + UNKNOWN + } + + public interface Visitor { + T visitActivityType(); + + T visitActivityTypeVisibility(); + + T visitVisibility(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ActivitiesListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ats/types/ActivitiesListRequestShowEnumOrigins.java index b9c1b4053..41bd1edea 100644 --- a/src/main/java/com/merge/api/ats/types/ActivitiesListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ats/types/ActivitiesListRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivitiesListRequestShowEnumOrigins { - ACTIVITY_TYPE("activity_type"), +public final class ActivitiesListRequestShowEnumOrigins { + public static final ActivitiesListRequestShowEnumOrigins ACTIVITY_TYPE = + new ActivitiesListRequestShowEnumOrigins(Value.ACTIVITY_TYPE, "activity_type"); - ACTIVITY_TYPE_VISIBILITY("activity_type,visibility"), + public static final ActivitiesListRequestShowEnumOrigins ACTIVITY_TYPE_VISIBILITY = + new ActivitiesListRequestShowEnumOrigins(Value.ACTIVITY_TYPE_VISIBILITY, "activity_type,visibility"); - VISIBILITY("visibility"); + public static final ActivitiesListRequestShowEnumOrigins VISIBILITY = + new ActivitiesListRequestShowEnumOrigins(Value.VISIBILITY, "visibility"); - private final String value; + private final Value value; - ActivitiesListRequestShowEnumOrigins(String value) { + private final String string; + + ActivitiesListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivitiesListRequestShowEnumOrigins + && this.string.equals(((ActivitiesListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVITY_TYPE: + return visitor.visitActivityType(); + case ACTIVITY_TYPE_VISIBILITY: + return visitor.visitActivityTypeVisibility(); + case VISIBILITY: + return visitor.visitVisibility(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivitiesListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "activity_type": + return ACTIVITY_TYPE; + case "activity_type,visibility": + return ACTIVITY_TYPE_VISIBILITY; + case "visibility": + return VISIBILITY; + default: + return new ActivitiesListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVITY_TYPE, + + ACTIVITY_TYPE_VISIBILITY, + + VISIBILITY, + + UNKNOWN + } + + public interface Visitor { + T visitActivityType(); + + T visitActivityTypeVisibility(); + + T visitVisibility(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestRemoteFields.java index 52be4900d..922082493 100644 --- a/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivitiesRetrieveRequestRemoteFields { - ACTIVITY_TYPE("activity_type"), +public final class ActivitiesRetrieveRequestRemoteFields { + public static final ActivitiesRetrieveRequestRemoteFields ACTIVITY_TYPE = + new ActivitiesRetrieveRequestRemoteFields(Value.ACTIVITY_TYPE, "activity_type"); - ACTIVITY_TYPE_VISIBILITY("activity_type,visibility"), + public static final ActivitiesRetrieveRequestRemoteFields ACTIVITY_TYPE_VISIBILITY = + new ActivitiesRetrieveRequestRemoteFields(Value.ACTIVITY_TYPE_VISIBILITY, "activity_type,visibility"); - VISIBILITY("visibility"); + public static final ActivitiesRetrieveRequestRemoteFields VISIBILITY = + new ActivitiesRetrieveRequestRemoteFields(Value.VISIBILITY, "visibility"); - private final String value; + private final Value value; - ActivitiesRetrieveRequestRemoteFields(String value) { + private final String string; + + ActivitiesRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivitiesRetrieveRequestRemoteFields + && this.string.equals(((ActivitiesRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVITY_TYPE: + return visitor.visitActivityType(); + case ACTIVITY_TYPE_VISIBILITY: + return visitor.visitActivityTypeVisibility(); + case VISIBILITY: + return visitor.visitVisibility(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivitiesRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "activity_type": + return ACTIVITY_TYPE; + case "activity_type,visibility": + return ACTIVITY_TYPE_VISIBILITY; + case "visibility": + return VISIBILITY; + default: + return new ActivitiesRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVITY_TYPE, + + ACTIVITY_TYPE_VISIBILITY, + + VISIBILITY, + + UNKNOWN + } + + public interface Visitor { + T visitActivityType(); + + T visitActivityTypeVisibility(); + + T visitVisibility(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestShowEnumOrigins.java index 91c6cd6fd..bbad462f5 100644 --- a/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ats/types/ActivitiesRetrieveRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivitiesRetrieveRequestShowEnumOrigins { - ACTIVITY_TYPE("activity_type"), +public final class ActivitiesRetrieveRequestShowEnumOrigins { + public static final ActivitiesRetrieveRequestShowEnumOrigins ACTIVITY_TYPE = + new ActivitiesRetrieveRequestShowEnumOrigins(Value.ACTIVITY_TYPE, "activity_type"); - ACTIVITY_TYPE_VISIBILITY("activity_type,visibility"), + public static final ActivitiesRetrieveRequestShowEnumOrigins ACTIVITY_TYPE_VISIBILITY = + new ActivitiesRetrieveRequestShowEnumOrigins(Value.ACTIVITY_TYPE_VISIBILITY, "activity_type,visibility"); - VISIBILITY("visibility"); + public static final ActivitiesRetrieveRequestShowEnumOrigins VISIBILITY = + new ActivitiesRetrieveRequestShowEnumOrigins(Value.VISIBILITY, "visibility"); - private final String value; + private final Value value; - ActivitiesRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + ActivitiesRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivitiesRetrieveRequestShowEnumOrigins + && this.string.equals(((ActivitiesRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVITY_TYPE: + return visitor.visitActivityType(); + case ACTIVITY_TYPE_VISIBILITY: + return visitor.visitActivityTypeVisibility(); + case VISIBILITY: + return visitor.visitVisibility(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivitiesRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "activity_type": + return ACTIVITY_TYPE; + case "activity_type,visibility": + return ACTIVITY_TYPE_VISIBILITY; + case "visibility": + return VISIBILITY; + default: + return new ActivitiesRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVITY_TYPE, + + ACTIVITY_TYPE_VISIBILITY, + + VISIBILITY, + + UNKNOWN + } + + public interface Visitor { + T visitActivityType(); + + T visitActivityTypeVisibility(); + + T visitVisibility(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ActivityTypeEnum.java b/src/main/java/com/merge/api/ats/types/ActivityTypeEnum.java index 5e1a26c65..c761a46f2 100644 --- a/src/main/java/com/merge/api/ats/types/ActivityTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/ActivityTypeEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivityTypeEnum { - NOTE("NOTE"), +public final class ActivityTypeEnum { + public static final ActivityTypeEnum NOTE = new ActivityTypeEnum(Value.NOTE, "NOTE"); - EMAIL("EMAIL"), + public static final ActivityTypeEnum EMAIL = new ActivityTypeEnum(Value.EMAIL, "EMAIL"); - OTHER("OTHER"); + public static final ActivityTypeEnum OTHER = new ActivityTypeEnum(Value.OTHER, "OTHER"); - private final String value; + private final Value value; - ActivityTypeEnum(String value) { + private final String string; + + ActivityTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivityTypeEnum && this.string.equals(((ActivityTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NOTE: + return visitor.visitNote(); + case EMAIL: + return visitor.visitEmail(); + case OTHER: + return visitor.visitOther(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivityTypeEnum valueOf(String value) { + switch (value) { + case "NOTE": + return NOTE; + case "EMAIL": + return EMAIL; + case "OTHER": + return OTHER; + default: + return new ActivityTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + NOTE, + + EMAIL, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitNote(); + + T visitEmail(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ApplicationsListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/ApplicationsListRequestExpandItem.java index 9a6d91784..fe159d6b4 100644 --- a/src/main/java/com/merge/api/ats/types/ApplicationsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/ApplicationsListRequestExpandItem.java @@ -3,34 +3,150 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ApplicationsListRequestExpandItem { - CANDIDATE("candidate"), +public final class ApplicationsListRequestExpandItem { + public static final ApplicationsListRequestExpandItem OFFERS = + new ApplicationsListRequestExpandItem(Value.OFFERS, "offers"); - CREDITED_TO("credited_to"), + public static final ApplicationsListRequestExpandItem CANDIDATE = + new ApplicationsListRequestExpandItem(Value.CANDIDATE, "candidate"); - CURRENT_STAGE("current_stage"), + public static final ApplicationsListRequestExpandItem SCREENING_QUESTION_ANSWERS = + new ApplicationsListRequestExpandItem(Value.SCREENING_QUESTION_ANSWERS, "screening_question_answers"); - JOB("job"), + public static final ApplicationsListRequestExpandItem CURRENT_STAGE = + new ApplicationsListRequestExpandItem(Value.CURRENT_STAGE, "current_stage"); - OFFERS("offers"), + public static final ApplicationsListRequestExpandItem REJECT_REASON = + new ApplicationsListRequestExpandItem(Value.REJECT_REASON, "reject_reason"); - REJECT_REASON("reject_reason"), + public static final ApplicationsListRequestExpandItem CREDITED_TO = + new ApplicationsListRequestExpandItem(Value.CREDITED_TO, "credited_to"); - SCREENING_QUESTION_ANSWERS("screening_question_answers"), + public static final ApplicationsListRequestExpandItem JOB = new ApplicationsListRequestExpandItem(Value.JOB, "job"); - SCREENING_QUESTION_ANSWERS_QUESTION("screening_question_answers.question"); + public static final ApplicationsListRequestExpandItem SCREENING_QUESTION_ANSWERS_QUESTION = + new ApplicationsListRequestExpandItem( + Value.SCREENING_QUESTION_ANSWERS_QUESTION, "screening_question_answers.question"); - private final String value; + private final Value value; - ApplicationsListRequestExpandItem(String value) { + private final String string; + + ApplicationsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ApplicationsListRequestExpandItem + && this.string.equals(((ApplicationsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OFFERS: + return visitor.visitOffers(); + case CANDIDATE: + return visitor.visitCandidate(); + case SCREENING_QUESTION_ANSWERS: + return visitor.visitScreeningQuestionAnswers(); + case CURRENT_STAGE: + return visitor.visitCurrentStage(); + case REJECT_REASON: + return visitor.visitRejectReason(); + case CREDITED_TO: + return visitor.visitCreditedTo(); + case JOB: + return visitor.visitJob(); + case SCREENING_QUESTION_ANSWERS_QUESTION: + return visitor.visitScreeningQuestionAnswersQuestion(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ApplicationsListRequestExpandItem valueOf(String value) { + switch (value) { + case "offers": + return OFFERS; + case "candidate": + return CANDIDATE; + case "screening_question_answers": + return SCREENING_QUESTION_ANSWERS; + case "current_stage": + return CURRENT_STAGE; + case "reject_reason": + return REJECT_REASON; + case "credited_to": + return CREDITED_TO; + case "job": + return JOB; + case "screening_question_answers.question": + return SCREENING_QUESTION_ANSWERS_QUESTION; + default: + return new ApplicationsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CANDIDATE, + + CREDITED_TO, + + CURRENT_STAGE, + + JOB, + + OFFERS, + + REJECT_REASON, + + SCREENING_QUESTION_ANSWERS, + + SCREENING_QUESTION_ANSWERS_QUESTION, + + UNKNOWN + } + + public interface Visitor { + T visitCandidate(); + + T visitCreditedTo(); + + T visitCurrentStage(); + + T visitJob(); + + T visitOffers(); + + T visitRejectReason(); + + T visitScreeningQuestionAnswers(); + + T visitScreeningQuestionAnswersQuestion(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ApplicationsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/ApplicationsRetrieveRequestExpandItem.java index 2326f471c..b8c16a618 100644 --- a/src/main/java/com/merge/api/ats/types/ApplicationsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/ApplicationsRetrieveRequestExpandItem.java @@ -3,34 +3,151 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ApplicationsRetrieveRequestExpandItem { - CANDIDATE("candidate"), +public final class ApplicationsRetrieveRequestExpandItem { + public static final ApplicationsRetrieveRequestExpandItem OFFERS = + new ApplicationsRetrieveRequestExpandItem(Value.OFFERS, "offers"); - CREDITED_TO("credited_to"), + public static final ApplicationsRetrieveRequestExpandItem CANDIDATE = + new ApplicationsRetrieveRequestExpandItem(Value.CANDIDATE, "candidate"); - CURRENT_STAGE("current_stage"), + public static final ApplicationsRetrieveRequestExpandItem SCREENING_QUESTION_ANSWERS = + new ApplicationsRetrieveRequestExpandItem(Value.SCREENING_QUESTION_ANSWERS, "screening_question_answers"); - JOB("job"), + public static final ApplicationsRetrieveRequestExpandItem CURRENT_STAGE = + new ApplicationsRetrieveRequestExpandItem(Value.CURRENT_STAGE, "current_stage"); - OFFERS("offers"), + public static final ApplicationsRetrieveRequestExpandItem REJECT_REASON = + new ApplicationsRetrieveRequestExpandItem(Value.REJECT_REASON, "reject_reason"); - REJECT_REASON("reject_reason"), + public static final ApplicationsRetrieveRequestExpandItem CREDITED_TO = + new ApplicationsRetrieveRequestExpandItem(Value.CREDITED_TO, "credited_to"); - SCREENING_QUESTION_ANSWERS("screening_question_answers"), + public static final ApplicationsRetrieveRequestExpandItem JOB = + new ApplicationsRetrieveRequestExpandItem(Value.JOB, "job"); - SCREENING_QUESTION_ANSWERS_QUESTION("screening_question_answers.question"); + public static final ApplicationsRetrieveRequestExpandItem SCREENING_QUESTION_ANSWERS_QUESTION = + new ApplicationsRetrieveRequestExpandItem( + Value.SCREENING_QUESTION_ANSWERS_QUESTION, "screening_question_answers.question"); - private final String value; + private final Value value; - ApplicationsRetrieveRequestExpandItem(String value) { + private final String string; + + ApplicationsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ApplicationsRetrieveRequestExpandItem + && this.string.equals(((ApplicationsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OFFERS: + return visitor.visitOffers(); + case CANDIDATE: + return visitor.visitCandidate(); + case SCREENING_QUESTION_ANSWERS: + return visitor.visitScreeningQuestionAnswers(); + case CURRENT_STAGE: + return visitor.visitCurrentStage(); + case REJECT_REASON: + return visitor.visitRejectReason(); + case CREDITED_TO: + return visitor.visitCreditedTo(); + case JOB: + return visitor.visitJob(); + case SCREENING_QUESTION_ANSWERS_QUESTION: + return visitor.visitScreeningQuestionAnswersQuestion(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ApplicationsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "offers": + return OFFERS; + case "candidate": + return CANDIDATE; + case "screening_question_answers": + return SCREENING_QUESTION_ANSWERS; + case "current_stage": + return CURRENT_STAGE; + case "reject_reason": + return REJECT_REASON; + case "credited_to": + return CREDITED_TO; + case "job": + return JOB; + case "screening_question_answers.question": + return SCREENING_QUESTION_ANSWERS_QUESTION; + default: + return new ApplicationsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CANDIDATE, + + CREDITED_TO, + + CURRENT_STAGE, + + JOB, + + OFFERS, + + REJECT_REASON, + + SCREENING_QUESTION_ANSWERS, + + SCREENING_QUESTION_ANSWERS_QUESTION, + + UNKNOWN + } + + public interface Visitor { + T visitCandidate(); + + T visitCreditedTo(); + + T visitCurrentStage(); + + T visitJob(); + + T visitOffers(); + + T visitRejectReason(); + + T visitScreeningQuestionAnswers(); + + T visitScreeningQuestionAnswersQuestion(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/AttachmentTypeEnum.java b/src/main/java/com/merge/api/ats/types/AttachmentTypeEnum.java index 345928f36..f8785538e 100644 --- a/src/main/java/com/merge/api/ats/types/AttachmentTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/AttachmentTypeEnum.java @@ -3,26 +3,101 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AttachmentTypeEnum { - RESUME("RESUME"), +public final class AttachmentTypeEnum { + public static final AttachmentTypeEnum COVER_LETTER = new AttachmentTypeEnum(Value.COVER_LETTER, "COVER_LETTER"); - COVER_LETTER("COVER_LETTER"), + public static final AttachmentTypeEnum RESUME = new AttachmentTypeEnum(Value.RESUME, "RESUME"); - OFFER_LETTER("OFFER_LETTER"), + public static final AttachmentTypeEnum OTHER = new AttachmentTypeEnum(Value.OTHER, "OTHER"); - OTHER("OTHER"); + public static final AttachmentTypeEnum OFFER_LETTER = new AttachmentTypeEnum(Value.OFFER_LETTER, "OFFER_LETTER"); - private final String value; + private final Value value; - AttachmentTypeEnum(String value) { + private final String string; + + AttachmentTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AttachmentTypeEnum && this.string.equals(((AttachmentTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COVER_LETTER: + return visitor.visitCoverLetter(); + case RESUME: + return visitor.visitResume(); + case OTHER: + return visitor.visitOther(); + case OFFER_LETTER: + return visitor.visitOfferLetter(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AttachmentTypeEnum valueOf(String value) { + switch (value) { + case "COVER_LETTER": + return COVER_LETTER; + case "RESUME": + return RESUME; + case "OTHER": + return OTHER; + case "OFFER_LETTER": + return OFFER_LETTER; + default: + return new AttachmentTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RESUME, + + COVER_LETTER, + + OFFER_LETTER, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitResume(); + + T visitCoverLetter(); + + T visitOfferLetter(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/CandidatesListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/CandidatesListRequestExpandItem.java index ccc97b82f..29eaada99 100644 --- a/src/main/java/com/merge/api/ats/types/CandidatesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/CandidatesListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CandidatesListRequestExpandItem { - APPLICATIONS("applications"), +public final class CandidatesListRequestExpandItem { + public static final CandidatesListRequestExpandItem APPLICATIONS = + new CandidatesListRequestExpandItem(Value.APPLICATIONS, "applications"); - ATTACHMENTS("attachments"); + public static final CandidatesListRequestExpandItem ATTACHMENTS = + new CandidatesListRequestExpandItem(Value.ATTACHMENTS, "attachments"); - private final String value; + private final Value value; - CandidatesListRequestExpandItem(String value) { + private final String string; + + CandidatesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CandidatesListRequestExpandItem + && this.string.equals(((CandidatesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case APPLICATIONS: + return visitor.visitApplications(); + case ATTACHMENTS: + return visitor.visitAttachments(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CandidatesListRequestExpandItem valueOf(String value) { + switch (value) { + case "applications": + return APPLICATIONS; + case "attachments": + return ATTACHMENTS; + default: + return new CandidatesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATIONS, + + ATTACHMENTS, + + UNKNOWN + } + + public interface Visitor { + T visitApplications(); + + T visitAttachments(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/CandidatesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/CandidatesRetrieveRequestExpandItem.java index 965a6e957..ea2255fc8 100644 --- a/src/main/java/com/merge/api/ats/types/CandidatesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/CandidatesRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CandidatesRetrieveRequestExpandItem { - APPLICATIONS("applications"), +public final class CandidatesRetrieveRequestExpandItem { + public static final CandidatesRetrieveRequestExpandItem APPLICATIONS = + new CandidatesRetrieveRequestExpandItem(Value.APPLICATIONS, "applications"); - ATTACHMENTS("attachments"); + public static final CandidatesRetrieveRequestExpandItem ATTACHMENTS = + new CandidatesRetrieveRequestExpandItem(Value.ATTACHMENTS, "attachments"); - private final String value; + private final Value value; - CandidatesRetrieveRequestExpandItem(String value) { + private final String string; + + CandidatesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CandidatesRetrieveRequestExpandItem + && this.string.equals(((CandidatesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case APPLICATIONS: + return visitor.visitApplications(); + case ATTACHMENTS: + return visitor.visitAttachments(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CandidatesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "applications": + return APPLICATIONS; + case "attachments": + return ATTACHMENTS; + default: + return new CandidatesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATIONS, + + ATTACHMENTS, + + UNKNOWN + } + + public interface Visitor { + T visitApplications(); + + T visitAttachments(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/CategoriesEnum.java b/src/main/java/com/merge/api/ats/types/CategoriesEnum.java index 058d8c67d..7d980eb48 100644 --- a/src/main/java/com/merge/api/ats/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/ats/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/CategoryEnum.java b/src/main/java/com/merge/api/ats/types/CategoryEnum.java index ed3b243e2..b5e325f01 100644 --- a/src/main/java/com/merge/api/ats/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/ats/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/DisabilityStatusEnum.java b/src/main/java/com/merge/api/ats/types/DisabilityStatusEnum.java index eaf2ecd3d..cea53eb47 100644 --- a/src/main/java/com/merge/api/ats/types/DisabilityStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/DisabilityStatusEnum.java @@ -3,24 +3,96 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum DisabilityStatusEnum { - YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY("YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY"), +public final class DisabilityStatusEnum { + public static final DisabilityStatusEnum I_DONT_WISH_TO_ANSWER = + new DisabilityStatusEnum(Value.I_DONT_WISH_TO_ANSWER, "I_DONT_WISH_TO_ANSWER"); - NO_I_DONT_HAVE_A_DISABILITY("NO_I_DONT_HAVE_A_DISABILITY"), + public static final DisabilityStatusEnum YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY = + new DisabilityStatusEnum( + Value.YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY, + "YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY"); - I_DONT_WISH_TO_ANSWER("I_DONT_WISH_TO_ANSWER"); + public static final DisabilityStatusEnum NO_I_DONT_HAVE_A_DISABILITY = + new DisabilityStatusEnum(Value.NO_I_DONT_HAVE_A_DISABILITY, "NO_I_DONT_HAVE_A_DISABILITY"); - private final String value; + private final Value value; - DisabilityStatusEnum(String value) { + private final String string; + + DisabilityStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof DisabilityStatusEnum && this.string.equals(((DisabilityStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case I_DONT_WISH_TO_ANSWER: + return visitor.visitIDontWishToAnswer(); + case YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY: + return visitor.visitYesIHaveADisabilityOrPreviouslyHadADisability(); + case NO_I_DONT_HAVE_A_DISABILITY: + return visitor.visitNoIDontHaveADisability(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static DisabilityStatusEnum valueOf(String value) { + switch (value) { + case "I_DONT_WISH_TO_ANSWER": + return I_DONT_WISH_TO_ANSWER; + case "YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY": + return YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY; + case "NO_I_DONT_HAVE_A_DISABILITY": + return NO_I_DONT_HAVE_A_DISABILITY; + default: + return new DisabilityStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + YES_I_HAVE_A_DISABILITY_OR_PREVIOUSLY_HAD_A_DISABILITY, + + NO_I_DONT_HAVE_A_DISABILITY, + + I_DONT_WISH_TO_ANSWER, + + UNKNOWN + } + + public interface Visitor { + T visitYesIHaveADisabilityOrPreviouslyHadADisability(); + + T visitNoIDontHaveADisability(); + + T visitIDontWishToAnswer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EeocsListRequestRemoteFields.java b/src/main/java/com/merge/api/ats/types/EeocsListRequestRemoteFields.java index 729b79b98..8f5a46aa8 100644 --- a/src/main/java/com/merge/api/ats/types/EeocsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ats/types/EeocsListRequestRemoteFields.java @@ -3,48 +3,229 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EeocsListRequestRemoteFields { - DISABILITY_STATUS("disability_status"), +public final class EeocsListRequestRemoteFields { + public static final EeocsListRequestRemoteFields GENDER = new EeocsListRequestRemoteFields(Value.GENDER, "gender"); - DISABILITY_STATUS_GENDER("disability_status,gender"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS = + new EeocsListRequestRemoteFields( + Value.DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, "disability_status,gender,race,veteran_status"); - DISABILITY_STATUS_GENDER_RACE("disability_status,gender,race"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_GENDER_VETERAN_STATUS = + new EeocsListRequestRemoteFields( + Value.DISABILITY_STATUS_GENDER_VETERAN_STATUS, "disability_status,gender,veteran_status"); - DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS("disability_status,gender,race,veteran_status"), + public static final EeocsListRequestRemoteFields RACE_VETERAN_STATUS = + new EeocsListRequestRemoteFields(Value.RACE_VETERAN_STATUS, "race,veteran_status"); - DISABILITY_STATUS_GENDER_VETERAN_STATUS("disability_status,gender,veteran_status"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_GENDER_RACE = + new EeocsListRequestRemoteFields(Value.DISABILITY_STATUS_GENDER_RACE, "disability_status,gender,race"); - DISABILITY_STATUS_RACE("disability_status,race"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_VETERAN_STATUS = + new EeocsListRequestRemoteFields( + Value.DISABILITY_STATUS_VETERAN_STATUS, "disability_status,veteran_status"); - DISABILITY_STATUS_RACE_VETERAN_STATUS("disability_status,race,veteran_status"), + public static final EeocsListRequestRemoteFields GENDER_RACE = + new EeocsListRequestRemoteFields(Value.GENDER_RACE, "gender,race"); - DISABILITY_STATUS_VETERAN_STATUS("disability_status,veteran_status"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_RACE = + new EeocsListRequestRemoteFields(Value.DISABILITY_STATUS_RACE, "disability_status,race"); - GENDER("gender"), + public static final EeocsListRequestRemoteFields VETERAN_STATUS = + new EeocsListRequestRemoteFields(Value.VETERAN_STATUS, "veteran_status"); - GENDER_RACE("gender,race"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_RACE_VETERAN_STATUS = + new EeocsListRequestRemoteFields( + Value.DISABILITY_STATUS_RACE_VETERAN_STATUS, "disability_status,race,veteran_status"); - GENDER_RACE_VETERAN_STATUS("gender,race,veteran_status"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS_GENDER = + new EeocsListRequestRemoteFields(Value.DISABILITY_STATUS_GENDER, "disability_status,gender"); - GENDER_VETERAN_STATUS("gender,veteran_status"), + public static final EeocsListRequestRemoteFields GENDER_RACE_VETERAN_STATUS = + new EeocsListRequestRemoteFields(Value.GENDER_RACE_VETERAN_STATUS, "gender,race,veteran_status"); - RACE("race"), + public static final EeocsListRequestRemoteFields DISABILITY_STATUS = + new EeocsListRequestRemoteFields(Value.DISABILITY_STATUS, "disability_status"); - RACE_VETERAN_STATUS("race,veteran_status"), + public static final EeocsListRequestRemoteFields GENDER_VETERAN_STATUS = + new EeocsListRequestRemoteFields(Value.GENDER_VETERAN_STATUS, "gender,veteran_status"); - VETERAN_STATUS("veteran_status"); + public static final EeocsListRequestRemoteFields RACE = new EeocsListRequestRemoteFields(Value.RACE, "race"); - private final String value; + private final Value value; - EeocsListRequestRemoteFields(String value) { + private final String string; + + EeocsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EeocsListRequestRemoteFields + && this.string.equals(((EeocsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderVeteranStatus(); + case RACE_VETERAN_STATUS: + return visitor.visitRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_RACE: + return visitor.visitDisabilityStatusGenderRace(); + case DISABILITY_STATUS_VETERAN_STATUS: + return visitor.visitDisabilityStatusVeteranStatus(); + case GENDER_RACE: + return visitor.visitGenderRace(); + case DISABILITY_STATUS_RACE: + return visitor.visitDisabilityStatusRace(); + case VETERAN_STATUS: + return visitor.visitVeteranStatus(); + case DISABILITY_STATUS_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER: + return visitor.visitDisabilityStatusGender(); + case GENDER_RACE_VETERAN_STATUS: + return visitor.visitGenderRaceVeteranStatus(); + case DISABILITY_STATUS: + return visitor.visitDisabilityStatus(); + case GENDER_VETERAN_STATUS: + return visitor.visitGenderVeteranStatus(); + case RACE: + return visitor.visitRace(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EeocsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "disability_status,gender,race,veteran_status": + return DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS; + case "disability_status,gender,veteran_status": + return DISABILITY_STATUS_GENDER_VETERAN_STATUS; + case "race,veteran_status": + return RACE_VETERAN_STATUS; + case "disability_status,gender,race": + return DISABILITY_STATUS_GENDER_RACE; + case "disability_status,veteran_status": + return DISABILITY_STATUS_VETERAN_STATUS; + case "gender,race": + return GENDER_RACE; + case "disability_status,race": + return DISABILITY_STATUS_RACE; + case "veteran_status": + return VETERAN_STATUS; + case "disability_status,race,veteran_status": + return DISABILITY_STATUS_RACE_VETERAN_STATUS; + case "disability_status,gender": + return DISABILITY_STATUS_GENDER; + case "gender,race,veteran_status": + return GENDER_RACE_VETERAN_STATUS; + case "disability_status": + return DISABILITY_STATUS; + case "gender,veteran_status": + return GENDER_VETERAN_STATUS; + case "race": + return RACE; + default: + return new EeocsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + DISABILITY_STATUS, + + DISABILITY_STATUS_GENDER, + + DISABILITY_STATUS_GENDER_RACE, + + DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_GENDER_VETERAN_STATUS, + + DISABILITY_STATUS_RACE, + + DISABILITY_STATUS_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_VETERAN_STATUS, + + GENDER, + + GENDER_RACE, + + GENDER_RACE_VETERAN_STATUS, + + GENDER_VETERAN_STATUS, + + RACE, + + RACE_VETERAN_STATUS, + + VETERAN_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitDisabilityStatus(); + + T visitDisabilityStatusGender(); + + T visitDisabilityStatusGenderRace(); + + T visitDisabilityStatusGenderRaceVeteranStatus(); + + T visitDisabilityStatusGenderVeteranStatus(); + + T visitDisabilityStatusRace(); + + T visitDisabilityStatusRaceVeteranStatus(); + + T visitDisabilityStatusVeteranStatus(); + + T visitGender(); + + T visitGenderRace(); + + T visitGenderRaceVeteranStatus(); + + T visitGenderVeteranStatus(); + + T visitRace(); + + T visitRaceVeteranStatus(); + + T visitVeteranStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EeocsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ats/types/EeocsListRequestShowEnumOrigins.java index b7bc27238..9141da7db 100644 --- a/src/main/java/com/merge/api/ats/types/EeocsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ats/types/EeocsListRequestShowEnumOrigins.java @@ -3,48 +3,230 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EeocsListRequestShowEnumOrigins { - DISABILITY_STATUS("disability_status"), +public final class EeocsListRequestShowEnumOrigins { + public static final EeocsListRequestShowEnumOrigins GENDER = + new EeocsListRequestShowEnumOrigins(Value.GENDER, "gender"); - DISABILITY_STATUS_GENDER("disability_status,gender"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins( + Value.DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, "disability_status,gender,race,veteran_status"); - DISABILITY_STATUS_GENDER_RACE("disability_status,gender,race"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_GENDER_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins( + Value.DISABILITY_STATUS_GENDER_VETERAN_STATUS, "disability_status,gender,veteran_status"); - DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS("disability_status,gender,race,veteran_status"), + public static final EeocsListRequestShowEnumOrigins RACE_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins(Value.RACE_VETERAN_STATUS, "race,veteran_status"); - DISABILITY_STATUS_GENDER_VETERAN_STATUS("disability_status,gender,veteran_status"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_GENDER_RACE = + new EeocsListRequestShowEnumOrigins(Value.DISABILITY_STATUS_GENDER_RACE, "disability_status,gender,race"); - DISABILITY_STATUS_RACE("disability_status,race"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins( + Value.DISABILITY_STATUS_VETERAN_STATUS, "disability_status,veteran_status"); - DISABILITY_STATUS_RACE_VETERAN_STATUS("disability_status,race,veteran_status"), + public static final EeocsListRequestShowEnumOrigins GENDER_RACE = + new EeocsListRequestShowEnumOrigins(Value.GENDER_RACE, "gender,race"); - DISABILITY_STATUS_VETERAN_STATUS("disability_status,veteran_status"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_RACE = + new EeocsListRequestShowEnumOrigins(Value.DISABILITY_STATUS_RACE, "disability_status,race"); - GENDER("gender"), + public static final EeocsListRequestShowEnumOrigins VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins(Value.VETERAN_STATUS, "veteran_status"); - GENDER_RACE("gender,race"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_RACE_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins( + Value.DISABILITY_STATUS_RACE_VETERAN_STATUS, "disability_status,race,veteran_status"); - GENDER_RACE_VETERAN_STATUS("gender,race,veteran_status"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS_GENDER = + new EeocsListRequestShowEnumOrigins(Value.DISABILITY_STATUS_GENDER, "disability_status,gender"); - GENDER_VETERAN_STATUS("gender,veteran_status"), + public static final EeocsListRequestShowEnumOrigins GENDER_RACE_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins(Value.GENDER_RACE_VETERAN_STATUS, "gender,race,veteran_status"); - RACE("race"), + public static final EeocsListRequestShowEnumOrigins DISABILITY_STATUS = + new EeocsListRequestShowEnumOrigins(Value.DISABILITY_STATUS, "disability_status"); - RACE_VETERAN_STATUS("race,veteran_status"), + public static final EeocsListRequestShowEnumOrigins GENDER_VETERAN_STATUS = + new EeocsListRequestShowEnumOrigins(Value.GENDER_VETERAN_STATUS, "gender,veteran_status"); - VETERAN_STATUS("veteran_status"); + public static final EeocsListRequestShowEnumOrigins RACE = new EeocsListRequestShowEnumOrigins(Value.RACE, "race"); - private final String value; + private final Value value; - EeocsListRequestShowEnumOrigins(String value) { + private final String string; + + EeocsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EeocsListRequestShowEnumOrigins + && this.string.equals(((EeocsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderVeteranStatus(); + case RACE_VETERAN_STATUS: + return visitor.visitRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_RACE: + return visitor.visitDisabilityStatusGenderRace(); + case DISABILITY_STATUS_VETERAN_STATUS: + return visitor.visitDisabilityStatusVeteranStatus(); + case GENDER_RACE: + return visitor.visitGenderRace(); + case DISABILITY_STATUS_RACE: + return visitor.visitDisabilityStatusRace(); + case VETERAN_STATUS: + return visitor.visitVeteranStatus(); + case DISABILITY_STATUS_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER: + return visitor.visitDisabilityStatusGender(); + case GENDER_RACE_VETERAN_STATUS: + return visitor.visitGenderRaceVeteranStatus(); + case DISABILITY_STATUS: + return visitor.visitDisabilityStatus(); + case GENDER_VETERAN_STATUS: + return visitor.visitGenderVeteranStatus(); + case RACE: + return visitor.visitRace(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EeocsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "disability_status,gender,race,veteran_status": + return DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS; + case "disability_status,gender,veteran_status": + return DISABILITY_STATUS_GENDER_VETERAN_STATUS; + case "race,veteran_status": + return RACE_VETERAN_STATUS; + case "disability_status,gender,race": + return DISABILITY_STATUS_GENDER_RACE; + case "disability_status,veteran_status": + return DISABILITY_STATUS_VETERAN_STATUS; + case "gender,race": + return GENDER_RACE; + case "disability_status,race": + return DISABILITY_STATUS_RACE; + case "veteran_status": + return VETERAN_STATUS; + case "disability_status,race,veteran_status": + return DISABILITY_STATUS_RACE_VETERAN_STATUS; + case "disability_status,gender": + return DISABILITY_STATUS_GENDER; + case "gender,race,veteran_status": + return GENDER_RACE_VETERAN_STATUS; + case "disability_status": + return DISABILITY_STATUS; + case "gender,veteran_status": + return GENDER_VETERAN_STATUS; + case "race": + return RACE; + default: + return new EeocsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + DISABILITY_STATUS, + + DISABILITY_STATUS_GENDER, + + DISABILITY_STATUS_GENDER_RACE, + + DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_GENDER_VETERAN_STATUS, + + DISABILITY_STATUS_RACE, + + DISABILITY_STATUS_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_VETERAN_STATUS, + + GENDER, + + GENDER_RACE, + + GENDER_RACE_VETERAN_STATUS, + + GENDER_VETERAN_STATUS, + + RACE, + + RACE_VETERAN_STATUS, + + VETERAN_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitDisabilityStatus(); + + T visitDisabilityStatusGender(); + + T visitDisabilityStatusGenderRace(); + + T visitDisabilityStatusGenderRaceVeteranStatus(); + + T visitDisabilityStatusGenderVeteranStatus(); + + T visitDisabilityStatusRace(); + + T visitDisabilityStatusRaceVeteranStatus(); + + T visitDisabilityStatusVeteranStatus(); + + T visitGender(); + + T visitGenderRace(); + + T visitGenderRaceVeteranStatus(); + + T visitGenderVeteranStatus(); + + T visitRace(); + + T visitRaceVeteranStatus(); + + T visitVeteranStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestRemoteFields.java index 1ace1a7bf..a5c5ce0fe 100644 --- a/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestRemoteFields.java @@ -3,48 +3,231 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EeocsRetrieveRequestRemoteFields { - DISABILITY_STATUS("disability_status"), +public final class EeocsRetrieveRequestRemoteFields { + public static final EeocsRetrieveRequestRemoteFields GENDER = + new EeocsRetrieveRequestRemoteFields(Value.GENDER, "gender"); - DISABILITY_STATUS_GENDER("disability_status,gender"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields( + Value.DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, "disability_status,gender,race,veteran_status"); - DISABILITY_STATUS_GENDER_RACE("disability_status,gender,race"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_GENDER_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields( + Value.DISABILITY_STATUS_GENDER_VETERAN_STATUS, "disability_status,gender,veteran_status"); - DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS("disability_status,gender,race,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields RACE_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields(Value.RACE_VETERAN_STATUS, "race,veteran_status"); - DISABILITY_STATUS_GENDER_VETERAN_STATUS("disability_status,gender,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_GENDER_RACE = + new EeocsRetrieveRequestRemoteFields(Value.DISABILITY_STATUS_GENDER_RACE, "disability_status,gender,race"); - DISABILITY_STATUS_RACE("disability_status,race"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields( + Value.DISABILITY_STATUS_VETERAN_STATUS, "disability_status,veteran_status"); - DISABILITY_STATUS_RACE_VETERAN_STATUS("disability_status,race,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields GENDER_RACE = + new EeocsRetrieveRequestRemoteFields(Value.GENDER_RACE, "gender,race"); - DISABILITY_STATUS_VETERAN_STATUS("disability_status,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_RACE = + new EeocsRetrieveRequestRemoteFields(Value.DISABILITY_STATUS_RACE, "disability_status,race"); - GENDER("gender"), + public static final EeocsRetrieveRequestRemoteFields VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields(Value.VETERAN_STATUS, "veteran_status"); - GENDER_RACE("gender,race"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields( + Value.DISABILITY_STATUS_RACE_VETERAN_STATUS, "disability_status,race,veteran_status"); - GENDER_RACE_VETERAN_STATUS("gender,race,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS_GENDER = + new EeocsRetrieveRequestRemoteFields(Value.DISABILITY_STATUS_GENDER, "disability_status,gender"); - GENDER_VETERAN_STATUS("gender,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields GENDER_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields(Value.GENDER_RACE_VETERAN_STATUS, "gender,race,veteran_status"); - RACE("race"), + public static final EeocsRetrieveRequestRemoteFields DISABILITY_STATUS = + new EeocsRetrieveRequestRemoteFields(Value.DISABILITY_STATUS, "disability_status"); - RACE_VETERAN_STATUS("race,veteran_status"), + public static final EeocsRetrieveRequestRemoteFields GENDER_VETERAN_STATUS = + new EeocsRetrieveRequestRemoteFields(Value.GENDER_VETERAN_STATUS, "gender,veteran_status"); - VETERAN_STATUS("veteran_status"); + public static final EeocsRetrieveRequestRemoteFields RACE = + new EeocsRetrieveRequestRemoteFields(Value.RACE, "race"); - private final String value; + private final Value value; - EeocsRetrieveRequestRemoteFields(String value) { + private final String string; + + EeocsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EeocsRetrieveRequestRemoteFields + && this.string.equals(((EeocsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderVeteranStatus(); + case RACE_VETERAN_STATUS: + return visitor.visitRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_RACE: + return visitor.visitDisabilityStatusGenderRace(); + case DISABILITY_STATUS_VETERAN_STATUS: + return visitor.visitDisabilityStatusVeteranStatus(); + case GENDER_RACE: + return visitor.visitGenderRace(); + case DISABILITY_STATUS_RACE: + return visitor.visitDisabilityStatusRace(); + case VETERAN_STATUS: + return visitor.visitVeteranStatus(); + case DISABILITY_STATUS_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER: + return visitor.visitDisabilityStatusGender(); + case GENDER_RACE_VETERAN_STATUS: + return visitor.visitGenderRaceVeteranStatus(); + case DISABILITY_STATUS: + return visitor.visitDisabilityStatus(); + case GENDER_VETERAN_STATUS: + return visitor.visitGenderVeteranStatus(); + case RACE: + return visitor.visitRace(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EeocsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "disability_status,gender,race,veteran_status": + return DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS; + case "disability_status,gender,veteran_status": + return DISABILITY_STATUS_GENDER_VETERAN_STATUS; + case "race,veteran_status": + return RACE_VETERAN_STATUS; + case "disability_status,gender,race": + return DISABILITY_STATUS_GENDER_RACE; + case "disability_status,veteran_status": + return DISABILITY_STATUS_VETERAN_STATUS; + case "gender,race": + return GENDER_RACE; + case "disability_status,race": + return DISABILITY_STATUS_RACE; + case "veteran_status": + return VETERAN_STATUS; + case "disability_status,race,veteran_status": + return DISABILITY_STATUS_RACE_VETERAN_STATUS; + case "disability_status,gender": + return DISABILITY_STATUS_GENDER; + case "gender,race,veteran_status": + return GENDER_RACE_VETERAN_STATUS; + case "disability_status": + return DISABILITY_STATUS; + case "gender,veteran_status": + return GENDER_VETERAN_STATUS; + case "race": + return RACE; + default: + return new EeocsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + DISABILITY_STATUS, + + DISABILITY_STATUS_GENDER, + + DISABILITY_STATUS_GENDER_RACE, + + DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_GENDER_VETERAN_STATUS, + + DISABILITY_STATUS_RACE, + + DISABILITY_STATUS_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_VETERAN_STATUS, + + GENDER, + + GENDER_RACE, + + GENDER_RACE_VETERAN_STATUS, + + GENDER_VETERAN_STATUS, + + RACE, + + RACE_VETERAN_STATUS, + + VETERAN_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitDisabilityStatus(); + + T visitDisabilityStatusGender(); + + T visitDisabilityStatusGenderRace(); + + T visitDisabilityStatusGenderRaceVeteranStatus(); + + T visitDisabilityStatusGenderVeteranStatus(); + + T visitDisabilityStatusRace(); + + T visitDisabilityStatusRaceVeteranStatus(); + + T visitDisabilityStatusVeteranStatus(); + + T visitGender(); + + T visitGenderRace(); + + T visitGenderRaceVeteranStatus(); + + T visitGenderVeteranStatus(); + + T visitRace(); + + T visitRaceVeteranStatus(); + + T visitVeteranStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestShowEnumOrigins.java index 78e0f80d2..2c2b3feb8 100644 --- a/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ats/types/EeocsRetrieveRequestShowEnumOrigins.java @@ -3,48 +3,232 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EeocsRetrieveRequestShowEnumOrigins { - DISABILITY_STATUS("disability_status"), +public final class EeocsRetrieveRequestShowEnumOrigins { + public static final EeocsRetrieveRequestShowEnumOrigins GENDER = + new EeocsRetrieveRequestShowEnumOrigins(Value.GENDER, "gender"); - DISABILITY_STATUS_GENDER("disability_status,gender"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins( + Value.DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, "disability_status,gender,race,veteran_status"); - DISABILITY_STATUS_GENDER_RACE("disability_status,gender,race"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_GENDER_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins( + Value.DISABILITY_STATUS_GENDER_VETERAN_STATUS, "disability_status,gender,veteran_status"); - DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS("disability_status,gender,race,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins RACE_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins(Value.RACE_VETERAN_STATUS, "race,veteran_status"); - DISABILITY_STATUS_GENDER_VETERAN_STATUS("disability_status,gender,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_GENDER_RACE = + new EeocsRetrieveRequestShowEnumOrigins( + Value.DISABILITY_STATUS_GENDER_RACE, "disability_status,gender,race"); - DISABILITY_STATUS_RACE("disability_status,race"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins( + Value.DISABILITY_STATUS_VETERAN_STATUS, "disability_status,veteran_status"); - DISABILITY_STATUS_RACE_VETERAN_STATUS("disability_status,race,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins GENDER_RACE = + new EeocsRetrieveRequestShowEnumOrigins(Value.GENDER_RACE, "gender,race"); - DISABILITY_STATUS_VETERAN_STATUS("disability_status,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_RACE = + new EeocsRetrieveRequestShowEnumOrigins(Value.DISABILITY_STATUS_RACE, "disability_status,race"); - GENDER("gender"), + public static final EeocsRetrieveRequestShowEnumOrigins VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins(Value.VETERAN_STATUS, "veteran_status"); - GENDER_RACE("gender,race"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins( + Value.DISABILITY_STATUS_RACE_VETERAN_STATUS, "disability_status,race,veteran_status"); - GENDER_RACE_VETERAN_STATUS("gender,race,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS_GENDER = + new EeocsRetrieveRequestShowEnumOrigins(Value.DISABILITY_STATUS_GENDER, "disability_status,gender"); - GENDER_VETERAN_STATUS("gender,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins GENDER_RACE_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins(Value.GENDER_RACE_VETERAN_STATUS, "gender,race,veteran_status"); - RACE("race"), + public static final EeocsRetrieveRequestShowEnumOrigins DISABILITY_STATUS = + new EeocsRetrieveRequestShowEnumOrigins(Value.DISABILITY_STATUS, "disability_status"); - RACE_VETERAN_STATUS("race,veteran_status"), + public static final EeocsRetrieveRequestShowEnumOrigins GENDER_VETERAN_STATUS = + new EeocsRetrieveRequestShowEnumOrigins(Value.GENDER_VETERAN_STATUS, "gender,veteran_status"); - VETERAN_STATUS("veteran_status"); + public static final EeocsRetrieveRequestShowEnumOrigins RACE = + new EeocsRetrieveRequestShowEnumOrigins(Value.RACE, "race"); - private final String value; + private final Value value; - EeocsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + EeocsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EeocsRetrieveRequestShowEnumOrigins + && this.string.equals(((EeocsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_VETERAN_STATUS: + return visitor.visitDisabilityStatusGenderVeteranStatus(); + case RACE_VETERAN_STATUS: + return visitor.visitRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER_RACE: + return visitor.visitDisabilityStatusGenderRace(); + case DISABILITY_STATUS_VETERAN_STATUS: + return visitor.visitDisabilityStatusVeteranStatus(); + case GENDER_RACE: + return visitor.visitGenderRace(); + case DISABILITY_STATUS_RACE: + return visitor.visitDisabilityStatusRace(); + case VETERAN_STATUS: + return visitor.visitVeteranStatus(); + case DISABILITY_STATUS_RACE_VETERAN_STATUS: + return visitor.visitDisabilityStatusRaceVeteranStatus(); + case DISABILITY_STATUS_GENDER: + return visitor.visitDisabilityStatusGender(); + case GENDER_RACE_VETERAN_STATUS: + return visitor.visitGenderRaceVeteranStatus(); + case DISABILITY_STATUS: + return visitor.visitDisabilityStatus(); + case GENDER_VETERAN_STATUS: + return visitor.visitGenderVeteranStatus(); + case RACE: + return visitor.visitRace(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EeocsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "disability_status,gender,race,veteran_status": + return DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS; + case "disability_status,gender,veteran_status": + return DISABILITY_STATUS_GENDER_VETERAN_STATUS; + case "race,veteran_status": + return RACE_VETERAN_STATUS; + case "disability_status,gender,race": + return DISABILITY_STATUS_GENDER_RACE; + case "disability_status,veteran_status": + return DISABILITY_STATUS_VETERAN_STATUS; + case "gender,race": + return GENDER_RACE; + case "disability_status,race": + return DISABILITY_STATUS_RACE; + case "veteran_status": + return VETERAN_STATUS; + case "disability_status,race,veteran_status": + return DISABILITY_STATUS_RACE_VETERAN_STATUS; + case "disability_status,gender": + return DISABILITY_STATUS_GENDER; + case "gender,race,veteran_status": + return GENDER_RACE_VETERAN_STATUS; + case "disability_status": + return DISABILITY_STATUS; + case "gender,veteran_status": + return GENDER_VETERAN_STATUS; + case "race": + return RACE; + default: + return new EeocsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + DISABILITY_STATUS, + + DISABILITY_STATUS_GENDER, + + DISABILITY_STATUS_GENDER_RACE, + + DISABILITY_STATUS_GENDER_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_GENDER_VETERAN_STATUS, + + DISABILITY_STATUS_RACE, + + DISABILITY_STATUS_RACE_VETERAN_STATUS, + + DISABILITY_STATUS_VETERAN_STATUS, + + GENDER, + + GENDER_RACE, + + GENDER_RACE_VETERAN_STATUS, + + GENDER_VETERAN_STATUS, + + RACE, + + RACE_VETERAN_STATUS, + + VETERAN_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitDisabilityStatus(); + + T visitDisabilityStatusGender(); + + T visitDisabilityStatusGenderRace(); + + T visitDisabilityStatusGenderRaceVeteranStatus(); + + T visitDisabilityStatusGenderVeteranStatus(); + + T visitDisabilityStatusRace(); + + T visitDisabilityStatusRaceVeteranStatus(); + + T visitDisabilityStatusVeteranStatus(); + + T visitGender(); + + T visitGenderRace(); + + T visitGenderRaceVeteranStatus(); + + T visitGenderVeteranStatus(); + + T visitRace(); + + T visitRaceVeteranStatus(); + + T visitVeteranStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EmailAddressTypeEnum.java b/src/main/java/com/merge/api/ats/types/EmailAddressTypeEnum.java index 3ab2ffbc2..3c0290606 100644 --- a/src/main/java/com/merge/api/ats/types/EmailAddressTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/EmailAddressTypeEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmailAddressTypeEnum { - PERSONAL("PERSONAL"), +public final class EmailAddressTypeEnum { + public static final EmailAddressTypeEnum WORK = new EmailAddressTypeEnum(Value.WORK, "WORK"); - WORK("WORK"), + public static final EmailAddressTypeEnum OTHER = new EmailAddressTypeEnum(Value.OTHER, "OTHER"); - OTHER("OTHER"); + public static final EmailAddressTypeEnum PERSONAL = new EmailAddressTypeEnum(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - EmailAddressTypeEnum(String value) { + private final String string; + + EmailAddressTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmailAddressTypeEnum && this.string.equals(((EmailAddressTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WORK: + return visitor.visitWork(); + case OTHER: + return visitor.visitOther(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmailAddressTypeEnum valueOf(String value) { + switch (value) { + case "WORK": + return WORK; + case "OTHER": + return OTHER; + case "PERSONAL": + return PERSONAL; + default: + return new EmailAddressTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PERSONAL, + + WORK, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitPersonal(); + + T visitWork(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/ats/types/EnabledActionsEnum.java index d37c23517..79b8a5ff0 100644 --- a/src/main/java/com/merge/api/ats/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/ats/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EncodingEnum.java b/src/main/java/com/merge/api/ats/types/EncodingEnum.java index 50d103fb7..aa22ce16e 100644 --- a/src/main/java/com/merge/api/ats/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/ats/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/EventTypeEnum.java b/src/main/java/com/merge/api/ats/types/EventTypeEnum.java index afc7bbe00..ab8028e8a 100644 --- a/src/main/java/com/merge/api/ats/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/GenderEnum.java b/src/main/java/com/merge/api/ats/types/GenderEnum.java index e463e4149..6dd1010ca 100644 --- a/src/main/java/com/merge/api/ats/types/GenderEnum.java +++ b/src/main/java/com/merge/api/ats/types/GenderEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GenderEnum { - MALE("MALE"), +public final class GenderEnum { + public static final GenderEnum OTHER = new GenderEnum(Value.OTHER, "OTHER"); - FEMALE("FEMALE"), + public static final GenderEnum NON_BINARY = new GenderEnum(Value.NON_BINARY, "NON-BINARY"); - NON_BINARY("NON-BINARY"), + public static final GenderEnum FEMALE = new GenderEnum(Value.FEMALE, "FEMALE"); - OTHER("OTHER"), + public static final GenderEnum DECLINE_TO_SELF_IDENTIFY = + new GenderEnum(Value.DECLINE_TO_SELF_IDENTIFY, "DECLINE_TO_SELF_IDENTIFY"); - DECLINE_TO_SELF_IDENTIFY("DECLINE_TO_SELF_IDENTIFY"); + public static final GenderEnum MALE = new GenderEnum(Value.MALE, "MALE"); - private final String value; + private final Value value; - GenderEnum(String value) { + private final String string; + + GenderEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof GenderEnum && this.string.equals(((GenderEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OTHER: + return visitor.visitOther(); + case NON_BINARY: + return visitor.visitNonBinary(); + case FEMALE: + return visitor.visitFemale(); + case DECLINE_TO_SELF_IDENTIFY: + return visitor.visitDeclineToSelfIdentify(); + case MALE: + return visitor.visitMale(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GenderEnum valueOf(String value) { + switch (value) { + case "OTHER": + return OTHER; + case "NON-BINARY": + return NON_BINARY; + case "FEMALE": + return FEMALE; + case "DECLINE_TO_SELF_IDENTIFY": + return DECLINE_TO_SELF_IDENTIFY; + case "MALE": + return MALE; + default: + return new GenderEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + MALE, + + FEMALE, + + NON_BINARY, + + OTHER, + + DECLINE_TO_SELF_IDENTIFY, + + UNKNOWN + } + + public interface Visitor { + T visitMale(); + + T visitFemale(); + + T visitNonBinary(); + + T visitOther(); + + T visitDeclineToSelfIdentify(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/InterviewsListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/InterviewsListRequestExpandItem.java index 0181e2f42..b7771e369 100644 --- a/src/main/java/com/merge/api/ats/types/InterviewsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/InterviewsListRequestExpandItem.java @@ -3,26 +3,106 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InterviewsListRequestExpandItem { - APPLICATION("application"), +public final class InterviewsListRequestExpandItem { + public static final InterviewsListRequestExpandItem JOB_INTERVIEW_STAGE = + new InterviewsListRequestExpandItem(Value.JOB_INTERVIEW_STAGE, "job_interview_stage"); - INTERVIEWERS("interviewers"), + public static final InterviewsListRequestExpandItem APPLICATION = + new InterviewsListRequestExpandItem(Value.APPLICATION, "application"); - JOB_INTERVIEW_STAGE("job_interview_stage"), + public static final InterviewsListRequestExpandItem ORGANIZER = + new InterviewsListRequestExpandItem(Value.ORGANIZER, "organizer"); - ORGANIZER("organizer"); + public static final InterviewsListRequestExpandItem INTERVIEWERS = + new InterviewsListRequestExpandItem(Value.INTERVIEWERS, "interviewers"); - private final String value; + private final Value value; - InterviewsListRequestExpandItem(String value) { + private final String string; + + InterviewsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InterviewsListRequestExpandItem + && this.string.equals(((InterviewsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case JOB_INTERVIEW_STAGE: + return visitor.visitJobInterviewStage(); + case APPLICATION: + return visitor.visitApplication(); + case ORGANIZER: + return visitor.visitOrganizer(); + case INTERVIEWERS: + return visitor.visitInterviewers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InterviewsListRequestExpandItem valueOf(String value) { + switch (value) { + case "job_interview_stage": + return JOB_INTERVIEW_STAGE; + case "application": + return APPLICATION; + case "organizer": + return ORGANIZER; + case "interviewers": + return INTERVIEWERS; + default: + return new InterviewsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + INTERVIEWERS, + + JOB_INTERVIEW_STAGE, + + ORGANIZER, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitInterviewers(); + + T visitJobInterviewStage(); + + T visitOrganizer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/InterviewsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/InterviewsRetrieveRequestExpandItem.java index 49910b945..df5bf70b0 100644 --- a/src/main/java/com/merge/api/ats/types/InterviewsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/InterviewsRetrieveRequestExpandItem.java @@ -3,26 +3,106 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum InterviewsRetrieveRequestExpandItem { - APPLICATION("application"), +public final class InterviewsRetrieveRequestExpandItem { + public static final InterviewsRetrieveRequestExpandItem JOB_INTERVIEW_STAGE = + new InterviewsRetrieveRequestExpandItem(Value.JOB_INTERVIEW_STAGE, "job_interview_stage"); - INTERVIEWERS("interviewers"), + public static final InterviewsRetrieveRequestExpandItem APPLICATION = + new InterviewsRetrieveRequestExpandItem(Value.APPLICATION, "application"); - JOB_INTERVIEW_STAGE("job_interview_stage"), + public static final InterviewsRetrieveRequestExpandItem ORGANIZER = + new InterviewsRetrieveRequestExpandItem(Value.ORGANIZER, "organizer"); - ORGANIZER("organizer"); + public static final InterviewsRetrieveRequestExpandItem INTERVIEWERS = + new InterviewsRetrieveRequestExpandItem(Value.INTERVIEWERS, "interviewers"); - private final String value; + private final Value value; - InterviewsRetrieveRequestExpandItem(String value) { + private final String string; + + InterviewsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof InterviewsRetrieveRequestExpandItem + && this.string.equals(((InterviewsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case JOB_INTERVIEW_STAGE: + return visitor.visitJobInterviewStage(); + case APPLICATION: + return visitor.visitApplication(); + case ORGANIZER: + return visitor.visitOrganizer(); + case INTERVIEWERS: + return visitor.visitInterviewers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static InterviewsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "job_interview_stage": + return JOB_INTERVIEW_STAGE; + case "application": + return APPLICATION; + case "organizer": + return ORGANIZER; + case "interviewers": + return INTERVIEWERS; + default: + return new InterviewsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + INTERVIEWERS, + + JOB_INTERVIEW_STAGE, + + ORGANIZER, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitInterviewers(); + + T visitJobInterviewStage(); + + T visitOrganizer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/IssueStatusEnum.java b/src/main/java/com/merge/api/ats/types/IssueStatusEnum.java index 583331ce1..9b55a439b 100644 --- a/src/main/java/com/merge/api/ats/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/ats/types/IssuesListRequestStatus.java index 997e6e8a3..7ce684541 100644 --- a/src/main/java/com/merge/api/ats/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/ats/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobPostingStatusEnum.java b/src/main/java/com/merge/api/ats/types/JobPostingStatusEnum.java index 0a4bf024a..2fe22fecf 100644 --- a/src/main/java/com/merge/api/ats/types/JobPostingStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/JobPostingStatusEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobPostingStatusEnum { - PUBLISHED("PUBLISHED"), +public final class JobPostingStatusEnum { + public static final JobPostingStatusEnum INTERNAL = new JobPostingStatusEnum(Value.INTERNAL, "INTERNAL"); - CLOSED("CLOSED"), + public static final JobPostingStatusEnum PUBLISHED = new JobPostingStatusEnum(Value.PUBLISHED, "PUBLISHED"); - DRAFT("DRAFT"), + public static final JobPostingStatusEnum CLOSED = new JobPostingStatusEnum(Value.CLOSED, "CLOSED"); - INTERNAL("INTERNAL"), + public static final JobPostingStatusEnum DRAFT = new JobPostingStatusEnum(Value.DRAFT, "DRAFT"); - PENDING("PENDING"); + public static final JobPostingStatusEnum PENDING = new JobPostingStatusEnum(Value.PENDING, "PENDING"); - private final String value; + private final Value value; - JobPostingStatusEnum(String value) { + private final String string; + + JobPostingStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobPostingStatusEnum && this.string.equals(((JobPostingStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case INTERNAL: + return visitor.visitInternal(); + case PUBLISHED: + return visitor.visitPublished(); + case CLOSED: + return visitor.visitClosed(); + case DRAFT: + return visitor.visitDraft(); + case PENDING: + return visitor.visitPending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobPostingStatusEnum valueOf(String value) { + switch (value) { + case "INTERNAL": + return INTERNAL; + case "PUBLISHED": + return PUBLISHED; + case "CLOSED": + return CLOSED; + case "DRAFT": + return DRAFT; + case "PENDING": + return PENDING; + default: + return new JobPostingStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PUBLISHED, + + CLOSED, + + DRAFT, + + INTERNAL, + + PENDING, + + UNKNOWN + } + + public interface Visitor { + T visitPublished(); + + T visitClosed(); + + T visitDraft(); + + T visitInternal(); + + T visitPending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobPostingsListRequestStatus.java b/src/main/java/com/merge/api/ats/types/JobPostingsListRequestStatus.java index 73b3bbf9e..029451ea5 100644 --- a/src/main/java/com/merge/api/ats/types/JobPostingsListRequestStatus.java +++ b/src/main/java/com/merge/api/ats/types/JobPostingsListRequestStatus.java @@ -3,28 +3,115 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobPostingsListRequestStatus { - CLOSED("CLOSED"), +public final class JobPostingsListRequestStatus { + public static final JobPostingsListRequestStatus INTERNAL = + new JobPostingsListRequestStatus(Value.INTERNAL, "INTERNAL"); - DRAFT("DRAFT"), + public static final JobPostingsListRequestStatus CLOSED = new JobPostingsListRequestStatus(Value.CLOSED, "CLOSED"); - INTERNAL("INTERNAL"), + public static final JobPostingsListRequestStatus PUBLISHED = + new JobPostingsListRequestStatus(Value.PUBLISHED, "PUBLISHED"); - PENDING("PENDING"), + public static final JobPostingsListRequestStatus DRAFT = new JobPostingsListRequestStatus(Value.DRAFT, "DRAFT"); - PUBLISHED("PUBLISHED"); + public static final JobPostingsListRequestStatus PENDING = + new JobPostingsListRequestStatus(Value.PENDING, "PENDING"); - private final String value; + private final Value value; - JobPostingsListRequestStatus(String value) { + private final String string; + + JobPostingsListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobPostingsListRequestStatus + && this.string.equals(((JobPostingsListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case INTERNAL: + return visitor.visitInternal(); + case CLOSED: + return visitor.visitClosed(); + case PUBLISHED: + return visitor.visitPublished(); + case DRAFT: + return visitor.visitDraft(); + case PENDING: + return visitor.visitPending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobPostingsListRequestStatus valueOf(String value) { + switch (value) { + case "INTERNAL": + return INTERNAL; + case "CLOSED": + return CLOSED; + case "PUBLISHED": + return PUBLISHED; + case "DRAFT": + return DRAFT; + case "PENDING": + return PENDING; + default: + return new JobPostingsListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + CLOSED, + + DRAFT, + + INTERNAL, + + PENDING, + + PUBLISHED, + + UNKNOWN + } + + public interface Visitor { + T visitClosed(); + + T visitDraft(); + + T visitInternal(); + + T visitPending(); + + T visitPublished(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobStatusEnum.java b/src/main/java/com/merge/api/ats/types/JobStatusEnum.java index 9c46a1f8d..4ef91c95a 100644 --- a/src/main/java/com/merge/api/ats/types/JobStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/JobStatusEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobStatusEnum { - OPEN("OPEN"), +public final class JobStatusEnum { + public static final JobStatusEnum CLOSED = new JobStatusEnum(Value.CLOSED, "CLOSED"); - CLOSED("CLOSED"), + public static final JobStatusEnum DRAFT = new JobStatusEnum(Value.DRAFT, "DRAFT"); - DRAFT("DRAFT"), + public static final JobStatusEnum ARCHIVED = new JobStatusEnum(Value.ARCHIVED, "ARCHIVED"); - ARCHIVED("ARCHIVED"), + public static final JobStatusEnum OPEN = new JobStatusEnum(Value.OPEN, "OPEN"); - PENDING("PENDING"); + public static final JobStatusEnum PENDING = new JobStatusEnum(Value.PENDING, "PENDING"); - private final String value; + private final Value value; - JobStatusEnum(String value) { + private final String string; + + JobStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobStatusEnum && this.string.equals(((JobStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLOSED: + return visitor.visitClosed(); + case DRAFT: + return visitor.visitDraft(); + case ARCHIVED: + return visitor.visitArchived(); + case OPEN: + return visitor.visitOpen(); + case PENDING: + return visitor.visitPending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobStatusEnum valueOf(String value) { + switch (value) { + case "CLOSED": + return CLOSED; + case "DRAFT": + return DRAFT; + case "ARCHIVED": + return ARCHIVED; + case "OPEN": + return OPEN; + case "PENDING": + return PENDING; + default: + return new JobStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + OPEN, + + CLOSED, + + DRAFT, + + ARCHIVED, + + PENDING, + + UNKNOWN + } + + public interface Visitor { + T visitOpen(); + + T visitClosed(); + + T visitDraft(); + + T visitArchived(); + + T visitPending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobTypeEnum.java b/src/main/java/com/merge/api/ats/types/JobTypeEnum.java index c78766609..a91c77816 100644 --- a/src/main/java/com/merge/api/ats/types/JobTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/JobTypeEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobTypeEnum { - POSTING("POSTING"), +public final class JobTypeEnum { + public static final JobTypeEnum PROFILE = new JobTypeEnum(Value.PROFILE, "PROFILE"); - REQUISITION("REQUISITION"), + public static final JobTypeEnum REQUISITION = new JobTypeEnum(Value.REQUISITION, "REQUISITION"); - PROFILE("PROFILE"); + public static final JobTypeEnum POSTING = new JobTypeEnum(Value.POSTING, "POSTING"); - private final String value; + private final Value value; - JobTypeEnum(String value) { + private final String string; + + JobTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof JobTypeEnum && this.string.equals(((JobTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PROFILE: + return visitor.visitProfile(); + case REQUISITION: + return visitor.visitRequisition(); + case POSTING: + return visitor.visitPosting(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobTypeEnum valueOf(String value) { + switch (value) { + case "PROFILE": + return PROFILE; + case "REQUISITION": + return REQUISITION; + case "POSTING": + return POSTING; + default: + return new JobTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + POSTING, + + REQUISITION, + + PROFILE, + + UNKNOWN + } + + public interface Visitor { + T visitPosting(); + + T visitRequisition(); + + T visitProfile(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobsListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/JobsListRequestExpandItem.java index 5f486c24a..70f0c2ca6 100644 --- a/src/main/java/com/merge/api/ats/types/JobsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/JobsListRequestExpandItem.java @@ -3,28 +3,116 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobsListRequestExpandItem { - DEPARTMENTS("departments"), +public final class JobsListRequestExpandItem { + public static final JobsListRequestExpandItem JOB_POSTINGS = + new JobsListRequestExpandItem(Value.JOB_POSTINGS, "job_postings"); - HIRING_MANAGERS("hiring_managers"), + public static final JobsListRequestExpandItem DEPARTMENTS = + new JobsListRequestExpandItem(Value.DEPARTMENTS, "departments"); - JOB_POSTINGS("job_postings"), + public static final JobsListRequestExpandItem HIRING_MANAGERS = + new JobsListRequestExpandItem(Value.HIRING_MANAGERS, "hiring_managers"); - OFFICES("offices"), + public static final JobsListRequestExpandItem RECRUITERS = + new JobsListRequestExpandItem(Value.RECRUITERS, "recruiters"); - RECRUITERS("recruiters"); + public static final JobsListRequestExpandItem OFFICES = new JobsListRequestExpandItem(Value.OFFICES, "offices"); - private final String value; + private final Value value; - JobsListRequestExpandItem(String value) { + private final String string; + + JobsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobsListRequestExpandItem + && this.string.equals(((JobsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case JOB_POSTINGS: + return visitor.visitJobPostings(); + case DEPARTMENTS: + return visitor.visitDepartments(); + case HIRING_MANAGERS: + return visitor.visitHiringManagers(); + case RECRUITERS: + return visitor.visitRecruiters(); + case OFFICES: + return visitor.visitOffices(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobsListRequestExpandItem valueOf(String value) { + switch (value) { + case "job_postings": + return JOB_POSTINGS; + case "departments": + return DEPARTMENTS; + case "hiring_managers": + return HIRING_MANAGERS; + case "recruiters": + return RECRUITERS; + case "offices": + return OFFICES; + default: + return new JobsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DEPARTMENTS, + + HIRING_MANAGERS, + + JOB_POSTINGS, + + OFFICES, + + RECRUITERS, + + UNKNOWN + } + + public interface Visitor { + T visitDepartments(); + + T visitHiringManagers(); + + T visitJobPostings(); + + T visitOffices(); + + T visitRecruiters(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobsListRequestStatus.java b/src/main/java/com/merge/api/ats/types/JobsListRequestStatus.java index 5a0cf49ed..2b2128b4b 100644 --- a/src/main/java/com/merge/api/ats/types/JobsListRequestStatus.java +++ b/src/main/java/com/merge/api/ats/types/JobsListRequestStatus.java @@ -3,28 +3,112 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobsListRequestStatus { - ARCHIVED("ARCHIVED"), +public final class JobsListRequestStatus { + public static final JobsListRequestStatus CLOSED = new JobsListRequestStatus(Value.CLOSED, "CLOSED"); - CLOSED("CLOSED"), + public static final JobsListRequestStatus DRAFT = new JobsListRequestStatus(Value.DRAFT, "DRAFT"); - DRAFT("DRAFT"), + public static final JobsListRequestStatus ARCHIVED = new JobsListRequestStatus(Value.ARCHIVED, "ARCHIVED"); - OPEN("OPEN"), + public static final JobsListRequestStatus OPEN = new JobsListRequestStatus(Value.OPEN, "OPEN"); - PENDING("PENDING"); + public static final JobsListRequestStatus PENDING = new JobsListRequestStatus(Value.PENDING, "PENDING"); - private final String value; + private final Value value; - JobsListRequestStatus(String value) { + private final String string; + + JobsListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobsListRequestStatus + && this.string.equals(((JobsListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLOSED: + return visitor.visitClosed(); + case DRAFT: + return visitor.visitDraft(); + case ARCHIVED: + return visitor.visitArchived(); + case OPEN: + return visitor.visitOpen(); + case PENDING: + return visitor.visitPending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobsListRequestStatus valueOf(String value) { + switch (value) { + case "CLOSED": + return CLOSED; + case "DRAFT": + return DRAFT; + case "ARCHIVED": + return ARCHIVED; + case "OPEN": + return OPEN; + case "PENDING": + return PENDING; + default: + return new JobsListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ARCHIVED, + + CLOSED, + + DRAFT, + + OPEN, + + PENDING, + + UNKNOWN + } + + public interface Visitor { + T visitArchived(); + + T visitClosed(); + + T visitDraft(); + + T visitOpen(); + + T visitPending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/JobsRetrieveRequestExpandItem.java index 2f40d6caa..505ce3c19 100644 --- a/src/main/java/com/merge/api/ats/types/JobsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/JobsRetrieveRequestExpandItem.java @@ -3,28 +3,117 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobsRetrieveRequestExpandItem { - DEPARTMENTS("departments"), +public final class JobsRetrieveRequestExpandItem { + public static final JobsRetrieveRequestExpandItem JOB_POSTINGS = + new JobsRetrieveRequestExpandItem(Value.JOB_POSTINGS, "job_postings"); - HIRING_MANAGERS("hiring_managers"), + public static final JobsRetrieveRequestExpandItem DEPARTMENTS = + new JobsRetrieveRequestExpandItem(Value.DEPARTMENTS, "departments"); - JOB_POSTINGS("job_postings"), + public static final JobsRetrieveRequestExpandItem HIRING_MANAGERS = + new JobsRetrieveRequestExpandItem(Value.HIRING_MANAGERS, "hiring_managers"); - OFFICES("offices"), + public static final JobsRetrieveRequestExpandItem RECRUITERS = + new JobsRetrieveRequestExpandItem(Value.RECRUITERS, "recruiters"); - RECRUITERS("recruiters"); + public static final JobsRetrieveRequestExpandItem OFFICES = + new JobsRetrieveRequestExpandItem(Value.OFFICES, "offices"); - private final String value; + private final Value value; - JobsRetrieveRequestExpandItem(String value) { + private final String string; + + JobsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobsRetrieveRequestExpandItem + && this.string.equals(((JobsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case JOB_POSTINGS: + return visitor.visitJobPostings(); + case DEPARTMENTS: + return visitor.visitDepartments(); + case HIRING_MANAGERS: + return visitor.visitHiringManagers(); + case RECRUITERS: + return visitor.visitRecruiters(); + case OFFICES: + return visitor.visitOffices(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "job_postings": + return JOB_POSTINGS; + case "departments": + return DEPARTMENTS; + case "hiring_managers": + return HIRING_MANAGERS; + case "recruiters": + return RECRUITERS; + case "offices": + return OFFICES; + default: + return new JobsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DEPARTMENTS, + + HIRING_MANAGERS, + + JOB_POSTINGS, + + OFFICES, + + RECRUITERS, + + UNKNOWN + } + + public interface Visitor { + T visitDepartments(); + + T visitHiringManagers(); + + T visitJobPostings(); + + T visitOffices(); + + T visitRecruiters(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/JobsScreeningQuestionsListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/JobsScreeningQuestionsListRequestExpandItem.java index 1bdfec611..33443f061 100644 --- a/src/main/java/com/merge/api/ats/types/JobsScreeningQuestionsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/JobsScreeningQuestionsListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum JobsScreeningQuestionsListRequestExpandItem { - JOB("job"), +public final class JobsScreeningQuestionsListRequestExpandItem { + public static final JobsScreeningQuestionsListRequestExpandItem OPTIONS = + new JobsScreeningQuestionsListRequestExpandItem(Value.OPTIONS, "options"); - OPTIONS("options"); + public static final JobsScreeningQuestionsListRequestExpandItem JOB = + new JobsScreeningQuestionsListRequestExpandItem(Value.JOB, "job"); - private final String value; + private final Value value; - JobsScreeningQuestionsListRequestExpandItem(String value) { + private final String string; + + JobsScreeningQuestionsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof JobsScreeningQuestionsListRequestExpandItem + && this.string.equals(((JobsScreeningQuestionsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case JOB: + return visitor.visitJob(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static JobsScreeningQuestionsListRequestExpandItem valueOf(String value) { + switch (value) { + case "options": + return OPTIONS; + case "job": + return JOB; + default: + return new JobsScreeningQuestionsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + JOB, + + OPTIONS, + + UNKNOWN + } + + public interface Visitor { + T visitJob(); + + T visitOptions(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/LanguageEnum.java b/src/main/java/com/merge/api/ats/types/LanguageEnum.java index 195e794c3..117ae04ba 100644 --- a/src/main/java/com/merge/api/ats/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/ats/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/ats/types/LastSyncResultEnum.java index 115a62280..16de12e91 100644 --- a/src/main/java/com/merge/api/ats/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/ats/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/ats/types/LinkedAccountsListRequestCategory.java index 9fc4471bb..3140df82b 100644 --- a/src/main/java/com/merge/api/ats/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/ats/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/MethodEnum.java b/src/main/java/com/merge/api/ats/types/MethodEnum.java index a894a1f76..dc29e4fa9 100644 --- a/src/main/java/com/merge/api/ats/types/MethodEnum.java +++ b/src/main/java/com/merge/api/ats/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/OfferStatusEnum.java b/src/main/java/com/merge/api/ats/types/OfferStatusEnum.java index e69db055f..a3a7ec1cd 100644 --- a/src/main/java/com/merge/api/ats/types/OfferStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/OfferStatusEnum.java @@ -3,36 +3,151 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OfferStatusEnum { - DRAFT("DRAFT"), +public final class OfferStatusEnum { + public static final OfferStatusEnum OPENED = new OfferStatusEnum(Value.OPENED, "OPENED"); - APPROVAL_SENT("APPROVAL-SENT"), + public static final OfferStatusEnum DEPRECATED = new OfferStatusEnum(Value.DEPRECATED, "DEPRECATED"); - APPROVED("APPROVED"), + public static final OfferStatusEnum SIGNED = new OfferStatusEnum(Value.SIGNED, "SIGNED"); - SENT("SENT"), + public static final OfferStatusEnum DENIED = new OfferStatusEnum(Value.DENIED, "DENIED"); - SENT_MANUALLY("SENT-MANUALLY"), + public static final OfferStatusEnum DRAFT = new OfferStatusEnum(Value.DRAFT, "DRAFT"); - OPENED("OPENED"), + public static final OfferStatusEnum SENT_MANUALLY = new OfferStatusEnum(Value.SENT_MANUALLY, "SENT-MANUALLY"); - DENIED("DENIED"), + public static final OfferStatusEnum SENT = new OfferStatusEnum(Value.SENT, "SENT"); - SIGNED("SIGNED"), + public static final OfferStatusEnum APPROVED = new OfferStatusEnum(Value.APPROVED, "APPROVED"); - DEPRECATED("DEPRECATED"); + public static final OfferStatusEnum APPROVAL_SENT = new OfferStatusEnum(Value.APPROVAL_SENT, "APPROVAL-SENT"); - private final String value; + private final Value value; - OfferStatusEnum(String value) { + private final String string; + + OfferStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OfferStatusEnum && this.string.equals(((OfferStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPENED: + return visitor.visitOpened(); + case DEPRECATED: + return visitor.visitDeprecated(); + case SIGNED: + return visitor.visitSigned(); + case DENIED: + return visitor.visitDenied(); + case DRAFT: + return visitor.visitDraft(); + case SENT_MANUALLY: + return visitor.visitSentManually(); + case SENT: + return visitor.visitSent(); + case APPROVED: + return visitor.visitApproved(); + case APPROVAL_SENT: + return visitor.visitApprovalSent(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OfferStatusEnum valueOf(String value) { + switch (value) { + case "OPENED": + return OPENED; + case "DEPRECATED": + return DEPRECATED; + case "SIGNED": + return SIGNED; + case "DENIED": + return DENIED; + case "DRAFT": + return DRAFT; + case "SENT-MANUALLY": + return SENT_MANUALLY; + case "SENT": + return SENT; + case "APPROVED": + return APPROVED; + case "APPROVAL-SENT": + return APPROVAL_SENT; + default: + return new OfferStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + DRAFT, + + APPROVAL_SENT, + + APPROVED, + + SENT, + + SENT_MANUALLY, + + OPENED, + + DENIED, + + SIGNED, + + DEPRECATED, + + UNKNOWN + } + + public interface Visitor { + T visitDraft(); + + T visitApprovalSent(); + + T visitApproved(); + + T visitSent(); + + T visitSentManually(); + + T visitOpened(); + + T visitDenied(); + + T visitSigned(); + + T visitDeprecated(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/OffersListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/OffersListRequestExpandItem.java index 7fbd047ca..56b5d3862 100644 --- a/src/main/java/com/merge/api/ats/types/OffersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/OffersListRequestExpandItem.java @@ -3,22 +3,83 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OffersListRequestExpandItem { - APPLICATION("application"), +public final class OffersListRequestExpandItem { + public static final OffersListRequestExpandItem CREATOR = new OffersListRequestExpandItem(Value.CREATOR, "creator"); - CREATOR("creator"); + public static final OffersListRequestExpandItem APPLICATION = + new OffersListRequestExpandItem(Value.APPLICATION, "application"); - private final String value; + private final Value value; - OffersListRequestExpandItem(String value) { + private final String string; + + OffersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OffersListRequestExpandItem + && this.string.equals(((OffersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATOR: + return visitor.visitCreator(); + case APPLICATION: + return visitor.visitApplication(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OffersListRequestExpandItem valueOf(String value) { + switch (value) { + case "creator": + return CREATOR; + case "application": + return APPLICATION; + default: + return new OffersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + CREATOR, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitCreator(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/OffersRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/OffersRetrieveRequestExpandItem.java index 6f5b6932a..2b268883c 100644 --- a/src/main/java/com/merge/api/ats/types/OffersRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/OffersRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OffersRetrieveRequestExpandItem { - APPLICATION("application"), +public final class OffersRetrieveRequestExpandItem { + public static final OffersRetrieveRequestExpandItem CREATOR = + new OffersRetrieveRequestExpandItem(Value.CREATOR, "creator"); - CREATOR("creator"); + public static final OffersRetrieveRequestExpandItem APPLICATION = + new OffersRetrieveRequestExpandItem(Value.APPLICATION, "application"); - private final String value; + private final Value value; - OffersRetrieveRequestExpandItem(String value) { + private final String string; + + OffersRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OffersRetrieveRequestExpandItem + && this.string.equals(((OffersRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATOR: + return visitor.visitCreator(); + case APPLICATION: + return visitor.visitApplication(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OffersRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "creator": + return CREATOR; + case "application": + return APPLICATION; + default: + return new OffersRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + CREATOR, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitCreator(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/OverallRecommendationEnum.java b/src/main/java/com/merge/api/ats/types/OverallRecommendationEnum.java index 977eeca9f..e216e2015 100644 --- a/src/main/java/com/merge/api/ats/types/OverallRecommendationEnum.java +++ b/src/main/java/com/merge/api/ats/types/OverallRecommendationEnum.java @@ -3,28 +3,115 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OverallRecommendationEnum { - DEFINITELY_NO("DEFINITELY_NO"), +public final class OverallRecommendationEnum { + public static final OverallRecommendationEnum YES = new OverallRecommendationEnum(Value.YES, "YES"); - NO("NO"), + public static final OverallRecommendationEnum NO = new OverallRecommendationEnum(Value.NO, "NO"); - YES("YES"), + public static final OverallRecommendationEnum DEFINITELY_NO = + new OverallRecommendationEnum(Value.DEFINITELY_NO, "DEFINITELY_NO"); - STRONG_YES("STRONG_YES"), + public static final OverallRecommendationEnum STRONG_YES = + new OverallRecommendationEnum(Value.STRONG_YES, "STRONG_YES"); - NO_DECISION("NO_DECISION"); + public static final OverallRecommendationEnum NO_DECISION = + new OverallRecommendationEnum(Value.NO_DECISION, "NO_DECISION"); - private final String value; + private final Value value; - OverallRecommendationEnum(String value) { + private final String string; + + OverallRecommendationEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OverallRecommendationEnum + && this.string.equals(((OverallRecommendationEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case YES: + return visitor.visitYes(); + case NO: + return visitor.visitNo(); + case DEFINITELY_NO: + return visitor.visitDefinitelyNo(); + case STRONG_YES: + return visitor.visitStrongYes(); + case NO_DECISION: + return visitor.visitNoDecision(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OverallRecommendationEnum valueOf(String value) { + switch (value) { + case "YES": + return YES; + case "NO": + return NO; + case "DEFINITELY_NO": + return DEFINITELY_NO; + case "STRONG_YES": + return STRONG_YES; + case "NO_DECISION": + return NO_DECISION; + default: + return new OverallRecommendationEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + DEFINITELY_NO, + + NO, + + YES, + + STRONG_YES, + + NO_DECISION, + + UNKNOWN + } + + public interface Visitor { + T visitDefinitelyNo(); + + T visitNo(); + + T visitYes(); + + T visitStrongYes(); + + T visitNoDecision(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/PhoneNumberTypeEnum.java b/src/main/java/com/merge/api/ats/types/PhoneNumberTypeEnum.java index 55416ffdf..e42c1e6b9 100644 --- a/src/main/java/com/merge/api/ats/types/PhoneNumberTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/PhoneNumberTypeEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PhoneNumberTypeEnum { - HOME("HOME"), +public final class PhoneNumberTypeEnum { + public static final PhoneNumberTypeEnum WORK = new PhoneNumberTypeEnum(Value.WORK, "WORK"); - WORK("WORK"), + public static final PhoneNumberTypeEnum SKYPE = new PhoneNumberTypeEnum(Value.SKYPE, "SKYPE"); - MOBILE("MOBILE"), + public static final PhoneNumberTypeEnum HOME = new PhoneNumberTypeEnum(Value.HOME, "HOME"); - SKYPE("SKYPE"), + public static final PhoneNumberTypeEnum OTHER = new PhoneNumberTypeEnum(Value.OTHER, "OTHER"); - OTHER("OTHER"); + public static final PhoneNumberTypeEnum MOBILE = new PhoneNumberTypeEnum(Value.MOBILE, "MOBILE"); - private final String value; + private final Value value; - PhoneNumberTypeEnum(String value) { + private final String string; + + PhoneNumberTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PhoneNumberTypeEnum && this.string.equals(((PhoneNumberTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WORK: + return visitor.visitWork(); + case SKYPE: + return visitor.visitSkype(); + case HOME: + return visitor.visitHome(); + case OTHER: + return visitor.visitOther(); + case MOBILE: + return visitor.visitMobile(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PhoneNumberTypeEnum valueOf(String value) { + switch (value) { + case "WORK": + return WORK; + case "SKYPE": + return SKYPE; + case "HOME": + return HOME; + case "OTHER": + return OTHER; + case "MOBILE": + return MOBILE; + default: + return new PhoneNumberTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HOME, + + WORK, + + MOBILE, + + SKYPE, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitHome(); + + T visitWork(); + + T visitMobile(); + + T visitSkype(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/RaceEnum.java b/src/main/java/com/merge/api/ats/types/RaceEnum.java index 42e96a5e2..a1ad493b7 100644 --- a/src/main/java/com/merge/api/ats/types/RaceEnum.java +++ b/src/main/java/com/merge/api/ats/types/RaceEnum.java @@ -3,34 +3,144 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RaceEnum { - AMERICAN_INDIAN_OR_ALASKAN_NATIVE("AMERICAN_INDIAN_OR_ALASKAN_NATIVE"), +public final class RaceEnum { + public static final RaceEnum ASIAN = new RaceEnum(Value.ASIAN, "ASIAN"); - ASIAN("ASIAN"), + public static final RaceEnum AMERICAN_INDIAN_OR_ALASKAN_NATIVE = + new RaceEnum(Value.AMERICAN_INDIAN_OR_ALASKAN_NATIVE, "AMERICAN_INDIAN_OR_ALASKAN_NATIVE"); - BLACK_OR_AFRICAN_AMERICAN("BLACK_OR_AFRICAN_AMERICAN"), + public static final RaceEnum NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER = + new RaceEnum(Value.NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER, "NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER"); - HISPANIC_OR_LATINO("HISPANIC_OR_LATINO"), + public static final RaceEnum HISPANIC_OR_LATINO = new RaceEnum(Value.HISPANIC_OR_LATINO, "HISPANIC_OR_LATINO"); - WHITE("WHITE"), + public static final RaceEnum BLACK_OR_AFRICAN_AMERICAN = + new RaceEnum(Value.BLACK_OR_AFRICAN_AMERICAN, "BLACK_OR_AFRICAN_AMERICAN"); - NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER("NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER"), + public static final RaceEnum TWO_OR_MORE_RACES = new RaceEnum(Value.TWO_OR_MORE_RACES, "TWO_OR_MORE_RACES"); - TWO_OR_MORE_RACES("TWO_OR_MORE_RACES"), + public static final RaceEnum WHITE = new RaceEnum(Value.WHITE, "WHITE"); - DECLINE_TO_SELF_IDENTIFY("DECLINE_TO_SELF_IDENTIFY"); + public static final RaceEnum DECLINE_TO_SELF_IDENTIFY = + new RaceEnum(Value.DECLINE_TO_SELF_IDENTIFY, "DECLINE_TO_SELF_IDENTIFY"); - private final String value; + private final Value value; - RaceEnum(String value) { + private final String string; + + RaceEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RaceEnum && this.string.equals(((RaceEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ASIAN: + return visitor.visitAsian(); + case AMERICAN_INDIAN_OR_ALASKAN_NATIVE: + return visitor.visitAmericanIndianOrAlaskanNative(); + case NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER: + return visitor.visitNativeHawaiianOrOtherPacificIslander(); + case HISPANIC_OR_LATINO: + return visitor.visitHispanicOrLatino(); + case BLACK_OR_AFRICAN_AMERICAN: + return visitor.visitBlackOrAfricanAmerican(); + case TWO_OR_MORE_RACES: + return visitor.visitTwoOrMoreRaces(); + case WHITE: + return visitor.visitWhite(); + case DECLINE_TO_SELF_IDENTIFY: + return visitor.visitDeclineToSelfIdentify(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RaceEnum valueOf(String value) { + switch (value) { + case "ASIAN": + return ASIAN; + case "AMERICAN_INDIAN_OR_ALASKAN_NATIVE": + return AMERICAN_INDIAN_OR_ALASKAN_NATIVE; + case "NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER": + return NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER; + case "HISPANIC_OR_LATINO": + return HISPANIC_OR_LATINO; + case "BLACK_OR_AFRICAN_AMERICAN": + return BLACK_OR_AFRICAN_AMERICAN; + case "TWO_OR_MORE_RACES": + return TWO_OR_MORE_RACES; + case "WHITE": + return WHITE; + case "DECLINE_TO_SELF_IDENTIFY": + return DECLINE_TO_SELF_IDENTIFY; + default: + return new RaceEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + AMERICAN_INDIAN_OR_ALASKAN_NATIVE, + + ASIAN, + + BLACK_OR_AFRICAN_AMERICAN, + + HISPANIC_OR_LATINO, + + WHITE, + + NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER, + + TWO_OR_MORE_RACES, + + DECLINE_TO_SELF_IDENTIFY, + + UNKNOWN + } + + public interface Visitor { + T visitAmericanIndianOrAlaskanNative(); + + T visitAsian(); + + T visitBlackOrAfricanAmerican(); + + T visitHispanicOrLatino(); + + T visitWhite(); + + T visitNativeHawaiianOrOtherPacificIslander(); + + T visitTwoOrMoreRaces(); + + T visitDeclineToSelfIdentify(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ReasonEnum.java b/src/main/java/com/merge/api/ats/types/ReasonEnum.java index 97861747c..e4e357fc4 100644 --- a/src/main/java/com/merge/api/ats/types/ReasonEnum.java +++ b/src/main/java/com/merge/api/ats/types/ReasonEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ReasonEnum { - GENERAL_CUSTOMER_REQUEST("GENERAL_CUSTOMER_REQUEST"), +public final class ReasonEnum { + public static final ReasonEnum GDPR = new ReasonEnum(Value.GDPR, "GDPR"); - GDPR("GDPR"), + public static final ReasonEnum GENERAL_CUSTOMER_REQUEST = + new ReasonEnum(Value.GENERAL_CUSTOMER_REQUEST, "GENERAL_CUSTOMER_REQUEST"); - OTHER("OTHER"); + public static final ReasonEnum OTHER = new ReasonEnum(Value.OTHER, "OTHER"); - private final String value; + private final Value value; - ReasonEnum(String value) { + private final String string; + + ReasonEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ReasonEnum && this.string.equals(((ReasonEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GDPR: + return visitor.visitGdpr(); + case GENERAL_CUSTOMER_REQUEST: + return visitor.visitGeneralCustomerRequest(); + case OTHER: + return visitor.visitOther(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ReasonEnum valueOf(String value) { + switch (value) { + case "GDPR": + return GDPR; + case "GENERAL_CUSTOMER_REQUEST": + return GENERAL_CUSTOMER_REQUEST; + case "OTHER": + return OTHER; + default: + return new ReasonEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GENERAL_CUSTOMER_REQUEST, + + GDPR, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitGeneralCustomerRequest(); + + T visitGdpr(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/RequestFormatEnum.java b/src/main/java/com/merge/api/ats/types/RequestFormatEnum.java index c07c587ca..b1bcaa95a 100644 --- a/src/main/java/com/merge/api/ats/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/ats/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/ats/types/ResponseTypeEnum.java index aac158db2..97232c03e 100644 --- a/src/main/java/com/merge/api/ats/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/RoleEnum.java b/src/main/java/com/merge/api/ats/types/RoleEnum.java index c0193425e..9fa4cb5c0 100644 --- a/src/main/java/com/merge/api/ats/types/RoleEnum.java +++ b/src/main/java/com/merge/api/ats/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ScheduledInterviewStatusEnum.java b/src/main/java/com/merge/api/ats/types/ScheduledInterviewStatusEnum.java index 1c4d4a8d6..82d94b873 100644 --- a/src/main/java/com/merge/api/ats/types/ScheduledInterviewStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/ScheduledInterviewStatusEnum.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ScheduledInterviewStatusEnum { - SCHEDULED("SCHEDULED"), +public final class ScheduledInterviewStatusEnum { + public static final ScheduledInterviewStatusEnum SCHEDULED = + new ScheduledInterviewStatusEnum(Value.SCHEDULED, "SCHEDULED"); - AWAITING_FEEDBACK("AWAITING_FEEDBACK"), + public static final ScheduledInterviewStatusEnum AWAITING_FEEDBACK = + new ScheduledInterviewStatusEnum(Value.AWAITING_FEEDBACK, "AWAITING_FEEDBACK"); - COMPLETE("COMPLETE"); + public static final ScheduledInterviewStatusEnum COMPLETE = + new ScheduledInterviewStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - ScheduledInterviewStatusEnum(String value) { + private final String string; + + ScheduledInterviewStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ScheduledInterviewStatusEnum + && this.string.equals(((ScheduledInterviewStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SCHEDULED: + return visitor.visitScheduled(); + case AWAITING_FEEDBACK: + return visitor.visitAwaitingFeedback(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ScheduledInterviewStatusEnum valueOf(String value) { + switch (value) { + case "SCHEDULED": + return SCHEDULED; + case "AWAITING_FEEDBACK": + return AWAITING_FEEDBACK; + case "COMPLETE": + return COMPLETE; + default: + return new ScheduledInterviewStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SCHEDULED, + + AWAITING_FEEDBACK, + + COMPLETE, + + UNKNOWN + } + + public interface Visitor { + T visitScheduled(); + + T visitAwaitingFeedback(); + + T visitComplete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ScorecardsListRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/ScorecardsListRequestExpandItem.java index 96550ae0a..a69fa0198 100644 --- a/src/main/java/com/merge/api/ats/types/ScorecardsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/ScorecardsListRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ScorecardsListRequestExpandItem { - APPLICATION("application"), +public final class ScorecardsListRequestExpandItem { + public static final ScorecardsListRequestExpandItem INTERVIEW = + new ScorecardsListRequestExpandItem(Value.INTERVIEW, "interview"); - INTERVIEW("interview"), + public static final ScorecardsListRequestExpandItem APPLICATION = + new ScorecardsListRequestExpandItem(Value.APPLICATION, "application"); - INTERVIEWER("interviewer"); + public static final ScorecardsListRequestExpandItem INTERVIEWER = + new ScorecardsListRequestExpandItem(Value.INTERVIEWER, "interviewer"); - private final String value; + private final Value value; - ScorecardsListRequestExpandItem(String value) { + private final String string; + + ScorecardsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ScorecardsListRequestExpandItem + && this.string.equals(((ScorecardsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case INTERVIEW: + return visitor.visitInterview(); + case APPLICATION: + return visitor.visitApplication(); + case INTERVIEWER: + return visitor.visitInterviewer(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ScorecardsListRequestExpandItem valueOf(String value) { + switch (value) { + case "interview": + return INTERVIEW; + case "application": + return APPLICATION; + case "interviewer": + return INTERVIEWER; + default: + return new ScorecardsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + INTERVIEW, + + INTERVIEWER, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitInterview(); + + T visitInterviewer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ScorecardsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ats/types/ScorecardsRetrieveRequestExpandItem.java index 86ddb339e..019e8142d 100644 --- a/src/main/java/com/merge/api/ats/types/ScorecardsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ats/types/ScorecardsRetrieveRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ScorecardsRetrieveRequestExpandItem { - APPLICATION("application"), +public final class ScorecardsRetrieveRequestExpandItem { + public static final ScorecardsRetrieveRequestExpandItem INTERVIEW = + new ScorecardsRetrieveRequestExpandItem(Value.INTERVIEW, "interview"); - INTERVIEW("interview"), + public static final ScorecardsRetrieveRequestExpandItem APPLICATION = + new ScorecardsRetrieveRequestExpandItem(Value.APPLICATION, "application"); - INTERVIEWER("interviewer"); + public static final ScorecardsRetrieveRequestExpandItem INTERVIEWER = + new ScorecardsRetrieveRequestExpandItem(Value.INTERVIEWER, "interviewer"); - private final String value; + private final Value value; - ScorecardsRetrieveRequestExpandItem(String value) { + private final String string; + + ScorecardsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ScorecardsRetrieveRequestExpandItem + && this.string.equals(((ScorecardsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case INTERVIEW: + return visitor.visitInterview(); + case APPLICATION: + return visitor.visitApplication(); + case INTERVIEWER: + return visitor.visitInterviewer(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ScorecardsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "interview": + return INTERVIEW; + case "application": + return APPLICATION; + case "interviewer": + return INTERVIEWER; + default: + return new ScorecardsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPLICATION, + + INTERVIEW, + + INTERVIEWER, + + UNKNOWN + } + + public interface Visitor { + T visitApplication(); + + T visitInterview(); + + T visitInterviewer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/ScreeningQuestionTypeEnum.java b/src/main/java/com/merge/api/ats/types/ScreeningQuestionTypeEnum.java index 30ad5ad70..40795667c 100644 --- a/src/main/java/com/merge/api/ats/types/ScreeningQuestionTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/ScreeningQuestionTypeEnum.java @@ -3,34 +3,146 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ScreeningQuestionTypeEnum { - DATE("DATE"), +public final class ScreeningQuestionTypeEnum { + public static final ScreeningQuestionTypeEnum SINGLE_LINE_TEXT = + new ScreeningQuestionTypeEnum(Value.SINGLE_LINE_TEXT, "SINGLE_LINE_TEXT"); - FILE("FILE"), + public static final ScreeningQuestionTypeEnum DATE = new ScreeningQuestionTypeEnum(Value.DATE, "DATE"); - SINGLE_SELECT("SINGLE_SELECT"), + public static final ScreeningQuestionTypeEnum MULTI_SELECT = + new ScreeningQuestionTypeEnum(Value.MULTI_SELECT, "MULTI_SELECT"); - MULTI_SELECT("MULTI_SELECT"), + public static final ScreeningQuestionTypeEnum FILE = new ScreeningQuestionTypeEnum(Value.FILE, "FILE"); - SINGLE_LINE_TEXT("SINGLE_LINE_TEXT"), + public static final ScreeningQuestionTypeEnum NUMERIC = new ScreeningQuestionTypeEnum(Value.NUMERIC, "NUMERIC"); - MULTI_LINE_TEXT("MULTI_LINE_TEXT"), + public static final ScreeningQuestionTypeEnum MULTI_LINE_TEXT = + new ScreeningQuestionTypeEnum(Value.MULTI_LINE_TEXT, "MULTI_LINE_TEXT"); - NUMERIC("NUMERIC"), + public static final ScreeningQuestionTypeEnum BOOLEAN = new ScreeningQuestionTypeEnum(Value.BOOLEAN, "BOOLEAN"); - BOOLEAN("BOOLEAN"); + public static final ScreeningQuestionTypeEnum SINGLE_SELECT = + new ScreeningQuestionTypeEnum(Value.SINGLE_SELECT, "SINGLE_SELECT"); - private final String value; + private final Value value; - ScreeningQuestionTypeEnum(String value) { + private final String string; + + ScreeningQuestionTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ScreeningQuestionTypeEnum + && this.string.equals(((ScreeningQuestionTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SINGLE_LINE_TEXT: + return visitor.visitSingleLineText(); + case DATE: + return visitor.visitDate(); + case MULTI_SELECT: + return visitor.visitMultiSelect(); + case FILE: + return visitor.visitFile(); + case NUMERIC: + return visitor.visitNumeric(); + case MULTI_LINE_TEXT: + return visitor.visitMultiLineText(); + case BOOLEAN: + return visitor.visitBoolean(); + case SINGLE_SELECT: + return visitor.visitSingleSelect(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ScreeningQuestionTypeEnum valueOf(String value) { + switch (value) { + case "SINGLE_LINE_TEXT": + return SINGLE_LINE_TEXT; + case "DATE": + return DATE; + case "MULTI_SELECT": + return MULTI_SELECT; + case "FILE": + return FILE; + case "NUMERIC": + return NUMERIC; + case "MULTI_LINE_TEXT": + return MULTI_LINE_TEXT; + case "BOOLEAN": + return BOOLEAN; + case "SINGLE_SELECT": + return SINGLE_SELECT; + default: + return new ScreeningQuestionTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + DATE, + + FILE, + + SINGLE_SELECT, + + MULTI_SELECT, + + SINGLE_LINE_TEXT, + + MULTI_LINE_TEXT, + + NUMERIC, + + BOOLEAN, + + UNKNOWN + } + + public interface Visitor { + T visitDate(); + + T visitFile(); + + T visitSingleSelect(); + + T visitMultiSelect(); + + T visitSingleLineText(); + + T visitMultiLineText(); + + T visitNumeric(); + + T visitBoolean(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/ats/types/SelectiveSyncConfigurationsUsageEnum.java index 22a435b9c..6ce043869 100644 --- a/src/main/java/com/merge/api/ats/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/ats/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/StatusFd5Enum.java b/src/main/java/com/merge/api/ats/types/StatusFd5Enum.java index 605a618e7..fd5d0abcc 100644 --- a/src/main/java/com/merge/api/ats/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/ats/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/UrlTypeEnum.java b/src/main/java/com/merge/api/ats/types/UrlTypeEnum.java index 8f535a42e..0cbed8817 100644 --- a/src/main/java/com/merge/api/ats/types/UrlTypeEnum.java +++ b/src/main/java/com/merge/api/ats/types/UrlTypeEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum UrlTypeEnum { - PERSONAL("PERSONAL"), +public final class UrlTypeEnum { + public static final UrlTypeEnum SOCIAL_MEDIA = new UrlTypeEnum(Value.SOCIAL_MEDIA, "SOCIAL_MEDIA"); - COMPANY("COMPANY"), + public static final UrlTypeEnum JOB_POSTING = new UrlTypeEnum(Value.JOB_POSTING, "JOB_POSTING"); - PORTFOLIO("PORTFOLIO"), + public static final UrlTypeEnum OTHER = new UrlTypeEnum(Value.OTHER, "OTHER"); - BLOG("BLOG"), + public static final UrlTypeEnum COMPANY = new UrlTypeEnum(Value.COMPANY, "COMPANY"); - SOCIAL_MEDIA("SOCIAL_MEDIA"), + public static final UrlTypeEnum PORTFOLIO = new UrlTypeEnum(Value.PORTFOLIO, "PORTFOLIO"); - OTHER("OTHER"), + public static final UrlTypeEnum BLOG = new UrlTypeEnum(Value.BLOG, "BLOG"); - JOB_POSTING("JOB_POSTING"); + public static final UrlTypeEnum PERSONAL = new UrlTypeEnum(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - UrlTypeEnum(String value) { + private final String string; + + UrlTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof UrlTypeEnum && this.string.equals(((UrlTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SOCIAL_MEDIA: + return visitor.visitSocialMedia(); + case JOB_POSTING: + return visitor.visitJobPosting(); + case OTHER: + return visitor.visitOther(); + case COMPANY: + return visitor.visitCompany(); + case PORTFOLIO: + return visitor.visitPortfolio(); + case BLOG: + return visitor.visitBlog(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static UrlTypeEnum valueOf(String value) { + switch (value) { + case "SOCIAL_MEDIA": + return SOCIAL_MEDIA; + case "JOB_POSTING": + return JOB_POSTING; + case "OTHER": + return OTHER; + case "COMPANY": + return COMPANY; + case "PORTFOLIO": + return PORTFOLIO; + case "BLOG": + return BLOG; + case "PERSONAL": + return PERSONAL; + default: + return new UrlTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PERSONAL, + + COMPANY, + + PORTFOLIO, + + BLOG, + + SOCIAL_MEDIA, + + OTHER, + + JOB_POSTING, + + UNKNOWN + } + + public interface Visitor { + T visitPersonal(); + + T visitCompany(); + + T visitPortfolio(); + + T visitBlog(); + + T visitSocialMedia(); + + T visitOther(); + + T visitJobPosting(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/VeteranStatusEnum.java b/src/main/java/com/merge/api/ats/types/VeteranStatusEnum.java index 803a8b273..232e443f0 100644 --- a/src/main/java/com/merge/api/ats/types/VeteranStatusEnum.java +++ b/src/main/java/com/merge/api/ats/types/VeteranStatusEnum.java @@ -3,25 +3,96 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum VeteranStatusEnum { - I_AM_NOT_A_PROTECTED_VETERAN("I_AM_NOT_A_PROTECTED_VETERAN"), +public final class VeteranStatusEnum { + public static final VeteranStatusEnum I_DONT_WISH_TO_ANSWER = + new VeteranStatusEnum(Value.I_DONT_WISH_TO_ANSWER, "I_DONT_WISH_TO_ANSWER"); - I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN( - "I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN"), + public static final VeteranStatusEnum I_AM_NOT_A_PROTECTED_VETERAN = + new VeteranStatusEnum(Value.I_AM_NOT_A_PROTECTED_VETERAN, "I_AM_NOT_A_PROTECTED_VETERAN"); - I_DONT_WISH_TO_ANSWER("I_DONT_WISH_TO_ANSWER"); + public static final VeteranStatusEnum I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN = + new VeteranStatusEnum( + Value.I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN, + "I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN"); - private final String value; + private final Value value; - VeteranStatusEnum(String value) { + private final String string; + + VeteranStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof VeteranStatusEnum && this.string.equals(((VeteranStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case I_DONT_WISH_TO_ANSWER: + return visitor.visitIDontWishToAnswer(); + case I_AM_NOT_A_PROTECTED_VETERAN: + return visitor.visitIAmNotAProtectedVeteran(); + case I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN: + return visitor.visitIIdentifyAsOneOrMoreOfTheClassificationsOfAProtectedVeteran(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static VeteranStatusEnum valueOf(String value) { + switch (value) { + case "I_DONT_WISH_TO_ANSWER": + return I_DONT_WISH_TO_ANSWER; + case "I_AM_NOT_A_PROTECTED_VETERAN": + return I_AM_NOT_A_PROTECTED_VETERAN; + case "I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN": + return I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN; + default: + return new VeteranStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + I_AM_NOT_A_PROTECTED_VETERAN, + + I_IDENTIFY_AS_ONE_OR_MORE_OF_THE_CLASSIFICATIONS_OF_A_PROTECTED_VETERAN, + + I_DONT_WISH_TO_ANSWER, + + UNKNOWN + } + + public interface Visitor { + T visitIAmNotAProtectedVeteran(); + + T visitIIdentifyAsOneOrMoreOfTheClassificationsOfAProtectedVeteran(); + + T visitIDontWishToAnswer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ats/types/VisibilityEnum.java b/src/main/java/com/merge/api/ats/types/VisibilityEnum.java index 5654b8ebf..cc0ca52be 100644 --- a/src/main/java/com/merge/api/ats/types/VisibilityEnum.java +++ b/src/main/java/com/merge/api/ats/types/VisibilityEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ats.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum VisibilityEnum { - ADMIN_ONLY("ADMIN_ONLY"), +public final class VisibilityEnum { + public static final VisibilityEnum PUBLIC = new VisibilityEnum(Value.PUBLIC, "PUBLIC"); - PUBLIC("PUBLIC"), + public static final VisibilityEnum ADMIN_ONLY = new VisibilityEnum(Value.ADMIN_ONLY, "ADMIN_ONLY"); - PRIVATE("PRIVATE"); + public static final VisibilityEnum PRIVATE = new VisibilityEnum(Value.PRIVATE, "PRIVATE"); - private final String value; + private final Value value; - VisibilityEnum(String value) { + private final String string; + + VisibilityEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof VisibilityEnum && this.string.equals(((VisibilityEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PUBLIC: + return visitor.visitPublic(); + case ADMIN_ONLY: + return visitor.visitAdminOnly(); + case PRIVATE: + return visitor.visitPrivate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static VisibilityEnum valueOf(String value) { + switch (value) { + case "PUBLIC": + return PUBLIC; + case "ADMIN_ONLY": + return ADMIN_ONLY; + case "PRIVATE": + return PRIVATE; + default: + return new VisibilityEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN_ONLY, + + PUBLIC, + + PRIVATE, + + UNKNOWN + } + + public interface Visitor { + T visitAdminOnly(); + + T visitPublic(); + + T visitPrivate(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/core/ClientOptions.java b/src/main/java/com/merge/api/core/ClientOptions.java index d33024d17..21e9a2fdc 100644 --- a/src/main/java/com/merge/api/core/ClientOptions.java +++ b/src/main/java/com/merge/api/core/ClientOptions.java @@ -32,10 +32,9 @@ private ClientOptions( this.headers.putAll(headers); this.headers.putAll(new HashMap() { { - put("User-Agent", "dev.merge:merge-java-client/3.0.0"); put("X-Fern-Language", "JAVA"); put("X-Fern-SDK-Name", "com.merge.fern:api-sdk"); - put("X-Fern-SDK-Version", "3.0.0"); + put("X-Fern-SDK-Version", "4.0.0"); } }); this.headerSuppliers = headerSuppliers; diff --git a/src/main/java/com/merge/api/crm/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/crm/types/AccountDetailsAndActionsStatusEnum.java index 9d3d2ec13..1b279ab74 100644 --- a/src/main/java/com/merge/api/crm/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/crm/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ActivityTypeEnum.java b/src/main/java/com/merge/api/crm/types/ActivityTypeEnum.java index e80491e19..08f4464bc 100644 --- a/src/main/java/com/merge/api/crm/types/ActivityTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/ActivityTypeEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ActivityTypeEnum { - CALL("CALL"), +public final class ActivityTypeEnum { + public static final ActivityTypeEnum CALL = new ActivityTypeEnum(Value.CALL, "CALL"); - MEETING("MEETING"), + public static final ActivityTypeEnum EMAIL = new ActivityTypeEnum(Value.EMAIL, "EMAIL"); - EMAIL("EMAIL"); + public static final ActivityTypeEnum MEETING = new ActivityTypeEnum(Value.MEETING, "MEETING"); - private final String value; + private final Value value; - ActivityTypeEnum(String value) { + private final String string; + + ActivityTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ActivityTypeEnum && this.string.equals(((ActivityTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CALL: + return visitor.visitCall(); + case EMAIL: + return visitor.visitEmail(); + case MEETING: + return visitor.visitMeeting(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ActivityTypeEnum valueOf(String value) { + switch (value) { + case "CALL": + return CALL; + case "EMAIL": + return EMAIL; + case "MEETING": + return MEETING; + default: + return new ActivityTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CALL, + + MEETING, + + EMAIL, + + UNKNOWN + } + + public interface Visitor { + T visitCall(); + + T visitMeeting(); + + T visitEmail(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/AddressTypeEnum.java b/src/main/java/com/merge/api/crm/types/AddressTypeEnum.java index ec5720d46..e87eba4b7 100644 --- a/src/main/java/com/merge/api/crm/types/AddressTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/AddressTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AddressTypeEnum { - BILLING("BILLING"), +public final class AddressTypeEnum { + public static final AddressTypeEnum BILLING = new AddressTypeEnum(Value.BILLING, "BILLING"); - SHIPPING("SHIPPING"); + public static final AddressTypeEnum SHIPPING = new AddressTypeEnum(Value.SHIPPING, "SHIPPING"); - private final String value; + private final Value value; - AddressTypeEnum(String value) { + private final String string; + + AddressTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AddressTypeEnum && this.string.equals(((AddressTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BILLING: + return visitor.visitBilling(); + case SHIPPING: + return visitor.visitShipping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AddressTypeEnum valueOf(String value) { + switch (value) { + case "BILLING": + return BILLING; + case "SHIPPING": + return SHIPPING; + default: + return new AddressTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + BILLING, + + SHIPPING, + + UNKNOWN + } + + public interface Visitor { + T visitBilling(); + + T visitShipping(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/CardinalityEnum.java b/src/main/java/com/merge/api/crm/types/CardinalityEnum.java index f5c96aa43..feba56550 100644 --- a/src/main/java/com/merge/api/crm/types/CardinalityEnum.java +++ b/src/main/java/com/merge/api/crm/types/CardinalityEnum.java @@ -3,26 +3,101 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CardinalityEnum { - ONE_TO_ONE("ONE_TO_ONE"), +public final class CardinalityEnum { + public static final CardinalityEnum MANY_TO_ONE = new CardinalityEnum(Value.MANY_TO_ONE, "MANY_TO_ONE"); - MANY_TO_ONE("MANY_TO_ONE"), + public static final CardinalityEnum ONE_TO_ONE = new CardinalityEnum(Value.ONE_TO_ONE, "ONE_TO_ONE"); - MANY_TO_MANY("MANY_TO_MANY"), + public static final CardinalityEnum MANY_TO_MANY = new CardinalityEnum(Value.MANY_TO_MANY, "MANY_TO_MANY"); - ONE_TO_MANY("ONE_TO_MANY"); + public static final CardinalityEnum ONE_TO_MANY = new CardinalityEnum(Value.ONE_TO_MANY, "ONE_TO_MANY"); - private final String value; + private final Value value; - CardinalityEnum(String value) { + private final String string; + + CardinalityEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CardinalityEnum && this.string.equals(((CardinalityEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MANY_TO_ONE: + return visitor.visitManyToOne(); + case ONE_TO_ONE: + return visitor.visitOneToOne(); + case MANY_TO_MANY: + return visitor.visitManyToMany(); + case ONE_TO_MANY: + return visitor.visitOneToMany(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CardinalityEnum valueOf(String value) { + switch (value) { + case "MANY_TO_ONE": + return MANY_TO_ONE; + case "ONE_TO_ONE": + return ONE_TO_ONE; + case "MANY_TO_MANY": + return MANY_TO_MANY; + case "ONE_TO_MANY": + return ONE_TO_MANY; + default: + return new CardinalityEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONE_TO_ONE, + + MANY_TO_ONE, + + MANY_TO_MANY, + + ONE_TO_MANY, + + UNKNOWN + } + + public interface Visitor { + T visitOneToOne(); + + T visitManyToOne(); + + T visitManyToMany(); + + T visitOneToMany(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/CategoriesEnum.java b/src/main/java/com/merge/api/crm/types/CategoriesEnum.java index 78478ffb7..7f3eb305d 100644 --- a/src/main/java/com/merge/api/crm/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/crm/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/CategoryEnum.java b/src/main/java/com/merge/api/crm/types/CategoryEnum.java index 5a3c414a4..ad648bc16 100644 --- a/src/main/java/com/merge/api/crm/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/crm/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ContactsListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/ContactsListRequestExpandItem.java index 8ea7e82a7..6926743a1 100644 --- a/src/main/java/com/merge/api/crm/types/ContactsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/ContactsListRequestExpandItem.java @@ -3,22 +3,83 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ContactsListRequestExpandItem { - ACCOUNT("account"), +public final class ContactsListRequestExpandItem { + public static final ContactsListRequestExpandItem OWNER = new ContactsListRequestExpandItem(Value.OWNER, "owner"); - OWNER("owner"); + public static final ContactsListRequestExpandItem ACCOUNT = + new ContactsListRequestExpandItem(Value.ACCOUNT, "account"); - private final String value; + private final Value value; - ContactsListRequestExpandItem(String value) { + private final String string; + + ContactsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ContactsListRequestExpandItem + && this.string.equals(((ContactsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ContactsListRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "account": + return ACCOUNT; + default: + return new ContactsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ContactsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/ContactsRetrieveRequestExpandItem.java index 6f9905633..a57b4b154 100644 --- a/src/main/java/com/merge/api/crm/types/ContactsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/ContactsRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ContactsRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class ContactsRetrieveRequestExpandItem { + public static final ContactsRetrieveRequestExpandItem OWNER = + new ContactsRetrieveRequestExpandItem(Value.OWNER, "owner"); - OWNER("owner"); + public static final ContactsRetrieveRequestExpandItem ACCOUNT = + new ContactsRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - private final String value; + private final Value value; - ContactsRetrieveRequestExpandItem(String value) { + private final String string; + + ContactsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ContactsRetrieveRequestExpandItem + && this.string.equals(((ContactsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ContactsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "account": + return ACCOUNT; + default: + return new ContactsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/CountryEnum.java b/src/main/java/com/merge/api/crm/types/CountryEnum.java index 3a59fe1af..f445f6a84 100644 --- a/src/main/java/com/merge/api/crm/types/CountryEnum.java +++ b/src/main/java/com/merge/api/crm/types/CountryEnum.java @@ -3,516 +3,2550 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CountryEnum { - AF("AF"), +public final class CountryEnum { + public static final CountryEnum IL = new CountryEnum(Value.IL, "IL"); - AX("AX"), + public static final CountryEnum LI = new CountryEnum(Value.LI, "LI"); - AL("AL"), + public static final CountryEnum BH = new CountryEnum(Value.BH, "BH"); - DZ("DZ"), + public static final CountryEnum MW = new CountryEnum(Value.MW, "MW"); - AS("AS"), + public static final CountryEnum CV = new CountryEnum(Value.CV, "CV"); - AD("AD"), + public static final CountryEnum EE = new CountryEnum(Value.EE, "EE"); - AO("AO"), + public static final CountryEnum PT = new CountryEnum(Value.PT, "PT"); - AI("AI"), + public static final CountryEnum VN = new CountryEnum(Value.VN, "VN"); - AQ("AQ"), + public static final CountryEnum BL = new CountryEnum(Value.BL, "BL"); - AG("AG"), + public static final CountryEnum CZ = new CountryEnum(Value.CZ, "CZ"); - AR("AR"), + public static final CountryEnum IT = new CountryEnum(Value.IT, "IT"); - AM("AM"), + public static final CountryEnum SY = new CountryEnum(Value.SY, "SY"); - AW("AW"), + public static final CountryEnum KG = new CountryEnum(Value.KG, "KG"); - AU("AU"), + public static final CountryEnum BT = new CountryEnum(Value.BT, "BT"); - AT("AT"), + public static final CountryEnum ID = new CountryEnum(Value.ID, "ID"); - AZ("AZ"), + public static final CountryEnum QA = new CountryEnum(Value.QA, "QA"); - BS("BS"), + public static final CountryEnum HN = new CountryEnum(Value.HN, "HN"); - BH("BH"), + public static final CountryEnum LA = new CountryEnum(Value.LA, "LA"); - BD("BD"), + public static final CountryEnum CN = new CountryEnum(Value.CN, "CN"); - BB("BB"), + public static final CountryEnum ZM = new CountryEnum(Value.ZM, "ZM"); - BY("BY"), + public static final CountryEnum FK = new CountryEnum(Value.FK, "FK"); - BE("BE"), + public static final CountryEnum TW = new CountryEnum(Value.TW, "TW"); - BZ("BZ"), + public static final CountryEnum HR = new CountryEnum(Value.HR, "HR"); - BJ("BJ"), + public static final CountryEnum CR = new CountryEnum(Value.CR, "CR"); - BM("BM"), + public static final CountryEnum FO = new CountryEnum(Value.FO, "FO"); - BT("BT"), + public static final CountryEnum NL = new CountryEnum(Value.NL, "NL"); - BO("BO"), + public static final CountryEnum AO = new CountryEnum(Value.AO, "AO"); - BQ("BQ"), + public static final CountryEnum DK = new CountryEnum(Value.DK, "DK"); - BA("BA"), + public static final CountryEnum GI = new CountryEnum(Value.GI, "GI"); - BW("BW"), + public static final CountryEnum JE = new CountryEnum(Value.JE, "JE"); - BV("BV"), + public static final CountryEnum AS = new CountryEnum(Value.AS, "AS"); - BR("BR"), + public static final CountryEnum MC = new CountryEnum(Value.MC, "MC"); - IO("IO"), + public static final CountryEnum GM = new CountryEnum(Value.GM, "GM"); - BN("BN"), + public static final CountryEnum KW = new CountryEnum(Value.KW, "KW"); - BG("BG"), + public static final CountryEnum AW = new CountryEnum(Value.AW, "AW"); - BF("BF"), + public static final CountryEnum MG = new CountryEnum(Value.MG, "MG"); - BI("BI"), + public static final CountryEnum GQ = new CountryEnum(Value.GQ, "GQ"); - CV("CV"), + public static final CountryEnum JM = new CountryEnum(Value.JM, "JM"); - KH("KH"), + public static final CountryEnum SA = new CountryEnum(Value.SA, "SA"); - CM("CM"), + public static final CountryEnum MK = new CountryEnum(Value.MK, "MK"); - CA("CA"), + public static final CountryEnum KH = new CountryEnum(Value.KH, "KH"); - KY("KY"), + public static final CountryEnum GU = new CountryEnum(Value.GU, "GU"); - CF("CF"), + public static final CountryEnum SE = new CountryEnum(Value.SE, "SE"); - TD("TD"), + public static final CountryEnum ER = new CountryEnum(Value.ER, "ER"); - CL("CL"), + public static final CountryEnum MO = new CountryEnum(Value.MO, "MO"); - CN("CN"), + public static final CountryEnum FJ = new CountryEnum(Value.FJ, "FJ"); - CX("CX"), + public static final CountryEnum GY = new CountryEnum(Value.GY, "GY"); - CC("CC"), + public static final CountryEnum SI = new CountryEnum(Value.SI, "SI"); - CO("CO"), + public static final CountryEnum WS = new CountryEnum(Value.WS, "WS"); - KM("KM"), + public static final CountryEnum BD = new CountryEnum(Value.BD, "BD"); - CG("CG"), + public static final CountryEnum MS = new CountryEnum(Value.MS, "MS"); - CD("CD"), + public static final CountryEnum KP = new CountryEnum(Value.KP, "KP"); - CK("CK"), + public static final CountryEnum SM = new CountryEnum(Value.SM, "SM"); - CR("CR"), + public static final CountryEnum MV = new CountryEnum(Value.MV, "MV"); - CI("CI"), + public static final CountryEnum IM = new CountryEnum(Value.IM, "IM"); - HR("HR"), + public static final CountryEnum PS = new CountryEnum(Value.PS, "PS"); - CU("CU"), + public static final CountryEnum BI = new CountryEnum(Value.BI, "BI"); - CW("CW"), + public static final CountryEnum IO = new CountryEnum(Value.IO, "IO"); - CY("CY"), + public static final CountryEnum CW = new CountryEnum(Value.CW, "CW"); - CZ("CZ"), + public static final CountryEnum SR = new CountryEnum(Value.SR, "SR"); - DK("DK"), + public static final CountryEnum CY = new CountryEnum(Value.CY, "CY"); - DJ("DJ"), + public static final CountryEnum UA = new CountryEnum(Value.UA, "UA"); - DM("DM"), + public static final CountryEnum EH = new CountryEnum(Value.EH, "EH"); - DO("DO"), + public static final CountryEnum ST = new CountryEnum(Value.ST, "ST"); - EC("EC"), + public static final CountryEnum OM = new CountryEnum(Value.OM, "OM"); - EG("EG"), + public static final CountryEnum BQ = new CountryEnum(Value.BQ, "BQ"); - SV("SV"), + public static final CountryEnum AZ = new CountryEnum(Value.AZ, "AZ"); - GQ("GQ"), + public static final CountryEnum SB = new CountryEnum(Value.SB, "SB"); - ER("ER"), + public static final CountryEnum JO = new CountryEnum(Value.JO, "JO"); - EE("EE"), + public static final CountryEnum LT = new CountryEnum(Value.LT, "LT"); - SZ("SZ"), + public static final CountryEnum ML = new CountryEnum(Value.ML, "ML"); - ET("ET"), + public static final CountryEnum SD = new CountryEnum(Value.SD, "SD"); - FK("FK"), + public static final CountryEnum VA = new CountryEnum(Value.VA, "VA"); - FO("FO"), + public static final CountryEnum LV = new CountryEnum(Value.LV, "LV"); - FJ("FJ"), + public static final CountryEnum MN = new CountryEnum(Value.MN, "MN"); - FI("FI"), + public static final CountryEnum PK = new CountryEnum(Value.PK, "PK"); - FR("FR"), + public static final CountryEnum VC = new CountryEnum(Value.VC, "VC"); - GF("GF"), + public static final CountryEnum AI = new CountryEnum(Value.AI, "AI"); - PF("PF"), + public static final CountryEnum GA = new CountryEnum(Value.GA, "GA"); - TF("TF"), + public static final CountryEnum BA = new CountryEnum(Value.BA, "BA"); - GA("GA"), + public static final CountryEnum PM = new CountryEnum(Value.PM, "PM"); - GM("GM"), + public static final CountryEnum SJ = new CountryEnum(Value.SJ, "SJ"); - GE("GE"), + public static final CountryEnum DJ = new CountryEnum(Value.DJ, "DJ"); - DE("DE"), + public static final CountryEnum MT = new CountryEnum(Value.MT, "MT"); - GH("GH"), + public static final CountryEnum SL = new CountryEnum(Value.SL, "SL"); - GI("GI"), + public static final CountryEnum VI = new CountryEnum(Value.VI, "VI"); - GR("GR"), + public static final CountryEnum GG = new CountryEnum(Value.GG, "GG"); - GL("GL"), + public static final CountryEnum GH = new CountryEnum(Value.GH, "GH"); - GD("GD"), + public static final CountryEnum AQ = new CountryEnum(Value.AQ, "AQ"); - GP("GP"), + public static final CountryEnum AR = new CountryEnum(Value.AR, "AR"); - GU("GU"), + public static final CountryEnum CA = new CountryEnum(Value.CA, "CA"); - GT("GT"), + public static final CountryEnum ZA = new CountryEnum(Value.ZA, "ZA"); - GG("GG"), + public static final CountryEnum TJ = new CountryEnum(Value.TJ, "TJ"); - GN("GN"), + public static final CountryEnum ME = new CountryEnum(Value.ME, "ME"); - GW("GW"), + public static final CountryEnum TK = new CountryEnum(Value.TK, "TK"); - GY("GY"), + public static final CountryEnum MF = new CountryEnum(Value.MF, "MF"); - HT("HT"), + public static final CountryEnum UY = new CountryEnum(Value.UY, "UY"); - HM("HM"), + public static final CountryEnum UZ = new CountryEnum(Value.UZ, "UZ"); - VA("VA"), + public static final CountryEnum NU = new CountryEnum(Value.NU, "NU"); - HN("HN"), + public static final CountryEnum GP = new CountryEnum(Value.GP, "GP"); - HK("HK"), + public static final CountryEnum PE = new CountryEnum(Value.PE, "PE"); - HU("HU"), + public static final CountryEnum CI = new CountryEnum(Value.CI, "CI"); - IS("IS"), + public static final CountryEnum SC = new CountryEnum(Value.SC, "SC"); - IN("IN"), + public static final CountryEnum SZ = new CountryEnum(Value.SZ, "SZ"); - ID("ID"), + public static final CountryEnum LU = new CountryEnum(Value.LU, "LU"); - IR("IR"), + public static final CountryEnum TR = new CountryEnum(Value.TR, "TR"); - IQ("IQ"), + public static final CountryEnum MM = new CountryEnum(Value.MM, "MM"); - IE("IE"), + public static final CountryEnum NE = new CountryEnum(Value.NE, "NE"); - IM("IM"), + public static final CountryEnum GW = new CountryEnum(Value.GW, "GW"); - IL("IL"), + public static final CountryEnum PL = new CountryEnum(Value.PL, "PL"); - IT("IT"), + public static final CountryEnum BB = new CountryEnum(Value.BB, "BB"); - JM("JM"), + public static final CountryEnum BY = new CountryEnum(Value.BY, "BY"); - JP("JP"), + public static final CountryEnum RS = new CountryEnum(Value.RS, "RS"); - JE("JE"), + public static final CountryEnum KN = new CountryEnum(Value.KN, "KN"); - JO("JO"), + public static final CountryEnum SK = new CountryEnum(Value.SK, "SK"); - KZ("KZ"), + public static final CountryEnum TC = new CountryEnum(Value.TC, "TC"); - KE("KE"), + public static final CountryEnum TZ = new CountryEnum(Value.TZ, "TZ"); - KI("KI"), + public static final CountryEnum MU = new CountryEnum(Value.MU, "MU"); - KW("KW"), + public static final CountryEnum EC = new CountryEnum(Value.EC, "EC"); - KG("KG"), + public static final CountryEnum PR = new CountryEnum(Value.PR, "PR"); - LA("LA"), + public static final CountryEnum SO = new CountryEnum(Value.SO, "SO"); - LV("LV"), + public static final CountryEnum IN = new CountryEnum(Value.IN, "IN"); - LB("LB"), + public static final CountryEnum LK = new CountryEnum(Value.LK, "LK"); - LS("LS"), + public static final CountryEnum BJ = new CountryEnum(Value.BJ, "BJ"); - LR("LR"), + public static final CountryEnum MY = new CountryEnum(Value.MY, "MY"); - LY("LY"), + public static final CountryEnum CX = new CountryEnum(Value.CX, "CX"); - LI("LI"), + public static final CountryEnum ZW = new CountryEnum(Value.ZW, "ZW"); - LT("LT"), + public static final CountryEnum EG = new CountryEnum(Value.EG, "EG"); - LU("LU"), + public static final CountryEnum RE = new CountryEnum(Value.RE, "RE"); - MO("MO"), + public static final CountryEnum SS = new CountryEnum(Value.SS, "SS"); - MG("MG"), + public static final CountryEnum IR = new CountryEnum(Value.IR, "IR"); - MW("MW"), + public static final CountryEnum BN = new CountryEnum(Value.BN, "BN"); - MY("MY"), + public static final CountryEnum KE = new CountryEnum(Value.KE, "KE"); - MV("MV"), + public static final CountryEnum BR = new CountryEnum(Value.BR, "BR"); - ML("ML"), + public static final CountryEnum CL = new CountryEnum(Value.CL, "CL"); - MT("MT"), + public static final CountryEnum KI = new CountryEnum(Value.KI, "KI"); - MH("MH"), + public static final CountryEnum BV = new CountryEnum(Value.BV, "BV"); - MQ("MQ"), + public static final CountryEnum FI = new CountryEnum(Value.FI, "FI"); - MR("MR"), + public static final CountryEnum NF = new CountryEnum(Value.NF, "NF"); - MU("MU"), + public static final CountryEnum ES = new CountryEnum(Value.ES, "ES"); - YT("YT"), + public static final CountryEnum LC = new CountryEnum(Value.LC, "LC"); - MX("MX"), + public static final CountryEnum KM = new CountryEnum(Value.KM, "KM"); - FM("FM"), + public static final CountryEnum FM = new CountryEnum(Value.FM, "FM"); - MD("MD"), + public static final CountryEnum BZ = new CountryEnum(Value.BZ, "BZ"); - MC("MC"), + public static final CountryEnum TD = new CountryEnum(Value.TD, "TD"); - MN("MN"), + public static final CountryEnum HT = new CountryEnum(Value.HT, "HT"); - ME("ME"), + public static final CountryEnum HU = new CountryEnum(Value.HU, "HU"); - MS("MS"), + public static final CountryEnum US = new CountryEnum(Value.US, "US"); - MA("MA"), + public static final CountryEnum NO = new CountryEnum(Value.NO, "NO"); - MZ("MZ"), + public static final CountryEnum TH = new CountryEnum(Value.TH, "TH"); - MM("MM"), + public static final CountryEnum AT = new CountryEnum(Value.AT, "AT"); - NA("NA"), + public static final CountryEnum MD = new CountryEnum(Value.MD, "MD"); - NR("NR"), + public static final CountryEnum CC = new CountryEnum(Value.CC, "CC"); - NP("NP"), + public static final CountryEnum NR = new CountryEnum(Value.NR, "NR"); - NL("NL"), + public static final CountryEnum CD = new CountryEnum(Value.CD, "CD"); - NC("NC"), + public static final CountryEnum GN = new CountryEnum(Value.GN, "GN"); - NZ("NZ"), + public static final CountryEnum TL = new CountryEnum(Value.TL, "TL"); - NI("NI"), + public static final CountryEnum TM = new CountryEnum(Value.TM, "TM"); - NE("NE"), + public static final CountryEnum AX = new CountryEnum(Value.AX, "AX"); - NG("NG"), + public static final CountryEnum MH = new CountryEnum(Value.MH, "MH"); - NU("NU"), + public static final CountryEnum CG = new CountryEnum(Value.CG, "CG"); - NF("NF"), + public static final CountryEnum CH = new CountryEnum(Value.CH, "CH"); - KP("KP"), + public static final CountryEnum AD = new CountryEnum(Value.AD, "AD"); - MK("MK"), + public static final CountryEnum PF = new CountryEnum(Value.PF, "PF"); - MP("MP"), + public static final CountryEnum LS = new CountryEnum(Value.LS, "LS"); - NO("NO"), + public static final CountryEnum BS = new CountryEnum(Value.BS, "BS"); - OM("OM"), + public static final CountryEnum JP = new CountryEnum(Value.JP, "JP"); - PK("PK"), + public static final CountryEnum NC = new CountryEnum(Value.NC, "NC"); - PW("PW"), + public static final CountryEnum CK = new CountryEnum(Value.CK, "CK"); - PS("PS"), + public static final CountryEnum NZ = new CountryEnum(Value.NZ, "NZ"); - PA("PA"), + public static final CountryEnum DZ = new CountryEnum(Value.DZ, "DZ"); - PG("PG"), + public static final CountryEnum HM = new CountryEnum(Value.HM, "HM"); - PY("PY"), + public static final CountryEnum IE = new CountryEnum(Value.IE, "IE"); - PE("PE"), + public static final CountryEnum TT = new CountryEnum(Value.TT, "TT"); - PH("PH"), + public static final CountryEnum BW = new CountryEnum(Value.BW, "BW"); - PN("PN"), + public static final CountryEnum NG = new CountryEnum(Value.NG, "NG"); - PL("PL"), + public static final CountryEnum CO = new CountryEnum(Value.CO, "CO"); - PT("PT"), + public static final CountryEnum GB = new CountryEnum(Value.GB, "GB"); - PR("PR"), + public static final CountryEnum AL = new CountryEnum(Value.AL, "AL"); - QA("QA"), + public static final CountryEnum PN = new CountryEnum(Value.PN, "PN"); - RE("RE"), + public static final CountryEnum GF = new CountryEnum(Value.GF, "GF"); - RO("RO"), + public static final CountryEnum RU = new CountryEnum(Value.RU, "RU"); - RU("RU"), + public static final CountryEnum BG = new CountryEnum(Value.BG, "BG"); - RW("RW"), + public static final CountryEnum SN = new CountryEnum(Value.SN, "SN"); - BL("BL"), + public static final CountryEnum CU = new CountryEnum(Value.CU, "CU"); - SH("SH"), + public static final CountryEnum FR = new CountryEnum(Value.FR, "FR"); - KN("KN"), + public static final CountryEnum MX = new CountryEnum(Value.MX, "MX"); - LC("LC"), + public static final CountryEnum MZ = new CountryEnum(Value.MZ, "MZ"); - MF("MF"), + public static final CountryEnum IQ = new CountryEnum(Value.IQ, "IQ"); - PM("PM"), + public static final CountryEnum PW = new CountryEnum(Value.PW, "PW"); - VC("VC"), + public static final CountryEnum BM = new CountryEnum(Value.BM, "BM"); - WS("WS"), + public static final CountryEnum IS = new CountryEnum(Value.IS, "IS"); - SM("SM"), + public static final CountryEnum PY = new CountryEnum(Value.PY, "PY"); - ST("ST"), + public static final CountryEnum BO = new CountryEnum(Value.BO, "BO"); - SA("SA"), + public static final CountryEnum SV = new CountryEnum(Value.SV, "SV"); - SN("SN"), + public static final CountryEnum LR = new CountryEnum(Value.LR, "LR"); - RS("RS"), + public static final CountryEnum NA = new CountryEnum(Value.NA, "NA"); - SC("SC"), + public static final CountryEnum SX = new CountryEnum(Value.SX, "SX"); - SL("SL"), + public static final CountryEnum GR = new CountryEnum(Value.GR, "GR"); - SG("SG"), + public static final CountryEnum UG = new CountryEnum(Value.UG, "UG"); - SX("SX"), + public static final CountryEnum PG = new CountryEnum(Value.PG, "PG"); - SK("SK"), + public static final CountryEnum AE = new CountryEnum(Value.AE, "AE"); - SI("SI"), + public static final CountryEnum GT = new CountryEnum(Value.GT, "GT"); - SB("SB"), + public static final CountryEnum AG = new CountryEnum(Value.AG, "AG"); - SO("SO"), + public static final CountryEnum MP = new CountryEnum(Value.MP, "MP"); - ZA("ZA"), + public static final CountryEnum SH = new CountryEnum(Value.SH, "SH"); - GS("GS"), + public static final CountryEnum UM = new CountryEnum(Value.UM, "UM"); - KR("KR"), + public static final CountryEnum VE = new CountryEnum(Value.VE, "VE"); - SS("SS"), + public static final CountryEnum MR = new CountryEnum(Value.MR, "MR"); - ES("ES"), + public static final CountryEnum AM = new CountryEnum(Value.AM, "AM"); - LK("LK"), + public static final CountryEnum GE = new CountryEnum(Value.GE, "GE"); - SD("SD"), + public static final CountryEnum VG = new CountryEnum(Value.VG, "VG"); - SR("SR"), + public static final CountryEnum BE = new CountryEnum(Value.BE, "BE"); - SJ("SJ"), + public static final CountryEnum RW = new CountryEnum(Value.RW, "RW"); - SE("SE"), + public static final CountryEnum TF = new CountryEnum(Value.TF, "TF"); - CH("CH"), + public static final CountryEnum KR = new CountryEnum(Value.KR, "KR"); - SY("SY"), + public static final CountryEnum DM = new CountryEnum(Value.DM, "DM"); - TW("TW"), + public static final CountryEnum MA = new CountryEnum(Value.MA, "MA"); - TJ("TJ"), + public static final CountryEnum TG = new CountryEnum(Value.TG, "TG"); - TZ("TZ"), + public static final CountryEnum NP = new CountryEnum(Value.NP, "NP"); - TH("TH"), + public static final CountryEnum GL = new CountryEnum(Value.GL, "GL"); - TL("TL"), + public static final CountryEnum WF = new CountryEnum(Value.WF, "WF"); - TG("TG"), + public static final CountryEnum AU = new CountryEnum(Value.AU, "AU"); - TK("TK"), + public static final CountryEnum PA = new CountryEnum(Value.PA, "PA"); - TO("TO"), + public static final CountryEnum KY = new CountryEnum(Value.KY, "KY"); - TT("TT"), + public static final CountryEnum CF = new CountryEnum(Value.CF, "CF"); - TN("TN"), + public static final CountryEnum KZ = new CountryEnum(Value.KZ, "KZ"); - TR("TR"), + public static final CountryEnum TN = new CountryEnum(Value.TN, "TN"); - TM("TM"), + public static final CountryEnum TO = new CountryEnum(Value.TO, "TO"); - TC("TC"), + public static final CountryEnum VU = new CountryEnum(Value.VU, "VU"); - TV("TV"), + public static final CountryEnum GS = new CountryEnum(Value.GS, "GS"); - UG("UG"), + public static final CountryEnum HK = new CountryEnum(Value.HK, "HK"); - UA("UA"), + public static final CountryEnum AF = new CountryEnum(Value.AF, "AF"); - AE("AE"), + public static final CountryEnum PH = new CountryEnum(Value.PH, "PH"); - GB("GB"), + public static final CountryEnum YT = new CountryEnum(Value.YT, "YT"); - UM("UM"), + public static final CountryEnum RO = new CountryEnum(Value.RO, "RO"); - US("US"), + public static final CountryEnum CM = new CountryEnum(Value.CM, "CM"); - UY("UY"), + public static final CountryEnum SG = new CountryEnum(Value.SG, "SG"); - UZ("UZ"), + public static final CountryEnum DE = new CountryEnum(Value.DE, "DE"); - VU("VU"), + public static final CountryEnum LB = new CountryEnum(Value.LB, "LB"); - VE("VE"), + public static final CountryEnum LY = new CountryEnum(Value.LY, "LY"); - VN("VN"), + public static final CountryEnum TV = new CountryEnum(Value.TV, "TV"); - VG("VG"), + public static final CountryEnum ET = new CountryEnum(Value.ET, "ET"); - VI("VI"), + public static final CountryEnum DO = new CountryEnum(Value.DO, "DO"); - WF("WF"), + public static final CountryEnum MQ = new CountryEnum(Value.MQ, "MQ"); - EH("EH"), + public static final CountryEnum NI = new CountryEnum(Value.NI, "NI"); - YE("YE"), + public static final CountryEnum GD = new CountryEnum(Value.GD, "GD"); - ZM("ZM"), + public static final CountryEnum BF = new CountryEnum(Value.BF, "BF"); - ZW("ZW"); + public static final CountryEnum YE = new CountryEnum(Value.YE, "YE"); - private final String value; + private final Value value; - CountryEnum(String value) { + private final String string; + + CountryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CountryEnum && this.string.equals(((CountryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IL: + return visitor.visitIl(); + case LI: + return visitor.visitLi(); + case BH: + return visitor.visitBh(); + case MW: + return visitor.visitMw(); + case CV: + return visitor.visitCv(); + case EE: + return visitor.visitEe(); + case PT: + return visitor.visitPt(); + case VN: + return visitor.visitVn(); + case BL: + return visitor.visitBl(); + case CZ: + return visitor.visitCz(); + case IT: + return visitor.visitIt(); + case SY: + return visitor.visitSy(); + case KG: + return visitor.visitKg(); + case BT: + return visitor.visitBt(); + case ID: + return visitor.visitId(); + case QA: + return visitor.visitQa(); + case HN: + return visitor.visitHn(); + case LA: + return visitor.visitLa(); + case CN: + return visitor.visitCn(); + case ZM: + return visitor.visitZm(); + case FK: + return visitor.visitFk(); + case TW: + return visitor.visitTw(); + case HR: + return visitor.visitHr(); + case CR: + return visitor.visitCr(); + case FO: + return visitor.visitFo(); + case NL: + return visitor.visitNl(); + case AO: + return visitor.visitAo(); + case DK: + return visitor.visitDk(); + case GI: + return visitor.visitGi(); + case JE: + return visitor.visitJe(); + case AS: + return visitor.visitAs(); + case MC: + return visitor.visitMc(); + case GM: + return visitor.visitGm(); + case KW: + return visitor.visitKw(); + case AW: + return visitor.visitAw(); + case MG: + return visitor.visitMg(); + case GQ: + return visitor.visitGq(); + case JM: + return visitor.visitJm(); + case SA: + return visitor.visitSa(); + case MK: + return visitor.visitMk(); + case KH: + return visitor.visitKh(); + case GU: + return visitor.visitGu(); + case SE: + return visitor.visitSe(); + case ER: + return visitor.visitEr(); + case MO: + return visitor.visitMo(); + case FJ: + return visitor.visitFj(); + case GY: + return visitor.visitGy(); + case SI: + return visitor.visitSi(); + case WS: + return visitor.visitWs(); + case BD: + return visitor.visitBd(); + case MS: + return visitor.visitMs(); + case KP: + return visitor.visitKp(); + case SM: + return visitor.visitSm(); + case MV: + return visitor.visitMv(); + case IM: + return visitor.visitIm(); + case PS: + return visitor.visitPs(); + case BI: + return visitor.visitBi(); + case IO: + return visitor.visitIo(); + case CW: + return visitor.visitCw(); + case SR: + return visitor.visitSr(); + case CY: + return visitor.visitCy(); + case UA: + return visitor.visitUa(); + case EH: + return visitor.visitEh(); + case ST: + return visitor.visitSt(); + case OM: + return visitor.visitOm(); + case BQ: + return visitor.visitBq(); + case AZ: + return visitor.visitAz(); + case SB: + return visitor.visitSb(); + case JO: + return visitor.visitJo(); + case LT: + return visitor.visitLt(); + case ML: + return visitor.visitMl(); + case SD: + return visitor.visitSd(); + case VA: + return visitor.visitVa(); + case LV: + return visitor.visitLv(); + case MN: + return visitor.visitMn(); + case PK: + return visitor.visitPk(); + case VC: + return visitor.visitVc(); + case AI: + return visitor.visitAi(); + case GA: + return visitor.visitGa(); + case BA: + return visitor.visitBa(); + case PM: + return visitor.visitPm(); + case SJ: + return visitor.visitSj(); + case DJ: + return visitor.visitDj(); + case MT: + return visitor.visitMt(); + case SL: + return visitor.visitSl(); + case VI: + return visitor.visitVi(); + case GG: + return visitor.visitGg(); + case GH: + return visitor.visitGh(); + case AQ: + return visitor.visitAq(); + case AR: + return visitor.visitAr(); + case CA: + return visitor.visitCa(); + case ZA: + return visitor.visitZa(); + case TJ: + return visitor.visitTj(); + case ME: + return visitor.visitMe(); + case TK: + return visitor.visitTk(); + case MF: + return visitor.visitMf(); + case UY: + return visitor.visitUy(); + case UZ: + return visitor.visitUz(); + case NU: + return visitor.visitNu(); + case GP: + return visitor.visitGp(); + case PE: + return visitor.visitPe(); + case CI: + return visitor.visitCi(); + case SC: + return visitor.visitSc(); + case SZ: + return visitor.visitSz(); + case LU: + return visitor.visitLu(); + case TR: + return visitor.visitTr(); + case MM: + return visitor.visitMm(); + case NE: + return visitor.visitNe(); + case GW: + return visitor.visitGw(); + case PL: + return visitor.visitPl(); + case BB: + return visitor.visitBb(); + case BY: + return visitor.visitBy(); + case RS: + return visitor.visitRs(); + case KN: + return visitor.visitKn(); + case SK: + return visitor.visitSk(); + case TC: + return visitor.visitTc(); + case TZ: + return visitor.visitTz(); + case MU: + return visitor.visitMu(); + case EC: + return visitor.visitEc(); + case PR: + return visitor.visitPr(); + case SO: + return visitor.visitSo(); + case IN: + return visitor.visitIn(); + case LK: + return visitor.visitLk(); + case BJ: + return visitor.visitBj(); + case MY: + return visitor.visitMy(); + case CX: + return visitor.visitCx(); + case ZW: + return visitor.visitZw(); + case EG: + return visitor.visitEg(); + case RE: + return visitor.visitRe(); + case SS: + return visitor.visitSs(); + case IR: + return visitor.visitIr(); + case BN: + return visitor.visitBn(); + case KE: + return visitor.visitKe(); + case BR: + return visitor.visitBr(); + case CL: + return visitor.visitCl(); + case KI: + return visitor.visitKi(); + case BV: + return visitor.visitBv(); + case FI: + return visitor.visitFi(); + case NF: + return visitor.visitNf(); + case ES: + return visitor.visitEs(); + case LC: + return visitor.visitLc(); + case KM: + return visitor.visitKm(); + case FM: + return visitor.visitFm(); + case BZ: + return visitor.visitBz(); + case TD: + return visitor.visitTd(); + case HT: + return visitor.visitHt(); + case HU: + return visitor.visitHu(); + case US: + return visitor.visitUs(); + case NO: + return visitor.visitNo(); + case TH: + return visitor.visitTh(); + case AT: + return visitor.visitAt(); + case MD: + return visitor.visitMd(); + case CC: + return visitor.visitCc(); + case NR: + return visitor.visitNr(); + case CD: + return visitor.visitCd(); + case GN: + return visitor.visitGn(); + case TL: + return visitor.visitTl(); + case TM: + return visitor.visitTm(); + case AX: + return visitor.visitAx(); + case MH: + return visitor.visitMh(); + case CG: + return visitor.visitCg(); + case CH: + return visitor.visitCh(); + case AD: + return visitor.visitAd(); + case PF: + return visitor.visitPf(); + case LS: + return visitor.visitLs(); + case BS: + return visitor.visitBs(); + case JP: + return visitor.visitJp(); + case NC: + return visitor.visitNc(); + case CK: + return visitor.visitCk(); + case NZ: + return visitor.visitNz(); + case DZ: + return visitor.visitDz(); + case HM: + return visitor.visitHm(); + case IE: + return visitor.visitIe(); + case TT: + return visitor.visitTt(); + case BW: + return visitor.visitBw(); + case NG: + return visitor.visitNg(); + case CO: + return visitor.visitCo(); + case GB: + return visitor.visitGb(); + case AL: + return visitor.visitAl(); + case PN: + return visitor.visitPn(); + case GF: + return visitor.visitGf(); + case RU: + return visitor.visitRu(); + case BG: + return visitor.visitBg(); + case SN: + return visitor.visitSn(); + case CU: + return visitor.visitCu(); + case FR: + return visitor.visitFr(); + case MX: + return visitor.visitMx(); + case MZ: + return visitor.visitMz(); + case IQ: + return visitor.visitIq(); + case PW: + return visitor.visitPw(); + case BM: + return visitor.visitBm(); + case IS: + return visitor.visitIs(); + case PY: + return visitor.visitPy(); + case BO: + return visitor.visitBo(); + case SV: + return visitor.visitSv(); + case LR: + return visitor.visitLr(); + case NA: + return visitor.visitNa(); + case SX: + return visitor.visitSx(); + case GR: + return visitor.visitGr(); + case UG: + return visitor.visitUg(); + case PG: + return visitor.visitPg(); + case AE: + return visitor.visitAe(); + case GT: + return visitor.visitGt(); + case AG: + return visitor.visitAg(); + case MP: + return visitor.visitMp(); + case SH: + return visitor.visitSh(); + case UM: + return visitor.visitUm(); + case VE: + return visitor.visitVe(); + case MR: + return visitor.visitMr(); + case AM: + return visitor.visitAm(); + case GE: + return visitor.visitGe(); + case VG: + return visitor.visitVg(); + case BE: + return visitor.visitBe(); + case RW: + return visitor.visitRw(); + case TF: + return visitor.visitTf(); + case KR: + return visitor.visitKr(); + case DM: + return visitor.visitDm(); + case MA: + return visitor.visitMa(); + case TG: + return visitor.visitTg(); + case NP: + return visitor.visitNp(); + case GL: + return visitor.visitGl(); + case WF: + return visitor.visitWf(); + case AU: + return visitor.visitAu(); + case PA: + return visitor.visitPa(); + case KY: + return visitor.visitKy(); + case CF: + return visitor.visitCf(); + case KZ: + return visitor.visitKz(); + case TN: + return visitor.visitTn(); + case TO: + return visitor.visitTo(); + case VU: + return visitor.visitVu(); + case GS: + return visitor.visitGs(); + case HK: + return visitor.visitHk(); + case AF: + return visitor.visitAf(); + case PH: + return visitor.visitPh(); + case YT: + return visitor.visitYt(); + case RO: + return visitor.visitRo(); + case CM: + return visitor.visitCm(); + case SG: + return visitor.visitSg(); + case DE: + return visitor.visitDe(); + case LB: + return visitor.visitLb(); + case LY: + return visitor.visitLy(); + case TV: + return visitor.visitTv(); + case ET: + return visitor.visitEt(); + case DO: + return visitor.visitDo(); + case MQ: + return visitor.visitMq(); + case NI: + return visitor.visitNi(); + case GD: + return visitor.visitGd(); + case BF: + return visitor.visitBf(); + case YE: + return visitor.visitYe(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CountryEnum valueOf(String value) { + switch (value) { + case "IL": + return IL; + case "LI": + return LI; + case "BH": + return BH; + case "MW": + return MW; + case "CV": + return CV; + case "EE": + return EE; + case "PT": + return PT; + case "VN": + return VN; + case "BL": + return BL; + case "CZ": + return CZ; + case "IT": + return IT; + case "SY": + return SY; + case "KG": + return KG; + case "BT": + return BT; + case "ID": + return ID; + case "QA": + return QA; + case "HN": + return HN; + case "LA": + return LA; + case "CN": + return CN; + case "ZM": + return ZM; + case "FK": + return FK; + case "TW": + return TW; + case "HR": + return HR; + case "CR": + return CR; + case "FO": + return FO; + case "NL": + return NL; + case "AO": + return AO; + case "DK": + return DK; + case "GI": + return GI; + case "JE": + return JE; + case "AS": + return AS; + case "MC": + return MC; + case "GM": + return GM; + case "KW": + return KW; + case "AW": + return AW; + case "MG": + return MG; + case "GQ": + return GQ; + case "JM": + return JM; + case "SA": + return SA; + case "MK": + return MK; + case "KH": + return KH; + case "GU": + return GU; + case "SE": + return SE; + case "ER": + return ER; + case "MO": + return MO; + case "FJ": + return FJ; + case "GY": + return GY; + case "SI": + return SI; + case "WS": + return WS; + case "BD": + return BD; + case "MS": + return MS; + case "KP": + return KP; + case "SM": + return SM; + case "MV": + return MV; + case "IM": + return IM; + case "PS": + return PS; + case "BI": + return BI; + case "IO": + return IO; + case "CW": + return CW; + case "SR": + return SR; + case "CY": + return CY; + case "UA": + return UA; + case "EH": + return EH; + case "ST": + return ST; + case "OM": + return OM; + case "BQ": + return BQ; + case "AZ": + return AZ; + case "SB": + return SB; + case "JO": + return JO; + case "LT": + return LT; + case "ML": + return ML; + case "SD": + return SD; + case "VA": + return VA; + case "LV": + return LV; + case "MN": + return MN; + case "PK": + return PK; + case "VC": + return VC; + case "AI": + return AI; + case "GA": + return GA; + case "BA": + return BA; + case "PM": + return PM; + case "SJ": + return SJ; + case "DJ": + return DJ; + case "MT": + return MT; + case "SL": + return SL; + case "VI": + return VI; + case "GG": + return GG; + case "GH": + return GH; + case "AQ": + return AQ; + case "AR": + return AR; + case "CA": + return CA; + case "ZA": + return ZA; + case "TJ": + return TJ; + case "ME": + return ME; + case "TK": + return TK; + case "MF": + return MF; + case "UY": + return UY; + case "UZ": + return UZ; + case "NU": + return NU; + case "GP": + return GP; + case "PE": + return PE; + case "CI": + return CI; + case "SC": + return SC; + case "SZ": + return SZ; + case "LU": + return LU; + case "TR": + return TR; + case "MM": + return MM; + case "NE": + return NE; + case "GW": + return GW; + case "PL": + return PL; + case "BB": + return BB; + case "BY": + return BY; + case "RS": + return RS; + case "KN": + return KN; + case "SK": + return SK; + case "TC": + return TC; + case "TZ": + return TZ; + case "MU": + return MU; + case "EC": + return EC; + case "PR": + return PR; + case "SO": + return SO; + case "IN": + return IN; + case "LK": + return LK; + case "BJ": + return BJ; + case "MY": + return MY; + case "CX": + return CX; + case "ZW": + return ZW; + case "EG": + return EG; + case "RE": + return RE; + case "SS": + return SS; + case "IR": + return IR; + case "BN": + return BN; + case "KE": + return KE; + case "BR": + return BR; + case "CL": + return CL; + case "KI": + return KI; + case "BV": + return BV; + case "FI": + return FI; + case "NF": + return NF; + case "ES": + return ES; + case "LC": + return LC; + case "KM": + return KM; + case "FM": + return FM; + case "BZ": + return BZ; + case "TD": + return TD; + case "HT": + return HT; + case "HU": + return HU; + case "US": + return US; + case "NO": + return NO; + case "TH": + return TH; + case "AT": + return AT; + case "MD": + return MD; + case "CC": + return CC; + case "NR": + return NR; + case "CD": + return CD; + case "GN": + return GN; + case "TL": + return TL; + case "TM": + return TM; + case "AX": + return AX; + case "MH": + return MH; + case "CG": + return CG; + case "CH": + return CH; + case "AD": + return AD; + case "PF": + return PF; + case "LS": + return LS; + case "BS": + return BS; + case "JP": + return JP; + case "NC": + return NC; + case "CK": + return CK; + case "NZ": + return NZ; + case "DZ": + return DZ; + case "HM": + return HM; + case "IE": + return IE; + case "TT": + return TT; + case "BW": + return BW; + case "NG": + return NG; + case "CO": + return CO; + case "GB": + return GB; + case "AL": + return AL; + case "PN": + return PN; + case "GF": + return GF; + case "RU": + return RU; + case "BG": + return BG; + case "SN": + return SN; + case "CU": + return CU; + case "FR": + return FR; + case "MX": + return MX; + case "MZ": + return MZ; + case "IQ": + return IQ; + case "PW": + return PW; + case "BM": + return BM; + case "IS": + return IS; + case "PY": + return PY; + case "BO": + return BO; + case "SV": + return SV; + case "LR": + return LR; + case "NA": + return NA; + case "SX": + return SX; + case "GR": + return GR; + case "UG": + return UG; + case "PG": + return PG; + case "AE": + return AE; + case "GT": + return GT; + case "AG": + return AG; + case "MP": + return MP; + case "SH": + return SH; + case "UM": + return UM; + case "VE": + return VE; + case "MR": + return MR; + case "AM": + return AM; + case "GE": + return GE; + case "VG": + return VG; + case "BE": + return BE; + case "RW": + return RW; + case "TF": + return TF; + case "KR": + return KR; + case "DM": + return DM; + case "MA": + return MA; + case "TG": + return TG; + case "NP": + return NP; + case "GL": + return GL; + case "WF": + return WF; + case "AU": + return AU; + case "PA": + return PA; + case "KY": + return KY; + case "CF": + return CF; + case "KZ": + return KZ; + case "TN": + return TN; + case "TO": + return TO; + case "VU": + return VU; + case "GS": + return GS; + case "HK": + return HK; + case "AF": + return AF; + case "PH": + return PH; + case "YT": + return YT; + case "RO": + return RO; + case "CM": + return CM; + case "SG": + return SG; + case "DE": + return DE; + case "LB": + return LB; + case "LY": + return LY; + case "TV": + return TV; + case "ET": + return ET; + case "DO": + return DO; + case "MQ": + return MQ; + case "NI": + return NI; + case "GD": + return GD; + case "BF": + return BF; + case "YE": + return YE; + default: + return new CountryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + AF, + + AX, + + AL, + + DZ, + + AS, + + AD, + + AO, + + AI, + + AQ, + + AG, + + AR, + + AM, + + AW, + + AU, + + AT, + + AZ, + + BS, + + BH, + + BD, + + BB, + + BY, + + BE, + + BZ, + + BJ, + + BM, + + BT, + + BO, + + BQ, + + BA, + + BW, + + BV, + + BR, + + IO, + + BN, + + BG, + + BF, + + BI, + + CV, + + KH, + + CM, + + CA, + + KY, + + CF, + + TD, + + CL, + + CN, + + CX, + + CC, + + CO, + + KM, + + CG, + + CD, + + CK, + + CR, + + CI, + + HR, + + CU, + + CW, + + CY, + + CZ, + + DK, + + DJ, + + DM, + + DO, + + EC, + + EG, + + SV, + + GQ, + + ER, + + EE, + + SZ, + + ET, + + FK, + + FO, + + FJ, + + FI, + + FR, + + GF, + + PF, + + TF, + + GA, + + GM, + + GE, + + DE, + + GH, + + GI, + + GR, + + GL, + + GD, + + GP, + + GU, + + GT, + + GG, + + GN, + + GW, + + GY, + + HT, + + HM, + + VA, + + HN, + + HK, + + HU, + + IS, + + IN, + + ID, + + IR, + + IQ, + + IE, + + IM, + + IL, + + IT, + + JM, + + JP, + + JE, + + JO, + + KZ, + + KE, + + KI, + + KW, + + KG, + + LA, + + LV, + + LB, + + LS, + + LR, + + LY, + + LI, + + LT, + + LU, + + MO, + + MG, + + MW, + + MY, + + MV, + + ML, + + MT, + + MH, + + MQ, + + MR, + + MU, + + YT, + + MX, + + FM, + + MD, + + MC, + + MN, + + ME, + + MS, + + MA, + + MZ, + + MM, + + NA, + + NR, + + NP, + + NL, + + NC, + + NZ, + + NI, + + NE, + + NG, + + NU, + + NF, + + KP, + + MK, + + MP, + + NO, + + OM, + + PK, + + PW, + + PS, + + PA, + + PG, + + PY, + + PE, + + PH, + + PN, + + PL, + + PT, + + PR, + + QA, + + RE, + + RO, + + RU, + + RW, + + BL, + + SH, + + KN, + + LC, + + MF, + + PM, + + VC, + + WS, + + SM, + + ST, + + SA, + + SN, + + RS, + + SC, + + SL, + + SG, + + SX, + + SK, + + SI, + + SB, + + SO, + + ZA, + + GS, + + KR, + + SS, + + ES, + + LK, + + SD, + + SR, + + SJ, + + SE, + + CH, + + SY, + + TW, + + TJ, + + TZ, + + TH, + + TL, + + TG, + + TK, + + TO, + + TT, + + TN, + + TR, + + TM, + + TC, + + TV, + + UG, + + UA, + + AE, + + GB, + + UM, + + US, + + UY, + + UZ, + + VU, + + VE, + + VN, + + VG, + + VI, + + WF, + + EH, + + YE, + + ZM, + + ZW, + + UNKNOWN + } + + public interface Visitor { + T visitAf(); + + T visitAx(); + + T visitAl(); + + T visitDz(); + + T visitAs(); + + T visitAd(); + + T visitAo(); + + T visitAi(); + + T visitAq(); + + T visitAg(); + + T visitAr(); + + T visitAm(); + + T visitAw(); + + T visitAu(); + + T visitAt(); + + T visitAz(); + + T visitBs(); + + T visitBh(); + + T visitBd(); + + T visitBb(); + + T visitBy(); + + T visitBe(); + + T visitBz(); + + T visitBj(); + + T visitBm(); + + T visitBt(); + + T visitBo(); + + T visitBq(); + + T visitBa(); + + T visitBw(); + + T visitBv(); + + T visitBr(); + + T visitIo(); + + T visitBn(); + + T visitBg(); + + T visitBf(); + + T visitBi(); + + T visitCv(); + + T visitKh(); + + T visitCm(); + + T visitCa(); + + T visitKy(); + + T visitCf(); + + T visitTd(); + + T visitCl(); + + T visitCn(); + + T visitCx(); + + T visitCc(); + + T visitCo(); + + T visitKm(); + + T visitCg(); + + T visitCd(); + + T visitCk(); + + T visitCr(); + + T visitCi(); + + T visitHr(); + + T visitCu(); + + T visitCw(); + + T visitCy(); + + T visitCz(); + + T visitDk(); + + T visitDj(); + + T visitDm(); + + T visitDo(); + + T visitEc(); + + T visitEg(); + + T visitSv(); + + T visitGq(); + + T visitEr(); + + T visitEe(); + + T visitSz(); + + T visitEt(); + + T visitFk(); + + T visitFo(); + + T visitFj(); + + T visitFi(); + + T visitFr(); + + T visitGf(); + + T visitPf(); + + T visitTf(); + + T visitGa(); + + T visitGm(); + + T visitGe(); + + T visitDe(); + + T visitGh(); + + T visitGi(); + + T visitGr(); + + T visitGl(); + + T visitGd(); + + T visitGp(); + + T visitGu(); + + T visitGt(); + + T visitGg(); + + T visitGn(); + + T visitGw(); + + T visitGy(); + + T visitHt(); + + T visitHm(); + + T visitVa(); + + T visitHn(); + + T visitHk(); + + T visitHu(); + + T visitIs(); + + T visitIn(); + + T visitId(); + + T visitIr(); + + T visitIq(); + + T visitIe(); + + T visitIm(); + + T visitIl(); + + T visitIt(); + + T visitJm(); + + T visitJp(); + + T visitJe(); + + T visitJo(); + + T visitKz(); + + T visitKe(); + + T visitKi(); + + T visitKw(); + + T visitKg(); + + T visitLa(); + + T visitLv(); + + T visitLb(); + + T visitLs(); + + T visitLr(); + + T visitLy(); + + T visitLi(); + + T visitLt(); + + T visitLu(); + + T visitMo(); + + T visitMg(); + + T visitMw(); + + T visitMy(); + + T visitMv(); + + T visitMl(); + + T visitMt(); + + T visitMh(); + + T visitMq(); + + T visitMr(); + + T visitMu(); + + T visitYt(); + + T visitMx(); + + T visitFm(); + + T visitMd(); + + T visitMc(); + + T visitMn(); + + T visitMe(); + + T visitMs(); + + T visitMa(); + + T visitMz(); + + T visitMm(); + + T visitNa(); + + T visitNr(); + + T visitNp(); + + T visitNl(); + + T visitNc(); + + T visitNz(); + + T visitNi(); + + T visitNe(); + + T visitNg(); + + T visitNu(); + + T visitNf(); + + T visitKp(); + + T visitMk(); + + T visitMp(); + + T visitNo(); + + T visitOm(); + + T visitPk(); + + T visitPw(); + + T visitPs(); + + T visitPa(); + + T visitPg(); + + T visitPy(); + + T visitPe(); + + T visitPh(); + + T visitPn(); + + T visitPl(); + + T visitPt(); + + T visitPr(); + + T visitQa(); + + T visitRe(); + + T visitRo(); + + T visitRu(); + + T visitRw(); + + T visitBl(); + + T visitSh(); + + T visitKn(); + + T visitLc(); + + T visitMf(); + + T visitPm(); + + T visitVc(); + + T visitWs(); + + T visitSm(); + + T visitSt(); + + T visitSa(); + + T visitSn(); + + T visitRs(); + + T visitSc(); + + T visitSl(); + + T visitSg(); + + T visitSx(); + + T visitSk(); + + T visitSi(); + + T visitSb(); + + T visitSo(); + + T visitZa(); + + T visitGs(); + + T visitKr(); + + T visitSs(); + + T visitEs(); + + T visitLk(); + + T visitSd(); + + T visitSr(); + + T visitSj(); + + T visitSe(); + + T visitCh(); + + T visitSy(); + + T visitTw(); + + T visitTj(); + + T visitTz(); + + T visitTh(); + + T visitTl(); + + T visitTg(); + + T visitTk(); + + T visitTo(); + + T visitTt(); + + T visitTn(); + + T visitTr(); + + T visitTm(); + + T visitTc(); + + T visitTv(); + + T visitUg(); + + T visitUa(); + + T visitAe(); + + T visitGb(); + + T visitUm(); + + T visitUs(); + + T visitUy(); + + T visitUz(); + + T visitVu(); + + T visitVe(); + + T visitVn(); + + T visitVg(); + + T visitVi(); + + T visitWf(); + + T visitEh(); + + T visitYe(); + + T visitZm(); + + T visitZw(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/DirectionEnum.java b/src/main/java/com/merge/api/crm/types/DirectionEnum.java index 57ca7f15b..5e21304ae 100644 --- a/src/main/java/com/merge/api/crm/types/DirectionEnum.java +++ b/src/main/java/com/merge/api/crm/types/DirectionEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum DirectionEnum { - INBOUND("INBOUND"), +public final class DirectionEnum { + public static final DirectionEnum OUTBOUND = new DirectionEnum(Value.OUTBOUND, "OUTBOUND"); - OUTBOUND("OUTBOUND"); + public static final DirectionEnum INBOUND = new DirectionEnum(Value.INBOUND, "INBOUND"); - private final String value; + private final Value value; - DirectionEnum(String value) { + private final String string; + + DirectionEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof DirectionEnum && this.string.equals(((DirectionEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OUTBOUND: + return visitor.visitOutbound(); + case INBOUND: + return visitor.visitInbound(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static DirectionEnum valueOf(String value) { + switch (value) { + case "OUTBOUND": + return OUTBOUND; + case "INBOUND": + return INBOUND; + default: + return new DirectionEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + INBOUND, + + OUTBOUND, + + UNKNOWN + } + + public interface Visitor { + T visitInbound(); + + T visitOutbound(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/crm/types/EnabledActionsEnum.java index d30be3d90..4eaae7f01 100644 --- a/src/main/java/com/merge/api/crm/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/crm/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/EncodingEnum.java b/src/main/java/com/merge/api/crm/types/EncodingEnum.java index 2f74c1891..fe273029a 100644 --- a/src/main/java/com/merge/api/crm/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/crm/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/EngagementsListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/EngagementsListRequestExpandItem.java index 80cd410ee..15206476b 100644 --- a/src/main/java/com/merge/api/crm/types/EngagementsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/EngagementsListRequestExpandItem.java @@ -3,26 +3,106 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EngagementsListRequestExpandItem { - ACCOUNT("account"), +public final class EngagementsListRequestExpandItem { + public static final EngagementsListRequestExpandItem CONTACTS = + new EngagementsListRequestExpandItem(Value.CONTACTS, "contacts"); - CONTACTS("contacts"), + public static final EngagementsListRequestExpandItem OWNER = + new EngagementsListRequestExpandItem(Value.OWNER, "owner"); - ENGAGEMENT_TYPE("engagement_type"), + public static final EngagementsListRequestExpandItem ACCOUNT = + new EngagementsListRequestExpandItem(Value.ACCOUNT, "account"); - OWNER("owner"); + public static final EngagementsListRequestExpandItem ENGAGEMENT_TYPE = + new EngagementsListRequestExpandItem(Value.ENGAGEMENT_TYPE, "engagement_type"); - private final String value; + private final Value value; - EngagementsListRequestExpandItem(String value) { + private final String string; + + EngagementsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EngagementsListRequestExpandItem + && this.string.equals(((EngagementsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CONTACTS: + return visitor.visitContacts(); + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case ENGAGEMENT_TYPE: + return visitor.visitEngagementType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EngagementsListRequestExpandItem valueOf(String value) { + switch (value) { + case "contacts": + return CONTACTS; + case "owner": + return OWNER; + case "account": + return ACCOUNT; + case "engagement_type": + return ENGAGEMENT_TYPE; + default: + return new EngagementsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + CONTACTS, + + ENGAGEMENT_TYPE, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitContacts(); + + T visitEngagementType(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/EngagementsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/EngagementsRetrieveRequestExpandItem.java index 0c369c228..377ddacc2 100644 --- a/src/main/java/com/merge/api/crm/types/EngagementsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/EngagementsRetrieveRequestExpandItem.java @@ -3,26 +3,106 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EngagementsRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class EngagementsRetrieveRequestExpandItem { + public static final EngagementsRetrieveRequestExpandItem CONTACTS = + new EngagementsRetrieveRequestExpandItem(Value.CONTACTS, "contacts"); - CONTACTS("contacts"), + public static final EngagementsRetrieveRequestExpandItem OWNER = + new EngagementsRetrieveRequestExpandItem(Value.OWNER, "owner"); - ENGAGEMENT_TYPE("engagement_type"), + public static final EngagementsRetrieveRequestExpandItem ACCOUNT = + new EngagementsRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - OWNER("owner"); + public static final EngagementsRetrieveRequestExpandItem ENGAGEMENT_TYPE = + new EngagementsRetrieveRequestExpandItem(Value.ENGAGEMENT_TYPE, "engagement_type"); - private final String value; + private final Value value; - EngagementsRetrieveRequestExpandItem(String value) { + private final String string; + + EngagementsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EngagementsRetrieveRequestExpandItem + && this.string.equals(((EngagementsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CONTACTS: + return visitor.visitContacts(); + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case ENGAGEMENT_TYPE: + return visitor.visitEngagementType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EngagementsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "contacts": + return CONTACTS; + case "owner": + return OWNER; + case "account": + return ACCOUNT; + case "engagement_type": + return ENGAGEMENT_TYPE; + default: + return new EngagementsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + CONTACTS, + + ENGAGEMENT_TYPE, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitContacts(); + + T visitEngagementType(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/EventTypeEnum.java b/src/main/java/com/merge/api/crm/types/EventTypeEnum.java index 2b12fd950..b66bb7389 100644 --- a/src/main/java/com/merge/api/crm/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/FieldFormatEnum.java b/src/main/java/com/merge/api/crm/types/FieldFormatEnum.java index 775e90160..86e3ef7f5 100644 --- a/src/main/java/com/merge/api/crm/types/FieldFormatEnum.java +++ b/src/main/java/com/merge/api/crm/types/FieldFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldFormatEnum { - STRING("string"), +public final class FieldFormatEnum { + public static final FieldFormatEnum NUMBER = new FieldFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldFormatEnum STRING = new FieldFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldFormatEnum BOOL = new FieldFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldFormatEnum LIST = new FieldFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldFormatEnum DATETIME = new FieldFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldFormatEnum DATE = new FieldFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldFormatEnum(String value) { + private final String string; + + FieldFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldFormatEnum && this.string.equals(((FieldFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/FieldTypeEnum.java b/src/main/java/com/merge/api/crm/types/FieldTypeEnum.java index c5abacf36..d5734b0c4 100644 --- a/src/main/java/com/merge/api/crm/types/FieldTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/FieldTypeEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldTypeEnum { - STRING("string"), +public final class FieldTypeEnum { + public static final FieldTypeEnum NUMBER = new FieldTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldTypeEnum STRING = new FieldTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldTypeEnum BOOL = new FieldTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldTypeEnum LIST = new FieldTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldTypeEnum DATETIME = new FieldTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldTypeEnum DATE = new FieldTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldTypeEnum(String value) { + private final String string; + + FieldTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldTypeEnum && this.string.equals(((FieldTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/IssueStatusEnum.java b/src/main/java/com/merge/api/crm/types/IssueStatusEnum.java index a544993a7..1e22bfe07 100644 --- a/src/main/java/com/merge/api/crm/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/crm/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/crm/types/IssuesListRequestStatus.java index 08215964c..48acf4956 100644 --- a/src/main/java/com/merge/api/crm/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/crm/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ItemFormatEnum.java b/src/main/java/com/merge/api/crm/types/ItemFormatEnum.java index 6a22c08c0..fed3b4988 100644 --- a/src/main/java/com/merge/api/crm/types/ItemFormatEnum.java +++ b/src/main/java/com/merge/api/crm/types/ItemFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemFormatEnum { - STRING("string"), +public final class ItemFormatEnum { + public static final ItemFormatEnum NUMBER = new ItemFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemFormatEnum STRING = new ItemFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemFormatEnum BOOL = new ItemFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemFormatEnum LIST = new ItemFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemFormatEnum DATETIME = new ItemFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemFormatEnum DATE = new ItemFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemFormatEnum(String value) { + private final String string; + + ItemFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ItemFormatEnum && this.string.equals(((ItemFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ItemTypeEnum.java b/src/main/java/com/merge/api/crm/types/ItemTypeEnum.java index 783d13aea..cfe707fd9 100644 --- a/src/main/java/com/merge/api/crm/types/ItemTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/ItemTypeEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemTypeEnum { - STRING("string"), +public final class ItemTypeEnum { + public static final ItemTypeEnum NUMBER = new ItemTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemTypeEnum STRING = new ItemTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemTypeEnum BOOL = new ItemTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemTypeEnum LIST = new ItemTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemTypeEnum DATETIME = new ItemTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemTypeEnum DATE = new ItemTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemTypeEnum(String value) { + private final String string; + + ItemTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ItemTypeEnum && this.string.equals(((ItemTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/LanguageEnum.java b/src/main/java/com/merge/api/crm/types/LanguageEnum.java index 4e7843e85..5e6885e02 100644 --- a/src/main/java/com/merge/api/crm/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/crm/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/crm/types/LastSyncResultEnum.java index 1982d9736..b2b6367f6 100644 --- a/src/main/java/com/merge/api/crm/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/crm/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/LeadsListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/LeadsListRequestExpandItem.java index b9e710ea6..6576cfad4 100644 --- a/src/main/java/com/merge/api/crm/types/LeadsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/LeadsListRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LeadsListRequestExpandItem { - CONVERTED_ACCOUNT("converted_account"), +public final class LeadsListRequestExpandItem { + public static final LeadsListRequestExpandItem OWNER = new LeadsListRequestExpandItem(Value.OWNER, "owner"); - CONVERTED_CONTACT("converted_contact"), + public static final LeadsListRequestExpandItem CONVERTED_ACCOUNT = + new LeadsListRequestExpandItem(Value.CONVERTED_ACCOUNT, "converted_account"); - OWNER("owner"); + public static final LeadsListRequestExpandItem CONVERTED_CONTACT = + new LeadsListRequestExpandItem(Value.CONVERTED_CONTACT, "converted_contact"); - private final String value; + private final Value value; - LeadsListRequestExpandItem(String value) { + private final String string; + + LeadsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LeadsListRequestExpandItem + && this.string.equals(((LeadsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case CONVERTED_ACCOUNT: + return visitor.visitConvertedAccount(); + case CONVERTED_CONTACT: + return visitor.visitConvertedContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LeadsListRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "converted_account": + return CONVERTED_ACCOUNT; + case "converted_contact": + return CONVERTED_CONTACT; + default: + return new LeadsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CONVERTED_ACCOUNT, + + CONVERTED_CONTACT, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitConvertedAccount(); + + T visitConvertedContact(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/LeadsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/LeadsRetrieveRequestExpandItem.java index c01158ba4..cadefad7e 100644 --- a/src/main/java/com/merge/api/crm/types/LeadsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/LeadsRetrieveRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LeadsRetrieveRequestExpandItem { - CONVERTED_ACCOUNT("converted_account"), +public final class LeadsRetrieveRequestExpandItem { + public static final LeadsRetrieveRequestExpandItem OWNER = new LeadsRetrieveRequestExpandItem(Value.OWNER, "owner"); - CONVERTED_CONTACT("converted_contact"), + public static final LeadsRetrieveRequestExpandItem CONVERTED_ACCOUNT = + new LeadsRetrieveRequestExpandItem(Value.CONVERTED_ACCOUNT, "converted_account"); - OWNER("owner"); + public static final LeadsRetrieveRequestExpandItem CONVERTED_CONTACT = + new LeadsRetrieveRequestExpandItem(Value.CONVERTED_CONTACT, "converted_contact"); - private final String value; + private final Value value; - LeadsRetrieveRequestExpandItem(String value) { + private final String string; + + LeadsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LeadsRetrieveRequestExpandItem + && this.string.equals(((LeadsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case CONVERTED_ACCOUNT: + return visitor.visitConvertedAccount(); + case CONVERTED_CONTACT: + return visitor.visitConvertedContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LeadsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "converted_account": + return CONVERTED_ACCOUNT; + case "converted_contact": + return CONVERTED_CONTACT; + default: + return new LeadsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CONVERTED_ACCOUNT, + + CONVERTED_CONTACT, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitConvertedAccount(); + + T visitConvertedContact(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/crm/types/LinkedAccountsListRequestCategory.java index c226a5504..6ec7c9c2e 100644 --- a/src/main/java/com/merge/api/crm/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/crm/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/MethodEnum.java b/src/main/java/com/merge/api/crm/types/MethodEnum.java index aa385c1db..56f4e37f8 100644 --- a/src/main/java/com/merge/api/crm/types/MethodEnum.java +++ b/src/main/java/com/merge/api/crm/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/NotesListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/NotesListRequestExpandItem.java index 2f4f3d280..1c616641e 100644 --- a/src/main/java/com/merge/api/crm/types/NotesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/NotesListRequestExpandItem.java @@ -3,26 +3,103 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum NotesListRequestExpandItem { - ACCOUNT("account"), +public final class NotesListRequestExpandItem { + public static final NotesListRequestExpandItem OWNER = new NotesListRequestExpandItem(Value.OWNER, "owner"); - CONTACT("contact"), + public static final NotesListRequestExpandItem OPPORTUNITY = + new NotesListRequestExpandItem(Value.OPPORTUNITY, "opportunity"); - OPPORTUNITY("opportunity"), + public static final NotesListRequestExpandItem ACCOUNT = new NotesListRequestExpandItem(Value.ACCOUNT, "account"); - OWNER("owner"); + public static final NotesListRequestExpandItem CONTACT = new NotesListRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - NotesListRequestExpandItem(String value) { + private final String string; + + NotesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof NotesListRequestExpandItem + && this.string.equals(((NotesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case OPPORTUNITY: + return visitor.visitOpportunity(); + case ACCOUNT: + return visitor.visitAccount(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static NotesListRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "opportunity": + return OPPORTUNITY; + case "account": + return ACCOUNT; + case "contact": + return CONTACT; + default: + return new NotesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + CONTACT, + + OPPORTUNITY, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitContact(); + + T visitOpportunity(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/NotesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/NotesRetrieveRequestExpandItem.java index 3024edfb2..77c197828 100644 --- a/src/main/java/com/merge/api/crm/types/NotesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/NotesRetrieveRequestExpandItem.java @@ -3,26 +3,105 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum NotesRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class NotesRetrieveRequestExpandItem { + public static final NotesRetrieveRequestExpandItem OWNER = new NotesRetrieveRequestExpandItem(Value.OWNER, "owner"); - CONTACT("contact"), + public static final NotesRetrieveRequestExpandItem OPPORTUNITY = + new NotesRetrieveRequestExpandItem(Value.OPPORTUNITY, "opportunity"); - OPPORTUNITY("opportunity"), + public static final NotesRetrieveRequestExpandItem ACCOUNT = + new NotesRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - OWNER("owner"); + public static final NotesRetrieveRequestExpandItem CONTACT = + new NotesRetrieveRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - NotesRetrieveRequestExpandItem(String value) { + private final String string; + + NotesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof NotesRetrieveRequestExpandItem + && this.string.equals(((NotesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case OPPORTUNITY: + return visitor.visitOpportunity(); + case ACCOUNT: + return visitor.visitAccount(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static NotesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "opportunity": + return OPPORTUNITY; + case "account": + return ACCOUNT; + case "contact": + return CONTACT; + default: + return new NotesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + CONTACT, + + OPPORTUNITY, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitContact(); + + T visitOpportunity(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestExpandItem.java index aadd0cf12..c647ee8f1 100644 --- a/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OpportunitiesListRequestExpandItem { - ACCOUNT("account"), +public final class OpportunitiesListRequestExpandItem { + public static final OpportunitiesListRequestExpandItem OWNER = + new OpportunitiesListRequestExpandItem(Value.OWNER, "owner"); - OWNER("owner"), + public static final OpportunitiesListRequestExpandItem ACCOUNT = + new OpportunitiesListRequestExpandItem(Value.ACCOUNT, "account"); - STAGE("stage"); + public static final OpportunitiesListRequestExpandItem STAGE = + new OpportunitiesListRequestExpandItem(Value.STAGE, "stage"); - private final String value; + private final Value value; - OpportunitiesListRequestExpandItem(String value) { + private final String string; + + OpportunitiesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OpportunitiesListRequestExpandItem + && this.string.equals(((OpportunitiesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case STAGE: + return visitor.visitStage(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OpportunitiesListRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "account": + return ACCOUNT; + case "stage": + return STAGE; + default: + return new OpportunitiesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OWNER, + + STAGE, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOwner(); + + T visitStage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestStatus.java b/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestStatus.java index 28b575f70..0bfa1986a 100644 --- a/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestStatus.java +++ b/src/main/java/com/merge/api/crm/types/OpportunitiesListRequestStatus.java @@ -3,24 +3,92 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OpportunitiesListRequestStatus { - LOST("LOST"), +public final class OpportunitiesListRequestStatus { + public static final OpportunitiesListRequestStatus WON = new OpportunitiesListRequestStatus(Value.WON, "WON"); - OPEN("OPEN"), + public static final OpportunitiesListRequestStatus LOST = new OpportunitiesListRequestStatus(Value.LOST, "LOST"); - WON("WON"); + public static final OpportunitiesListRequestStatus OPEN = new OpportunitiesListRequestStatus(Value.OPEN, "OPEN"); - private final String value; + private final Value value; - OpportunitiesListRequestStatus(String value) { + private final String string; + + OpportunitiesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OpportunitiesListRequestStatus + && this.string.equals(((OpportunitiesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WON: + return visitor.visitWon(); + case LOST: + return visitor.visitLost(); + case OPEN: + return visitor.visitOpen(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OpportunitiesListRequestStatus valueOf(String value) { + switch (value) { + case "WON": + return WON; + case "LOST": + return LOST; + case "OPEN": + return OPEN; + default: + return new OpportunitiesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + LOST, + + OPEN, + + WON, + + UNKNOWN + } + + public interface Visitor { + T visitLost(); + + T visitOpen(); + + T visitWon(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/OpportunitiesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/OpportunitiesRetrieveRequestExpandItem.java index 08723f760..26f8d6700 100644 --- a/src/main/java/com/merge/api/crm/types/OpportunitiesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/OpportunitiesRetrieveRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OpportunitiesRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class OpportunitiesRetrieveRequestExpandItem { + public static final OpportunitiesRetrieveRequestExpandItem OWNER = + new OpportunitiesRetrieveRequestExpandItem(Value.OWNER, "owner"); - OWNER("owner"), + public static final OpportunitiesRetrieveRequestExpandItem ACCOUNT = + new OpportunitiesRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - STAGE("stage"); + public static final OpportunitiesRetrieveRequestExpandItem STAGE = + new OpportunitiesRetrieveRequestExpandItem(Value.STAGE, "stage"); - private final String value; + private final Value value; - OpportunitiesRetrieveRequestExpandItem(String value) { + private final String string; + + OpportunitiesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OpportunitiesRetrieveRequestExpandItem + && this.string.equals(((OpportunitiesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case ACCOUNT: + return visitor.visitAccount(); + case STAGE: + return visitor.visitStage(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OpportunitiesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "account": + return ACCOUNT; + case "stage": + return STAGE; + default: + return new OpportunitiesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OWNER, + + STAGE, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOwner(); + + T visitStage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/OpportunityStatusEnum.java b/src/main/java/com/merge/api/crm/types/OpportunityStatusEnum.java index 65e5db8fa..0285a4445 100644 --- a/src/main/java/com/merge/api/crm/types/OpportunityStatusEnum.java +++ b/src/main/java/com/merge/api/crm/types/OpportunityStatusEnum.java @@ -3,24 +3,92 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OpportunityStatusEnum { - OPEN("OPEN"), +public final class OpportunityStatusEnum { + public static final OpportunityStatusEnum WON = new OpportunityStatusEnum(Value.WON, "WON"); - WON("WON"), + public static final OpportunityStatusEnum LOST = new OpportunityStatusEnum(Value.LOST, "LOST"); - LOST("LOST"); + public static final OpportunityStatusEnum OPEN = new OpportunityStatusEnum(Value.OPEN, "OPEN"); - private final String value; + private final Value value; - OpportunityStatusEnum(String value) { + private final String string; + + OpportunityStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OpportunityStatusEnum + && this.string.equals(((OpportunityStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WON: + return visitor.visitWon(); + case LOST: + return visitor.visitLost(); + case OPEN: + return visitor.visitOpen(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OpportunityStatusEnum valueOf(String value) { + switch (value) { + case "WON": + return WON; + case "LOST": + return LOST; + case "OPEN": + return OPEN; + default: + return new OpportunityStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + OPEN, + + WON, + + LOST, + + UNKNOWN + } + + public interface Visitor { + T visitOpen(); + + T visitWon(); + + T visitLost(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/OriginTypeEnum.java b/src/main/java/com/merge/api/crm/types/OriginTypeEnum.java index dd1c0128f..8a2f2743e 100644 --- a/src/main/java/com/merge/api/crm/types/OriginTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/OriginTypeEnum.java @@ -3,24 +3,92 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum OriginTypeEnum { - CUSTOM_OBJECT("CUSTOM_OBJECT"), +public final class OriginTypeEnum { + public static final OriginTypeEnum COMMON_MODEL = new OriginTypeEnum(Value.COMMON_MODEL, "COMMON_MODEL"); - COMMON_MODEL("COMMON_MODEL"), + public static final OriginTypeEnum CUSTOM_OBJECT = new OriginTypeEnum(Value.CUSTOM_OBJECT, "CUSTOM_OBJECT"); - REMOTE_ONLY_MODEL("REMOTE_ONLY_MODEL"); + public static final OriginTypeEnum REMOTE_ONLY_MODEL = + new OriginTypeEnum(Value.REMOTE_ONLY_MODEL, "REMOTE_ONLY_MODEL"); - private final String value; + private final Value value; - OriginTypeEnum(String value) { + private final String string; + + OriginTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof OriginTypeEnum && this.string.equals(((OriginTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COMMON_MODEL: + return visitor.visitCommonModel(); + case CUSTOM_OBJECT: + return visitor.visitCustomObject(); + case REMOTE_ONLY_MODEL: + return visitor.visitRemoteOnlyModel(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static OriginTypeEnum valueOf(String value) { + switch (value) { + case "COMMON_MODEL": + return COMMON_MODEL; + case "CUSTOM_OBJECT": + return CUSTOM_OBJECT; + case "REMOTE_ONLY_MODEL": + return REMOTE_ONLY_MODEL; + default: + return new OriginTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CUSTOM_OBJECT, + + COMMON_MODEL, + + REMOTE_ONLY_MODEL, + + UNKNOWN + } + + public interface Visitor { + T visitCustomObject(); + + T visitCommonModel(); + + T visitRemoteOnlyModel(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ReasonEnum.java b/src/main/java/com/merge/api/crm/types/ReasonEnum.java index c60da60c4..17de52203 100644 --- a/src/main/java/com/merge/api/crm/types/ReasonEnum.java +++ b/src/main/java/com/merge/api/crm/types/ReasonEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ReasonEnum { - GENERAL_CUSTOMER_REQUEST("GENERAL_CUSTOMER_REQUEST"), +public final class ReasonEnum { + public static final ReasonEnum GDPR = new ReasonEnum(Value.GDPR, "GDPR"); - GDPR("GDPR"), + public static final ReasonEnum GENERAL_CUSTOMER_REQUEST = + new ReasonEnum(Value.GENERAL_CUSTOMER_REQUEST, "GENERAL_CUSTOMER_REQUEST"); - OTHER("OTHER"); + public static final ReasonEnum OTHER = new ReasonEnum(Value.OTHER, "OTHER"); - private final String value; + private final Value value; - ReasonEnum(String value) { + private final String string; + + ReasonEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ReasonEnum && this.string.equals(((ReasonEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GDPR: + return visitor.visitGdpr(); + case GENERAL_CUSTOMER_REQUEST: + return visitor.visitGeneralCustomerRequest(); + case OTHER: + return visitor.visitOther(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ReasonEnum valueOf(String value) { + switch (value) { + case "GDPR": + return GDPR; + case "GENERAL_CUSTOMER_REQUEST": + return GENERAL_CUSTOMER_REQUEST; + case "OTHER": + return OTHER; + default: + return new ReasonEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GENERAL_CUSTOMER_REQUEST, + + GDPR, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitGeneralCustomerRequest(); + + T visitGdpr(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/RequestFormatEnum.java b/src/main/java/com/merge/api/crm/types/RequestFormatEnum.java index 45346aebb..d0145e4e4 100644 --- a/src/main/java/com/merge/api/crm/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/crm/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/crm/types/ResponseTypeEnum.java index e0b08e562..b158bac66 100644 --- a/src/main/java/com/merge/api/crm/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/crm/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/RoleEnum.java b/src/main/java/com/merge/api/crm/types/RoleEnum.java index 2d77a296a..5dcd25f5f 100644 --- a/src/main/java/com/merge/api/crm/types/RoleEnum.java +++ b/src/main/java/com/merge/api/crm/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/crm/types/SelectiveSyncConfigurationsUsageEnum.java index 57b123c92..c16b3cee4 100644 --- a/src/main/java/com/merge/api/crm/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/crm/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/StatusFd5Enum.java b/src/main/java/com/merge/api/crm/types/StatusFd5Enum.java index 220b79799..84b35a8f0 100644 --- a/src/main/java/com/merge/api/crm/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/crm/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/TaskStatusEnum.java b/src/main/java/com/merge/api/crm/types/TaskStatusEnum.java index 6f1a0ec7b..9cb230dd1 100644 --- a/src/main/java/com/merge/api/crm/types/TaskStatusEnum.java +++ b/src/main/java/com/merge/api/crm/types/TaskStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TaskStatusEnum { - OPEN("OPEN"), +public final class TaskStatusEnum { + public static final TaskStatusEnum CLOSED = new TaskStatusEnum(Value.CLOSED, "CLOSED"); - CLOSED("CLOSED"); + public static final TaskStatusEnum OPEN = new TaskStatusEnum(Value.OPEN, "OPEN"); - private final String value; + private final Value value; - TaskStatusEnum(String value) { + private final String string; + + TaskStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TaskStatusEnum && this.string.equals(((TaskStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLOSED: + return visitor.visitClosed(); + case OPEN: + return visitor.visitOpen(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TaskStatusEnum valueOf(String value) { + switch (value) { + case "CLOSED": + return CLOSED; + case "OPEN": + return OPEN; + default: + return new TaskStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + OPEN, + + CLOSED, + + UNKNOWN + } + + public interface Visitor { + T visitOpen(); + + T visitClosed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/TasksListRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/TasksListRequestExpandItem.java index a1f56c48b..3ff9f1532 100644 --- a/src/main/java/com/merge/api/crm/types/TasksListRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/TasksListRequestExpandItem.java @@ -3,24 +3,93 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TasksListRequestExpandItem { - ACCOUNT("account"), +public final class TasksListRequestExpandItem { + public static final TasksListRequestExpandItem OWNER = new TasksListRequestExpandItem(Value.OWNER, "owner"); - OPPORTUNITY("opportunity"), + public static final TasksListRequestExpandItem OPPORTUNITY = + new TasksListRequestExpandItem(Value.OPPORTUNITY, "opportunity"); - OWNER("owner"); + public static final TasksListRequestExpandItem ACCOUNT = new TasksListRequestExpandItem(Value.ACCOUNT, "account"); - private final String value; + private final Value value; - TasksListRequestExpandItem(String value) { + private final String string; + + TasksListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TasksListRequestExpandItem + && this.string.equals(((TasksListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case OPPORTUNITY: + return visitor.visitOpportunity(); + case ACCOUNT: + return visitor.visitAccount(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TasksListRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "opportunity": + return OPPORTUNITY; + case "account": + return ACCOUNT; + default: + return new TasksListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OPPORTUNITY, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOpportunity(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/crm/types/TasksRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/crm/types/TasksRetrieveRequestExpandItem.java index 55961d8ef..506528eca 100644 --- a/src/main/java/com/merge/api/crm/types/TasksRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/crm/types/TasksRetrieveRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.crm.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TasksRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class TasksRetrieveRequestExpandItem { + public static final TasksRetrieveRequestExpandItem OWNER = new TasksRetrieveRequestExpandItem(Value.OWNER, "owner"); - OPPORTUNITY("opportunity"), + public static final TasksRetrieveRequestExpandItem OPPORTUNITY = + new TasksRetrieveRequestExpandItem(Value.OPPORTUNITY, "opportunity"); - OWNER("owner"); + public static final TasksRetrieveRequestExpandItem ACCOUNT = + new TasksRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - private final String value; + private final Value value; - TasksRetrieveRequestExpandItem(String value) { + private final String string; + + TasksRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TasksRetrieveRequestExpandItem + && this.string.equals(((TasksRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case OPPORTUNITY: + return visitor.visitOpportunity(); + case ACCOUNT: + return visitor.visitAccount(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TasksRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "owner": + return OWNER; + case "opportunity": + return OPPORTUNITY; + case "account": + return ACCOUNT; + default: + return new TasksRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + OPPORTUNITY, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitOpportunity(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/filestorage/types/AccountDetailsAndActionsStatusEnum.java index b6477ded0..c80d34357 100644 --- a/src/main/java/com/merge/api/filestorage/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/CategoriesEnum.java b/src/main/java/com/merge/api/filestorage/types/CategoriesEnum.java index d62a65b23..d3ba9c005 100644 --- a/src/main/java/com/merge/api/filestorage/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/CategoryEnum.java b/src/main/java/com/merge/api/filestorage/types/CategoryEnum.java index 5826e01e5..02572ed5c 100644 --- a/src/main/java/com/merge/api/filestorage/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/filestorage/types/EnabledActionsEnum.java index 907d4b858..8b0680b4a 100644 --- a/src/main/java/com/merge/api/filestorage/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/EncodingEnum.java b/src/main/java/com/merge/api/filestorage/types/EncodingEnum.java index 50c96a365..1bed26824 100644 --- a/src/main/java/com/merge/api/filestorage/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/EventTypeEnum.java b/src/main/java/com/merge/api/filestorage/types/EventTypeEnum.java index a184534bf..23481dc5a 100644 --- a/src/main/java/com/merge/api/filestorage/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FilesDownloadRequestMetaListRequestOrderBy.java b/src/main/java/com/merge/api/filestorage/types/FilesDownloadRequestMetaListRequestOrderBy.java index d60af02b9..e40b85831 100644 --- a/src/main/java/com/merge/api/filestorage/types/FilesDownloadRequestMetaListRequestOrderBy.java +++ b/src/main/java/com/merge/api/filestorage/types/FilesDownloadRequestMetaListRequestOrderBy.java @@ -3,26 +3,106 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FilesDownloadRequestMetaListRequestOrderBy { - CREATED_AT_DESCENDING("-created_at"), +public final class FilesDownloadRequestMetaListRequestOrderBy { + public static final FilesDownloadRequestMetaListRequestOrderBy CREATED_AT_ASCENDING = + new FilesDownloadRequestMetaListRequestOrderBy(Value.CREATED_AT_ASCENDING, "created_at"); - MODIFIED_AT_DESCENDING("-modified_at"), + public static final FilesDownloadRequestMetaListRequestOrderBy MODIFIED_AT_ASCENDING = + new FilesDownloadRequestMetaListRequestOrderBy(Value.MODIFIED_AT_ASCENDING, "modified_at"); - CREATED_AT_ASCENDING("created_at"), + public static final FilesDownloadRequestMetaListRequestOrderBy CREATED_AT_DESCENDING = + new FilesDownloadRequestMetaListRequestOrderBy(Value.CREATED_AT_DESCENDING, "-created_at"); - MODIFIED_AT_ASCENDING("modified_at"); + public static final FilesDownloadRequestMetaListRequestOrderBy MODIFIED_AT_DESCENDING = + new FilesDownloadRequestMetaListRequestOrderBy(Value.MODIFIED_AT_DESCENDING, "-modified_at"); - private final String value; + private final Value value; - FilesDownloadRequestMetaListRequestOrderBy(String value) { + private final String string; + + FilesDownloadRequestMetaListRequestOrderBy(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FilesDownloadRequestMetaListRequestOrderBy + && this.string.equals(((FilesDownloadRequestMetaListRequestOrderBy) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATED_AT_ASCENDING: + return visitor.visitCreatedAtAscending(); + case MODIFIED_AT_ASCENDING: + return visitor.visitModifiedAtAscending(); + case CREATED_AT_DESCENDING: + return visitor.visitCreatedAtDescending(); + case MODIFIED_AT_DESCENDING: + return visitor.visitModifiedAtDescending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FilesDownloadRequestMetaListRequestOrderBy valueOf(String value) { + switch (value) { + case "created_at": + return CREATED_AT_ASCENDING; + case "modified_at": + return MODIFIED_AT_ASCENDING; + case "-created_at": + return CREATED_AT_DESCENDING; + case "-modified_at": + return MODIFIED_AT_DESCENDING; + default: + return new FilesDownloadRequestMetaListRequestOrderBy(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_AT_DESCENDING, + + MODIFIED_AT_DESCENDING, + + CREATED_AT_ASCENDING, + + MODIFIED_AT_ASCENDING, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedAtDescending(); + + T visitModifiedAtDescending(); + + T visitCreatedAtAscending(); + + T visitModifiedAtAscending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FilesListRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/FilesListRequestExpandItem.java index e68a4dea7..0e314d733 100644 --- a/src/main/java/com/merge/api/filestorage/types/FilesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/FilesListRequestExpandItem.java @@ -3,24 +3,93 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FilesListRequestExpandItem { - DRIVE("drive"), +public final class FilesListRequestExpandItem { + public static final FilesListRequestExpandItem FOLDER = new FilesListRequestExpandItem(Value.FOLDER, "folder"); - FOLDER("folder"), + public static final FilesListRequestExpandItem PERMISSIONS = + new FilesListRequestExpandItem(Value.PERMISSIONS, "permissions"); - PERMISSIONS("permissions"); + public static final FilesListRequestExpandItem DRIVE = new FilesListRequestExpandItem(Value.DRIVE, "drive"); - private final String value; + private final Value value; - FilesListRequestExpandItem(String value) { + private final String string; + + FilesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FilesListRequestExpandItem + && this.string.equals(((FilesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case FOLDER: + return visitor.visitFolder(); + case PERMISSIONS: + return visitor.visitPermissions(); + case DRIVE: + return visitor.visitDrive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FilesListRequestExpandItem valueOf(String value) { + switch (value) { + case "folder": + return FOLDER; + case "permissions": + return PERMISSIONS; + case "drive": + return DRIVE; + default: + return new FilesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DRIVE, + + FOLDER, + + PERMISSIONS, + + UNKNOWN + } + + public interface Visitor { + T visitDrive(); + + T visitFolder(); + + T visitPermissions(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FilesListRequestOrderBy.java b/src/main/java/com/merge/api/filestorage/types/FilesListRequestOrderBy.java index b2aee1d9b..62d8414f4 100644 --- a/src/main/java/com/merge/api/filestorage/types/FilesListRequestOrderBy.java +++ b/src/main/java/com/merge/api/filestorage/types/FilesListRequestOrderBy.java @@ -3,26 +3,106 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FilesListRequestOrderBy { - CREATED_AT_DESCENDING("-created_at"), +public final class FilesListRequestOrderBy { + public static final FilesListRequestOrderBy CREATED_AT_ASCENDING = + new FilesListRequestOrderBy(Value.CREATED_AT_ASCENDING, "created_at"); - MODIFIED_AT_DESCENDING("-modified_at"), + public static final FilesListRequestOrderBy MODIFIED_AT_ASCENDING = + new FilesListRequestOrderBy(Value.MODIFIED_AT_ASCENDING, "modified_at"); - CREATED_AT_ASCENDING("created_at"), + public static final FilesListRequestOrderBy CREATED_AT_DESCENDING = + new FilesListRequestOrderBy(Value.CREATED_AT_DESCENDING, "-created_at"); - MODIFIED_AT_ASCENDING("modified_at"); + public static final FilesListRequestOrderBy MODIFIED_AT_DESCENDING = + new FilesListRequestOrderBy(Value.MODIFIED_AT_DESCENDING, "-modified_at"); - private final String value; + private final Value value; - FilesListRequestOrderBy(String value) { + private final String string; + + FilesListRequestOrderBy(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FilesListRequestOrderBy + && this.string.equals(((FilesListRequestOrderBy) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATED_AT_ASCENDING: + return visitor.visitCreatedAtAscending(); + case MODIFIED_AT_ASCENDING: + return visitor.visitModifiedAtAscending(); + case CREATED_AT_DESCENDING: + return visitor.visitCreatedAtDescending(); + case MODIFIED_AT_DESCENDING: + return visitor.visitModifiedAtDescending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FilesListRequestOrderBy valueOf(String value) { + switch (value) { + case "created_at": + return CREATED_AT_ASCENDING; + case "modified_at": + return MODIFIED_AT_ASCENDING; + case "-created_at": + return CREATED_AT_DESCENDING; + case "-modified_at": + return MODIFIED_AT_DESCENDING; + default: + return new FilesListRequestOrderBy(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_AT_DESCENDING, + + MODIFIED_AT_DESCENDING, + + CREATED_AT_ASCENDING, + + MODIFIED_AT_ASCENDING, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedAtDescending(); + + T visitModifiedAtDescending(); + + T visitCreatedAtAscending(); + + T visitModifiedAtAscending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FilesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/FilesRetrieveRequestExpandItem.java index ee08c7733..9c21d8f16 100644 --- a/src/main/java/com/merge/api/filestorage/types/FilesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/FilesRetrieveRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FilesRetrieveRequestExpandItem { - DRIVE("drive"), +public final class FilesRetrieveRequestExpandItem { + public static final FilesRetrieveRequestExpandItem FOLDER = + new FilesRetrieveRequestExpandItem(Value.FOLDER, "folder"); - FOLDER("folder"), + public static final FilesRetrieveRequestExpandItem PERMISSIONS = + new FilesRetrieveRequestExpandItem(Value.PERMISSIONS, "permissions"); - PERMISSIONS("permissions"); + public static final FilesRetrieveRequestExpandItem DRIVE = new FilesRetrieveRequestExpandItem(Value.DRIVE, "drive"); - private final String value; + private final Value value; - FilesRetrieveRequestExpandItem(String value) { + private final String string; + + FilesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FilesRetrieveRequestExpandItem + && this.string.equals(((FilesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case FOLDER: + return visitor.visitFolder(); + case PERMISSIONS: + return visitor.visitPermissions(); + case DRIVE: + return visitor.visitDrive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FilesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "folder": + return FOLDER; + case "permissions": + return PERMISSIONS; + case "drive": + return DRIVE; + default: + return new FilesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DRIVE, + + FOLDER, + + PERMISSIONS, + + UNKNOWN + } + + public interface Visitor { + T visitDrive(); + + T visitFolder(); + + T visitPermissions(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FoldersListRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/FoldersListRequestExpandItem.java index 757c08fcb..fcaa811ee 100644 --- a/src/main/java/com/merge/api/filestorage/types/FoldersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/FoldersListRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FoldersListRequestExpandItem { - DRIVE("drive"), +public final class FoldersListRequestExpandItem { + public static final FoldersListRequestExpandItem PERMISSIONS = + new FoldersListRequestExpandItem(Value.PERMISSIONS, "permissions"); - PARENT_FOLDER("parent_folder"), + public static final FoldersListRequestExpandItem DRIVE = new FoldersListRequestExpandItem(Value.DRIVE, "drive"); - PERMISSIONS("permissions"); + public static final FoldersListRequestExpandItem PARENT_FOLDER = + new FoldersListRequestExpandItem(Value.PARENT_FOLDER, "parent_folder"); - private final String value; + private final Value value; - FoldersListRequestExpandItem(String value) { + private final String string; + + FoldersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FoldersListRequestExpandItem + && this.string.equals(((FoldersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PERMISSIONS: + return visitor.visitPermissions(); + case DRIVE: + return visitor.visitDrive(); + case PARENT_FOLDER: + return visitor.visitParentFolder(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FoldersListRequestExpandItem valueOf(String value) { + switch (value) { + case "permissions": + return PERMISSIONS; + case "drive": + return DRIVE; + case "parent_folder": + return PARENT_FOLDER; + default: + return new FoldersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DRIVE, + + PARENT_FOLDER, + + PERMISSIONS, + + UNKNOWN + } + + public interface Visitor { + T visitDrive(); + + T visitParentFolder(); + + T visitPermissions(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/FoldersRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/FoldersRetrieveRequestExpandItem.java index f8aad1763..698e556e7 100644 --- a/src/main/java/com/merge/api/filestorage/types/FoldersRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/FoldersRetrieveRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FoldersRetrieveRequestExpandItem { - DRIVE("drive"), +public final class FoldersRetrieveRequestExpandItem { + public static final FoldersRetrieveRequestExpandItem PERMISSIONS = + new FoldersRetrieveRequestExpandItem(Value.PERMISSIONS, "permissions"); - PARENT_FOLDER("parent_folder"), + public static final FoldersRetrieveRequestExpandItem DRIVE = + new FoldersRetrieveRequestExpandItem(Value.DRIVE, "drive"); - PERMISSIONS("permissions"); + public static final FoldersRetrieveRequestExpandItem PARENT_FOLDER = + new FoldersRetrieveRequestExpandItem(Value.PARENT_FOLDER, "parent_folder"); - private final String value; + private final Value value; - FoldersRetrieveRequestExpandItem(String value) { + private final String string; + + FoldersRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FoldersRetrieveRequestExpandItem + && this.string.equals(((FoldersRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PERMISSIONS: + return visitor.visitPermissions(); + case DRIVE: + return visitor.visitDrive(); + case PARENT_FOLDER: + return visitor.visitParentFolder(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FoldersRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "permissions": + return PERMISSIONS; + case "drive": + return DRIVE; + case "parent_folder": + return PARENT_FOLDER; + default: + return new FoldersRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + DRIVE, + + PARENT_FOLDER, + + PERMISSIONS, + + UNKNOWN + } + + public interface Visitor { + T visitDrive(); + + T visitParentFolder(); + + T visitPermissions(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/GroupsListRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/GroupsListRequestExpandItem.java index 5b28a4b5a..abc5929b0 100644 --- a/src/main/java/com/merge/api/filestorage/types/GroupsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/GroupsListRequestExpandItem.java @@ -3,22 +3,83 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GroupsListRequestExpandItem { - CHILD_GROUPS("child_groups"), +public final class GroupsListRequestExpandItem { + public static final GroupsListRequestExpandItem CHILD_GROUPS = + new GroupsListRequestExpandItem(Value.CHILD_GROUPS, "child_groups"); - USERS("users"); + public static final GroupsListRequestExpandItem USERS = new GroupsListRequestExpandItem(Value.USERS, "users"); - private final String value; + private final Value value; - GroupsListRequestExpandItem(String value) { + private final String string; + + GroupsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof GroupsListRequestExpandItem + && this.string.equals(((GroupsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CHILD_GROUPS: + return visitor.visitChildGroups(); + case USERS: + return visitor.visitUsers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GroupsListRequestExpandItem valueOf(String value) { + switch (value) { + case "child_groups": + return CHILD_GROUPS; + case "users": + return USERS; + default: + return new GroupsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CHILD_GROUPS, + + USERS, + + UNKNOWN + } + + public interface Visitor { + T visitChildGroups(); + + T visitUsers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/GroupsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/filestorage/types/GroupsRetrieveRequestExpandItem.java index f7f6e315e..052448e87 100644 --- a/src/main/java/com/merge/api/filestorage/types/GroupsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/filestorage/types/GroupsRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GroupsRetrieveRequestExpandItem { - CHILD_GROUPS("child_groups"), +public final class GroupsRetrieveRequestExpandItem { + public static final GroupsRetrieveRequestExpandItem CHILD_GROUPS = + new GroupsRetrieveRequestExpandItem(Value.CHILD_GROUPS, "child_groups"); - USERS("users"); + public static final GroupsRetrieveRequestExpandItem USERS = + new GroupsRetrieveRequestExpandItem(Value.USERS, "users"); - private final String value; + private final Value value; - GroupsRetrieveRequestExpandItem(String value) { + private final String string; + + GroupsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof GroupsRetrieveRequestExpandItem + && this.string.equals(((GroupsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CHILD_GROUPS: + return visitor.visitChildGroups(); + case USERS: + return visitor.visitUsers(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GroupsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "child_groups": + return CHILD_GROUPS; + case "users": + return USERS; + default: + return new GroupsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CHILD_GROUPS, + + USERS, + + UNKNOWN + } + + public interface Visitor { + T visitChildGroups(); + + T visitUsers(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/IssueStatusEnum.java b/src/main/java/com/merge/api/filestorage/types/IssueStatusEnum.java index 17143bd98..c97985bef 100644 --- a/src/main/java/com/merge/api/filestorage/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/filestorage/types/IssuesListRequestStatus.java index 4ef49ea2e..52685cae8 100644 --- a/src/main/java/com/merge/api/filestorage/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/filestorage/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/LanguageEnum.java b/src/main/java/com/merge/api/filestorage/types/LanguageEnum.java index 22b293bca..0a0a889ad 100644 --- a/src/main/java/com/merge/api/filestorage/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/filestorage/types/LastSyncResultEnum.java index b99cbf70a..45062e526 100644 --- a/src/main/java/com/merge/api/filestorage/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/filestorage/types/LinkedAccountsListRequestCategory.java index fa3a75ceb..dbd33068d 100644 --- a/src/main/java/com/merge/api/filestorage/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/filestorage/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/MethodEnum.java b/src/main/java/com/merge/api/filestorage/types/MethodEnum.java index 6fdda9c07..25d8bc4cb 100644 --- a/src/main/java/com/merge/api/filestorage/types/MethodEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/RequestFormatEnum.java b/src/main/java/com/merge/api/filestorage/types/RequestFormatEnum.java index 8955e4131..60c246fd3 100644 --- a/src/main/java/com/merge/api/filestorage/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/filestorage/types/ResponseTypeEnum.java index bb651cbec..3a6a4a302 100644 --- a/src/main/java/com/merge/api/filestorage/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/RoleEnum.java b/src/main/java/com/merge/api/filestorage/types/RoleEnum.java index 206690563..a57ae07a8 100644 --- a/src/main/java/com/merge/api/filestorage/types/RoleEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/RolesEnum.java b/src/main/java/com/merge/api/filestorage/types/RolesEnum.java index 5117a0087..d63487e7f 100644 --- a/src/main/java/com/merge/api/filestorage/types/RolesEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/RolesEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RolesEnum { - READ("READ"), +public final class RolesEnum { + public static final RolesEnum OWNER = new RolesEnum(Value.OWNER, "OWNER"); - WRITE("WRITE"), + public static final RolesEnum READ = new RolesEnum(Value.READ, "READ"); - OWNER("OWNER"); + public static final RolesEnum WRITE = new RolesEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - RolesEnum(String value) { + private final String string; + + RolesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RolesEnum && this.string.equals(((RolesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OWNER: + return visitor.visitOwner(); + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RolesEnum valueOf(String value) { + switch (value) { + case "OWNER": + return OWNER; + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new RolesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/filestorage/types/SelectiveSyncConfigurationsUsageEnum.java index 38b3d47b0..778918355 100644 --- a/src/main/java/com/merge/api/filestorage/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/StatusFd5Enum.java b/src/main/java/com/merge/api/filestorage/types/StatusFd5Enum.java index bbd9c12fa..a852bd336 100644 --- a/src/main/java/com/merge/api/filestorage/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/filestorage/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/filestorage/types/TypeEnum.java b/src/main/java/com/merge/api/filestorage/types/TypeEnum.java index dda1a661c..e1e7e801e 100644 --- a/src/main/java/com/merge/api/filestorage/types/TypeEnum.java +++ b/src/main/java/com/merge/api/filestorage/types/TypeEnum.java @@ -3,26 +3,100 @@ */ package com.merge.api.filestorage.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TypeEnum { - USER("USER"), +public final class TypeEnum { + public static final TypeEnum GROUP = new TypeEnum(Value.GROUP, "GROUP"); - GROUP("GROUP"), + public static final TypeEnum USER = new TypeEnum(Value.USER, "USER"); - COMPANY("COMPANY"), + public static final TypeEnum COMPANY = new TypeEnum(Value.COMPANY, "COMPANY"); - ANYONE("ANYONE"); + public static final TypeEnum ANYONE = new TypeEnum(Value.ANYONE, "ANYONE"); - private final String value; + private final Value value; - TypeEnum(String value) { + private final String string; + + TypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof TypeEnum && this.string.equals(((TypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GROUP: + return visitor.visitGroup(); + case USER: + return visitor.visitUser(); + case COMPANY: + return visitor.visitCompany(); + case ANYONE: + return visitor.visitAnyone(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TypeEnum valueOf(String value) { + switch (value) { + case "GROUP": + return GROUP; + case "USER": + return USER; + case "COMPANY": + return COMPANY; + case "ANYONE": + return ANYONE; + default: + return new TypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + USER, + + GROUP, + + COMPANY, + + ANYONE, + + UNKNOWN + } + + public interface Visitor { + T visitUser(); + + T visitGroup(); + + T visitCompany(); + + T visitAnyone(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/hris/types/AccountDetailsAndActionsStatusEnum.java index c3025c707..b3a584312 100644 --- a/src/main/java/com/merge/api/hris/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/AccountTypeEnum.java b/src/main/java/com/merge/api/hris/types/AccountTypeEnum.java index 534839dac..8eaac0f75 100644 --- a/src/main/java/com/merge/api/hris/types/AccountTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/AccountTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountTypeEnum { - SAVINGS("SAVINGS"), +public final class AccountTypeEnum { + public static final AccountTypeEnum SAVINGS = new AccountTypeEnum(Value.SAVINGS, "SAVINGS"); - CHECKING("CHECKING"); + public static final AccountTypeEnum CHECKING = new AccountTypeEnum(Value.CHECKING, "CHECKING"); - private final String value; + private final Value value; - AccountTypeEnum(String value) { + private final String string; + + AccountTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountTypeEnum && this.string.equals(((AccountTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SAVINGS: + return visitor.visitSavings(); + case CHECKING: + return visitor.visitChecking(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountTypeEnum valueOf(String value) { + switch (value) { + case "SAVINGS": + return SAVINGS; + case "CHECKING": + return CHECKING; + default: + return new AccountTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SAVINGS, + + CHECKING, + + UNKNOWN + } + + public interface Visitor { + T visitSavings(); + + T visitChecking(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/BankInfoListRequestAccountType.java b/src/main/java/com/merge/api/hris/types/BankInfoListRequestAccountType.java index 72736cc03..c34f3385c 100644 --- a/src/main/java/com/merge/api/hris/types/BankInfoListRequestAccountType.java +++ b/src/main/java/com/merge/api/hris/types/BankInfoListRequestAccountType.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum BankInfoListRequestAccountType { - CHECKING("CHECKING"), +public final class BankInfoListRequestAccountType { + public static final BankInfoListRequestAccountType SAVINGS = + new BankInfoListRequestAccountType(Value.SAVINGS, "SAVINGS"); - SAVINGS("SAVINGS"); + public static final BankInfoListRequestAccountType CHECKING = + new BankInfoListRequestAccountType(Value.CHECKING, "CHECKING"); - private final String value; + private final Value value; - BankInfoListRequestAccountType(String value) { + private final String string; + + BankInfoListRequestAccountType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof BankInfoListRequestAccountType + && this.string.equals(((BankInfoListRequestAccountType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SAVINGS: + return visitor.visitSavings(); + case CHECKING: + return visitor.visitChecking(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static BankInfoListRequestAccountType valueOf(String value) { + switch (value) { + case "SAVINGS": + return SAVINGS; + case "CHECKING": + return CHECKING; + default: + return new BankInfoListRequestAccountType(Value.UNKNOWN, value); + } + } + + public enum Value { + CHECKING, + + SAVINGS, + + UNKNOWN + } + + public interface Visitor { + T visitChecking(); + + T visitSavings(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/BankInfoListRequestOrderBy.java b/src/main/java/com/merge/api/hris/types/BankInfoListRequestOrderBy.java index 3a8a78dbb..9a7cfa056 100644 --- a/src/main/java/com/merge/api/hris/types/BankInfoListRequestOrderBy.java +++ b/src/main/java/com/merge/api/hris/types/BankInfoListRequestOrderBy.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum BankInfoListRequestOrderBy { - REMOTE_CREATED_AT_DESCENDING("-remote_created_at"), +public final class BankInfoListRequestOrderBy { + public static final BankInfoListRequestOrderBy REMOTE_CREATED_AT_DESCENDING = + new BankInfoListRequestOrderBy(Value.REMOTE_CREATED_AT_DESCENDING, "-remote_created_at"); - REMOTE_CREATED_AT_ASCENDING("remote_created_at"); + public static final BankInfoListRequestOrderBy REMOTE_CREATED_AT_ASCENDING = + new BankInfoListRequestOrderBy(Value.REMOTE_CREATED_AT_ASCENDING, "remote_created_at"); - private final String value; + private final Value value; - BankInfoListRequestOrderBy(String value) { + private final String string; + + BankInfoListRequestOrderBy(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof BankInfoListRequestOrderBy + && this.string.equals(((BankInfoListRequestOrderBy) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case REMOTE_CREATED_AT_DESCENDING: + return visitor.visitRemoteCreatedAtDescending(); + case REMOTE_CREATED_AT_ASCENDING: + return visitor.visitRemoteCreatedAtAscending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static BankInfoListRequestOrderBy valueOf(String value) { + switch (value) { + case "-remote_created_at": + return REMOTE_CREATED_AT_DESCENDING; + case "remote_created_at": + return REMOTE_CREATED_AT_ASCENDING; + default: + return new BankInfoListRequestOrderBy(Value.UNKNOWN, value); + } + } + + public enum Value { + REMOTE_CREATED_AT_DESCENDING, + + REMOTE_CREATED_AT_ASCENDING, + + UNKNOWN + } + + public interface Visitor { + T visitRemoteCreatedAtDescending(); + + T visitRemoteCreatedAtAscending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/BenefitPlanTypeEnum.java b/src/main/java/com/merge/api/hris/types/BenefitPlanTypeEnum.java index d0e4dc0ce..f0f22fd96 100644 --- a/src/main/java/com/merge/api/hris/types/BenefitPlanTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/BenefitPlanTypeEnum.java @@ -3,28 +3,112 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum BenefitPlanTypeEnum { - MEDICAL("MEDICAL"), +public final class BenefitPlanTypeEnum { + public static final BenefitPlanTypeEnum MEDICAL = new BenefitPlanTypeEnum(Value.MEDICAL, "MEDICAL"); - HEALTH_SAVINGS("HEALTH_SAVINGS"), + public static final BenefitPlanTypeEnum OTHER = new BenefitPlanTypeEnum(Value.OTHER, "OTHER"); - INSURANCE("INSURANCE"), + public static final BenefitPlanTypeEnum INSURANCE = new BenefitPlanTypeEnum(Value.INSURANCE, "INSURANCE"); - RETIREMENT("RETIREMENT"), + public static final BenefitPlanTypeEnum HEALTH_SAVINGS = + new BenefitPlanTypeEnum(Value.HEALTH_SAVINGS, "HEALTH_SAVINGS"); - OTHER("OTHER"); + public static final BenefitPlanTypeEnum RETIREMENT = new BenefitPlanTypeEnum(Value.RETIREMENT, "RETIREMENT"); - private final String value; + private final Value value; - BenefitPlanTypeEnum(String value) { + private final String string; + + BenefitPlanTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof BenefitPlanTypeEnum && this.string.equals(((BenefitPlanTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MEDICAL: + return visitor.visitMedical(); + case OTHER: + return visitor.visitOther(); + case INSURANCE: + return visitor.visitInsurance(); + case HEALTH_SAVINGS: + return visitor.visitHealthSavings(); + case RETIREMENT: + return visitor.visitRetirement(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static BenefitPlanTypeEnum valueOf(String value) { + switch (value) { + case "MEDICAL": + return MEDICAL; + case "OTHER": + return OTHER; + case "INSURANCE": + return INSURANCE; + case "HEALTH_SAVINGS": + return HEALTH_SAVINGS; + case "RETIREMENT": + return RETIREMENT; + default: + return new BenefitPlanTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + MEDICAL, + + HEALTH_SAVINGS, + + INSURANCE, + + RETIREMENT, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitMedical(); + + T visitHealthSavings(); + + T visitInsurance(); + + T visitRetirement(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/CategoriesEnum.java b/src/main/java/com/merge/api/hris/types/CategoriesEnum.java index 7ece078c4..0cfe87689 100644 --- a/src/main/java/com/merge/api/hris/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/hris/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/CategoryEnum.java b/src/main/java/com/merge/api/hris/types/CategoryEnum.java index 957d35e0f..83e97bdc3 100644 --- a/src/main/java/com/merge/api/hris/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/hris/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/CountryEnum.java b/src/main/java/com/merge/api/hris/types/CountryEnum.java index 5f1e4aaad..c004db5d3 100644 --- a/src/main/java/com/merge/api/hris/types/CountryEnum.java +++ b/src/main/java/com/merge/api/hris/types/CountryEnum.java @@ -3,516 +3,2550 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CountryEnum { - AF("AF"), +public final class CountryEnum { + public static final CountryEnum IL = new CountryEnum(Value.IL, "IL"); - AX("AX"), + public static final CountryEnum LI = new CountryEnum(Value.LI, "LI"); - AL("AL"), + public static final CountryEnum BH = new CountryEnum(Value.BH, "BH"); - DZ("DZ"), + public static final CountryEnum MW = new CountryEnum(Value.MW, "MW"); - AS("AS"), + public static final CountryEnum CV = new CountryEnum(Value.CV, "CV"); - AD("AD"), + public static final CountryEnum EE = new CountryEnum(Value.EE, "EE"); - AO("AO"), + public static final CountryEnum PT = new CountryEnum(Value.PT, "PT"); - AI("AI"), + public static final CountryEnum VN = new CountryEnum(Value.VN, "VN"); - AQ("AQ"), + public static final CountryEnum BL = new CountryEnum(Value.BL, "BL"); - AG("AG"), + public static final CountryEnum CZ = new CountryEnum(Value.CZ, "CZ"); - AR("AR"), + public static final CountryEnum IT = new CountryEnum(Value.IT, "IT"); - AM("AM"), + public static final CountryEnum SY = new CountryEnum(Value.SY, "SY"); - AW("AW"), + public static final CountryEnum KG = new CountryEnum(Value.KG, "KG"); - AU("AU"), + public static final CountryEnum BT = new CountryEnum(Value.BT, "BT"); - AT("AT"), + public static final CountryEnum ID = new CountryEnum(Value.ID, "ID"); - AZ("AZ"), + public static final CountryEnum QA = new CountryEnum(Value.QA, "QA"); - BS("BS"), + public static final CountryEnum HN = new CountryEnum(Value.HN, "HN"); - BH("BH"), + public static final CountryEnum LA = new CountryEnum(Value.LA, "LA"); - BD("BD"), + public static final CountryEnum CN = new CountryEnum(Value.CN, "CN"); - BB("BB"), + public static final CountryEnum ZM = new CountryEnum(Value.ZM, "ZM"); - BY("BY"), + public static final CountryEnum FK = new CountryEnum(Value.FK, "FK"); - BE("BE"), + public static final CountryEnum TW = new CountryEnum(Value.TW, "TW"); - BZ("BZ"), + public static final CountryEnum HR = new CountryEnum(Value.HR, "HR"); - BJ("BJ"), + public static final CountryEnum CR = new CountryEnum(Value.CR, "CR"); - BM("BM"), + public static final CountryEnum FO = new CountryEnum(Value.FO, "FO"); - BT("BT"), + public static final CountryEnum NL = new CountryEnum(Value.NL, "NL"); - BO("BO"), + public static final CountryEnum AO = new CountryEnum(Value.AO, "AO"); - BQ("BQ"), + public static final CountryEnum DK = new CountryEnum(Value.DK, "DK"); - BA("BA"), + public static final CountryEnum GI = new CountryEnum(Value.GI, "GI"); - BW("BW"), + public static final CountryEnum JE = new CountryEnum(Value.JE, "JE"); - BV("BV"), + public static final CountryEnum AS = new CountryEnum(Value.AS, "AS"); - BR("BR"), + public static final CountryEnum MC = new CountryEnum(Value.MC, "MC"); - IO("IO"), + public static final CountryEnum GM = new CountryEnum(Value.GM, "GM"); - BN("BN"), + public static final CountryEnum KW = new CountryEnum(Value.KW, "KW"); - BG("BG"), + public static final CountryEnum AW = new CountryEnum(Value.AW, "AW"); - BF("BF"), + public static final CountryEnum MG = new CountryEnum(Value.MG, "MG"); - BI("BI"), + public static final CountryEnum GQ = new CountryEnum(Value.GQ, "GQ"); - CV("CV"), + public static final CountryEnum JM = new CountryEnum(Value.JM, "JM"); - KH("KH"), + public static final CountryEnum SA = new CountryEnum(Value.SA, "SA"); - CM("CM"), + public static final CountryEnum MK = new CountryEnum(Value.MK, "MK"); - CA("CA"), + public static final CountryEnum KH = new CountryEnum(Value.KH, "KH"); - KY("KY"), + public static final CountryEnum GU = new CountryEnum(Value.GU, "GU"); - CF("CF"), + public static final CountryEnum SE = new CountryEnum(Value.SE, "SE"); - TD("TD"), + public static final CountryEnum ER = new CountryEnum(Value.ER, "ER"); - CL("CL"), + public static final CountryEnum MO = new CountryEnum(Value.MO, "MO"); - CN("CN"), + public static final CountryEnum FJ = new CountryEnum(Value.FJ, "FJ"); - CX("CX"), + public static final CountryEnum GY = new CountryEnum(Value.GY, "GY"); - CC("CC"), + public static final CountryEnum SI = new CountryEnum(Value.SI, "SI"); - CO("CO"), + public static final CountryEnum WS = new CountryEnum(Value.WS, "WS"); - KM("KM"), + public static final CountryEnum BD = new CountryEnum(Value.BD, "BD"); - CG("CG"), + public static final CountryEnum MS = new CountryEnum(Value.MS, "MS"); - CD("CD"), + public static final CountryEnum KP = new CountryEnum(Value.KP, "KP"); - CK("CK"), + public static final CountryEnum SM = new CountryEnum(Value.SM, "SM"); - CR("CR"), + public static final CountryEnum MV = new CountryEnum(Value.MV, "MV"); - CI("CI"), + public static final CountryEnum IM = new CountryEnum(Value.IM, "IM"); - HR("HR"), + public static final CountryEnum PS = new CountryEnum(Value.PS, "PS"); - CU("CU"), + public static final CountryEnum BI = new CountryEnum(Value.BI, "BI"); - CW("CW"), + public static final CountryEnum IO = new CountryEnum(Value.IO, "IO"); - CY("CY"), + public static final CountryEnum CW = new CountryEnum(Value.CW, "CW"); - CZ("CZ"), + public static final CountryEnum SR = new CountryEnum(Value.SR, "SR"); - DK("DK"), + public static final CountryEnum CY = new CountryEnum(Value.CY, "CY"); - DJ("DJ"), + public static final CountryEnum UA = new CountryEnum(Value.UA, "UA"); - DM("DM"), + public static final CountryEnum EH = new CountryEnum(Value.EH, "EH"); - DO("DO"), + public static final CountryEnum ST = new CountryEnum(Value.ST, "ST"); - EC("EC"), + public static final CountryEnum OM = new CountryEnum(Value.OM, "OM"); - EG("EG"), + public static final CountryEnum BQ = new CountryEnum(Value.BQ, "BQ"); - SV("SV"), + public static final CountryEnum AZ = new CountryEnum(Value.AZ, "AZ"); - GQ("GQ"), + public static final CountryEnum SB = new CountryEnum(Value.SB, "SB"); - ER("ER"), + public static final CountryEnum JO = new CountryEnum(Value.JO, "JO"); - EE("EE"), + public static final CountryEnum LT = new CountryEnum(Value.LT, "LT"); - SZ("SZ"), + public static final CountryEnum ML = new CountryEnum(Value.ML, "ML"); - ET("ET"), + public static final CountryEnum SD = new CountryEnum(Value.SD, "SD"); - FK("FK"), + public static final CountryEnum VA = new CountryEnum(Value.VA, "VA"); - FO("FO"), + public static final CountryEnum LV = new CountryEnum(Value.LV, "LV"); - FJ("FJ"), + public static final CountryEnum MN = new CountryEnum(Value.MN, "MN"); - FI("FI"), + public static final CountryEnum PK = new CountryEnum(Value.PK, "PK"); - FR("FR"), + public static final CountryEnum VC = new CountryEnum(Value.VC, "VC"); - GF("GF"), + public static final CountryEnum AI = new CountryEnum(Value.AI, "AI"); - PF("PF"), + public static final CountryEnum GA = new CountryEnum(Value.GA, "GA"); - TF("TF"), + public static final CountryEnum BA = new CountryEnum(Value.BA, "BA"); - GA("GA"), + public static final CountryEnum PM = new CountryEnum(Value.PM, "PM"); - GM("GM"), + public static final CountryEnum SJ = new CountryEnum(Value.SJ, "SJ"); - GE("GE"), + public static final CountryEnum DJ = new CountryEnum(Value.DJ, "DJ"); - DE("DE"), + public static final CountryEnum MT = new CountryEnum(Value.MT, "MT"); - GH("GH"), + public static final CountryEnum SL = new CountryEnum(Value.SL, "SL"); - GI("GI"), + public static final CountryEnum VI = new CountryEnum(Value.VI, "VI"); - GR("GR"), + public static final CountryEnum GG = new CountryEnum(Value.GG, "GG"); - GL("GL"), + public static final CountryEnum GH = new CountryEnum(Value.GH, "GH"); - GD("GD"), + public static final CountryEnum AQ = new CountryEnum(Value.AQ, "AQ"); - GP("GP"), + public static final CountryEnum AR = new CountryEnum(Value.AR, "AR"); - GU("GU"), + public static final CountryEnum CA = new CountryEnum(Value.CA, "CA"); - GT("GT"), + public static final CountryEnum ZA = new CountryEnum(Value.ZA, "ZA"); - GG("GG"), + public static final CountryEnum TJ = new CountryEnum(Value.TJ, "TJ"); - GN("GN"), + public static final CountryEnum ME = new CountryEnum(Value.ME, "ME"); - GW("GW"), + public static final CountryEnum TK = new CountryEnum(Value.TK, "TK"); - GY("GY"), + public static final CountryEnum MF = new CountryEnum(Value.MF, "MF"); - HT("HT"), + public static final CountryEnum UY = new CountryEnum(Value.UY, "UY"); - HM("HM"), + public static final CountryEnum UZ = new CountryEnum(Value.UZ, "UZ"); - VA("VA"), + public static final CountryEnum NU = new CountryEnum(Value.NU, "NU"); - HN("HN"), + public static final CountryEnum GP = new CountryEnum(Value.GP, "GP"); - HK("HK"), + public static final CountryEnum PE = new CountryEnum(Value.PE, "PE"); - HU("HU"), + public static final CountryEnum CI = new CountryEnum(Value.CI, "CI"); - IS("IS"), + public static final CountryEnum SC = new CountryEnum(Value.SC, "SC"); - IN("IN"), + public static final CountryEnum SZ = new CountryEnum(Value.SZ, "SZ"); - ID("ID"), + public static final CountryEnum LU = new CountryEnum(Value.LU, "LU"); - IR("IR"), + public static final CountryEnum TR = new CountryEnum(Value.TR, "TR"); - IQ("IQ"), + public static final CountryEnum MM = new CountryEnum(Value.MM, "MM"); - IE("IE"), + public static final CountryEnum NE = new CountryEnum(Value.NE, "NE"); - IM("IM"), + public static final CountryEnum GW = new CountryEnum(Value.GW, "GW"); - IL("IL"), + public static final CountryEnum PL = new CountryEnum(Value.PL, "PL"); - IT("IT"), + public static final CountryEnum BB = new CountryEnum(Value.BB, "BB"); - JM("JM"), + public static final CountryEnum BY = new CountryEnum(Value.BY, "BY"); - JP("JP"), + public static final CountryEnum RS = new CountryEnum(Value.RS, "RS"); - JE("JE"), + public static final CountryEnum KN = new CountryEnum(Value.KN, "KN"); - JO("JO"), + public static final CountryEnum SK = new CountryEnum(Value.SK, "SK"); - KZ("KZ"), + public static final CountryEnum TC = new CountryEnum(Value.TC, "TC"); - KE("KE"), + public static final CountryEnum TZ = new CountryEnum(Value.TZ, "TZ"); - KI("KI"), + public static final CountryEnum MU = new CountryEnum(Value.MU, "MU"); - KW("KW"), + public static final CountryEnum EC = new CountryEnum(Value.EC, "EC"); - KG("KG"), + public static final CountryEnum PR = new CountryEnum(Value.PR, "PR"); - LA("LA"), + public static final CountryEnum SO = new CountryEnum(Value.SO, "SO"); - LV("LV"), + public static final CountryEnum IN = new CountryEnum(Value.IN, "IN"); - LB("LB"), + public static final CountryEnum LK = new CountryEnum(Value.LK, "LK"); - LS("LS"), + public static final CountryEnum BJ = new CountryEnum(Value.BJ, "BJ"); - LR("LR"), + public static final CountryEnum MY = new CountryEnum(Value.MY, "MY"); - LY("LY"), + public static final CountryEnum CX = new CountryEnum(Value.CX, "CX"); - LI("LI"), + public static final CountryEnum ZW = new CountryEnum(Value.ZW, "ZW"); - LT("LT"), + public static final CountryEnum EG = new CountryEnum(Value.EG, "EG"); - LU("LU"), + public static final CountryEnum RE = new CountryEnum(Value.RE, "RE"); - MO("MO"), + public static final CountryEnum SS = new CountryEnum(Value.SS, "SS"); - MG("MG"), + public static final CountryEnum IR = new CountryEnum(Value.IR, "IR"); - MW("MW"), + public static final CountryEnum BN = new CountryEnum(Value.BN, "BN"); - MY("MY"), + public static final CountryEnum KE = new CountryEnum(Value.KE, "KE"); - MV("MV"), + public static final CountryEnum BR = new CountryEnum(Value.BR, "BR"); - ML("ML"), + public static final CountryEnum CL = new CountryEnum(Value.CL, "CL"); - MT("MT"), + public static final CountryEnum KI = new CountryEnum(Value.KI, "KI"); - MH("MH"), + public static final CountryEnum BV = new CountryEnum(Value.BV, "BV"); - MQ("MQ"), + public static final CountryEnum FI = new CountryEnum(Value.FI, "FI"); - MR("MR"), + public static final CountryEnum NF = new CountryEnum(Value.NF, "NF"); - MU("MU"), + public static final CountryEnum ES = new CountryEnum(Value.ES, "ES"); - YT("YT"), + public static final CountryEnum LC = new CountryEnum(Value.LC, "LC"); - MX("MX"), + public static final CountryEnum KM = new CountryEnum(Value.KM, "KM"); - FM("FM"), + public static final CountryEnum FM = new CountryEnum(Value.FM, "FM"); - MD("MD"), + public static final CountryEnum BZ = new CountryEnum(Value.BZ, "BZ"); - MC("MC"), + public static final CountryEnum TD = new CountryEnum(Value.TD, "TD"); - MN("MN"), + public static final CountryEnum HT = new CountryEnum(Value.HT, "HT"); - ME("ME"), + public static final CountryEnum HU = new CountryEnum(Value.HU, "HU"); - MS("MS"), + public static final CountryEnum US = new CountryEnum(Value.US, "US"); - MA("MA"), + public static final CountryEnum NO = new CountryEnum(Value.NO, "NO"); - MZ("MZ"), + public static final CountryEnum TH = new CountryEnum(Value.TH, "TH"); - MM("MM"), + public static final CountryEnum AT = new CountryEnum(Value.AT, "AT"); - NA("NA"), + public static final CountryEnum MD = new CountryEnum(Value.MD, "MD"); - NR("NR"), + public static final CountryEnum CC = new CountryEnum(Value.CC, "CC"); - NP("NP"), + public static final CountryEnum NR = new CountryEnum(Value.NR, "NR"); - NL("NL"), + public static final CountryEnum CD = new CountryEnum(Value.CD, "CD"); - NC("NC"), + public static final CountryEnum GN = new CountryEnum(Value.GN, "GN"); - NZ("NZ"), + public static final CountryEnum TL = new CountryEnum(Value.TL, "TL"); - NI("NI"), + public static final CountryEnum TM = new CountryEnum(Value.TM, "TM"); - NE("NE"), + public static final CountryEnum AX = new CountryEnum(Value.AX, "AX"); - NG("NG"), + public static final CountryEnum MH = new CountryEnum(Value.MH, "MH"); - NU("NU"), + public static final CountryEnum CG = new CountryEnum(Value.CG, "CG"); - NF("NF"), + public static final CountryEnum CH = new CountryEnum(Value.CH, "CH"); - KP("KP"), + public static final CountryEnum AD = new CountryEnum(Value.AD, "AD"); - MK("MK"), + public static final CountryEnum PF = new CountryEnum(Value.PF, "PF"); - MP("MP"), + public static final CountryEnum LS = new CountryEnum(Value.LS, "LS"); - NO("NO"), + public static final CountryEnum BS = new CountryEnum(Value.BS, "BS"); - OM("OM"), + public static final CountryEnum JP = new CountryEnum(Value.JP, "JP"); - PK("PK"), + public static final CountryEnum NC = new CountryEnum(Value.NC, "NC"); - PW("PW"), + public static final CountryEnum CK = new CountryEnum(Value.CK, "CK"); - PS("PS"), + public static final CountryEnum NZ = new CountryEnum(Value.NZ, "NZ"); - PA("PA"), + public static final CountryEnum DZ = new CountryEnum(Value.DZ, "DZ"); - PG("PG"), + public static final CountryEnum HM = new CountryEnum(Value.HM, "HM"); - PY("PY"), + public static final CountryEnum IE = new CountryEnum(Value.IE, "IE"); - PE("PE"), + public static final CountryEnum TT = new CountryEnum(Value.TT, "TT"); - PH("PH"), + public static final CountryEnum BW = new CountryEnum(Value.BW, "BW"); - PN("PN"), + public static final CountryEnum NG = new CountryEnum(Value.NG, "NG"); - PL("PL"), + public static final CountryEnum CO = new CountryEnum(Value.CO, "CO"); - PT("PT"), + public static final CountryEnum GB = new CountryEnum(Value.GB, "GB"); - PR("PR"), + public static final CountryEnum AL = new CountryEnum(Value.AL, "AL"); - QA("QA"), + public static final CountryEnum PN = new CountryEnum(Value.PN, "PN"); - RE("RE"), + public static final CountryEnum GF = new CountryEnum(Value.GF, "GF"); - RO("RO"), + public static final CountryEnum RU = new CountryEnum(Value.RU, "RU"); - RU("RU"), + public static final CountryEnum BG = new CountryEnum(Value.BG, "BG"); - RW("RW"), + public static final CountryEnum SN = new CountryEnum(Value.SN, "SN"); - BL("BL"), + public static final CountryEnum CU = new CountryEnum(Value.CU, "CU"); - SH("SH"), + public static final CountryEnum FR = new CountryEnum(Value.FR, "FR"); - KN("KN"), + public static final CountryEnum MX = new CountryEnum(Value.MX, "MX"); - LC("LC"), + public static final CountryEnum MZ = new CountryEnum(Value.MZ, "MZ"); - MF("MF"), + public static final CountryEnum IQ = new CountryEnum(Value.IQ, "IQ"); - PM("PM"), + public static final CountryEnum PW = new CountryEnum(Value.PW, "PW"); - VC("VC"), + public static final CountryEnum BM = new CountryEnum(Value.BM, "BM"); - WS("WS"), + public static final CountryEnum IS = new CountryEnum(Value.IS, "IS"); - SM("SM"), + public static final CountryEnum PY = new CountryEnum(Value.PY, "PY"); - ST("ST"), + public static final CountryEnum BO = new CountryEnum(Value.BO, "BO"); - SA("SA"), + public static final CountryEnum SV = new CountryEnum(Value.SV, "SV"); - SN("SN"), + public static final CountryEnum LR = new CountryEnum(Value.LR, "LR"); - RS("RS"), + public static final CountryEnum NA = new CountryEnum(Value.NA, "NA"); - SC("SC"), + public static final CountryEnum SX = new CountryEnum(Value.SX, "SX"); - SL("SL"), + public static final CountryEnum GR = new CountryEnum(Value.GR, "GR"); - SG("SG"), + public static final CountryEnum UG = new CountryEnum(Value.UG, "UG"); - SX("SX"), + public static final CountryEnum PG = new CountryEnum(Value.PG, "PG"); - SK("SK"), + public static final CountryEnum AE = new CountryEnum(Value.AE, "AE"); - SI("SI"), + public static final CountryEnum GT = new CountryEnum(Value.GT, "GT"); - SB("SB"), + public static final CountryEnum AG = new CountryEnum(Value.AG, "AG"); - SO("SO"), + public static final CountryEnum MP = new CountryEnum(Value.MP, "MP"); - ZA("ZA"), + public static final CountryEnum SH = new CountryEnum(Value.SH, "SH"); - GS("GS"), + public static final CountryEnum UM = new CountryEnum(Value.UM, "UM"); - KR("KR"), + public static final CountryEnum VE = new CountryEnum(Value.VE, "VE"); - SS("SS"), + public static final CountryEnum MR = new CountryEnum(Value.MR, "MR"); - ES("ES"), + public static final CountryEnum AM = new CountryEnum(Value.AM, "AM"); - LK("LK"), + public static final CountryEnum GE = new CountryEnum(Value.GE, "GE"); - SD("SD"), + public static final CountryEnum VG = new CountryEnum(Value.VG, "VG"); - SR("SR"), + public static final CountryEnum BE = new CountryEnum(Value.BE, "BE"); - SJ("SJ"), + public static final CountryEnum RW = new CountryEnum(Value.RW, "RW"); - SE("SE"), + public static final CountryEnum TF = new CountryEnum(Value.TF, "TF"); - CH("CH"), + public static final CountryEnum KR = new CountryEnum(Value.KR, "KR"); - SY("SY"), + public static final CountryEnum DM = new CountryEnum(Value.DM, "DM"); - TW("TW"), + public static final CountryEnum MA = new CountryEnum(Value.MA, "MA"); - TJ("TJ"), + public static final CountryEnum TG = new CountryEnum(Value.TG, "TG"); - TZ("TZ"), + public static final CountryEnum NP = new CountryEnum(Value.NP, "NP"); - TH("TH"), + public static final CountryEnum GL = new CountryEnum(Value.GL, "GL"); - TL("TL"), + public static final CountryEnum WF = new CountryEnum(Value.WF, "WF"); - TG("TG"), + public static final CountryEnum AU = new CountryEnum(Value.AU, "AU"); - TK("TK"), + public static final CountryEnum PA = new CountryEnum(Value.PA, "PA"); - TO("TO"), + public static final CountryEnum KY = new CountryEnum(Value.KY, "KY"); - TT("TT"), + public static final CountryEnum CF = new CountryEnum(Value.CF, "CF"); - TN("TN"), + public static final CountryEnum KZ = new CountryEnum(Value.KZ, "KZ"); - TR("TR"), + public static final CountryEnum TN = new CountryEnum(Value.TN, "TN"); - TM("TM"), + public static final CountryEnum TO = new CountryEnum(Value.TO, "TO"); - TC("TC"), + public static final CountryEnum VU = new CountryEnum(Value.VU, "VU"); - TV("TV"), + public static final CountryEnum GS = new CountryEnum(Value.GS, "GS"); - UG("UG"), + public static final CountryEnum HK = new CountryEnum(Value.HK, "HK"); - UA("UA"), + public static final CountryEnum AF = new CountryEnum(Value.AF, "AF"); - AE("AE"), + public static final CountryEnum PH = new CountryEnum(Value.PH, "PH"); - GB("GB"), + public static final CountryEnum YT = new CountryEnum(Value.YT, "YT"); - UM("UM"), + public static final CountryEnum RO = new CountryEnum(Value.RO, "RO"); - US("US"), + public static final CountryEnum CM = new CountryEnum(Value.CM, "CM"); - UY("UY"), + public static final CountryEnum SG = new CountryEnum(Value.SG, "SG"); - UZ("UZ"), + public static final CountryEnum DE = new CountryEnum(Value.DE, "DE"); - VU("VU"), + public static final CountryEnum LB = new CountryEnum(Value.LB, "LB"); - VE("VE"), + public static final CountryEnum LY = new CountryEnum(Value.LY, "LY"); - VN("VN"), + public static final CountryEnum TV = new CountryEnum(Value.TV, "TV"); - VG("VG"), + public static final CountryEnum ET = new CountryEnum(Value.ET, "ET"); - VI("VI"), + public static final CountryEnum DO = new CountryEnum(Value.DO, "DO"); - WF("WF"), + public static final CountryEnum MQ = new CountryEnum(Value.MQ, "MQ"); - EH("EH"), + public static final CountryEnum NI = new CountryEnum(Value.NI, "NI"); - YE("YE"), + public static final CountryEnum GD = new CountryEnum(Value.GD, "GD"); - ZM("ZM"), + public static final CountryEnum BF = new CountryEnum(Value.BF, "BF"); - ZW("ZW"); + public static final CountryEnum YE = new CountryEnum(Value.YE, "YE"); - private final String value; + private final Value value; - CountryEnum(String value) { + private final String string; + + CountryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CountryEnum && this.string.equals(((CountryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IL: + return visitor.visitIl(); + case LI: + return visitor.visitLi(); + case BH: + return visitor.visitBh(); + case MW: + return visitor.visitMw(); + case CV: + return visitor.visitCv(); + case EE: + return visitor.visitEe(); + case PT: + return visitor.visitPt(); + case VN: + return visitor.visitVn(); + case BL: + return visitor.visitBl(); + case CZ: + return visitor.visitCz(); + case IT: + return visitor.visitIt(); + case SY: + return visitor.visitSy(); + case KG: + return visitor.visitKg(); + case BT: + return visitor.visitBt(); + case ID: + return visitor.visitId(); + case QA: + return visitor.visitQa(); + case HN: + return visitor.visitHn(); + case LA: + return visitor.visitLa(); + case CN: + return visitor.visitCn(); + case ZM: + return visitor.visitZm(); + case FK: + return visitor.visitFk(); + case TW: + return visitor.visitTw(); + case HR: + return visitor.visitHr(); + case CR: + return visitor.visitCr(); + case FO: + return visitor.visitFo(); + case NL: + return visitor.visitNl(); + case AO: + return visitor.visitAo(); + case DK: + return visitor.visitDk(); + case GI: + return visitor.visitGi(); + case JE: + return visitor.visitJe(); + case AS: + return visitor.visitAs(); + case MC: + return visitor.visitMc(); + case GM: + return visitor.visitGm(); + case KW: + return visitor.visitKw(); + case AW: + return visitor.visitAw(); + case MG: + return visitor.visitMg(); + case GQ: + return visitor.visitGq(); + case JM: + return visitor.visitJm(); + case SA: + return visitor.visitSa(); + case MK: + return visitor.visitMk(); + case KH: + return visitor.visitKh(); + case GU: + return visitor.visitGu(); + case SE: + return visitor.visitSe(); + case ER: + return visitor.visitEr(); + case MO: + return visitor.visitMo(); + case FJ: + return visitor.visitFj(); + case GY: + return visitor.visitGy(); + case SI: + return visitor.visitSi(); + case WS: + return visitor.visitWs(); + case BD: + return visitor.visitBd(); + case MS: + return visitor.visitMs(); + case KP: + return visitor.visitKp(); + case SM: + return visitor.visitSm(); + case MV: + return visitor.visitMv(); + case IM: + return visitor.visitIm(); + case PS: + return visitor.visitPs(); + case BI: + return visitor.visitBi(); + case IO: + return visitor.visitIo(); + case CW: + return visitor.visitCw(); + case SR: + return visitor.visitSr(); + case CY: + return visitor.visitCy(); + case UA: + return visitor.visitUa(); + case EH: + return visitor.visitEh(); + case ST: + return visitor.visitSt(); + case OM: + return visitor.visitOm(); + case BQ: + return visitor.visitBq(); + case AZ: + return visitor.visitAz(); + case SB: + return visitor.visitSb(); + case JO: + return visitor.visitJo(); + case LT: + return visitor.visitLt(); + case ML: + return visitor.visitMl(); + case SD: + return visitor.visitSd(); + case VA: + return visitor.visitVa(); + case LV: + return visitor.visitLv(); + case MN: + return visitor.visitMn(); + case PK: + return visitor.visitPk(); + case VC: + return visitor.visitVc(); + case AI: + return visitor.visitAi(); + case GA: + return visitor.visitGa(); + case BA: + return visitor.visitBa(); + case PM: + return visitor.visitPm(); + case SJ: + return visitor.visitSj(); + case DJ: + return visitor.visitDj(); + case MT: + return visitor.visitMt(); + case SL: + return visitor.visitSl(); + case VI: + return visitor.visitVi(); + case GG: + return visitor.visitGg(); + case GH: + return visitor.visitGh(); + case AQ: + return visitor.visitAq(); + case AR: + return visitor.visitAr(); + case CA: + return visitor.visitCa(); + case ZA: + return visitor.visitZa(); + case TJ: + return visitor.visitTj(); + case ME: + return visitor.visitMe(); + case TK: + return visitor.visitTk(); + case MF: + return visitor.visitMf(); + case UY: + return visitor.visitUy(); + case UZ: + return visitor.visitUz(); + case NU: + return visitor.visitNu(); + case GP: + return visitor.visitGp(); + case PE: + return visitor.visitPe(); + case CI: + return visitor.visitCi(); + case SC: + return visitor.visitSc(); + case SZ: + return visitor.visitSz(); + case LU: + return visitor.visitLu(); + case TR: + return visitor.visitTr(); + case MM: + return visitor.visitMm(); + case NE: + return visitor.visitNe(); + case GW: + return visitor.visitGw(); + case PL: + return visitor.visitPl(); + case BB: + return visitor.visitBb(); + case BY: + return visitor.visitBy(); + case RS: + return visitor.visitRs(); + case KN: + return visitor.visitKn(); + case SK: + return visitor.visitSk(); + case TC: + return visitor.visitTc(); + case TZ: + return visitor.visitTz(); + case MU: + return visitor.visitMu(); + case EC: + return visitor.visitEc(); + case PR: + return visitor.visitPr(); + case SO: + return visitor.visitSo(); + case IN: + return visitor.visitIn(); + case LK: + return visitor.visitLk(); + case BJ: + return visitor.visitBj(); + case MY: + return visitor.visitMy(); + case CX: + return visitor.visitCx(); + case ZW: + return visitor.visitZw(); + case EG: + return visitor.visitEg(); + case RE: + return visitor.visitRe(); + case SS: + return visitor.visitSs(); + case IR: + return visitor.visitIr(); + case BN: + return visitor.visitBn(); + case KE: + return visitor.visitKe(); + case BR: + return visitor.visitBr(); + case CL: + return visitor.visitCl(); + case KI: + return visitor.visitKi(); + case BV: + return visitor.visitBv(); + case FI: + return visitor.visitFi(); + case NF: + return visitor.visitNf(); + case ES: + return visitor.visitEs(); + case LC: + return visitor.visitLc(); + case KM: + return visitor.visitKm(); + case FM: + return visitor.visitFm(); + case BZ: + return visitor.visitBz(); + case TD: + return visitor.visitTd(); + case HT: + return visitor.visitHt(); + case HU: + return visitor.visitHu(); + case US: + return visitor.visitUs(); + case NO: + return visitor.visitNo(); + case TH: + return visitor.visitTh(); + case AT: + return visitor.visitAt(); + case MD: + return visitor.visitMd(); + case CC: + return visitor.visitCc(); + case NR: + return visitor.visitNr(); + case CD: + return visitor.visitCd(); + case GN: + return visitor.visitGn(); + case TL: + return visitor.visitTl(); + case TM: + return visitor.visitTm(); + case AX: + return visitor.visitAx(); + case MH: + return visitor.visitMh(); + case CG: + return visitor.visitCg(); + case CH: + return visitor.visitCh(); + case AD: + return visitor.visitAd(); + case PF: + return visitor.visitPf(); + case LS: + return visitor.visitLs(); + case BS: + return visitor.visitBs(); + case JP: + return visitor.visitJp(); + case NC: + return visitor.visitNc(); + case CK: + return visitor.visitCk(); + case NZ: + return visitor.visitNz(); + case DZ: + return visitor.visitDz(); + case HM: + return visitor.visitHm(); + case IE: + return visitor.visitIe(); + case TT: + return visitor.visitTt(); + case BW: + return visitor.visitBw(); + case NG: + return visitor.visitNg(); + case CO: + return visitor.visitCo(); + case GB: + return visitor.visitGb(); + case AL: + return visitor.visitAl(); + case PN: + return visitor.visitPn(); + case GF: + return visitor.visitGf(); + case RU: + return visitor.visitRu(); + case BG: + return visitor.visitBg(); + case SN: + return visitor.visitSn(); + case CU: + return visitor.visitCu(); + case FR: + return visitor.visitFr(); + case MX: + return visitor.visitMx(); + case MZ: + return visitor.visitMz(); + case IQ: + return visitor.visitIq(); + case PW: + return visitor.visitPw(); + case BM: + return visitor.visitBm(); + case IS: + return visitor.visitIs(); + case PY: + return visitor.visitPy(); + case BO: + return visitor.visitBo(); + case SV: + return visitor.visitSv(); + case LR: + return visitor.visitLr(); + case NA: + return visitor.visitNa(); + case SX: + return visitor.visitSx(); + case GR: + return visitor.visitGr(); + case UG: + return visitor.visitUg(); + case PG: + return visitor.visitPg(); + case AE: + return visitor.visitAe(); + case GT: + return visitor.visitGt(); + case AG: + return visitor.visitAg(); + case MP: + return visitor.visitMp(); + case SH: + return visitor.visitSh(); + case UM: + return visitor.visitUm(); + case VE: + return visitor.visitVe(); + case MR: + return visitor.visitMr(); + case AM: + return visitor.visitAm(); + case GE: + return visitor.visitGe(); + case VG: + return visitor.visitVg(); + case BE: + return visitor.visitBe(); + case RW: + return visitor.visitRw(); + case TF: + return visitor.visitTf(); + case KR: + return visitor.visitKr(); + case DM: + return visitor.visitDm(); + case MA: + return visitor.visitMa(); + case TG: + return visitor.visitTg(); + case NP: + return visitor.visitNp(); + case GL: + return visitor.visitGl(); + case WF: + return visitor.visitWf(); + case AU: + return visitor.visitAu(); + case PA: + return visitor.visitPa(); + case KY: + return visitor.visitKy(); + case CF: + return visitor.visitCf(); + case KZ: + return visitor.visitKz(); + case TN: + return visitor.visitTn(); + case TO: + return visitor.visitTo(); + case VU: + return visitor.visitVu(); + case GS: + return visitor.visitGs(); + case HK: + return visitor.visitHk(); + case AF: + return visitor.visitAf(); + case PH: + return visitor.visitPh(); + case YT: + return visitor.visitYt(); + case RO: + return visitor.visitRo(); + case CM: + return visitor.visitCm(); + case SG: + return visitor.visitSg(); + case DE: + return visitor.visitDe(); + case LB: + return visitor.visitLb(); + case LY: + return visitor.visitLy(); + case TV: + return visitor.visitTv(); + case ET: + return visitor.visitEt(); + case DO: + return visitor.visitDo(); + case MQ: + return visitor.visitMq(); + case NI: + return visitor.visitNi(); + case GD: + return visitor.visitGd(); + case BF: + return visitor.visitBf(); + case YE: + return visitor.visitYe(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CountryEnum valueOf(String value) { + switch (value) { + case "IL": + return IL; + case "LI": + return LI; + case "BH": + return BH; + case "MW": + return MW; + case "CV": + return CV; + case "EE": + return EE; + case "PT": + return PT; + case "VN": + return VN; + case "BL": + return BL; + case "CZ": + return CZ; + case "IT": + return IT; + case "SY": + return SY; + case "KG": + return KG; + case "BT": + return BT; + case "ID": + return ID; + case "QA": + return QA; + case "HN": + return HN; + case "LA": + return LA; + case "CN": + return CN; + case "ZM": + return ZM; + case "FK": + return FK; + case "TW": + return TW; + case "HR": + return HR; + case "CR": + return CR; + case "FO": + return FO; + case "NL": + return NL; + case "AO": + return AO; + case "DK": + return DK; + case "GI": + return GI; + case "JE": + return JE; + case "AS": + return AS; + case "MC": + return MC; + case "GM": + return GM; + case "KW": + return KW; + case "AW": + return AW; + case "MG": + return MG; + case "GQ": + return GQ; + case "JM": + return JM; + case "SA": + return SA; + case "MK": + return MK; + case "KH": + return KH; + case "GU": + return GU; + case "SE": + return SE; + case "ER": + return ER; + case "MO": + return MO; + case "FJ": + return FJ; + case "GY": + return GY; + case "SI": + return SI; + case "WS": + return WS; + case "BD": + return BD; + case "MS": + return MS; + case "KP": + return KP; + case "SM": + return SM; + case "MV": + return MV; + case "IM": + return IM; + case "PS": + return PS; + case "BI": + return BI; + case "IO": + return IO; + case "CW": + return CW; + case "SR": + return SR; + case "CY": + return CY; + case "UA": + return UA; + case "EH": + return EH; + case "ST": + return ST; + case "OM": + return OM; + case "BQ": + return BQ; + case "AZ": + return AZ; + case "SB": + return SB; + case "JO": + return JO; + case "LT": + return LT; + case "ML": + return ML; + case "SD": + return SD; + case "VA": + return VA; + case "LV": + return LV; + case "MN": + return MN; + case "PK": + return PK; + case "VC": + return VC; + case "AI": + return AI; + case "GA": + return GA; + case "BA": + return BA; + case "PM": + return PM; + case "SJ": + return SJ; + case "DJ": + return DJ; + case "MT": + return MT; + case "SL": + return SL; + case "VI": + return VI; + case "GG": + return GG; + case "GH": + return GH; + case "AQ": + return AQ; + case "AR": + return AR; + case "CA": + return CA; + case "ZA": + return ZA; + case "TJ": + return TJ; + case "ME": + return ME; + case "TK": + return TK; + case "MF": + return MF; + case "UY": + return UY; + case "UZ": + return UZ; + case "NU": + return NU; + case "GP": + return GP; + case "PE": + return PE; + case "CI": + return CI; + case "SC": + return SC; + case "SZ": + return SZ; + case "LU": + return LU; + case "TR": + return TR; + case "MM": + return MM; + case "NE": + return NE; + case "GW": + return GW; + case "PL": + return PL; + case "BB": + return BB; + case "BY": + return BY; + case "RS": + return RS; + case "KN": + return KN; + case "SK": + return SK; + case "TC": + return TC; + case "TZ": + return TZ; + case "MU": + return MU; + case "EC": + return EC; + case "PR": + return PR; + case "SO": + return SO; + case "IN": + return IN; + case "LK": + return LK; + case "BJ": + return BJ; + case "MY": + return MY; + case "CX": + return CX; + case "ZW": + return ZW; + case "EG": + return EG; + case "RE": + return RE; + case "SS": + return SS; + case "IR": + return IR; + case "BN": + return BN; + case "KE": + return KE; + case "BR": + return BR; + case "CL": + return CL; + case "KI": + return KI; + case "BV": + return BV; + case "FI": + return FI; + case "NF": + return NF; + case "ES": + return ES; + case "LC": + return LC; + case "KM": + return KM; + case "FM": + return FM; + case "BZ": + return BZ; + case "TD": + return TD; + case "HT": + return HT; + case "HU": + return HU; + case "US": + return US; + case "NO": + return NO; + case "TH": + return TH; + case "AT": + return AT; + case "MD": + return MD; + case "CC": + return CC; + case "NR": + return NR; + case "CD": + return CD; + case "GN": + return GN; + case "TL": + return TL; + case "TM": + return TM; + case "AX": + return AX; + case "MH": + return MH; + case "CG": + return CG; + case "CH": + return CH; + case "AD": + return AD; + case "PF": + return PF; + case "LS": + return LS; + case "BS": + return BS; + case "JP": + return JP; + case "NC": + return NC; + case "CK": + return CK; + case "NZ": + return NZ; + case "DZ": + return DZ; + case "HM": + return HM; + case "IE": + return IE; + case "TT": + return TT; + case "BW": + return BW; + case "NG": + return NG; + case "CO": + return CO; + case "GB": + return GB; + case "AL": + return AL; + case "PN": + return PN; + case "GF": + return GF; + case "RU": + return RU; + case "BG": + return BG; + case "SN": + return SN; + case "CU": + return CU; + case "FR": + return FR; + case "MX": + return MX; + case "MZ": + return MZ; + case "IQ": + return IQ; + case "PW": + return PW; + case "BM": + return BM; + case "IS": + return IS; + case "PY": + return PY; + case "BO": + return BO; + case "SV": + return SV; + case "LR": + return LR; + case "NA": + return NA; + case "SX": + return SX; + case "GR": + return GR; + case "UG": + return UG; + case "PG": + return PG; + case "AE": + return AE; + case "GT": + return GT; + case "AG": + return AG; + case "MP": + return MP; + case "SH": + return SH; + case "UM": + return UM; + case "VE": + return VE; + case "MR": + return MR; + case "AM": + return AM; + case "GE": + return GE; + case "VG": + return VG; + case "BE": + return BE; + case "RW": + return RW; + case "TF": + return TF; + case "KR": + return KR; + case "DM": + return DM; + case "MA": + return MA; + case "TG": + return TG; + case "NP": + return NP; + case "GL": + return GL; + case "WF": + return WF; + case "AU": + return AU; + case "PA": + return PA; + case "KY": + return KY; + case "CF": + return CF; + case "KZ": + return KZ; + case "TN": + return TN; + case "TO": + return TO; + case "VU": + return VU; + case "GS": + return GS; + case "HK": + return HK; + case "AF": + return AF; + case "PH": + return PH; + case "YT": + return YT; + case "RO": + return RO; + case "CM": + return CM; + case "SG": + return SG; + case "DE": + return DE; + case "LB": + return LB; + case "LY": + return LY; + case "TV": + return TV; + case "ET": + return ET; + case "DO": + return DO; + case "MQ": + return MQ; + case "NI": + return NI; + case "GD": + return GD; + case "BF": + return BF; + case "YE": + return YE; + default: + return new CountryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + AF, + + AX, + + AL, + + DZ, + + AS, + + AD, + + AO, + + AI, + + AQ, + + AG, + + AR, + + AM, + + AW, + + AU, + + AT, + + AZ, + + BS, + + BH, + + BD, + + BB, + + BY, + + BE, + + BZ, + + BJ, + + BM, + + BT, + + BO, + + BQ, + + BA, + + BW, + + BV, + + BR, + + IO, + + BN, + + BG, + + BF, + + BI, + + CV, + + KH, + + CM, + + CA, + + KY, + + CF, + + TD, + + CL, + + CN, + + CX, + + CC, + + CO, + + KM, + + CG, + + CD, + + CK, + + CR, + + CI, + + HR, + + CU, + + CW, + + CY, + + CZ, + + DK, + + DJ, + + DM, + + DO, + + EC, + + EG, + + SV, + + GQ, + + ER, + + EE, + + SZ, + + ET, + + FK, + + FO, + + FJ, + + FI, + + FR, + + GF, + + PF, + + TF, + + GA, + + GM, + + GE, + + DE, + + GH, + + GI, + + GR, + + GL, + + GD, + + GP, + + GU, + + GT, + + GG, + + GN, + + GW, + + GY, + + HT, + + HM, + + VA, + + HN, + + HK, + + HU, + + IS, + + IN, + + ID, + + IR, + + IQ, + + IE, + + IM, + + IL, + + IT, + + JM, + + JP, + + JE, + + JO, + + KZ, + + KE, + + KI, + + KW, + + KG, + + LA, + + LV, + + LB, + + LS, + + LR, + + LY, + + LI, + + LT, + + LU, + + MO, + + MG, + + MW, + + MY, + + MV, + + ML, + + MT, + + MH, + + MQ, + + MR, + + MU, + + YT, + + MX, + + FM, + + MD, + + MC, + + MN, + + ME, + + MS, + + MA, + + MZ, + + MM, + + NA, + + NR, + + NP, + + NL, + + NC, + + NZ, + + NI, + + NE, + + NG, + + NU, + + NF, + + KP, + + MK, + + MP, + + NO, + + OM, + + PK, + + PW, + + PS, + + PA, + + PG, + + PY, + + PE, + + PH, + + PN, + + PL, + + PT, + + PR, + + QA, + + RE, + + RO, + + RU, + + RW, + + BL, + + SH, + + KN, + + LC, + + MF, + + PM, + + VC, + + WS, + + SM, + + ST, + + SA, + + SN, + + RS, + + SC, + + SL, + + SG, + + SX, + + SK, + + SI, + + SB, + + SO, + + ZA, + + GS, + + KR, + + SS, + + ES, + + LK, + + SD, + + SR, + + SJ, + + SE, + + CH, + + SY, + + TW, + + TJ, + + TZ, + + TH, + + TL, + + TG, + + TK, + + TO, + + TT, + + TN, + + TR, + + TM, + + TC, + + TV, + + UG, + + UA, + + AE, + + GB, + + UM, + + US, + + UY, + + UZ, + + VU, + + VE, + + VN, + + VG, + + VI, + + WF, + + EH, + + YE, + + ZM, + + ZW, + + UNKNOWN + } + + public interface Visitor { + T visitAf(); + + T visitAx(); + + T visitAl(); + + T visitDz(); + + T visitAs(); + + T visitAd(); + + T visitAo(); + + T visitAi(); + + T visitAq(); + + T visitAg(); + + T visitAr(); + + T visitAm(); + + T visitAw(); + + T visitAu(); + + T visitAt(); + + T visitAz(); + + T visitBs(); + + T visitBh(); + + T visitBd(); + + T visitBb(); + + T visitBy(); + + T visitBe(); + + T visitBz(); + + T visitBj(); + + T visitBm(); + + T visitBt(); + + T visitBo(); + + T visitBq(); + + T visitBa(); + + T visitBw(); + + T visitBv(); + + T visitBr(); + + T visitIo(); + + T visitBn(); + + T visitBg(); + + T visitBf(); + + T visitBi(); + + T visitCv(); + + T visitKh(); + + T visitCm(); + + T visitCa(); + + T visitKy(); + + T visitCf(); + + T visitTd(); + + T visitCl(); + + T visitCn(); + + T visitCx(); + + T visitCc(); + + T visitCo(); + + T visitKm(); + + T visitCg(); + + T visitCd(); + + T visitCk(); + + T visitCr(); + + T visitCi(); + + T visitHr(); + + T visitCu(); + + T visitCw(); + + T visitCy(); + + T visitCz(); + + T visitDk(); + + T visitDj(); + + T visitDm(); + + T visitDo(); + + T visitEc(); + + T visitEg(); + + T visitSv(); + + T visitGq(); + + T visitEr(); + + T visitEe(); + + T visitSz(); + + T visitEt(); + + T visitFk(); + + T visitFo(); + + T visitFj(); + + T visitFi(); + + T visitFr(); + + T visitGf(); + + T visitPf(); + + T visitTf(); + + T visitGa(); + + T visitGm(); + + T visitGe(); + + T visitDe(); + + T visitGh(); + + T visitGi(); + + T visitGr(); + + T visitGl(); + + T visitGd(); + + T visitGp(); + + T visitGu(); + + T visitGt(); + + T visitGg(); + + T visitGn(); + + T visitGw(); + + T visitGy(); + + T visitHt(); + + T visitHm(); + + T visitVa(); + + T visitHn(); + + T visitHk(); + + T visitHu(); + + T visitIs(); + + T visitIn(); + + T visitId(); + + T visitIr(); + + T visitIq(); + + T visitIe(); + + T visitIm(); + + T visitIl(); + + T visitIt(); + + T visitJm(); + + T visitJp(); + + T visitJe(); + + T visitJo(); + + T visitKz(); + + T visitKe(); + + T visitKi(); + + T visitKw(); + + T visitKg(); + + T visitLa(); + + T visitLv(); + + T visitLb(); + + T visitLs(); + + T visitLr(); + + T visitLy(); + + T visitLi(); + + T visitLt(); + + T visitLu(); + + T visitMo(); + + T visitMg(); + + T visitMw(); + + T visitMy(); + + T visitMv(); + + T visitMl(); + + T visitMt(); + + T visitMh(); + + T visitMq(); + + T visitMr(); + + T visitMu(); + + T visitYt(); + + T visitMx(); + + T visitFm(); + + T visitMd(); + + T visitMc(); + + T visitMn(); + + T visitMe(); + + T visitMs(); + + T visitMa(); + + T visitMz(); + + T visitMm(); + + T visitNa(); + + T visitNr(); + + T visitNp(); + + T visitNl(); + + T visitNc(); + + T visitNz(); + + T visitNi(); + + T visitNe(); + + T visitNg(); + + T visitNu(); + + T visitNf(); + + T visitKp(); + + T visitMk(); + + T visitMp(); + + T visitNo(); + + T visitOm(); + + T visitPk(); + + T visitPw(); + + T visitPs(); + + T visitPa(); + + T visitPg(); + + T visitPy(); + + T visitPe(); + + T visitPh(); + + T visitPn(); + + T visitPl(); + + T visitPt(); + + T visitPr(); + + T visitQa(); + + T visitRe(); + + T visitRo(); + + T visitRu(); + + T visitRw(); + + T visitBl(); + + T visitSh(); + + T visitKn(); + + T visitLc(); + + T visitMf(); + + T visitPm(); + + T visitVc(); + + T visitWs(); + + T visitSm(); + + T visitSt(); + + T visitSa(); + + T visitSn(); + + T visitRs(); + + T visitSc(); + + T visitSl(); + + T visitSg(); + + T visitSx(); + + T visitSk(); + + T visitSi(); + + T visitSb(); + + T visitSo(); + + T visitZa(); + + T visitGs(); + + T visitKr(); + + T visitSs(); + + T visitEs(); + + T visitLk(); + + T visitSd(); + + T visitSr(); + + T visitSj(); + + T visitSe(); + + T visitCh(); + + T visitSy(); + + T visitTw(); + + T visitTj(); + + T visitTz(); + + T visitTh(); + + T visitTl(); + + T visitTg(); + + T visitTk(); + + T visitTo(); + + T visitTt(); + + T visitTn(); + + T visitTr(); + + T visitTm(); + + T visitTc(); + + T visitTv(); + + T visitUg(); + + T visitUa(); + + T visitAe(); + + T visitGb(); + + T visitUm(); + + T visitUs(); + + T visitUy(); + + T visitUz(); + + T visitVu(); + + T visitVe(); + + T visitVn(); + + T visitVg(); + + T visitVi(); + + T visitWf(); + + T visitEh(); + + T visitYe(); + + T visitZm(); + + T visitZw(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EarningTypeEnum.java b/src/main/java/com/merge/api/hris/types/EarningTypeEnum.java index ef9a42090..2f2db689c 100644 --- a/src/main/java/com/merge/api/hris/types/EarningTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/EarningTypeEnum.java @@ -3,26 +3,101 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EarningTypeEnum { - SALARY("SALARY"), +public final class EarningTypeEnum { + public static final EarningTypeEnum SALARY = new EarningTypeEnum(Value.SALARY, "SALARY"); - REIMBURSEMENT("REIMBURSEMENT"), + public static final EarningTypeEnum OVERTIME = new EarningTypeEnum(Value.OVERTIME, "OVERTIME"); - OVERTIME("OVERTIME"), + public static final EarningTypeEnum REIMBURSEMENT = new EarningTypeEnum(Value.REIMBURSEMENT, "REIMBURSEMENT"); - BONUS("BONUS"); + public static final EarningTypeEnum BONUS = new EarningTypeEnum(Value.BONUS, "BONUS"); - private final String value; + private final Value value; - EarningTypeEnum(String value) { + private final String string; + + EarningTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EarningTypeEnum && this.string.equals(((EarningTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SALARY: + return visitor.visitSalary(); + case OVERTIME: + return visitor.visitOvertime(); + case REIMBURSEMENT: + return visitor.visitReimbursement(); + case BONUS: + return visitor.visitBonus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EarningTypeEnum valueOf(String value) { + switch (value) { + case "SALARY": + return SALARY; + case "OVERTIME": + return OVERTIME; + case "REIMBURSEMENT": + return REIMBURSEMENT; + case "BONUS": + return BONUS; + default: + return new EarningTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SALARY, + + REIMBURSEMENT, + + OVERTIME, + + BONUS, + + UNKNOWN + } + + public interface Visitor { + T visitSalary(); + + T visitReimbursement(); + + T visitOvertime(); + + T visitBonus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsListRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsListRequestExpandItem.java index e11acd3eb..914815521 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeePayrollRunsListRequestExpandItem { - EMPLOYEE("employee"), +public final class EmployeePayrollRunsListRequestExpandItem { + public static final EmployeePayrollRunsListRequestExpandItem PAYROLL_RUN = + new EmployeePayrollRunsListRequestExpandItem(Value.PAYROLL_RUN, "payroll_run"); - PAYROLL_RUN("payroll_run"); + public static final EmployeePayrollRunsListRequestExpandItem EMPLOYEE = + new EmployeePayrollRunsListRequestExpandItem(Value.EMPLOYEE, "employee"); - private final String value; + private final Value value; - EmployeePayrollRunsListRequestExpandItem(String value) { + private final String string; + + EmployeePayrollRunsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeePayrollRunsListRequestExpandItem + && this.string.equals(((EmployeePayrollRunsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAYROLL_RUN: + return visitor.visitPayrollRun(); + case EMPLOYEE: + return visitor.visitEmployee(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeePayrollRunsListRequestExpandItem valueOf(String value) { + switch (value) { + case "payroll_run": + return PAYROLL_RUN; + case "employee": + return EMPLOYEE; + default: + return new EmployeePayrollRunsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYEE, + + PAYROLL_RUN, + + UNKNOWN + } + + public interface Visitor { + T visitEmployee(); + + T visitPayrollRun(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsRetrieveRequestExpandItem.java index f8efa1c5b..d4d773672 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmployeePayrollRunsRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeePayrollRunsRetrieveRequestExpandItem { - EMPLOYEE("employee"), +public final class EmployeePayrollRunsRetrieveRequestExpandItem { + public static final EmployeePayrollRunsRetrieveRequestExpandItem PAYROLL_RUN = + new EmployeePayrollRunsRetrieveRequestExpandItem(Value.PAYROLL_RUN, "payroll_run"); - PAYROLL_RUN("payroll_run"); + public static final EmployeePayrollRunsRetrieveRequestExpandItem EMPLOYEE = + new EmployeePayrollRunsRetrieveRequestExpandItem(Value.EMPLOYEE, "employee"); - private final String value; + private final Value value; - EmployeePayrollRunsRetrieveRequestExpandItem(String value) { + private final String string; + + EmployeePayrollRunsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeePayrollRunsRetrieveRequestExpandItem + && this.string.equals(((EmployeePayrollRunsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAYROLL_RUN: + return visitor.visitPayrollRun(); + case EMPLOYEE: + return visitor.visitEmployee(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeePayrollRunsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "payroll_run": + return PAYROLL_RUN; + case "employee": + return EMPLOYEE; + default: + return new EmployeePayrollRunsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYEE, + + PAYROLL_RUN, + + UNKNOWN + } + + public interface Visitor { + T visitEmployee(); + + T visitPayrollRun(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesListRequestEmploymentStatus.java b/src/main/java/com/merge/api/hris/types/EmployeesListRequestEmploymentStatus.java index 4436217d9..487aeb328 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesListRequestEmploymentStatus.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesListRequestEmploymentStatus.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesListRequestEmploymentStatus { - ACTIVE("ACTIVE"), +public final class EmployeesListRequestEmploymentStatus { + public static final EmployeesListRequestEmploymentStatus ACTIVE = + new EmployeesListRequestEmploymentStatus(Value.ACTIVE, "ACTIVE"); - INACTIVE("INACTIVE"), + public static final EmployeesListRequestEmploymentStatus INACTIVE = + new EmployeesListRequestEmploymentStatus(Value.INACTIVE, "INACTIVE"); - PENDING("PENDING"); + public static final EmployeesListRequestEmploymentStatus PENDING = + new EmployeesListRequestEmploymentStatus(Value.PENDING, "PENDING"); - private final String value; + private final Value value; - EmployeesListRequestEmploymentStatus(String value) { + private final String string; + + EmployeesListRequestEmploymentStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesListRequestEmploymentStatus + && this.string.equals(((EmployeesListRequestEmploymentStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVE: + return visitor.visitActive(); + case INACTIVE: + return visitor.visitInactive(); + case PENDING: + return visitor.visitPending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesListRequestEmploymentStatus valueOf(String value) { + switch (value) { + case "ACTIVE": + return ACTIVE; + case "INACTIVE": + return INACTIVE; + case "PENDING": + return PENDING; + default: + return new EmployeesListRequestEmploymentStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + INACTIVE, + + PENDING, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitInactive(); + + T visitPending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesListRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmployeesListRequestExpandItem.java index e17e1ffec..00a734faa 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesListRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesListRequestExpandItem.java @@ -3,34 +3,149 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesListRequestExpandItem { - COMPANY("company"), +public final class EmployeesListRequestExpandItem { + public static final EmployeesListRequestExpandItem EMPLOYMENTS = + new EmployeesListRequestExpandItem(Value.EMPLOYMENTS, "employments"); - EMPLOYMENTS("employments"), + public static final EmployeesListRequestExpandItem HOME_LOCATION = + new EmployeesListRequestExpandItem(Value.HOME_LOCATION, "home_location"); - GROUPS("groups"), + public static final EmployeesListRequestExpandItem PAY_GROUP = + new EmployeesListRequestExpandItem(Value.PAY_GROUP, "pay_group"); - HOME_LOCATION("home_location"), + public static final EmployeesListRequestExpandItem MANAGER = + new EmployeesListRequestExpandItem(Value.MANAGER, "manager"); - MANAGER("manager"), + public static final EmployeesListRequestExpandItem WORK_LOCATION = + new EmployeesListRequestExpandItem(Value.WORK_LOCATION, "work_location"); - PAY_GROUP("pay_group"), + public static final EmployeesListRequestExpandItem COMPANY = + new EmployeesListRequestExpandItem(Value.COMPANY, "company"); - TEAM("team"), + public static final EmployeesListRequestExpandItem GROUPS = + new EmployeesListRequestExpandItem(Value.GROUPS, "groups"); - WORK_LOCATION("work_location"); + public static final EmployeesListRequestExpandItem TEAM = new EmployeesListRequestExpandItem(Value.TEAM, "team"); - private final String value; + private final Value value; - EmployeesListRequestExpandItem(String value) { + private final String string; + + EmployeesListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesListRequestExpandItem + && this.string.equals(((EmployeesListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EMPLOYMENTS: + return visitor.visitEmployments(); + case HOME_LOCATION: + return visitor.visitHomeLocation(); + case PAY_GROUP: + return visitor.visitPayGroup(); + case MANAGER: + return visitor.visitManager(); + case WORK_LOCATION: + return visitor.visitWorkLocation(); + case COMPANY: + return visitor.visitCompany(); + case GROUPS: + return visitor.visitGroups(); + case TEAM: + return visitor.visitTeam(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesListRequestExpandItem valueOf(String value) { + switch (value) { + case "employments": + return EMPLOYMENTS; + case "home_location": + return HOME_LOCATION; + case "pay_group": + return PAY_GROUP; + case "manager": + return MANAGER; + case "work_location": + return WORK_LOCATION; + case "company": + return COMPANY; + case "groups": + return GROUPS; + case "team": + return TEAM; + default: + return new EmployeesListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + EMPLOYMENTS, + + GROUPS, + + HOME_LOCATION, + + MANAGER, + + PAY_GROUP, + + TEAM, + + WORK_LOCATION, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitEmployments(); + + T visitGroups(); + + T visitHomeLocation(); + + T visitManager(); + + T visitPayGroup(); + + T visitTeam(); + + T visitWorkLocation(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesListRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/EmployeesListRequestRemoteFields.java index 186b694c2..c07cb2b05 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesListRequestRemoteFields.java @@ -3,48 +3,234 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesListRequestRemoteFields { - EMPLOYMENT_STATUS("employment_status"), +public final class EmployeesListRequestRemoteFields { + public static final EmployeesListRequestRemoteFields GENDER = + new EmployeesListRequestRemoteFields(Value.GENDER, "gender"); - EMPLOYMENT_STATUS_ETHNICITY("employment_status,ethnicity"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS = + new EmployeesListRequestRemoteFields( + Value.EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, "employment_status,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER("employment_status,ethnicity,gender"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesListRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + "employment_status,ethnicity,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS("employment_status,ethnicity,gender,marital_status"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_MARITAL_STATUS = + new EmployeesListRequestRemoteFields( + Value.EMPLOYMENT_STATUS_MARITAL_STATUS, "employment_status,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS("employment_status,ethnicity,marital_status"), + public static final EmployeesListRequestRemoteFields ETHNICITY_GENDER = + new EmployeesListRequestRemoteFields(Value.ETHNICITY_GENDER, "ethnicity,gender"); - EMPLOYMENT_STATUS_GENDER("employment_status,gender"), + public static final EmployeesListRequestRemoteFields GENDER_MARITAL_STATUS = + new EmployeesListRequestRemoteFields(Value.GENDER_MARITAL_STATUS, "gender,marital_status"); - EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS("employment_status,gender,marital_status"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY = + new EmployeesListRequestRemoteFields(Value.EMPLOYMENT_STATUS_ETHNICITY, "employment_status,ethnicity"); - EMPLOYMENT_STATUS_MARITAL_STATUS("employment_status,marital_status"), + public static final EmployeesListRequestRemoteFields ETHNICITY = + new EmployeesListRequestRemoteFields(Value.ETHNICITY, "ethnicity"); - ETHNICITY("ethnicity"), + public static final EmployeesListRequestRemoteFields MARITAL_STATUS = + new EmployeesListRequestRemoteFields(Value.MARITAL_STATUS, "marital_status"); - ETHNICITY_GENDER("ethnicity,gender"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS = + new EmployeesListRequestRemoteFields(Value.EMPLOYMENT_STATUS, "employment_status"); - ETHNICITY_GENDER_MARITAL_STATUS("ethnicity,gender,marital_status"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS = + new EmployeesListRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, "employment_status,ethnicity,marital_status"); - ETHNICITY_MARITAL_STATUS("ethnicity,marital_status"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_GENDER = + new EmployeesListRequestRemoteFields(Value.EMPLOYMENT_STATUS_GENDER, "employment_status,gender"); - GENDER("gender"), + public static final EmployeesListRequestRemoteFields ETHNICITY_MARITAL_STATUS = + new EmployeesListRequestRemoteFields(Value.ETHNICITY_MARITAL_STATUS, "ethnicity,marital_status"); - GENDER_MARITAL_STATUS("gender,marital_status"), + public static final EmployeesListRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_GENDER = + new EmployeesListRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER, "employment_status,ethnicity,gender"); - MARITAL_STATUS("marital_status"); + public static final EmployeesListRequestRemoteFields ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesListRequestRemoteFields( + Value.ETHNICITY_GENDER_MARITAL_STATUS, "ethnicity,gender,marital_status"); - private final String value; + private final Value value; - EmployeesListRequestRemoteFields(String value) { + private final String string; + + EmployeesListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesListRequestRemoteFields + && this.string.equals(((EmployeesListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityGenderMaritalStatus(); + case EMPLOYMENT_STATUS_MARITAL_STATUS: + return visitor.visitEmploymentStatusMaritalStatus(); + case ETHNICITY_GENDER: + return visitor.visitEthnicityGender(); + case GENDER_MARITAL_STATUS: + return visitor.visitGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY: + return visitor.visitEmploymentStatusEthnicity(); + case ETHNICITY: + return visitor.visitEthnicity(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); + case EMPLOYMENT_STATUS: + return visitor.visitEmploymentStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_GENDER: + return visitor.visitEmploymentStatusGender(); + case ETHNICITY_MARITAL_STATUS: + return visitor.visitEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER: + return visitor.visitEmploymentStatusEthnicityGender(); + case ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEthnicityGenderMaritalStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesListRequestRemoteFields valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "employment_status,gender,marital_status": + return EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS; + case "employment_status,ethnicity,gender,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS; + case "employment_status,marital_status": + return EMPLOYMENT_STATUS_MARITAL_STATUS; + case "ethnicity,gender": + return ETHNICITY_GENDER; + case "gender,marital_status": + return GENDER_MARITAL_STATUS; + case "employment_status,ethnicity": + return EMPLOYMENT_STATUS_ETHNICITY; + case "ethnicity": + return ETHNICITY; + case "marital_status": + return MARITAL_STATUS; + case "employment_status": + return EMPLOYMENT_STATUS; + case "employment_status,ethnicity,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS; + case "employment_status,gender": + return EMPLOYMENT_STATUS_GENDER; + case "ethnicity,marital_status": + return ETHNICITY_MARITAL_STATUS; + case "employment_status,ethnicity,gender": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER; + case "ethnicity,gender,marital_status": + return ETHNICITY_GENDER_MARITAL_STATUS; + default: + return new EmployeesListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, + + EMPLOYMENT_STATUS_GENDER, + + EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_MARITAL_STATUS, + + ETHNICITY, + + ETHNICITY_GENDER, + + ETHNICITY_GENDER_MARITAL_STATUS, + + ETHNICITY_MARITAL_STATUS, + + GENDER, + + GENDER_MARITAL_STATUS, + + MARITAL_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentStatus(); + + T visitEmploymentStatusEthnicity(); + + T visitEmploymentStatusEthnicityGender(); + + T visitEmploymentStatusEthnicityGenderMaritalStatus(); + + T visitEmploymentStatusEthnicityMaritalStatus(); + + T visitEmploymentStatusGender(); + + T visitEmploymentStatusGenderMaritalStatus(); + + T visitEmploymentStatusMaritalStatus(); + + T visitEthnicity(); + + T visitEthnicityGender(); + + T visitEthnicityGenderMaritalStatus(); + + T visitEthnicityMaritalStatus(); + + T visitGender(); + + T visitGenderMaritalStatus(); + + T visitMaritalStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/EmployeesListRequestShowEnumOrigins.java index 7eb503de9..56386ce95 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesListRequestShowEnumOrigins.java @@ -3,48 +3,234 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesListRequestShowEnumOrigins { - EMPLOYMENT_STATUS("employment_status"), +public final class EmployeesListRequestShowEnumOrigins { + public static final EmployeesListRequestShowEnumOrigins GENDER = + new EmployeesListRequestShowEnumOrigins(Value.GENDER, "gender"); - EMPLOYMENT_STATUS_ETHNICITY("employment_status,ethnicity"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, "employment_status,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER("employment_status,ethnicity,gender"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + "employment_status,ethnicity,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS("employment_status,ethnicity,gender,marital_status"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_MARITAL_STATUS, "employment_status,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS("employment_status,ethnicity,marital_status"), + public static final EmployeesListRequestShowEnumOrigins ETHNICITY_GENDER = + new EmployeesListRequestShowEnumOrigins(Value.ETHNICITY_GENDER, "ethnicity,gender"); - EMPLOYMENT_STATUS_GENDER("employment_status,gender"), + public static final EmployeesListRequestShowEnumOrigins GENDER_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins(Value.GENDER_MARITAL_STATUS, "gender,marital_status"); - EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS("employment_status,gender,marital_status"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY = + new EmployeesListRequestShowEnumOrigins(Value.EMPLOYMENT_STATUS_ETHNICITY, "employment_status,ethnicity"); - EMPLOYMENT_STATUS_MARITAL_STATUS("employment_status,marital_status"), + public static final EmployeesListRequestShowEnumOrigins ETHNICITY = + new EmployeesListRequestShowEnumOrigins(Value.ETHNICITY, "ethnicity"); - ETHNICITY("ethnicity"), + public static final EmployeesListRequestShowEnumOrigins MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins(Value.MARITAL_STATUS, "marital_status"); - ETHNICITY_GENDER("ethnicity,gender"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS = + new EmployeesListRequestShowEnumOrigins(Value.EMPLOYMENT_STATUS, "employment_status"); - ETHNICITY_GENDER_MARITAL_STATUS("ethnicity,gender,marital_status"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, "employment_status,ethnicity,marital_status"); - ETHNICITY_MARITAL_STATUS("ethnicity,marital_status"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_GENDER = + new EmployeesListRequestShowEnumOrigins(Value.EMPLOYMENT_STATUS_GENDER, "employment_status,gender"); - GENDER("gender"), + public static final EmployeesListRequestShowEnumOrigins ETHNICITY_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins(Value.ETHNICITY_MARITAL_STATUS, "ethnicity,marital_status"); - GENDER_MARITAL_STATUS("gender,marital_status"), + public static final EmployeesListRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_GENDER = + new EmployeesListRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER, "employment_status,ethnicity,gender"); - MARITAL_STATUS("marital_status"); + public static final EmployeesListRequestShowEnumOrigins ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesListRequestShowEnumOrigins( + Value.ETHNICITY_GENDER_MARITAL_STATUS, "ethnicity,gender,marital_status"); - private final String value; + private final Value value; - EmployeesListRequestShowEnumOrigins(String value) { + private final String string; + + EmployeesListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesListRequestShowEnumOrigins + && this.string.equals(((EmployeesListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityGenderMaritalStatus(); + case EMPLOYMENT_STATUS_MARITAL_STATUS: + return visitor.visitEmploymentStatusMaritalStatus(); + case ETHNICITY_GENDER: + return visitor.visitEthnicityGender(); + case GENDER_MARITAL_STATUS: + return visitor.visitGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY: + return visitor.visitEmploymentStatusEthnicity(); + case ETHNICITY: + return visitor.visitEthnicity(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); + case EMPLOYMENT_STATUS: + return visitor.visitEmploymentStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_GENDER: + return visitor.visitEmploymentStatusGender(); + case ETHNICITY_MARITAL_STATUS: + return visitor.visitEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER: + return visitor.visitEmploymentStatusEthnicityGender(); + case ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEthnicityGenderMaritalStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "employment_status,gender,marital_status": + return EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS; + case "employment_status,ethnicity,gender,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS; + case "employment_status,marital_status": + return EMPLOYMENT_STATUS_MARITAL_STATUS; + case "ethnicity,gender": + return ETHNICITY_GENDER; + case "gender,marital_status": + return GENDER_MARITAL_STATUS; + case "employment_status,ethnicity": + return EMPLOYMENT_STATUS_ETHNICITY; + case "ethnicity": + return ETHNICITY; + case "marital_status": + return MARITAL_STATUS; + case "employment_status": + return EMPLOYMENT_STATUS; + case "employment_status,ethnicity,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS; + case "employment_status,gender": + return EMPLOYMENT_STATUS_GENDER; + case "ethnicity,marital_status": + return ETHNICITY_MARITAL_STATUS; + case "employment_status,ethnicity,gender": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER; + case "ethnicity,gender,marital_status": + return ETHNICITY_GENDER_MARITAL_STATUS; + default: + return new EmployeesListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, + + EMPLOYMENT_STATUS_GENDER, + + EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_MARITAL_STATUS, + + ETHNICITY, + + ETHNICITY_GENDER, + + ETHNICITY_GENDER_MARITAL_STATUS, + + ETHNICITY_MARITAL_STATUS, + + GENDER, + + GENDER_MARITAL_STATUS, + + MARITAL_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentStatus(); + + T visitEmploymentStatusEthnicity(); + + T visitEmploymentStatusEthnicityGender(); + + T visitEmploymentStatusEthnicityGenderMaritalStatus(); + + T visitEmploymentStatusEthnicityMaritalStatus(); + + T visitEmploymentStatusGender(); + + T visitEmploymentStatusGenderMaritalStatus(); + + T visitEmploymentStatusMaritalStatus(); + + T visitEthnicity(); + + T visitEthnicityGender(); + + T visitEthnicityGenderMaritalStatus(); + + T visitEthnicityMaritalStatus(); + + T visitGender(); + + T visitGenderMaritalStatus(); + + T visitMaritalStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestExpandItem.java index ad48e22f4..59c26db81 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestExpandItem.java @@ -3,34 +3,150 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesRetrieveRequestExpandItem { - COMPANY("company"), +public final class EmployeesRetrieveRequestExpandItem { + public static final EmployeesRetrieveRequestExpandItem EMPLOYMENTS = + new EmployeesRetrieveRequestExpandItem(Value.EMPLOYMENTS, "employments"); - EMPLOYMENTS("employments"), + public static final EmployeesRetrieveRequestExpandItem HOME_LOCATION = + new EmployeesRetrieveRequestExpandItem(Value.HOME_LOCATION, "home_location"); - GROUPS("groups"), + public static final EmployeesRetrieveRequestExpandItem PAY_GROUP = + new EmployeesRetrieveRequestExpandItem(Value.PAY_GROUP, "pay_group"); - HOME_LOCATION("home_location"), + public static final EmployeesRetrieveRequestExpandItem MANAGER = + new EmployeesRetrieveRequestExpandItem(Value.MANAGER, "manager"); - MANAGER("manager"), + public static final EmployeesRetrieveRequestExpandItem WORK_LOCATION = + new EmployeesRetrieveRequestExpandItem(Value.WORK_LOCATION, "work_location"); - PAY_GROUP("pay_group"), + public static final EmployeesRetrieveRequestExpandItem COMPANY = + new EmployeesRetrieveRequestExpandItem(Value.COMPANY, "company"); - TEAM("team"), + public static final EmployeesRetrieveRequestExpandItem GROUPS = + new EmployeesRetrieveRequestExpandItem(Value.GROUPS, "groups"); - WORK_LOCATION("work_location"); + public static final EmployeesRetrieveRequestExpandItem TEAM = + new EmployeesRetrieveRequestExpandItem(Value.TEAM, "team"); - private final String value; + private final Value value; - EmployeesRetrieveRequestExpandItem(String value) { + private final String string; + + EmployeesRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesRetrieveRequestExpandItem + && this.string.equals(((EmployeesRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EMPLOYMENTS: + return visitor.visitEmployments(); + case HOME_LOCATION: + return visitor.visitHomeLocation(); + case PAY_GROUP: + return visitor.visitPayGroup(); + case MANAGER: + return visitor.visitManager(); + case WORK_LOCATION: + return visitor.visitWorkLocation(); + case COMPANY: + return visitor.visitCompany(); + case GROUPS: + return visitor.visitGroups(); + case TEAM: + return visitor.visitTeam(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "employments": + return EMPLOYMENTS; + case "home_location": + return HOME_LOCATION; + case "pay_group": + return PAY_GROUP; + case "manager": + return MANAGER; + case "work_location": + return WORK_LOCATION; + case "company": + return COMPANY; + case "groups": + return GROUPS; + case "team": + return TEAM; + default: + return new EmployeesRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + EMPLOYMENTS, + + GROUPS, + + HOME_LOCATION, + + MANAGER, + + PAY_GROUP, + + TEAM, + + WORK_LOCATION, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitEmployments(); + + T visitGroups(); + + T visitHomeLocation(); + + T visitManager(); + + T visitPayGroup(); + + T visitTeam(); + + T visitWorkLocation(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestRemoteFields.java index ce068c0dd..ba370be83 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestRemoteFields.java @@ -3,48 +3,234 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesRetrieveRequestRemoteFields { - EMPLOYMENT_STATUS("employment_status"), +public final class EmployeesRetrieveRequestRemoteFields { + public static final EmployeesRetrieveRequestRemoteFields GENDER = + new EmployeesRetrieveRequestRemoteFields(Value.GENDER, "gender"); - EMPLOYMENT_STATUS_ETHNICITY("employment_status,ethnicity"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields( + Value.EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, "employment_status,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER("employment_status,ethnicity,gender"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + "employment_status,ethnicity,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS("employment_status,ethnicity,gender,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields( + Value.EMPLOYMENT_STATUS_MARITAL_STATUS, "employment_status,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS("employment_status,ethnicity,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields ETHNICITY_GENDER = + new EmployeesRetrieveRequestRemoteFields(Value.ETHNICITY_GENDER, "ethnicity,gender"); - EMPLOYMENT_STATUS_GENDER("employment_status,gender"), + public static final EmployeesRetrieveRequestRemoteFields GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields(Value.GENDER_MARITAL_STATUS, "gender,marital_status"); - EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS("employment_status,gender,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY = + new EmployeesRetrieveRequestRemoteFields(Value.EMPLOYMENT_STATUS_ETHNICITY, "employment_status,ethnicity"); - EMPLOYMENT_STATUS_MARITAL_STATUS("employment_status,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields ETHNICITY = + new EmployeesRetrieveRequestRemoteFields(Value.ETHNICITY, "ethnicity"); - ETHNICITY("ethnicity"), + public static final EmployeesRetrieveRequestRemoteFields MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields(Value.MARITAL_STATUS, "marital_status"); - ETHNICITY_GENDER("ethnicity,gender"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS = + new EmployeesRetrieveRequestRemoteFields(Value.EMPLOYMENT_STATUS, "employment_status"); - ETHNICITY_GENDER_MARITAL_STATUS("ethnicity,gender,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, "employment_status,ethnicity,marital_status"); - ETHNICITY_MARITAL_STATUS("ethnicity,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_GENDER = + new EmployeesRetrieveRequestRemoteFields(Value.EMPLOYMENT_STATUS_GENDER, "employment_status,gender"); - GENDER("gender"), + public static final EmployeesRetrieveRequestRemoteFields ETHNICITY_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields(Value.ETHNICITY_MARITAL_STATUS, "ethnicity,marital_status"); - GENDER_MARITAL_STATUS("gender,marital_status"), + public static final EmployeesRetrieveRequestRemoteFields EMPLOYMENT_STATUS_ETHNICITY_GENDER = + new EmployeesRetrieveRequestRemoteFields( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER, "employment_status,ethnicity,gender"); - MARITAL_STATUS("marital_status"); + public static final EmployeesRetrieveRequestRemoteFields ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestRemoteFields( + Value.ETHNICITY_GENDER_MARITAL_STATUS, "ethnicity,gender,marital_status"); - private final String value; + private final Value value; - EmployeesRetrieveRequestRemoteFields(String value) { + private final String string; + + EmployeesRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesRetrieveRequestRemoteFields + && this.string.equals(((EmployeesRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityGenderMaritalStatus(); + case EMPLOYMENT_STATUS_MARITAL_STATUS: + return visitor.visitEmploymentStatusMaritalStatus(); + case ETHNICITY_GENDER: + return visitor.visitEthnicityGender(); + case GENDER_MARITAL_STATUS: + return visitor.visitGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY: + return visitor.visitEmploymentStatusEthnicity(); + case ETHNICITY: + return visitor.visitEthnicity(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); + case EMPLOYMENT_STATUS: + return visitor.visitEmploymentStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_GENDER: + return visitor.visitEmploymentStatusGender(); + case ETHNICITY_MARITAL_STATUS: + return visitor.visitEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER: + return visitor.visitEmploymentStatusEthnicityGender(); + case ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEthnicityGenderMaritalStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "employment_status,gender,marital_status": + return EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS; + case "employment_status,ethnicity,gender,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS; + case "employment_status,marital_status": + return EMPLOYMENT_STATUS_MARITAL_STATUS; + case "ethnicity,gender": + return ETHNICITY_GENDER; + case "gender,marital_status": + return GENDER_MARITAL_STATUS; + case "employment_status,ethnicity": + return EMPLOYMENT_STATUS_ETHNICITY; + case "ethnicity": + return ETHNICITY; + case "marital_status": + return MARITAL_STATUS; + case "employment_status": + return EMPLOYMENT_STATUS; + case "employment_status,ethnicity,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS; + case "employment_status,gender": + return EMPLOYMENT_STATUS_GENDER; + case "ethnicity,marital_status": + return ETHNICITY_MARITAL_STATUS; + case "employment_status,ethnicity,gender": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER; + case "ethnicity,gender,marital_status": + return ETHNICITY_GENDER_MARITAL_STATUS; + default: + return new EmployeesRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, + + EMPLOYMENT_STATUS_GENDER, + + EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_MARITAL_STATUS, + + ETHNICITY, + + ETHNICITY_GENDER, + + ETHNICITY_GENDER_MARITAL_STATUS, + + ETHNICITY_MARITAL_STATUS, + + GENDER, + + GENDER_MARITAL_STATUS, + + MARITAL_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentStatus(); + + T visitEmploymentStatusEthnicity(); + + T visitEmploymentStatusEthnicityGender(); + + T visitEmploymentStatusEthnicityGenderMaritalStatus(); + + T visitEmploymentStatusEthnicityMaritalStatus(); + + T visitEmploymentStatusGender(); + + T visitEmploymentStatusGenderMaritalStatus(); + + T visitEmploymentStatusMaritalStatus(); + + T visitEthnicity(); + + T visitEthnicityGender(); + + T visitEthnicityGenderMaritalStatus(); + + T visitEthnicityMaritalStatus(); + + T visitGender(); + + T visitGenderMaritalStatus(); + + T visitMaritalStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestShowEnumOrigins.java index 2b4104721..fbd5bdb7b 100644 --- a/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/EmployeesRetrieveRequestShowEnumOrigins.java @@ -3,48 +3,235 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmployeesRetrieveRequestShowEnumOrigins { - EMPLOYMENT_STATUS("employment_status"), +public final class EmployeesRetrieveRequestShowEnumOrigins { + public static final EmployeesRetrieveRequestShowEnumOrigins GENDER = + new EmployeesRetrieveRequestShowEnumOrigins(Value.GENDER, "gender"); - EMPLOYMENT_STATUS_ETHNICITY("employment_status,ethnicity"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, "employment_status,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER("employment_status,ethnicity,gender"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + "employment_status,ethnicity,gender,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS("employment_status,ethnicity,gender,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_MARITAL_STATUS, "employment_status,marital_status"); - EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS("employment_status,ethnicity,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins ETHNICITY_GENDER = + new EmployeesRetrieveRequestShowEnumOrigins(Value.ETHNICITY_GENDER, "ethnicity,gender"); - EMPLOYMENT_STATUS_GENDER("employment_status,gender"), + public static final EmployeesRetrieveRequestShowEnumOrigins GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins(Value.GENDER_MARITAL_STATUS, "gender,marital_status"); - EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS("employment_status,gender,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY, "employment_status,ethnicity"); - EMPLOYMENT_STATUS_MARITAL_STATUS("employment_status,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins ETHNICITY = + new EmployeesRetrieveRequestShowEnumOrigins(Value.ETHNICITY, "ethnicity"); - ETHNICITY("ethnicity"), + public static final EmployeesRetrieveRequestShowEnumOrigins MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins(Value.MARITAL_STATUS, "marital_status"); - ETHNICITY_GENDER("ethnicity,gender"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins(Value.EMPLOYMENT_STATUS, "employment_status"); - ETHNICITY_GENDER_MARITAL_STATUS("ethnicity,gender,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, "employment_status,ethnicity,marital_status"); - ETHNICITY_MARITAL_STATUS("ethnicity,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_GENDER = + new EmployeesRetrieveRequestShowEnumOrigins(Value.EMPLOYMENT_STATUS_GENDER, "employment_status,gender"); - GENDER("gender"), + public static final EmployeesRetrieveRequestShowEnumOrigins ETHNICITY_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins(Value.ETHNICITY_MARITAL_STATUS, "ethnicity,marital_status"); - GENDER_MARITAL_STATUS("gender,marital_status"), + public static final EmployeesRetrieveRequestShowEnumOrigins EMPLOYMENT_STATUS_ETHNICITY_GENDER = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_STATUS_ETHNICITY_GENDER, "employment_status,ethnicity,gender"); - MARITAL_STATUS("marital_status"); + public static final EmployeesRetrieveRequestShowEnumOrigins ETHNICITY_GENDER_MARITAL_STATUS = + new EmployeesRetrieveRequestShowEnumOrigins( + Value.ETHNICITY_GENDER_MARITAL_STATUS, "ethnicity,gender,marital_status"); - private final String value; + private final Value value; - EmployeesRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + EmployeesRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmployeesRetrieveRequestShowEnumOrigins + && this.string.equals(((EmployeesRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GENDER: + return visitor.visitGender(); + case EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityGenderMaritalStatus(); + case EMPLOYMENT_STATUS_MARITAL_STATUS: + return visitor.visitEmploymentStatusMaritalStatus(); + case ETHNICITY_GENDER: + return visitor.visitEthnicityGender(); + case GENDER_MARITAL_STATUS: + return visitor.visitGenderMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY: + return visitor.visitEmploymentStatusEthnicity(); + case ETHNICITY: + return visitor.visitEthnicity(); + case MARITAL_STATUS: + return visitor.visitMaritalStatus(); + case EMPLOYMENT_STATUS: + return visitor.visitEmploymentStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS: + return visitor.visitEmploymentStatusEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_GENDER: + return visitor.visitEmploymentStatusGender(); + case ETHNICITY_MARITAL_STATUS: + return visitor.visitEthnicityMaritalStatus(); + case EMPLOYMENT_STATUS_ETHNICITY_GENDER: + return visitor.visitEmploymentStatusEthnicityGender(); + case ETHNICITY_GENDER_MARITAL_STATUS: + return visitor.visitEthnicityGenderMaritalStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmployeesRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "gender": + return GENDER; + case "employment_status,gender,marital_status": + return EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS; + case "employment_status,ethnicity,gender,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS; + case "employment_status,marital_status": + return EMPLOYMENT_STATUS_MARITAL_STATUS; + case "ethnicity,gender": + return ETHNICITY_GENDER; + case "gender,marital_status": + return GENDER_MARITAL_STATUS; + case "employment_status,ethnicity": + return EMPLOYMENT_STATUS_ETHNICITY; + case "ethnicity": + return ETHNICITY; + case "marital_status": + return MARITAL_STATUS; + case "employment_status": + return EMPLOYMENT_STATUS; + case "employment_status,ethnicity,marital_status": + return EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS; + case "employment_status,gender": + return EMPLOYMENT_STATUS_GENDER; + case "ethnicity,marital_status": + return ETHNICITY_MARITAL_STATUS; + case "employment_status,ethnicity,gender": + return EMPLOYMENT_STATUS_ETHNICITY_GENDER; + case "ethnicity,gender,marital_status": + return ETHNICITY_GENDER_MARITAL_STATUS; + default: + return new EmployeesRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER, + + EMPLOYMENT_STATUS_ETHNICITY_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_ETHNICITY_MARITAL_STATUS, + + EMPLOYMENT_STATUS_GENDER, + + EMPLOYMENT_STATUS_GENDER_MARITAL_STATUS, + + EMPLOYMENT_STATUS_MARITAL_STATUS, + + ETHNICITY, + + ETHNICITY_GENDER, + + ETHNICITY_GENDER_MARITAL_STATUS, + + ETHNICITY_MARITAL_STATUS, + + GENDER, + + GENDER_MARITAL_STATUS, + + MARITAL_STATUS, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentStatus(); + + T visitEmploymentStatusEthnicity(); + + T visitEmploymentStatusEthnicityGender(); + + T visitEmploymentStatusEthnicityGenderMaritalStatus(); + + T visitEmploymentStatusEthnicityMaritalStatus(); + + T visitEmploymentStatusGender(); + + T visitEmploymentStatusGenderMaritalStatus(); + + T visitEmploymentStatusMaritalStatus(); + + T visitEthnicity(); + + T visitEthnicityGender(); + + T visitEthnicityGenderMaritalStatus(); + + T visitEthnicityMaritalStatus(); + + T visitGender(); + + T visitGenderMaritalStatus(); + + T visitMaritalStatus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentStatusEnum.java b/src/main/java/com/merge/api/hris/types/EmploymentStatusEnum.java index 3c9857f97..d7e972377 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentStatusEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentStatusEnum { - ACTIVE("ACTIVE"), +public final class EmploymentStatusEnum { + public static final EmploymentStatusEnum ACTIVE = new EmploymentStatusEnum(Value.ACTIVE, "ACTIVE"); - PENDING("PENDING"), + public static final EmploymentStatusEnum PENDING = new EmploymentStatusEnum(Value.PENDING, "PENDING"); - INACTIVE("INACTIVE"); + public static final EmploymentStatusEnum INACTIVE = new EmploymentStatusEnum(Value.INACTIVE, "INACTIVE"); - private final String value; + private final Value value; - EmploymentStatusEnum(String value) { + private final String string; + + EmploymentStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentStatusEnum && this.string.equals(((EmploymentStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ACTIVE: + return visitor.visitActive(); + case PENDING: + return visitor.visitPending(); + case INACTIVE: + return visitor.visitInactive(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentStatusEnum valueOf(String value) { + switch (value) { + case "ACTIVE": + return ACTIVE; + case "PENDING": + return PENDING; + case "INACTIVE": + return INACTIVE; + default: + return new EmploymentStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ACTIVE, + + PENDING, + + INACTIVE, + + UNKNOWN + } + + public interface Visitor { + T visitActive(); + + T visitPending(); + + T visitInactive(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentTypeEnum.java b/src/main/java/com/merge/api/hris/types/EmploymentTypeEnum.java index 88ef0d80b..9cf54ecad 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentTypeEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentTypeEnum { - FULL_TIME("FULL_TIME"), +public final class EmploymentTypeEnum { + public static final EmploymentTypeEnum INTERN = new EmploymentTypeEnum(Value.INTERN, "INTERN"); - PART_TIME("PART_TIME"), + public static final EmploymentTypeEnum FREELANCE = new EmploymentTypeEnum(Value.FREELANCE, "FREELANCE"); - INTERN("INTERN"), + public static final EmploymentTypeEnum PART_TIME = new EmploymentTypeEnum(Value.PART_TIME, "PART_TIME"); - CONTRACTOR("CONTRACTOR"), + public static final EmploymentTypeEnum FULL_TIME = new EmploymentTypeEnum(Value.FULL_TIME, "FULL_TIME"); - FREELANCE("FREELANCE"); + public static final EmploymentTypeEnum CONTRACTOR = new EmploymentTypeEnum(Value.CONTRACTOR, "CONTRACTOR"); - private final String value; + private final Value value; - EmploymentTypeEnum(String value) { + private final String string; + + EmploymentTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentTypeEnum && this.string.equals(((EmploymentTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case INTERN: + return visitor.visitIntern(); + case FREELANCE: + return visitor.visitFreelance(); + case PART_TIME: + return visitor.visitPartTime(); + case FULL_TIME: + return visitor.visitFullTime(); + case CONTRACTOR: + return visitor.visitContractor(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentTypeEnum valueOf(String value) { + switch (value) { + case "INTERN": + return INTERN; + case "FREELANCE": + return FREELANCE; + case "PART_TIME": + return PART_TIME; + case "FULL_TIME": + return FULL_TIME; + case "CONTRACTOR": + return CONTRACTOR; + default: + return new EmploymentTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + FULL_TIME, + + PART_TIME, + + INTERN, + + CONTRACTOR, + + FREELANCE, + + UNKNOWN + } + + public interface Visitor { + T visitFullTime(); + + T visitPartTime(); + + T visitIntern(); + + T visitContractor(); + + T visitFreelance(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestExpandItem.java index 886c84210..a13fe6e56 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsListRequestExpandItem { - EMPLOYEE("employee"), +public final class EmploymentsListRequestExpandItem { + public static final EmploymentsListRequestExpandItem PAY_GROUP = + new EmploymentsListRequestExpandItem(Value.PAY_GROUP, "pay_group"); - PAY_GROUP("pay_group"); + public static final EmploymentsListRequestExpandItem EMPLOYEE = + new EmploymentsListRequestExpandItem(Value.EMPLOYEE, "employee"); - private final String value; + private final Value value; - EmploymentsListRequestExpandItem(String value) { + private final String string; + + EmploymentsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsListRequestExpandItem + && this.string.equals(((EmploymentsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_GROUP: + return visitor.visitPayGroup(); + case EMPLOYEE: + return visitor.visitEmployee(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsListRequestExpandItem valueOf(String value) { + switch (value) { + case "pay_group": + return PAY_GROUP; + case "employee": + return EMPLOYEE; + default: + return new EmploymentsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYEE, + + PAY_GROUP, + + UNKNOWN + } + + public interface Visitor { + T visitEmployee(); + + T visitPayGroup(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestOrderBy.java b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestOrderBy.java index 7a49daa11..a086f0cf2 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestOrderBy.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestOrderBy.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsListRequestOrderBy { - EFFECTIVE_DATE_DESCENDING("-effective_date"), +public final class EmploymentsListRequestOrderBy { + public static final EmploymentsListRequestOrderBy EFFECTIVE_DATE_DESCENDING = + new EmploymentsListRequestOrderBy(Value.EFFECTIVE_DATE_DESCENDING, "-effective_date"); - EFFECTIVE_DATE_ASCENDING("effective_date"); + public static final EmploymentsListRequestOrderBy EFFECTIVE_DATE_ASCENDING = + new EmploymentsListRequestOrderBy(Value.EFFECTIVE_DATE_ASCENDING, "effective_date"); - private final String value; + private final Value value; - EmploymentsListRequestOrderBy(String value) { + private final String string; + + EmploymentsListRequestOrderBy(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsListRequestOrderBy + && this.string.equals(((EmploymentsListRequestOrderBy) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EFFECTIVE_DATE_DESCENDING: + return visitor.visitEffectiveDateDescending(); + case EFFECTIVE_DATE_ASCENDING: + return visitor.visitEffectiveDateAscending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsListRequestOrderBy valueOf(String value) { + switch (value) { + case "-effective_date": + return EFFECTIVE_DATE_DESCENDING; + case "effective_date": + return EFFECTIVE_DATE_ASCENDING; + default: + return new EmploymentsListRequestOrderBy(Value.UNKNOWN, value); + } + } + + public enum Value { + EFFECTIVE_DATE_DESCENDING, + + EFFECTIVE_DATE_ASCENDING, + + UNKNOWN + } + + public interface Visitor { + T visitEffectiveDateDescending(); + + T visitEffectiveDateAscending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestRemoteFields.java index 6824df0f9..20f75c943 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestRemoteFields.java @@ -3,48 +3,234 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsListRequestRemoteFields { - EMPLOYMENT_TYPE("employment_type"), +public final class EmploymentsListRequestRemoteFields { + public static final EmploymentsListRequestRemoteFields PAY_PERIOD = + new EmploymentsListRequestRemoteFields(Value.PAY_PERIOD, "pay_period"); - EMPLOYMENT_TYPE_FLSA_STATUS("employment_type,flsa_status"), + public static final EmploymentsListRequestRemoteFields FLSA_STATUS = + new EmploymentsListRequestRemoteFields(Value.FLSA_STATUS, "flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY("employment_type,flsa_status,pay_frequency"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_PAY_FREQUENCY = + new EmploymentsListRequestRemoteFields( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY, "employment_type,pay_frequency"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("employment_type,flsa_status,pay_frequency,pay_period"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS = + new EmploymentsListRequestRemoteFields(Value.EMPLOYMENT_TYPE_FLSA_STATUS, "employment_type,flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD("employment_type,flsa_status,pay_period"), + public static final EmploymentsListRequestRemoteFields PAY_FREQUENCY = + new EmploymentsListRequestRemoteFields(Value.PAY_FREQUENCY, "pay_frequency"); - EMPLOYMENT_TYPE_PAY_FREQUENCY("employment_type,pay_frequency"), + public static final EmploymentsListRequestRemoteFields FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestRemoteFields( + Value.FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, "flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD("employment_type,pay_frequency,pay_period"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + "employment_type,flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_PERIOD("employment_type,pay_period"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD = + new EmploymentsListRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, "employment_type,flsa_status,pay_period"); - FLSA_STATUS("flsa_status"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_PAY_PERIOD = + new EmploymentsListRequestRemoteFields(Value.EMPLOYMENT_TYPE_PAY_PERIOD, "employment_type,pay_period"); - FLSA_STATUS_PAY_FREQUENCY("flsa_status,pay_frequency"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE = + new EmploymentsListRequestRemoteFields(Value.EMPLOYMENT_TYPE, "employment_type"); - FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("flsa_status,pay_frequency,pay_period"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsListRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, "employment_type,flsa_status,pay_frequency"); - FLSA_STATUS_PAY_PERIOD("flsa_status,pay_period"), + public static final EmploymentsListRequestRemoteFields PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestRemoteFields(Value.PAY_FREQUENCY_PAY_PERIOD, "pay_frequency,pay_period"); - PAY_FREQUENCY("pay_frequency"), + public static final EmploymentsListRequestRemoteFields FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsListRequestRemoteFields(Value.FLSA_STATUS_PAY_FREQUENCY, "flsa_status,pay_frequency"); - PAY_FREQUENCY_PAY_PERIOD("pay_frequency,pay_period"), + public static final EmploymentsListRequestRemoteFields EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestRemoteFields( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, "employment_type,pay_frequency,pay_period"); - PAY_PERIOD("pay_period"); + public static final EmploymentsListRequestRemoteFields FLSA_STATUS_PAY_PERIOD = + new EmploymentsListRequestRemoteFields(Value.FLSA_STATUS_PAY_PERIOD, "flsa_status,pay_period"); - private final String value; + private final Value value; - EmploymentsListRequestRemoteFields(String value) { + private final String string; + + EmploymentsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsListRequestRemoteFields + && this.string.equals(((EmploymentsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_PERIOD: + return visitor.visitPayPeriod(); + case FLSA_STATUS: + return visitor.visitFlsaStatus(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY: + return visitor.visitEmploymentTypePayFrequency(); + case EMPLOYMENT_TYPE_FLSA_STATUS: + return visitor.visitEmploymentTypeFlsaStatus(); + case PAY_FREQUENCY: + return visitor.visitPayFrequency(); + case FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayPeriod(); + case EMPLOYMENT_TYPE_PAY_PERIOD: + return visitor.visitEmploymentTypePayPeriod(); + case EMPLOYMENT_TYPE: + return visitor.visitEmploymentType(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitEmploymentTypeFlsaStatusPayFrequency(); + case PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitPayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitFlsaStatusPayFrequency(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypePayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_PERIOD: + return visitor.visitFlsaStatusPayPeriod(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "pay_period": + return PAY_PERIOD; + case "flsa_status": + return FLSA_STATUS; + case "employment_type,pay_frequency": + return EMPLOYMENT_TYPE_PAY_FREQUENCY; + case "employment_type,flsa_status": + return EMPLOYMENT_TYPE_FLSA_STATUS; + case "pay_frequency": + return PAY_FREQUENCY; + case "flsa_status,pay_frequency,pay_period": + return FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD; + case "employment_type,pay_period": + return EMPLOYMENT_TYPE_PAY_PERIOD; + case "employment_type": + return EMPLOYMENT_TYPE; + case "employment_type,flsa_status,pay_frequency": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY; + case "pay_frequency,pay_period": + return PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_frequency": + return FLSA_STATUS_PAY_FREQUENCY; + case "employment_type,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_period": + return FLSA_STATUS_PAY_PERIOD; + default: + return new EmploymentsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_TYPE, + + EMPLOYMENT_TYPE_FLSA_STATUS, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_PERIOD, + + FLSA_STATUS, + + FLSA_STATUS_PAY_FREQUENCY, + + FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + FLSA_STATUS_PAY_PERIOD, + + PAY_FREQUENCY, + + PAY_FREQUENCY_PAY_PERIOD, + + PAY_PERIOD, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentType(); + + T visitEmploymentTypeFlsaStatus(); + + T visitEmploymentTypeFlsaStatusPayFrequency(); + + T visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + + T visitEmploymentTypeFlsaStatusPayPeriod(); + + T visitEmploymentTypePayFrequency(); + + T visitEmploymentTypePayFrequencyPayPeriod(); + + T visitEmploymentTypePayPeriod(); + + T visitFlsaStatus(); + + T visitFlsaStatusPayFrequency(); + + T visitFlsaStatusPayFrequencyPayPeriod(); + + T visitFlsaStatusPayPeriod(); + + T visitPayFrequency(); + + T visitPayFrequencyPayPeriod(); + + T visitPayPeriod(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestShowEnumOrigins.java index 39b276872..b48e7c177 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsListRequestShowEnumOrigins.java @@ -3,48 +3,234 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsListRequestShowEnumOrigins { - EMPLOYMENT_TYPE("employment_type"), +public final class EmploymentsListRequestShowEnumOrigins { + public static final EmploymentsListRequestShowEnumOrigins PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins(Value.PAY_PERIOD, "pay_period"); - EMPLOYMENT_TYPE_FLSA_STATUS("employment_type,flsa_status"), + public static final EmploymentsListRequestShowEnumOrigins FLSA_STATUS = + new EmploymentsListRequestShowEnumOrigins(Value.FLSA_STATUS, "flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY("employment_type,flsa_status,pay_frequency"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_FREQUENCY = + new EmploymentsListRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY, "employment_type,pay_frequency"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("employment_type,flsa_status,pay_frequency,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS = + new EmploymentsListRequestShowEnumOrigins(Value.EMPLOYMENT_TYPE_FLSA_STATUS, "employment_type,flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD("employment_type,flsa_status,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins PAY_FREQUENCY = + new EmploymentsListRequestShowEnumOrigins(Value.PAY_FREQUENCY, "pay_frequency"); - EMPLOYMENT_TYPE_PAY_FREQUENCY("employment_type,pay_frequency"), + public static final EmploymentsListRequestShowEnumOrigins FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins( + Value.FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, "flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD("employment_type,pay_frequency,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + "employment_type,flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_PERIOD("employment_type,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, "employment_type,flsa_status,pay_period"); - FLSA_STATUS("flsa_status"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins(Value.EMPLOYMENT_TYPE_PAY_PERIOD, "employment_type,pay_period"); - FLSA_STATUS_PAY_FREQUENCY("flsa_status,pay_frequency"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE = + new EmploymentsListRequestShowEnumOrigins(Value.EMPLOYMENT_TYPE, "employment_type"); - FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("flsa_status,pay_frequency,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsListRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, "employment_type,flsa_status,pay_frequency"); - FLSA_STATUS_PAY_PERIOD("flsa_status,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins(Value.PAY_FREQUENCY_PAY_PERIOD, "pay_frequency,pay_period"); - PAY_FREQUENCY("pay_frequency"), + public static final EmploymentsListRequestShowEnumOrigins FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsListRequestShowEnumOrigins(Value.FLSA_STATUS_PAY_FREQUENCY, "flsa_status,pay_frequency"); - PAY_FREQUENCY_PAY_PERIOD("pay_frequency,pay_period"), + public static final EmploymentsListRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, "employment_type,pay_frequency,pay_period"); - PAY_PERIOD("pay_period"); + public static final EmploymentsListRequestShowEnumOrigins FLSA_STATUS_PAY_PERIOD = + new EmploymentsListRequestShowEnumOrigins(Value.FLSA_STATUS_PAY_PERIOD, "flsa_status,pay_period"); - private final String value; + private final Value value; - EmploymentsListRequestShowEnumOrigins(String value) { + private final String string; + + EmploymentsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsListRequestShowEnumOrigins + && this.string.equals(((EmploymentsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_PERIOD: + return visitor.visitPayPeriod(); + case FLSA_STATUS: + return visitor.visitFlsaStatus(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY: + return visitor.visitEmploymentTypePayFrequency(); + case EMPLOYMENT_TYPE_FLSA_STATUS: + return visitor.visitEmploymentTypeFlsaStatus(); + case PAY_FREQUENCY: + return visitor.visitPayFrequency(); + case FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayPeriod(); + case EMPLOYMENT_TYPE_PAY_PERIOD: + return visitor.visitEmploymentTypePayPeriod(); + case EMPLOYMENT_TYPE: + return visitor.visitEmploymentType(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitEmploymentTypeFlsaStatusPayFrequency(); + case PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitPayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitFlsaStatusPayFrequency(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypePayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_PERIOD: + return visitor.visitFlsaStatusPayPeriod(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "pay_period": + return PAY_PERIOD; + case "flsa_status": + return FLSA_STATUS; + case "employment_type,pay_frequency": + return EMPLOYMENT_TYPE_PAY_FREQUENCY; + case "employment_type,flsa_status": + return EMPLOYMENT_TYPE_FLSA_STATUS; + case "pay_frequency": + return PAY_FREQUENCY; + case "flsa_status,pay_frequency,pay_period": + return FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD; + case "employment_type,pay_period": + return EMPLOYMENT_TYPE_PAY_PERIOD; + case "employment_type": + return EMPLOYMENT_TYPE; + case "employment_type,flsa_status,pay_frequency": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY; + case "pay_frequency,pay_period": + return PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_frequency": + return FLSA_STATUS_PAY_FREQUENCY; + case "employment_type,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_period": + return FLSA_STATUS_PAY_PERIOD; + default: + return new EmploymentsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_TYPE, + + EMPLOYMENT_TYPE_FLSA_STATUS, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_PERIOD, + + FLSA_STATUS, + + FLSA_STATUS_PAY_FREQUENCY, + + FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + FLSA_STATUS_PAY_PERIOD, + + PAY_FREQUENCY, + + PAY_FREQUENCY_PAY_PERIOD, + + PAY_PERIOD, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentType(); + + T visitEmploymentTypeFlsaStatus(); + + T visitEmploymentTypeFlsaStatusPayFrequency(); + + T visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + + T visitEmploymentTypeFlsaStatusPayPeriod(); + + T visitEmploymentTypePayFrequency(); + + T visitEmploymentTypePayFrequencyPayPeriod(); + + T visitEmploymentTypePayPeriod(); + + T visitFlsaStatus(); + + T visitFlsaStatusPayFrequency(); + + T visitFlsaStatusPayFrequencyPayPeriod(); + + T visitFlsaStatusPayPeriod(); + + T visitPayFrequency(); + + T visitPayFrequencyPayPeriod(); + + T visitPayPeriod(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestExpandItem.java index d943eb455..3a231a91a 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsRetrieveRequestExpandItem { - EMPLOYEE("employee"), +public final class EmploymentsRetrieveRequestExpandItem { + public static final EmploymentsRetrieveRequestExpandItem PAY_GROUP = + new EmploymentsRetrieveRequestExpandItem(Value.PAY_GROUP, "pay_group"); - PAY_GROUP("pay_group"); + public static final EmploymentsRetrieveRequestExpandItem EMPLOYEE = + new EmploymentsRetrieveRequestExpandItem(Value.EMPLOYEE, "employee"); - private final String value; + private final Value value; - EmploymentsRetrieveRequestExpandItem(String value) { + private final String string; + + EmploymentsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsRetrieveRequestExpandItem + && this.string.equals(((EmploymentsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_GROUP: + return visitor.visitPayGroup(); + case EMPLOYEE: + return visitor.visitEmployee(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "pay_group": + return PAY_GROUP; + case "employee": + return EMPLOYEE; + default: + return new EmploymentsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYEE, + + PAY_GROUP, + + UNKNOWN + } + + public interface Visitor { + T visitEmployee(); + + T visitPayGroup(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestRemoteFields.java index 6438a3d99..3452d6f82 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestRemoteFields.java @@ -3,48 +3,235 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsRetrieveRequestRemoteFields { - EMPLOYMENT_TYPE("employment_type"), +public final class EmploymentsRetrieveRequestRemoteFields { + public static final EmploymentsRetrieveRequestRemoteFields PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields(Value.PAY_PERIOD, "pay_period"); - EMPLOYMENT_TYPE_FLSA_STATUS("employment_type,flsa_status"), + public static final EmploymentsRetrieveRequestRemoteFields FLSA_STATUS = + new EmploymentsRetrieveRequestRemoteFields(Value.FLSA_STATUS, "flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY("employment_type,flsa_status,pay_frequency"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_PAY_FREQUENCY = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY, "employment_type,pay_frequency"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("employment_type,flsa_status,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS, "employment_type,flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD("employment_type,flsa_status,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields PAY_FREQUENCY = + new EmploymentsRetrieveRequestRemoteFields(Value.PAY_FREQUENCY, "pay_frequency"); - EMPLOYMENT_TYPE_PAY_FREQUENCY("employment_type,pay_frequency"), + public static final EmploymentsRetrieveRequestRemoteFields FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields( + Value.FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, "flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD("employment_type,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + "employment_type,flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_PERIOD("employment_type,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, "employment_type,flsa_status,pay_period"); - FLSA_STATUS("flsa_status"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields(Value.EMPLOYMENT_TYPE_PAY_PERIOD, "employment_type,pay_period"); - FLSA_STATUS_PAY_FREQUENCY("flsa_status,pay_frequency"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE = + new EmploymentsRetrieveRequestRemoteFields(Value.EMPLOYMENT_TYPE, "employment_type"); - FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("flsa_status,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, "employment_type,flsa_status,pay_frequency"); - FLSA_STATUS_PAY_PERIOD("flsa_status,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields(Value.PAY_FREQUENCY_PAY_PERIOD, "pay_frequency,pay_period"); - PAY_FREQUENCY("pay_frequency"), + public static final EmploymentsRetrieveRequestRemoteFields FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsRetrieveRequestRemoteFields(Value.FLSA_STATUS_PAY_FREQUENCY, "flsa_status,pay_frequency"); - PAY_FREQUENCY_PAY_PERIOD("pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestRemoteFields EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, "employment_type,pay_frequency,pay_period"); - PAY_PERIOD("pay_period"); + public static final EmploymentsRetrieveRequestRemoteFields FLSA_STATUS_PAY_PERIOD = + new EmploymentsRetrieveRequestRemoteFields(Value.FLSA_STATUS_PAY_PERIOD, "flsa_status,pay_period"); - private final String value; + private final Value value; - EmploymentsRetrieveRequestRemoteFields(String value) { + private final String string; + + EmploymentsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsRetrieveRequestRemoteFields + && this.string.equals(((EmploymentsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_PERIOD: + return visitor.visitPayPeriod(); + case FLSA_STATUS: + return visitor.visitFlsaStatus(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY: + return visitor.visitEmploymentTypePayFrequency(); + case EMPLOYMENT_TYPE_FLSA_STATUS: + return visitor.visitEmploymentTypeFlsaStatus(); + case PAY_FREQUENCY: + return visitor.visitPayFrequency(); + case FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayPeriod(); + case EMPLOYMENT_TYPE_PAY_PERIOD: + return visitor.visitEmploymentTypePayPeriod(); + case EMPLOYMENT_TYPE: + return visitor.visitEmploymentType(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitEmploymentTypeFlsaStatusPayFrequency(); + case PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitPayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitFlsaStatusPayFrequency(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypePayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_PERIOD: + return visitor.visitFlsaStatusPayPeriod(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "pay_period": + return PAY_PERIOD; + case "flsa_status": + return FLSA_STATUS; + case "employment_type,pay_frequency": + return EMPLOYMENT_TYPE_PAY_FREQUENCY; + case "employment_type,flsa_status": + return EMPLOYMENT_TYPE_FLSA_STATUS; + case "pay_frequency": + return PAY_FREQUENCY; + case "flsa_status,pay_frequency,pay_period": + return FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD; + case "employment_type,pay_period": + return EMPLOYMENT_TYPE_PAY_PERIOD; + case "employment_type": + return EMPLOYMENT_TYPE; + case "employment_type,flsa_status,pay_frequency": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY; + case "pay_frequency,pay_period": + return PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_frequency": + return FLSA_STATUS_PAY_FREQUENCY; + case "employment_type,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_period": + return FLSA_STATUS_PAY_PERIOD; + default: + return new EmploymentsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_TYPE, + + EMPLOYMENT_TYPE_FLSA_STATUS, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_PERIOD, + + FLSA_STATUS, + + FLSA_STATUS_PAY_FREQUENCY, + + FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + FLSA_STATUS_PAY_PERIOD, + + PAY_FREQUENCY, + + PAY_FREQUENCY_PAY_PERIOD, + + PAY_PERIOD, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentType(); + + T visitEmploymentTypeFlsaStatus(); + + T visitEmploymentTypeFlsaStatusPayFrequency(); + + T visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + + T visitEmploymentTypeFlsaStatusPayPeriod(); + + T visitEmploymentTypePayFrequency(); + + T visitEmploymentTypePayFrequencyPayPeriod(); + + T visitEmploymentTypePayPeriod(); + + T visitFlsaStatus(); + + T visitFlsaStatusPayFrequency(); + + T visitFlsaStatusPayFrequencyPayPeriod(); + + T visitFlsaStatusPayPeriod(); + + T visitPayFrequency(); + + T visitPayFrequencyPayPeriod(); + + T visitPayPeriod(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestShowEnumOrigins.java index 1278ee1a0..d26237d7b 100644 --- a/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/EmploymentsRetrieveRequestShowEnumOrigins.java @@ -3,48 +3,236 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EmploymentsRetrieveRequestShowEnumOrigins { - EMPLOYMENT_TYPE("employment_type"), +public final class EmploymentsRetrieveRequestShowEnumOrigins { + public static final EmploymentsRetrieveRequestShowEnumOrigins PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.PAY_PERIOD, "pay_period"); - EMPLOYMENT_TYPE_FLSA_STATUS("employment_type,flsa_status"), + public static final EmploymentsRetrieveRequestShowEnumOrigins FLSA_STATUS = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.FLSA_STATUS, "flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY("employment_type,flsa_status,pay_frequency"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_FREQUENCY = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY, "employment_type,pay_frequency"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("employment_type,flsa_status,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS, "employment_type,flsa_status"); - EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD("employment_type,flsa_status,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins PAY_FREQUENCY = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.PAY_FREQUENCY, "pay_frequency"); - EMPLOYMENT_TYPE_PAY_FREQUENCY("employment_type,pay_frequency"), + public static final EmploymentsRetrieveRequestShowEnumOrigins FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, "flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD("employment_type,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + "employment_type,flsa_status,pay_frequency,pay_period"); - EMPLOYMENT_TYPE_PAY_PERIOD("employment_type,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, "employment_type,flsa_status,pay_period"); - FLSA_STATUS("flsa_status"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_PAY_PERIOD, "employment_type,pay_period"); - FLSA_STATUS_PAY_FREQUENCY("flsa_status,pay_frequency"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.EMPLOYMENT_TYPE, "employment_type"); - FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD("flsa_status,pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, "employment_type,flsa_status,pay_frequency"); - FLSA_STATUS_PAY_PERIOD("flsa_status,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.PAY_FREQUENCY_PAY_PERIOD, "pay_frequency,pay_period"); - PAY_FREQUENCY("pay_frequency"), + public static final EmploymentsRetrieveRequestShowEnumOrigins FLSA_STATUS_PAY_FREQUENCY = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.FLSA_STATUS_PAY_FREQUENCY, "flsa_status,pay_frequency"); - PAY_FREQUENCY_PAY_PERIOD("pay_frequency,pay_period"), + public static final EmploymentsRetrieveRequestShowEnumOrigins EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins( + Value.EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, "employment_type,pay_frequency,pay_period"); - PAY_PERIOD("pay_period"); + public static final EmploymentsRetrieveRequestShowEnumOrigins FLSA_STATUS_PAY_PERIOD = + new EmploymentsRetrieveRequestShowEnumOrigins(Value.FLSA_STATUS_PAY_PERIOD, "flsa_status,pay_period"); - private final String value; + private final Value value; - EmploymentsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + EmploymentsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EmploymentsRetrieveRequestShowEnumOrigins + && this.string.equals(((EmploymentsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PAY_PERIOD: + return visitor.visitPayPeriod(); + case FLSA_STATUS: + return visitor.visitFlsaStatus(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY: + return visitor.visitEmploymentTypePayFrequency(); + case EMPLOYMENT_TYPE_FLSA_STATUS: + return visitor.visitEmploymentTypeFlsaStatus(); + case PAY_FREQUENCY: + return visitor.visitPayFrequency(); + case FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD: + return visitor.visitEmploymentTypeFlsaStatusPayPeriod(); + case EMPLOYMENT_TYPE_PAY_PERIOD: + return visitor.visitEmploymentTypePayPeriod(); + case EMPLOYMENT_TYPE: + return visitor.visitEmploymentType(); + case EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitEmploymentTypeFlsaStatusPayFrequency(); + case PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitPayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_FREQUENCY: + return visitor.visitFlsaStatusPayFrequency(); + case EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD: + return visitor.visitEmploymentTypePayFrequencyPayPeriod(); + case FLSA_STATUS_PAY_PERIOD: + return visitor.visitFlsaStatusPayPeriod(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EmploymentsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "pay_period": + return PAY_PERIOD; + case "flsa_status": + return FLSA_STATUS; + case "employment_type,pay_frequency": + return EMPLOYMENT_TYPE_PAY_FREQUENCY; + case "employment_type,flsa_status": + return EMPLOYMENT_TYPE_FLSA_STATUS; + case "pay_frequency": + return PAY_FREQUENCY; + case "flsa_status,pay_frequency,pay_period": + return FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD; + case "employment_type,flsa_status,pay_period": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD; + case "employment_type,pay_period": + return EMPLOYMENT_TYPE_PAY_PERIOD; + case "employment_type": + return EMPLOYMENT_TYPE; + case "employment_type,flsa_status,pay_frequency": + return EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY; + case "pay_frequency,pay_period": + return PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_frequency": + return FLSA_STATUS_PAY_FREQUENCY; + case "employment_type,pay_frequency,pay_period": + return EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD; + case "flsa_status,pay_period": + return FLSA_STATUS_PAY_PERIOD; + default: + return new EmploymentsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + EMPLOYMENT_TYPE, + + EMPLOYMENT_TYPE_FLSA_STATUS, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_FLSA_STATUS_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_FREQUENCY, + + EMPLOYMENT_TYPE_PAY_FREQUENCY_PAY_PERIOD, + + EMPLOYMENT_TYPE_PAY_PERIOD, + + FLSA_STATUS, + + FLSA_STATUS_PAY_FREQUENCY, + + FLSA_STATUS_PAY_FREQUENCY_PAY_PERIOD, + + FLSA_STATUS_PAY_PERIOD, + + PAY_FREQUENCY, + + PAY_FREQUENCY_PAY_PERIOD, + + PAY_PERIOD, + + UNKNOWN + } + + public interface Visitor { + T visitEmploymentType(); + + T visitEmploymentTypeFlsaStatus(); + + T visitEmploymentTypeFlsaStatusPayFrequency(); + + T visitEmploymentTypeFlsaStatusPayFrequencyPayPeriod(); + + T visitEmploymentTypeFlsaStatusPayPeriod(); + + T visitEmploymentTypePayFrequency(); + + T visitEmploymentTypePayFrequencyPayPeriod(); + + T visitEmploymentTypePayPeriod(); + + T visitFlsaStatus(); + + T visitFlsaStatusPayFrequency(); + + T visitFlsaStatusPayFrequencyPayPeriod(); + + T visitFlsaStatusPayPeriod(); + + T visitPayFrequency(); + + T visitPayFrequencyPayPeriod(); + + T visitPayPeriod(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/hris/types/EnabledActionsEnum.java index e29798aae..f51ed30da 100644 --- a/src/main/java/com/merge/api/hris/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/hris/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EncodingEnum.java b/src/main/java/com/merge/api/hris/types/EncodingEnum.java index 00a09e52a..ef5fa833c 100644 --- a/src/main/java/com/merge/api/hris/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/hris/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EthnicityEnum.java b/src/main/java/com/merge/api/hris/types/EthnicityEnum.java index c4a36e6c5..652d15bff 100644 --- a/src/main/java/com/merge/api/hris/types/EthnicityEnum.java +++ b/src/main/java/com/merge/api/hris/types/EthnicityEnum.java @@ -3,34 +3,148 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EthnicityEnum { - AMERICAN_INDIAN_OR_ALASKA_NATIVE("AMERICAN_INDIAN_OR_ALASKA_NATIVE"), +public final class EthnicityEnum { + public static final EthnicityEnum AMERICAN_INDIAN_OR_ALASKA_NATIVE = + new EthnicityEnum(Value.AMERICAN_INDIAN_OR_ALASKA_NATIVE, "AMERICAN_INDIAN_OR_ALASKA_NATIVE"); - ASIAN_OR_INDIAN_SUBCONTINENT("ASIAN_OR_INDIAN_SUBCONTINENT"), + public static final EthnicityEnum NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER = new EthnicityEnum( + Value.NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER, "NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER"); - BLACK_OR_AFRICAN_AMERICAN("BLACK_OR_AFRICAN_AMERICAN"), + public static final EthnicityEnum HISPANIC_OR_LATINO = + new EthnicityEnum(Value.HISPANIC_OR_LATINO, "HISPANIC_OR_LATINO"); - HISPANIC_OR_LATINO("HISPANIC_OR_LATINO"), + public static final EthnicityEnum BLACK_OR_AFRICAN_AMERICAN = + new EthnicityEnum(Value.BLACK_OR_AFRICAN_AMERICAN, "BLACK_OR_AFRICAN_AMERICAN"); - NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER("NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER"), + public static final EthnicityEnum TWO_OR_MORE_RACES = + new EthnicityEnum(Value.TWO_OR_MORE_RACES, "TWO_OR_MORE_RACES"); - TWO_OR_MORE_RACES("TWO_OR_MORE_RACES"), + public static final EthnicityEnum ASIAN_OR_INDIAN_SUBCONTINENT = + new EthnicityEnum(Value.ASIAN_OR_INDIAN_SUBCONTINENT, "ASIAN_OR_INDIAN_SUBCONTINENT"); - WHITE("WHITE"), + public static final EthnicityEnum WHITE = new EthnicityEnum(Value.WHITE, "WHITE"); - PREFER_NOT_TO_DISCLOSE("PREFER_NOT_TO_DISCLOSE"); + public static final EthnicityEnum PREFER_NOT_TO_DISCLOSE = + new EthnicityEnum(Value.PREFER_NOT_TO_DISCLOSE, "PREFER_NOT_TO_DISCLOSE"); - private final String value; + private final Value value; - EthnicityEnum(String value) { + private final String string; + + EthnicityEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EthnicityEnum && this.string.equals(((EthnicityEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case AMERICAN_INDIAN_OR_ALASKA_NATIVE: + return visitor.visitAmericanIndianOrAlaskaNative(); + case NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER: + return visitor.visitNativeHawaiianOrOtherPacificIslander(); + case HISPANIC_OR_LATINO: + return visitor.visitHispanicOrLatino(); + case BLACK_OR_AFRICAN_AMERICAN: + return visitor.visitBlackOrAfricanAmerican(); + case TWO_OR_MORE_RACES: + return visitor.visitTwoOrMoreRaces(); + case ASIAN_OR_INDIAN_SUBCONTINENT: + return visitor.visitAsianOrIndianSubcontinent(); + case WHITE: + return visitor.visitWhite(); + case PREFER_NOT_TO_DISCLOSE: + return visitor.visitPreferNotToDisclose(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EthnicityEnum valueOf(String value) { + switch (value) { + case "AMERICAN_INDIAN_OR_ALASKA_NATIVE": + return AMERICAN_INDIAN_OR_ALASKA_NATIVE; + case "NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER": + return NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER; + case "HISPANIC_OR_LATINO": + return HISPANIC_OR_LATINO; + case "BLACK_OR_AFRICAN_AMERICAN": + return BLACK_OR_AFRICAN_AMERICAN; + case "TWO_OR_MORE_RACES": + return TWO_OR_MORE_RACES; + case "ASIAN_OR_INDIAN_SUBCONTINENT": + return ASIAN_OR_INDIAN_SUBCONTINENT; + case "WHITE": + return WHITE; + case "PREFER_NOT_TO_DISCLOSE": + return PREFER_NOT_TO_DISCLOSE; + default: + return new EthnicityEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + AMERICAN_INDIAN_OR_ALASKA_NATIVE, + + ASIAN_OR_INDIAN_SUBCONTINENT, + + BLACK_OR_AFRICAN_AMERICAN, + + HISPANIC_OR_LATINO, + + NATIVE_HAWAIIAN_OR_OTHER_PACIFIC_ISLANDER, + + TWO_OR_MORE_RACES, + + WHITE, + + PREFER_NOT_TO_DISCLOSE, + + UNKNOWN + } + + public interface Visitor { + T visitAmericanIndianOrAlaskaNative(); + + T visitAsianOrIndianSubcontinent(); + + T visitBlackOrAfricanAmerican(); + + T visitHispanicOrLatino(); + + T visitNativeHawaiianOrOtherPacificIslander(); + + T visitTwoOrMoreRaces(); + + T visitWhite(); + + T visitPreferNotToDisclose(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/EventTypeEnum.java b/src/main/java/com/merge/api/hris/types/EventTypeEnum.java index dcf822418..5dcbbfcdb 100644 --- a/src/main/java/com/merge/api/hris/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/FlsaStatusEnum.java b/src/main/java/com/merge/api/hris/types/FlsaStatusEnum.java index 912126ac4..1027841e4 100644 --- a/src/main/java/com/merge/api/hris/types/FlsaStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/FlsaStatusEnum.java @@ -3,26 +3,102 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FlsaStatusEnum { - EXEMPT("EXEMPT"), +public final class FlsaStatusEnum { + public static final FlsaStatusEnum SALARIED_NONEXEMPT = + new FlsaStatusEnum(Value.SALARIED_NONEXEMPT, "SALARIED_NONEXEMPT"); - SALARIED_NONEXEMPT("SALARIED_NONEXEMPT"), + public static final FlsaStatusEnum OWNER = new FlsaStatusEnum(Value.OWNER, "OWNER"); - NONEXEMPT("NONEXEMPT"), + public static final FlsaStatusEnum EXEMPT = new FlsaStatusEnum(Value.EXEMPT, "EXEMPT"); - OWNER("OWNER"); + public static final FlsaStatusEnum NONEXEMPT = new FlsaStatusEnum(Value.NONEXEMPT, "NONEXEMPT"); - private final String value; + private final Value value; - FlsaStatusEnum(String value) { + private final String string; + + FlsaStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FlsaStatusEnum && this.string.equals(((FlsaStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case SALARIED_NONEXEMPT: + return visitor.visitSalariedNonexempt(); + case OWNER: + return visitor.visitOwner(); + case EXEMPT: + return visitor.visitExempt(); + case NONEXEMPT: + return visitor.visitNonexempt(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FlsaStatusEnum valueOf(String value) { + switch (value) { + case "SALARIED_NONEXEMPT": + return SALARIED_NONEXEMPT; + case "OWNER": + return OWNER; + case "EXEMPT": + return EXEMPT; + case "NONEXEMPT": + return NONEXEMPT; + default: + return new FlsaStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EXEMPT, + + SALARIED_NONEXEMPT, + + NONEXEMPT, + + OWNER, + + UNKNOWN + } + + public interface Visitor { + T visitExempt(); + + T visitSalariedNonexempt(); + + T visitNonexempt(); + + T visitOwner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/GenderEnum.java b/src/main/java/com/merge/api/hris/types/GenderEnum.java index cbeffa778..ff7501e22 100644 --- a/src/main/java/com/merge/api/hris/types/GenderEnum.java +++ b/src/main/java/com/merge/api/hris/types/GenderEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GenderEnum { - MALE("MALE"), +public final class GenderEnum { + public static final GenderEnum OTHER = new GenderEnum(Value.OTHER, "OTHER"); - FEMALE("FEMALE"), + public static final GenderEnum NON_BINARY = new GenderEnum(Value.NON_BINARY, "NON-BINARY"); - NON_BINARY("NON-BINARY"), + public static final GenderEnum PREFER_NOT_TO_DISCLOSE = + new GenderEnum(Value.PREFER_NOT_TO_DISCLOSE, "PREFER_NOT_TO_DISCLOSE"); - OTHER("OTHER"), + public static final GenderEnum FEMALE = new GenderEnum(Value.FEMALE, "FEMALE"); - PREFER_NOT_TO_DISCLOSE("PREFER_NOT_TO_DISCLOSE"); + public static final GenderEnum MALE = new GenderEnum(Value.MALE, "MALE"); - private final String value; + private final Value value; - GenderEnum(String value) { + private final String string; + + GenderEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof GenderEnum && this.string.equals(((GenderEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OTHER: + return visitor.visitOther(); + case NON_BINARY: + return visitor.visitNonBinary(); + case PREFER_NOT_TO_DISCLOSE: + return visitor.visitPreferNotToDisclose(); + case FEMALE: + return visitor.visitFemale(); + case MALE: + return visitor.visitMale(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GenderEnum valueOf(String value) { + switch (value) { + case "OTHER": + return OTHER; + case "NON-BINARY": + return NON_BINARY; + case "PREFER_NOT_TO_DISCLOSE": + return PREFER_NOT_TO_DISCLOSE; + case "FEMALE": + return FEMALE; + case "MALE": + return MALE; + default: + return new GenderEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + MALE, + + FEMALE, + + NON_BINARY, + + OTHER, + + PREFER_NOT_TO_DISCLOSE, + + UNKNOWN + } + + public interface Visitor { + T visitMale(); + + T visitFemale(); + + T visitNonBinary(); + + T visitOther(); + + T visitPreferNotToDisclose(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/GroupTypeEnum.java b/src/main/java/com/merge/api/hris/types/GroupTypeEnum.java index 4ba0798d1..9e8f6772e 100644 --- a/src/main/java/com/merge/api/hris/types/GroupTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/GroupTypeEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum GroupTypeEnum { - TEAM("TEAM"), +public final class GroupTypeEnum { + public static final GroupTypeEnum GROUP = new GroupTypeEnum(Value.GROUP, "GROUP"); - DEPARTMENT("DEPARTMENT"), + public static final GroupTypeEnum COST_CENTER = new GroupTypeEnum(Value.COST_CENTER, "COST_CENTER"); - COST_CENTER("COST_CENTER"), + public static final GroupTypeEnum BUSINESS_UNIT = new GroupTypeEnum(Value.BUSINESS_UNIT, "BUSINESS_UNIT"); - BUSINESS_UNIT("BUSINESS_UNIT"), + public static final GroupTypeEnum TEAM = new GroupTypeEnum(Value.TEAM, "TEAM"); - GROUP("GROUP"); + public static final GroupTypeEnum DEPARTMENT = new GroupTypeEnum(Value.DEPARTMENT, "DEPARTMENT"); - private final String value; + private final Value value; - GroupTypeEnum(String value) { + private final String string; + + GroupTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof GroupTypeEnum && this.string.equals(((GroupTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GROUP: + return visitor.visitGroup(); + case COST_CENTER: + return visitor.visitCostCenter(); + case BUSINESS_UNIT: + return visitor.visitBusinessUnit(); + case TEAM: + return visitor.visitTeam(); + case DEPARTMENT: + return visitor.visitDepartment(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static GroupTypeEnum valueOf(String value) { + switch (value) { + case "GROUP": + return GROUP; + case "COST_CENTER": + return COST_CENTER; + case "BUSINESS_UNIT": + return BUSINESS_UNIT; + case "TEAM": + return TEAM; + case "DEPARTMENT": + return DEPARTMENT; + default: + return new GroupTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + TEAM, + + DEPARTMENT, + + COST_CENTER, + + BUSINESS_UNIT, + + GROUP, + + UNKNOWN + } + + public interface Visitor { + T visitTeam(); + + T visitDepartment(); + + T visitCostCenter(); + + T visitBusinessUnit(); + + T visitGroup(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/IssueStatusEnum.java b/src/main/java/com/merge/api/hris/types/IssueStatusEnum.java index 4519b8a58..6bdd5afa4 100644 --- a/src/main/java/com/merge/api/hris/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/hris/types/IssuesListRequestStatus.java index d75c34e79..f7216bcb5 100644 --- a/src/main/java/com/merge/api/hris/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/hris/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LanguageEnum.java b/src/main/java/com/merge/api/hris/types/LanguageEnum.java index 7ff675b54..3002880ed 100644 --- a/src/main/java/com/merge/api/hris/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/hris/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/hris/types/LastSyncResultEnum.java index 6f34db619..efac035e0 100644 --- a/src/main/java/com/merge/api/hris/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/hris/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/hris/types/LinkedAccountsListRequestCategory.java index 2574937ff..b565f6446 100644 --- a/src/main/java/com/merge/api/hris/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/hris/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationTypeEnum.java b/src/main/java/com/merge/api/hris/types/LocationTypeEnum.java index e7ddb6d9b..4ef75fc9a 100644 --- a/src/main/java/com/merge/api/hris/types/LocationTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/LocationTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationTypeEnum { - HOME("HOME"), +public final class LocationTypeEnum { + public static final LocationTypeEnum WORK = new LocationTypeEnum(Value.WORK, "WORK"); - WORK("WORK"); + public static final LocationTypeEnum HOME = new LocationTypeEnum(Value.HOME, "HOME"); - private final String value; + private final Value value; - LocationTypeEnum(String value) { + private final String string; + + LocationTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationTypeEnum && this.string.equals(((LocationTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WORK: + return visitor.visitWork(); + case HOME: + return visitor.visitHome(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationTypeEnum valueOf(String value) { + switch (value) { + case "WORK": + return WORK; + case "HOME": + return HOME; + default: + return new LocationTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HOME, + + WORK, + + UNKNOWN + } + + public interface Visitor { + T visitHome(); + + T visitWork(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationsListRequestLocationType.java b/src/main/java/com/merge/api/hris/types/LocationsListRequestLocationType.java index cb3f14ce7..2962a4659 100644 --- a/src/main/java/com/merge/api/hris/types/LocationsListRequestLocationType.java +++ b/src/main/java/com/merge/api/hris/types/LocationsListRequestLocationType.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationsListRequestLocationType { - HOME("HOME"), +public final class LocationsListRequestLocationType { + public static final LocationsListRequestLocationType WORK = + new LocationsListRequestLocationType(Value.WORK, "WORK"); - WORK("WORK"); + public static final LocationsListRequestLocationType HOME = + new LocationsListRequestLocationType(Value.HOME, "HOME"); - private final String value; + private final Value value; - LocationsListRequestLocationType(String value) { + private final String string; + + LocationsListRequestLocationType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationsListRequestLocationType + && this.string.equals(((LocationsListRequestLocationType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WORK: + return visitor.visitWork(); + case HOME: + return visitor.visitHome(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationsListRequestLocationType valueOf(String value) { + switch (value) { + case "WORK": + return WORK; + case "HOME": + return HOME; + default: + return new LocationsListRequestLocationType(Value.UNKNOWN, value); + } + } + + public enum Value { + HOME, + + WORK, + + UNKNOWN + } + + public interface Visitor { + T visitHome(); + + T visitWork(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationsListRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/LocationsListRequestRemoteFields.java index 0c10b0c11..054c69874 100644 --- a/src/main/java/com/merge/api/hris/types/LocationsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/LocationsListRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationsListRequestRemoteFields { - COUNTRY("country"), +public final class LocationsListRequestRemoteFields { + public static final LocationsListRequestRemoteFields COUNTRY = + new LocationsListRequestRemoteFields(Value.COUNTRY, "country"); - COUNTRY_LOCATION_TYPE("country,location_type"), + public static final LocationsListRequestRemoteFields LOCATION_TYPE = + new LocationsListRequestRemoteFields(Value.LOCATION_TYPE, "location_type"); - LOCATION_TYPE("location_type"); + public static final LocationsListRequestRemoteFields COUNTRY_LOCATION_TYPE = + new LocationsListRequestRemoteFields(Value.COUNTRY_LOCATION_TYPE, "country,location_type"); - private final String value; + private final Value value; - LocationsListRequestRemoteFields(String value) { + private final String string; + + LocationsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationsListRequestRemoteFields + && this.string.equals(((LocationsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COUNTRY: + return visitor.visitCountry(); + case LOCATION_TYPE: + return visitor.visitLocationType(); + case COUNTRY_LOCATION_TYPE: + return visitor.visitCountryLocationType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "country": + return COUNTRY; + case "location_type": + return LOCATION_TYPE; + case "country,location_type": + return COUNTRY_LOCATION_TYPE; + default: + return new LocationsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + COUNTRY, + + COUNTRY_LOCATION_TYPE, + + LOCATION_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitCountry(); + + T visitCountryLocationType(); + + T visitLocationType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/LocationsListRequestShowEnumOrigins.java index 157dad022..67cd735fb 100644 --- a/src/main/java/com/merge/api/hris/types/LocationsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/LocationsListRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationsListRequestShowEnumOrigins { - COUNTRY("country"), +public final class LocationsListRequestShowEnumOrigins { + public static final LocationsListRequestShowEnumOrigins COUNTRY = + new LocationsListRequestShowEnumOrigins(Value.COUNTRY, "country"); - COUNTRY_LOCATION_TYPE("country,location_type"), + public static final LocationsListRequestShowEnumOrigins LOCATION_TYPE = + new LocationsListRequestShowEnumOrigins(Value.LOCATION_TYPE, "location_type"); - LOCATION_TYPE("location_type"); + public static final LocationsListRequestShowEnumOrigins COUNTRY_LOCATION_TYPE = + new LocationsListRequestShowEnumOrigins(Value.COUNTRY_LOCATION_TYPE, "country,location_type"); - private final String value; + private final Value value; - LocationsListRequestShowEnumOrigins(String value) { + private final String string; + + LocationsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationsListRequestShowEnumOrigins + && this.string.equals(((LocationsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COUNTRY: + return visitor.visitCountry(); + case LOCATION_TYPE: + return visitor.visitLocationType(); + case COUNTRY_LOCATION_TYPE: + return visitor.visitCountryLocationType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "country": + return COUNTRY; + case "location_type": + return LOCATION_TYPE; + case "country,location_type": + return COUNTRY_LOCATION_TYPE; + default: + return new LocationsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + COUNTRY, + + COUNTRY_LOCATION_TYPE, + + LOCATION_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitCountry(); + + T visitCountryLocationType(); + + T visitLocationType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestRemoteFields.java index 7035f2e18..5824111e4 100644 --- a/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationsRetrieveRequestRemoteFields { - COUNTRY("country"), +public final class LocationsRetrieveRequestRemoteFields { + public static final LocationsRetrieveRequestRemoteFields COUNTRY = + new LocationsRetrieveRequestRemoteFields(Value.COUNTRY, "country"); - COUNTRY_LOCATION_TYPE("country,location_type"), + public static final LocationsRetrieveRequestRemoteFields LOCATION_TYPE = + new LocationsRetrieveRequestRemoteFields(Value.LOCATION_TYPE, "location_type"); - LOCATION_TYPE("location_type"); + public static final LocationsRetrieveRequestRemoteFields COUNTRY_LOCATION_TYPE = + new LocationsRetrieveRequestRemoteFields(Value.COUNTRY_LOCATION_TYPE, "country,location_type"); - private final String value; + private final Value value; - LocationsRetrieveRequestRemoteFields(String value) { + private final String string; + + LocationsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationsRetrieveRequestRemoteFields + && this.string.equals(((LocationsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COUNTRY: + return visitor.visitCountry(); + case LOCATION_TYPE: + return visitor.visitLocationType(); + case COUNTRY_LOCATION_TYPE: + return visitor.visitCountryLocationType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "country": + return COUNTRY; + case "location_type": + return LOCATION_TYPE; + case "country,location_type": + return COUNTRY_LOCATION_TYPE; + default: + return new LocationsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + COUNTRY, + + COUNTRY_LOCATION_TYPE, + + LOCATION_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitCountry(); + + T visitCountryLocationType(); + + T visitLocationType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestShowEnumOrigins.java index 113da86f3..bc5ba48fb 100644 --- a/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/LocationsRetrieveRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LocationsRetrieveRequestShowEnumOrigins { - COUNTRY("country"), +public final class LocationsRetrieveRequestShowEnumOrigins { + public static final LocationsRetrieveRequestShowEnumOrigins COUNTRY = + new LocationsRetrieveRequestShowEnumOrigins(Value.COUNTRY, "country"); - COUNTRY_LOCATION_TYPE("country,location_type"), + public static final LocationsRetrieveRequestShowEnumOrigins LOCATION_TYPE = + new LocationsRetrieveRequestShowEnumOrigins(Value.LOCATION_TYPE, "location_type"); - LOCATION_TYPE("location_type"); + public static final LocationsRetrieveRequestShowEnumOrigins COUNTRY_LOCATION_TYPE = + new LocationsRetrieveRequestShowEnumOrigins(Value.COUNTRY_LOCATION_TYPE, "country,location_type"); - private final String value; + private final Value value; - LocationsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + LocationsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LocationsRetrieveRequestShowEnumOrigins + && this.string.equals(((LocationsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case COUNTRY: + return visitor.visitCountry(); + case LOCATION_TYPE: + return visitor.visitLocationType(); + case COUNTRY_LOCATION_TYPE: + return visitor.visitCountryLocationType(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LocationsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "country": + return COUNTRY; + case "location_type": + return LOCATION_TYPE; + case "country,location_type": + return COUNTRY_LOCATION_TYPE; + default: + return new LocationsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + COUNTRY, + + COUNTRY_LOCATION_TYPE, + + LOCATION_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitCountry(); + + T visitCountryLocationType(); + + T visitLocationType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/MaritalStatusEnum.java b/src/main/java/com/merge/api/hris/types/MaritalStatusEnum.java index df776306b..fcd878300 100644 --- a/src/main/java/com/merge/api/hris/types/MaritalStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/MaritalStatusEnum.java @@ -3,28 +3,115 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MaritalStatusEnum { - SINGLE("SINGLE"), +public final class MaritalStatusEnum { + public static final MaritalStatusEnum QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD = new MaritalStatusEnum( + Value.QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD, "QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD"); - MARRIED_FILING_JOINTLY("MARRIED_FILING_JOINTLY"), + public static final MaritalStatusEnum SINGLE = new MaritalStatusEnum(Value.SINGLE, "SINGLE"); - MARRIED_FILING_SEPARATELY("MARRIED_FILING_SEPARATELY"), + public static final MaritalStatusEnum HEAD_OF_HOUSEHOLD = + new MaritalStatusEnum(Value.HEAD_OF_HOUSEHOLD, "HEAD_OF_HOUSEHOLD"); - HEAD_OF_HOUSEHOLD("HEAD_OF_HOUSEHOLD"), + public static final MaritalStatusEnum MARRIED_FILING_JOINTLY = + new MaritalStatusEnum(Value.MARRIED_FILING_JOINTLY, "MARRIED_FILING_JOINTLY"); - QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD("QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD"); + public static final MaritalStatusEnum MARRIED_FILING_SEPARATELY = + new MaritalStatusEnum(Value.MARRIED_FILING_SEPARATELY, "MARRIED_FILING_SEPARATELY"); - private final String value; + private final Value value; - MaritalStatusEnum(String value) { + private final String string; + + MaritalStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof MaritalStatusEnum && this.string.equals(((MaritalStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD: + return visitor.visitQualifyingWidowOrWidowerWithDependentChild(); + case SINGLE: + return visitor.visitSingle(); + case HEAD_OF_HOUSEHOLD: + return visitor.visitHeadOfHousehold(); + case MARRIED_FILING_JOINTLY: + return visitor.visitMarriedFilingJointly(); + case MARRIED_FILING_SEPARATELY: + return visitor.visitMarriedFilingSeparately(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MaritalStatusEnum valueOf(String value) { + switch (value) { + case "QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD": + return QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD; + case "SINGLE": + return SINGLE; + case "HEAD_OF_HOUSEHOLD": + return HEAD_OF_HOUSEHOLD; + case "MARRIED_FILING_JOINTLY": + return MARRIED_FILING_JOINTLY; + case "MARRIED_FILING_SEPARATELY": + return MARRIED_FILING_SEPARATELY; + default: + return new MaritalStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SINGLE, + + MARRIED_FILING_JOINTLY, + + MARRIED_FILING_SEPARATELY, + + HEAD_OF_HOUSEHOLD, + + QUALIFYING_WIDOW_OR_WIDOWER_WITH_DEPENDENT_CHILD, + + UNKNOWN + } + + public interface Visitor { + T visitSingle(); + + T visitMarriedFilingJointly(); + + T visitMarriedFilingSeparately(); + + T visitHeadOfHousehold(); + + T visitQualifyingWidowOrWidowerWithDependentChild(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/MethodEnum.java b/src/main/java/com/merge/api/hris/types/MethodEnum.java index 7dd25e7f7..870bea19e 100644 --- a/src/main/java/com/merge/api/hris/types/MethodEnum.java +++ b/src/main/java/com/merge/api/hris/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayCurrencyEnum.java b/src/main/java/com/merge/api/hris/types/PayCurrencyEnum.java index 8b73b81ce..d25b4b338 100644 --- a/src/main/java/com/merge/api/hris/types/PayCurrencyEnum.java +++ b/src/main/java/com/merge/api/hris/types/PayCurrencyEnum.java @@ -3,630 +3,3121 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayCurrencyEnum { - XUA("XUA"), +public final class PayCurrencyEnum { + public static final PayCurrencyEnum PES = new PayCurrencyEnum(Value.PES, "PES"); - AFN("AFN"), + public static final PayCurrencyEnum UAK = new PayCurrencyEnum(Value.UAK, "UAK"); - AFA("AFA"), + public static final PayCurrencyEnum PHP = new PayCurrencyEnum(Value.PHP, "PHP"); - ALL("ALL"), + public static final PayCurrencyEnum XAU = new PayCurrencyEnum(Value.XAU, "XAU"); - ALK("ALK"), + public static final PayCurrencyEnum XCD = new PayCurrencyEnum(Value.XCD, "XCD"); - DZD("DZD"), + public static final PayCurrencyEnum MVR = new PayCurrencyEnum(Value.MVR, "MVR"); - ADP("ADP"), + public static final PayCurrencyEnum ARP = new PayCurrencyEnum(Value.ARP, "ARP"); - AOA("AOA"), + public static final PayCurrencyEnum JOD = new PayCurrencyEnum(Value.JOD, "JOD"); - AOK("AOK"), + public static final PayCurrencyEnum XDR = new PayCurrencyEnum(Value.XDR, "XDR"); - AON("AON"), + public static final PayCurrencyEnum HKD = new PayCurrencyEnum(Value.HKD, "HKD"); - AOR("AOR"), + public static final PayCurrencyEnum INR = new PayCurrencyEnum(Value.INR, "INR"); - ARA("ARA"), + public static final PayCurrencyEnum THB = new PayCurrencyEnum(Value.THB, "THB"); - ARS("ARS"), + public static final PayCurrencyEnum GWP = new PayCurrencyEnum(Value.GWP, "GWP"); - ARM("ARM"), + public static final PayCurrencyEnum XXX = new PayCurrencyEnum(Value.XXX, "XXX"); - ARP("ARP"), + public static final PayCurrencyEnum ITL = new PayCurrencyEnum(Value.ITL, "ITL"); - ARL("ARL"), + public static final PayCurrencyEnum STN = new PayCurrencyEnum(Value.STN, "STN"); - AMD("AMD"), + public static final PayCurrencyEnum CAD = new PayCurrencyEnum(Value.CAD, "CAD"); - AWG("AWG"), + public static final PayCurrencyEnum ESP = new PayCurrencyEnum(Value.ESP, "ESP"); - AUD("AUD"), + public static final PayCurrencyEnum XPF = new PayCurrencyEnum(Value.XPF, "XPF"); - ATS("ATS"), + public static final PayCurrencyEnum MAF = new PayCurrencyEnum(Value.MAF, "MAF"); - AZN("AZN"), + public static final PayCurrencyEnum COP = new PayCurrencyEnum(Value.COP, "COP"); - AZM("AZM"), + public static final PayCurrencyEnum MDC = new PayCurrencyEnum(Value.MDC, "MDC"); - BSD("BSD"), + public static final PayCurrencyEnum ZAR = new PayCurrencyEnum(Value.ZAR, "ZAR"); - BHD("BHD"), + public static final PayCurrencyEnum MRO = new PayCurrencyEnum(Value.MRO, "MRO"); - BDT("BDT"), + public static final PayCurrencyEnum VEB = new PayCurrencyEnum(Value.VEB, "VEB"); - BBD("BBD"), + public static final PayCurrencyEnum LSL = new PayCurrencyEnum(Value.LSL, "LSL"); - BYN("BYN"), + public static final PayCurrencyEnum SKK = new PayCurrencyEnum(Value.SKK, "SKK"); - BYB("BYB"), + public static final PayCurrencyEnum VUV = new PayCurrencyEnum(Value.VUV, "VUV"); - BYR("BYR"), + public static final PayCurrencyEnum XBB = new PayCurrencyEnum(Value.XBB, "XBB"); - BEF("BEF"), + public static final PayCurrencyEnum TND = new PayCurrencyEnum(Value.TND, "TND"); - BEC("BEC"), + public static final PayCurrencyEnum CSK = new PayCurrencyEnum(Value.CSK, "CSK"); - BEL("BEL"), + public static final PayCurrencyEnum IMP = new PayCurrencyEnum(Value.IMP, "IMP"); - BZD("BZD"), + public static final PayCurrencyEnum AOK = new PayCurrencyEnum(Value.AOK, "AOK"); - BMD("BMD"), + public static final PayCurrencyEnum GIP = new PayCurrencyEnum(Value.GIP, "GIP"); - BTN("BTN"), + public static final PayCurrencyEnum ISJ = new PayCurrencyEnum(Value.ISJ, "ISJ"); - BOB("BOB"), + public static final PayCurrencyEnum BMD = new PayCurrencyEnum(Value.BMD, "BMD"); - BOL("BOL"), + public static final PayCurrencyEnum LUC = new PayCurrencyEnum(Value.LUC, "LUC"); - BOV("BOV"), + public static final PayCurrencyEnum BGN = new PayCurrencyEnum(Value.BGN, "BGN"); - BOP("BOP"), + public static final PayCurrencyEnum ARL = new PayCurrencyEnum(Value.ARL, "ARL"); - BAM("BAM"), + public static final PayCurrencyEnum SSP = new PayCurrencyEnum(Value.SSP, "SSP"); - BAD("BAD"), + public static final PayCurrencyEnum MNT = new PayCurrencyEnum(Value.MNT, "MNT"); - BAN("BAN"), + public static final PayCurrencyEnum SLL = new PayCurrencyEnum(Value.SLL, "SLL"); - BWP("BWP"), + public static final PayCurrencyEnum ATS = new PayCurrencyEnum(Value.ATS, "ATS"); - BRC("BRC"), + public static final PayCurrencyEnum XFU = new PayCurrencyEnum(Value.XFU, "XFU"); - BRZ("BRZ"), + public static final PayCurrencyEnum XRE = new PayCurrencyEnum(Value.XRE, "XRE"); - BRE("BRE"), + public static final PayCurrencyEnum BAD = new PayCurrencyEnum(Value.BAD, "BAD"); - BRR("BRR"), + public static final PayCurrencyEnum AZM = new PayCurrencyEnum(Value.AZM, "AZM"); - BRN("BRN"), + public static final PayCurrencyEnum BRL = new PayCurrencyEnum(Value.BRL, "BRL"); - BRB("BRB"), + public static final PayCurrencyEnum AZN = new PayCurrencyEnum(Value.AZN, "AZN"); - BRL("BRL"), + public static final PayCurrencyEnum TWD = new PayCurrencyEnum(Value.TWD, "TWD"); - GBP("GBP"), + public static final PayCurrencyEnum NOK = new PayCurrencyEnum(Value.NOK, "NOK"); - BND("BND"), + public static final PayCurrencyEnum SIT = new PayCurrencyEnum(Value.SIT, "SIT"); - BGL("BGL"), + public static final PayCurrencyEnum KZT = new PayCurrencyEnum(Value.KZT, "KZT"); - BGN("BGN"), + public static final PayCurrencyEnum GQE = new PayCurrencyEnum(Value.GQE, "GQE"); - BGO("BGO"), + public static final PayCurrencyEnum ILR = new PayCurrencyEnum(Value.ILR, "ILR"); - BGM("BGM"), + public static final PayCurrencyEnum GHS = new PayCurrencyEnum(Value.GHS, "GHS"); - BUK("BUK"), + public static final PayCurrencyEnum VNN = new PayCurrencyEnum(Value.VNN, "VNN"); - BIF("BIF"), + public static final PayCurrencyEnum COU = new PayCurrencyEnum(Value.COU, "COU"); - XPF("XPF"), + public static final PayCurrencyEnum CDF = new PayCurrencyEnum(Value.CDF, "CDF"); - KHR("KHR"), + public static final PayCurrencyEnum EGP = new PayCurrencyEnum(Value.EGP, "EGP"); - CAD("CAD"), + public static final PayCurrencyEnum KPW = new PayCurrencyEnum(Value.KPW, "KPW"); - CVE("CVE"), + public static final PayCurrencyEnum VEF = new PayCurrencyEnum(Value.VEF, "VEF"); - KYD("KYD"), + public static final PayCurrencyEnum XBC = new PayCurrencyEnum(Value.XBC, "XBC"); - XAF("XAF"), + public static final PayCurrencyEnum SDG = new PayCurrencyEnum(Value.SDG, "SDG"); - CLE("CLE"), + public static final PayCurrencyEnum GRD = new PayCurrencyEnum(Value.GRD, "GRD"); - CLP("CLP"), + public static final PayCurrencyEnum MDL = new PayCurrencyEnum(Value.MDL, "MDL"); - CLF("CLF"), + public static final PayCurrencyEnum BEF = new PayCurrencyEnum(Value.BEF, "BEF"); - CNX("CNX"), + public static final PayCurrencyEnum SBD = new PayCurrencyEnum(Value.SBD, "SBD"); - CNY("CNY"), + public static final PayCurrencyEnum AUD = new PayCurrencyEnum(Value.AUD, "AUD"); - CNH("CNH"), + public static final PayCurrencyEnum BRE = new PayCurrencyEnum(Value.BRE, "BRE"); - COP("COP"), + public static final PayCurrencyEnum ISK = new PayCurrencyEnum(Value.ISK, "ISK"); - COU("COU"), + public static final PayCurrencyEnum HTG = new PayCurrencyEnum(Value.HTG, "HTG"); - KMF("KMF"), + public static final PayCurrencyEnum KGS = new PayCurrencyEnum(Value.KGS, "KGS"); - CDF("CDF"), + public static final PayCurrencyEnum AON = new PayCurrencyEnum(Value.AON, "AON"); - CRC("CRC"), + public static final PayCurrencyEnum BGM = new PayCurrencyEnum(Value.BGM, "BGM"); - HRD("HRD"), + public static final PayCurrencyEnum HRD = new PayCurrencyEnum(Value.HRD, "HRD"); - HRK("HRK"), + public static final PayCurrencyEnum UYW = new PayCurrencyEnum(Value.UYW, "UYW"); - CUC("CUC"), + public static final PayCurrencyEnum KES = new PayCurrencyEnum(Value.KES, "KES"); - CUP("CUP"), + public static final PayCurrencyEnum SDP = new PayCurrencyEnum(Value.SDP, "SDP"); - CYP("CYP"), + public static final PayCurrencyEnum PLZ = new PayCurrencyEnum(Value.PLZ, "PLZ"); - CZK("CZK"), + public static final PayCurrencyEnum CLP = new PayCurrencyEnum(Value.CLP, "CLP"); - CSK("CSK"), + public static final PayCurrencyEnum KHR = new PayCurrencyEnum(Value.KHR, "KHR"); - DKK("DKK"), + public static final PayCurrencyEnum NGN = new PayCurrencyEnum(Value.NGN, "NGN"); - DJF("DJF"), + public static final PayCurrencyEnum NZD = new PayCurrencyEnum(Value.NZD, "NZD"); - DOP("DOP"), + public static final PayCurrencyEnum HRK = new PayCurrencyEnum(Value.HRK, "HRK"); - NLG("NLG"), + public static final PayCurrencyEnum IDR = new PayCurrencyEnum(Value.IDR, "IDR"); - XCD("XCD"), + public static final PayCurrencyEnum MYR = new PayCurrencyEnum(Value.MYR, "MYR"); - DDM("DDM"), + public static final PayCurrencyEnum BWP = new PayCurrencyEnum(Value.BWP, "BWP"); - ECS("ECS"), + public static final PayCurrencyEnum BIF = new PayCurrencyEnum(Value.BIF, "BIF"); - ECV("ECV"), + public static final PayCurrencyEnum PKR = new PayCurrencyEnum(Value.PKR, "PKR"); - EGP("EGP"), + public static final PayCurrencyEnum ZWD = new PayCurrencyEnum(Value.ZWD, "ZWD"); - GQE("GQE"), + public static final PayCurrencyEnum FJD = new PayCurrencyEnum(Value.FJD, "FJD"); - ERN("ERN"), + public static final PayCurrencyEnum MGA = new PayCurrencyEnum(Value.MGA, "MGA"); - EEK("EEK"), + public static final PayCurrencyEnum PGK = new PayCurrencyEnum(Value.PGK, "PGK"); - ETB("ETB"), + public static final PayCurrencyEnum JPY = new PayCurrencyEnum(Value.JPY, "JPY"); - EUR("EUR"), + public static final PayCurrencyEnum GYD = new PayCurrencyEnum(Value.GYD, "GYD"); - XBA("XBA"), + public static final PayCurrencyEnum NIC = new PayCurrencyEnum(Value.NIC, "NIC"); - XEU("XEU"), + public static final PayCurrencyEnum SOS = new PayCurrencyEnum(Value.SOS, "SOS"); - XBB("XBB"), + public static final PayCurrencyEnum LKR = new PayCurrencyEnum(Value.LKR, "LKR"); - XBC("XBC"), + public static final PayCurrencyEnum MKN = new PayCurrencyEnum(Value.MKN, "MKN"); - XBD("XBD"), + public static final PayCurrencyEnum MLF = new PayCurrencyEnum(Value.MLF, "MLF"); - FKP("FKP"), + public static final PayCurrencyEnum KMF = new PayCurrencyEnum(Value.KMF, "KMF"); - FJD("FJD"), + public static final PayCurrencyEnum HNL = new PayCurrencyEnum(Value.HNL, "HNL"); - FIM("FIM"), + public static final PayCurrencyEnum GHC = new PayCurrencyEnum(Value.GHC, "GHC"); - FRF("FRF"), + public static final PayCurrencyEnum GWE = new PayCurrencyEnum(Value.GWE, "GWE"); - XFO("XFO"), + public static final PayCurrencyEnum TJS = new PayCurrencyEnum(Value.TJS, "TJS"); - XFU("XFU"), + public static final PayCurrencyEnum SCR = new PayCurrencyEnum(Value.SCR, "SCR"); - GMD("GMD"), + public static final PayCurrencyEnum PEN = new PayCurrencyEnum(Value.PEN, "PEN"); - GEK("GEK"), + public static final PayCurrencyEnum USD = new PayCurrencyEnum(Value.USD, "USD"); - GEL("GEL"), + public static final PayCurrencyEnum LBP = new PayCurrencyEnum(Value.LBP, "LBP"); - DEM("DEM"), + public static final PayCurrencyEnum GEL = new PayCurrencyEnum(Value.GEL, "GEL"); - GHS("GHS"), + public static final PayCurrencyEnum MTL = new PayCurrencyEnum(Value.MTL, "MTL"); - GHC("GHC"), + public static final PayCurrencyEnum SRD = new PayCurrencyEnum(Value.SRD, "SRD"); - GIP("GIP"), + public static final PayCurrencyEnum XSU = new PayCurrencyEnum(Value.XSU, "XSU"); - XAU("XAU"), + public static final PayCurrencyEnum MWK = new PayCurrencyEnum(Value.MWK, "MWK"); - GRD("GRD"), + public static final PayCurrencyEnum VES = new PayCurrencyEnum(Value.VES, "VES"); - GTQ("GTQ"), + public static final PayCurrencyEnum BND = new PayCurrencyEnum(Value.BND, "BND"); - GWP("GWP"), + public static final PayCurrencyEnum AOA = new PayCurrencyEnum(Value.AOA, "AOA"); - GNF("GNF"), + public static final PayCurrencyEnum ZMW = new PayCurrencyEnum(Value.ZMW, "ZMW"); - GNS("GNS"), + public static final PayCurrencyEnum CNX = new PayCurrencyEnum(Value.CNX, "CNX"); - GYD("GYD"), + public static final PayCurrencyEnum ILP = new PayCurrencyEnum(Value.ILP, "ILP"); - HTG("HTG"), + public static final PayCurrencyEnum SYP = new PayCurrencyEnum(Value.SYP, "SYP"); - HNL("HNL"), + public static final PayCurrencyEnum JMD = new PayCurrencyEnum(Value.JMD, "JMD"); - HKD("HKD"), + public static final PayCurrencyEnum UYI = new PayCurrencyEnum(Value.UYI, "UYI"); - HUF("HUF"), + public static final PayCurrencyEnum BRR = new PayCurrencyEnum(Value.BRR, "BRR"); - IMP("IMP"), + public static final PayCurrencyEnum XAF = new PayCurrencyEnum(Value.XAF, "XAF"); - ISK("ISK"), + public static final PayCurrencyEnum FIM = new PayCurrencyEnum(Value.FIM, "FIM"); - ISJ("ISJ"), + public static final PayCurrencyEnum CZK = new PayCurrencyEnum(Value.CZK, "CZK"); - INR("INR"), + public static final PayCurrencyEnum AED = new PayCurrencyEnum(Value.AED, "AED"); - IDR("IDR"), + public static final PayCurrencyEnum USS = new PayCurrencyEnum(Value.USS, "USS"); - IRR("IRR"), + public static final PayCurrencyEnum EEK = new PayCurrencyEnum(Value.EEK, "EEK"); - IQD("IQD"), + public static final PayCurrencyEnum CVE = new PayCurrencyEnum(Value.CVE, "CVE"); - IEP("IEP"), + public static final PayCurrencyEnum CNH = new PayCurrencyEnum(Value.CNH, "CNH"); - ILS("ILS"), + public static final PayCurrencyEnum QAR = new PayCurrencyEnum(Value.QAR, "QAR"); - ILP("ILP"), + public static final PayCurrencyEnum TOP = new PayCurrencyEnum(Value.TOP, "TOP"); - ILR("ILR"), + public static final PayCurrencyEnum ZWL = new PayCurrencyEnum(Value.ZWL, "ZWL"); - ITL("ITL"), + public static final PayCurrencyEnum TJR = new PayCurrencyEnum(Value.TJR, "TJR"); - JMD("JMD"), + public static final PayCurrencyEnum UYP = new PayCurrencyEnum(Value.UYP, "UYP"); - JPY("JPY"), + public static final PayCurrencyEnum BRC = new PayCurrencyEnum(Value.BRC, "BRC"); - JOD("JOD"), + public static final PayCurrencyEnum BRZ = new PayCurrencyEnum(Value.BRZ, "BRZ"); - KZT("KZT"), + public static final PayCurrencyEnum ERN = new PayCurrencyEnum(Value.ERN, "ERN"); - KES("KES"), + public static final PayCurrencyEnum ZRN = new PayCurrencyEnum(Value.ZRN, "ZRN"); - KWD("KWD"), + public static final PayCurrencyEnum SUR = new PayCurrencyEnum(Value.SUR, "SUR"); - KGS("KGS"), + public static final PayCurrencyEnum RHD = new PayCurrencyEnum(Value.RHD, "RHD"); - LAK("LAK"), + public static final PayCurrencyEnum RWF = new PayCurrencyEnum(Value.RWF, "RWF"); - LVL("LVL"), + public static final PayCurrencyEnum BGO = new PayCurrencyEnum(Value.BGO, "BGO"); - LVR("LVR"), + public static final PayCurrencyEnum GEK = new PayCurrencyEnum(Value.GEK, "GEK"); - LBP("LBP"), + public static final PayCurrencyEnum BOL = new PayCurrencyEnum(Value.BOL, "BOL"); - LSL("LSL"), + public static final PayCurrencyEnum SAR = new PayCurrencyEnum(Value.SAR, "SAR"); - LRD("LRD"), + public static final PayCurrencyEnum MVP = new PayCurrencyEnum(Value.MVP, "MVP"); - LYD("LYD"), + public static final PayCurrencyEnum BTN = new PayCurrencyEnum(Value.BTN, "BTN"); - LTL("LTL"), + public static final PayCurrencyEnum ZAL = new PayCurrencyEnum(Value.ZAL, "ZAL"); - LTT("LTT"), + public static final PayCurrencyEnum TZS = new PayCurrencyEnum(Value.TZS, "TZS"); - LUL("LUL"), + public static final PayCurrencyEnum DJF = new PayCurrencyEnum(Value.DJF, "DJF"); - LUC("LUC"), + public static final PayCurrencyEnum GTQ = new PayCurrencyEnum(Value.GTQ, "GTQ"); - LUF("LUF"), + public static final PayCurrencyEnum ECS = new PayCurrencyEnum(Value.ECS, "ECS"); - MOP("MOP"), + public static final PayCurrencyEnum CHF = new PayCurrencyEnum(Value.CHF, "CHF"); - MKD("MKD"), + public static final PayCurrencyEnum ANG = new PayCurrencyEnum(Value.ANG, "ANG"); - MKN("MKN"), + public static final PayCurrencyEnum BSD = new PayCurrencyEnum(Value.BSD, "BSD"); - MGA("MGA"), + public static final PayCurrencyEnum LTT = new PayCurrencyEnum(Value.LTT, "LTT"); - MGF("MGF"), + public static final PayCurrencyEnum MAD = new PayCurrencyEnum(Value.MAD, "MAD"); - MWK("MWK"), + public static final PayCurrencyEnum XPD = new PayCurrencyEnum(Value.XPD, "XPD"); - MYR("MYR"), + public static final PayCurrencyEnum MOP = new PayCurrencyEnum(Value.MOP, "MOP"); - MVR("MVR"), + public static final PayCurrencyEnum BYB = new PayCurrencyEnum(Value.BYB, "BYB"); - MVP("MVP"), + public static final PayCurrencyEnum LYD = new PayCurrencyEnum(Value.LYD, "LYD"); - MLF("MLF"), + public static final PayCurrencyEnum XTS = new PayCurrencyEnum(Value.XTS, "XTS"); - MTL("MTL"), + public static final PayCurrencyEnum KWD = new PayCurrencyEnum(Value.KWD, "KWD"); - MTP("MTP"), + public static final PayCurrencyEnum BAN = new PayCurrencyEnum(Value.BAN, "BAN"); - MRU("MRU"), + public static final PayCurrencyEnum SVC = new PayCurrencyEnum(Value.SVC, "SVC"); - MRO("MRO"), + public static final PayCurrencyEnum ALL = new PayCurrencyEnum(Value.ALL, "ALL"); - MUR("MUR"), + public static final PayCurrencyEnum SHP = new PayCurrencyEnum(Value.SHP, "SHP"); - MXV("MXV"), + public static final PayCurrencyEnum MGF = new PayCurrencyEnum(Value.MGF, "MGF"); - MXN("MXN"), + public static final PayCurrencyEnum MRU = new PayCurrencyEnum(Value.MRU, "MRU"); - MXP("MXP"), + public static final PayCurrencyEnum BRB = new PayCurrencyEnum(Value.BRB, "BRB"); - MDC("MDC"), + public static final PayCurrencyEnum CUP = new PayCurrencyEnum(Value.CUP, "CUP"); - MDL("MDL"), + public static final PayCurrencyEnum LRD = new PayCurrencyEnum(Value.LRD, "LRD"); - MCF("MCF"), + public static final PayCurrencyEnum MUR = new PayCurrencyEnum(Value.MUR, "MUR"); - MNT("MNT"), + public static final PayCurrencyEnum PAB = new PayCurrencyEnum(Value.PAB, "PAB"); - MAD("MAD"), + public static final PayCurrencyEnum KRH = new PayCurrencyEnum(Value.KRH, "KRH"); - MAF("MAF"), + public static final PayCurrencyEnum XBD = new PayCurrencyEnum(Value.XBD, "XBD"); - MZE("MZE"), + public static final PayCurrencyEnum YER = new PayCurrencyEnum(Value.YER, "YER"); - MZN("MZN"), + public static final PayCurrencyEnum AFA = new PayCurrencyEnum(Value.AFA, "AFA"); - MZM("MZM"), + public static final PayCurrencyEnum BGL = new PayCurrencyEnum(Value.BGL, "BGL"); - MMK("MMK"), + public static final PayCurrencyEnum STD = new PayCurrencyEnum(Value.STD, "STD"); - NAD("NAD"), + public static final PayCurrencyEnum NPR = new PayCurrencyEnum(Value.NPR, "NPR"); - NPR("NPR"), + public static final PayCurrencyEnum XPT = new PayCurrencyEnum(Value.XPT, "XPT"); - ANG("ANG"), + public static final PayCurrencyEnum UGX = new PayCurrencyEnum(Value.UGX, "UGX"); - TWD("TWD"), + public static final PayCurrencyEnum YUR = new PayCurrencyEnum(Value.YUR, "YUR"); - NZD("NZD"), + public static final PayCurrencyEnum TTD = new PayCurrencyEnum(Value.TTD, "TTD"); - NIO("NIO"), + public static final PayCurrencyEnum BYR = new PayCurrencyEnum(Value.BYR, "BYR"); - NIC("NIC"), + public static final PayCurrencyEnum EUR = new PayCurrencyEnum(Value.EUR, "EUR"); - NGN("NGN"), + public static final PayCurrencyEnum SEK = new PayCurrencyEnum(Value.SEK, "SEK"); - KPW("KPW"), + public static final PayCurrencyEnum KYD = new PayCurrencyEnum(Value.KYD, "KYD"); - NOK("NOK"), + public static final PayCurrencyEnum GNF = new PayCurrencyEnum(Value.GNF, "GNF"); - OMR("OMR"), + public static final PayCurrencyEnum BUK = new PayCurrencyEnum(Value.BUK, "BUK"); - PKR("PKR"), + public static final PayCurrencyEnum AFN = new PayCurrencyEnum(Value.AFN, "AFN"); - XPD("XPD"), + public static final PayCurrencyEnum CNY = new PayCurrencyEnum(Value.CNY, "CNY"); - PAB("PAB"), + public static final PayCurrencyEnum PYG = new PayCurrencyEnum(Value.PYG, "PYG"); - PGK("PGK"), + public static final PayCurrencyEnum CSD = new PayCurrencyEnum(Value.CSD, "CSD"); - PYG("PYG"), + public static final PayCurrencyEnum BOV = new PayCurrencyEnum(Value.BOV, "BOV"); - PEI("PEI"), + public static final PayCurrencyEnum XAG = new PayCurrencyEnum(Value.XAG, "XAG"); - PEN("PEN"), + public static final PayCurrencyEnum ARA = new PayCurrencyEnum(Value.ARA, "ARA"); - PES("PES"), + public static final PayCurrencyEnum DEM = new PayCurrencyEnum(Value.DEM, "DEM"); - PHP("PHP"), + public static final PayCurrencyEnum BOB = new PayCurrencyEnum(Value.BOB, "BOB"); - XPT("XPT"), + public static final PayCurrencyEnum ALK = new PayCurrencyEnum(Value.ALK, "ALK"); - PLN("PLN"), + public static final PayCurrencyEnum IEP = new PayCurrencyEnum(Value.IEP, "IEP"); - PLZ("PLZ"), + public static final PayCurrencyEnum XEU = new PayCurrencyEnum(Value.XEU, "XEU"); - PTE("PTE"), + public static final PayCurrencyEnum AWG = new PayCurrencyEnum(Value.AWG, "AWG"); - GWE("GWE"), + public static final PayCurrencyEnum DKK = new PayCurrencyEnum(Value.DKK, "DKK"); - QAR("QAR"), + public static final PayCurrencyEnum IQD = new PayCurrencyEnum(Value.IQD, "IQD"); - XRE("XRE"), + public static final PayCurrencyEnum MXP = new PayCurrencyEnum(Value.MXP, "MXP"); - RHD("RHD"), + public static final PayCurrencyEnum TVD = new PayCurrencyEnum(Value.TVD, "TVD"); - RON("RON"), + public static final PayCurrencyEnum ZWN = new PayCurrencyEnum(Value.ZWN, "ZWN"); - ROL("ROL"), + public static final PayCurrencyEnum XOF = new PayCurrencyEnum(Value.XOF, "XOF"); - RUB("RUB"), + public static final PayCurrencyEnum WST = new PayCurrencyEnum(Value.WST, "WST"); - RUR("RUR"), + public static final PayCurrencyEnum UAH = new PayCurrencyEnum(Value.UAH, "UAH"); - RWF("RWF"), + public static final PayCurrencyEnum BYN = new PayCurrencyEnum(Value.BYN, "BYN"); - SVC("SVC"), + public static final PayCurrencyEnum LUF = new PayCurrencyEnum(Value.LUF, "LUF"); - WST("WST"), + public static final PayCurrencyEnum ZWR = new PayCurrencyEnum(Value.ZWR, "ZWR"); - SAR("SAR"), + public static final PayCurrencyEnum ARM = new PayCurrencyEnum(Value.ARM, "ARM"); - RSD("RSD"), + public static final PayCurrencyEnum KRO = new PayCurrencyEnum(Value.KRO, "KRO"); - CSD("CSD"), + public static final PayCurrencyEnum AOR = new PayCurrencyEnum(Value.AOR, "AOR"); - SCR("SCR"), + public static final PayCurrencyEnum ROL = new PayCurrencyEnum(Value.ROL, "ROL"); - SLL("SLL"), + public static final PayCurrencyEnum DDM = new PayCurrencyEnum(Value.DDM, "DDM"); - XAG("XAG"), + public static final PayCurrencyEnum CHE = new PayCurrencyEnum(Value.CHE, "CHE"); - SGD("SGD"), + public static final PayCurrencyEnum CUC = new PayCurrencyEnum(Value.CUC, "CUC"); - SKK("SKK"), + public static final PayCurrencyEnum RON = new PayCurrencyEnum(Value.RON, "RON"); - SIT("SIT"), + public static final PayCurrencyEnum MKD = new PayCurrencyEnum(Value.MKD, "MKD"); - SBD("SBD"), + public static final PayCurrencyEnum HUF = new PayCurrencyEnum(Value.HUF, "HUF"); - SOS("SOS"), + public static final PayCurrencyEnum ARS = new PayCurrencyEnum(Value.ARS, "ARS"); - ZAR("ZAR"), + public static final PayCurrencyEnum CYP = new PayCurrencyEnum(Value.CYP, "CYP"); - ZAL("ZAL"), + public static final PayCurrencyEnum ECV = new PayCurrencyEnum(Value.ECV, "ECV"); - KRH("KRH"), + public static final PayCurrencyEnum DZD = new PayCurrencyEnum(Value.DZD, "DZD"); - KRW("KRW"), + public static final PayCurrencyEnum PTE = new PayCurrencyEnum(Value.PTE, "PTE"); - KRO("KRO"), + public static final PayCurrencyEnum FKP = new PayCurrencyEnum(Value.FKP, "FKP"); - SSP("SSP"), + public static final PayCurrencyEnum KRW = new PayCurrencyEnum(Value.KRW, "KRW"); - SUR("SUR"), + public static final PayCurrencyEnum YUD = new PayCurrencyEnum(Value.YUD, "YUD"); - ESP("ESP"), + public static final PayCurrencyEnum ZRZ = new PayCurrencyEnum(Value.ZRZ, "ZRZ"); - ESA("ESA"), + public static final PayCurrencyEnum BBD = new PayCurrencyEnum(Value.BBD, "BBD"); - ESB("ESB"), + public static final PayCurrencyEnum DOP = new PayCurrencyEnum(Value.DOP, "DOP"); - XDR("XDR"), + public static final PayCurrencyEnum SDD = new PayCurrencyEnum(Value.SDD, "SDD"); - LKR("LKR"), + public static final PayCurrencyEnum TRL = new PayCurrencyEnum(Value.TRL, "TRL"); - SHP("SHP"), + public static final PayCurrencyEnum AMD = new PayCurrencyEnum(Value.AMD, "AMD"); - XSU("XSU"), + public static final PayCurrencyEnum BEC = new PayCurrencyEnum(Value.BEC, "BEC"); - SDD("SDD"), + public static final PayCurrencyEnum ESA = new PayCurrencyEnum(Value.ESA, "ESA"); - SDG("SDG"), + public static final PayCurrencyEnum LVL = new PayCurrencyEnum(Value.LVL, "LVL"); - SDP("SDP"), + public static final PayCurrencyEnum CLF = new PayCurrencyEnum(Value.CLF, "CLF"); - SRD("SRD"), + public static final PayCurrencyEnum ZMK = new PayCurrencyEnum(Value.ZMK, "ZMK"); - SRG("SRG"), + public static final PayCurrencyEnum IRR = new PayCurrencyEnum(Value.IRR, "IRR"); - SZL("SZL"), + public static final PayCurrencyEnum YUN = new PayCurrencyEnum(Value.YUN, "YUN"); - SEK("SEK"), + public static final PayCurrencyEnum BHD = new PayCurrencyEnum(Value.BHD, "BHD"); - CHF("CHF"), + public static final PayCurrencyEnum LVR = new PayCurrencyEnum(Value.LVR, "LVR"); - SYP("SYP"), + public static final PayCurrencyEnum CHW = new PayCurrencyEnum(Value.CHW, "CHW"); - STN("STN"), + public static final PayCurrencyEnum RUB = new PayCurrencyEnum(Value.RUB, "RUB"); - STD("STD"), + public static final PayCurrencyEnum UYU = new PayCurrencyEnum(Value.UYU, "UYU"); - TVD("TVD"), + public static final PayCurrencyEnum TMT = new PayCurrencyEnum(Value.TMT, "TMT"); - TJR("TJR"), + public static final PayCurrencyEnum BEL = new PayCurrencyEnum(Value.BEL, "BEL"); - TJS("TJS"), + public static final PayCurrencyEnum NIO = new PayCurrencyEnum(Value.NIO, "NIO"); - TZS("TZS"), + public static final PayCurrencyEnum XUA = new PayCurrencyEnum(Value.XUA, "XUA"); - XTS("XTS"), + public static final PayCurrencyEnum ETB = new PayCurrencyEnum(Value.ETB, "ETB"); - THB("THB"), + public static final PayCurrencyEnum MXV = new PayCurrencyEnum(Value.MXV, "MXV"); - XXX("XXX"), + public static final PayCurrencyEnum VND = new PayCurrencyEnum(Value.VND, "VND"); - TPE("TPE"), + public static final PayCurrencyEnum MCF = new PayCurrencyEnum(Value.MCF, "MCF"); - TOP("TOP"), + public static final PayCurrencyEnum MZE = new PayCurrencyEnum(Value.MZE, "MZE"); - TTD("TTD"), + public static final PayCurrencyEnum BOP = new PayCurrencyEnum(Value.BOP, "BOP"); - TND("TND"), + public static final PayCurrencyEnum SRG = new PayCurrencyEnum(Value.SRG, "SRG"); - TRY("TRY"), + public static final PayCurrencyEnum BRN = new PayCurrencyEnum(Value.BRN, "BRN"); - TRL("TRL"), + public static final PayCurrencyEnum MTP = new PayCurrencyEnum(Value.MTP, "MTP"); - TMT("TMT"), + public static final PayCurrencyEnum LUL = new PayCurrencyEnum(Value.LUL, "LUL"); - TMM("TMM"), + public static final PayCurrencyEnum MMK = new PayCurrencyEnum(Value.MMK, "MMK"); - USD("USD"), + public static final PayCurrencyEnum RSD = new PayCurrencyEnum(Value.RSD, "RSD"); - USN("USN"), + public static final PayCurrencyEnum UZS = new PayCurrencyEnum(Value.UZS, "UZS"); - USS("USS"), + public static final PayCurrencyEnum USN = new PayCurrencyEnum(Value.USN, "USN"); - UGX("UGX"), + public static final PayCurrencyEnum LAK = new PayCurrencyEnum(Value.LAK, "LAK"); - UGS("UGS"), + public static final PayCurrencyEnum NAD = new PayCurrencyEnum(Value.NAD, "NAD"); - UAH("UAH"), + public static final PayCurrencyEnum ILS = new PayCurrencyEnum(Value.ILS, "ILS"); - UAK("UAK"), + public static final PayCurrencyEnum MZM = new PayCurrencyEnum(Value.MZM, "MZM"); - AED("AED"), + public static final PayCurrencyEnum MZN = new PayCurrencyEnum(Value.MZN, "MZN"); - UYW("UYW"), + public static final PayCurrencyEnum TPE = new PayCurrencyEnum(Value.TPE, "TPE"); - UYU("UYU"), + public static final PayCurrencyEnum BAM = new PayCurrencyEnum(Value.BAM, "BAM"); - UYP("UYP"), + public static final PayCurrencyEnum PLN = new PayCurrencyEnum(Value.PLN, "PLN"); - UYI("UYI"), + public static final PayCurrencyEnum SZL = new PayCurrencyEnum(Value.SZL, "SZL"); - UZS("UZS"), + public static final PayCurrencyEnum XBA = new PayCurrencyEnum(Value.XBA, "XBA"); - VUV("VUV"), + public static final PayCurrencyEnum PEI = new PayCurrencyEnum(Value.PEI, "PEI"); - VES("VES"), + public static final PayCurrencyEnum ADP = new PayCurrencyEnum(Value.ADP, "ADP"); - VEB("VEB"), + public static final PayCurrencyEnum FRF = new PayCurrencyEnum(Value.FRF, "FRF"); - VEF("VEF"), + public static final PayCurrencyEnum CLE = new PayCurrencyEnum(Value.CLE, "CLE"); - VND("VND"), + public static final PayCurrencyEnum RUR = new PayCurrencyEnum(Value.RUR, "RUR"); - VNN("VNN"), + public static final PayCurrencyEnum ESB = new PayCurrencyEnum(Value.ESB, "ESB"); - CHE("CHE"), + public static final PayCurrencyEnum TMM = new PayCurrencyEnum(Value.TMM, "TMM"); - CHW("CHW"), + public static final PayCurrencyEnum MXN = new PayCurrencyEnum(Value.MXN, "MXN"); - XOF("XOF"), + public static final PayCurrencyEnum YDD = new PayCurrencyEnum(Value.YDD, "YDD"); - YDD("YDD"), + public static final PayCurrencyEnum SGD = new PayCurrencyEnum(Value.SGD, "SGD"); - YER("YER"), + public static final PayCurrencyEnum XFO = new PayCurrencyEnum(Value.XFO, "XFO"); - YUN("YUN"), + public static final PayCurrencyEnum GMD = new PayCurrencyEnum(Value.GMD, "GMD"); - YUD("YUD"), + public static final PayCurrencyEnum UGS = new PayCurrencyEnum(Value.UGS, "UGS"); - YUM("YUM"), + public static final PayCurrencyEnum YUM = new PayCurrencyEnum(Value.YUM, "YUM"); - YUR("YUR"), + public static final PayCurrencyEnum GNS = new PayCurrencyEnum(Value.GNS, "GNS"); - ZWN("ZWN"), + public static final PayCurrencyEnum LTL = new PayCurrencyEnum(Value.LTL, "LTL"); - ZRN("ZRN"), + public static final PayCurrencyEnum NLG = new PayCurrencyEnum(Value.NLG, "NLG"); - ZRZ("ZRZ"), + public static final PayCurrencyEnum BZD = new PayCurrencyEnum(Value.BZD, "BZD"); - ZMW("ZMW"), + public static final PayCurrencyEnum CRC = new PayCurrencyEnum(Value.CRC, "CRC"); - ZMK("ZMK"), + public static final PayCurrencyEnum TRY = new PayCurrencyEnum(Value.TRY, "TRY"); - ZWD("ZWD"), + public static final PayCurrencyEnum OMR = new PayCurrencyEnum(Value.OMR, "OMR"); - ZWR("ZWR"), + public static final PayCurrencyEnum BDT = new PayCurrencyEnum(Value.BDT, "BDT"); - ZWL("ZWL"); + public static final PayCurrencyEnum GBP = new PayCurrencyEnum(Value.GBP, "GBP"); - private final String value; + private final Value value; - PayCurrencyEnum(String value) { + private final String string; + + PayCurrencyEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayCurrencyEnum && this.string.equals(((PayCurrencyEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PES: + return visitor.visitPes(); + case UAK: + return visitor.visitUak(); + case PHP: + return visitor.visitPhp(); + case XAU: + return visitor.visitXau(); + case XCD: + return visitor.visitXcd(); + case MVR: + return visitor.visitMvr(); + case ARP: + return visitor.visitArp(); + case JOD: + return visitor.visitJod(); + case XDR: + return visitor.visitXdr(); + case HKD: + return visitor.visitHkd(); + case INR: + return visitor.visitInr(); + case THB: + return visitor.visitThb(); + case GWP: + return visitor.visitGwp(); + case XXX: + return visitor.visitXxx(); + case ITL: + return visitor.visitItl(); + case STN: + return visitor.visitStn(); + case CAD: + return visitor.visitCad(); + case ESP: + return visitor.visitEsp(); + case XPF: + return visitor.visitXpf(); + case MAF: + return visitor.visitMaf(); + case COP: + return visitor.visitCop(); + case MDC: + return visitor.visitMdc(); + case ZAR: + return visitor.visitZar(); + case MRO: + return visitor.visitMro(); + case VEB: + return visitor.visitVeb(); + case LSL: + return visitor.visitLsl(); + case SKK: + return visitor.visitSkk(); + case VUV: + return visitor.visitVuv(); + case XBB: + return visitor.visitXbb(); + case TND: + return visitor.visitTnd(); + case CSK: + return visitor.visitCsk(); + case IMP: + return visitor.visitImp(); + case AOK: + return visitor.visitAok(); + case GIP: + return visitor.visitGip(); + case ISJ: + return visitor.visitIsj(); + case BMD: + return visitor.visitBmd(); + case LUC: + return visitor.visitLuc(); + case BGN: + return visitor.visitBgn(); + case ARL: + return visitor.visitArl(); + case SSP: + return visitor.visitSsp(); + case MNT: + return visitor.visitMnt(); + case SLL: + return visitor.visitSll(); + case ATS: + return visitor.visitAts(); + case XFU: + return visitor.visitXfu(); + case XRE: + return visitor.visitXre(); + case BAD: + return visitor.visitBad(); + case AZM: + return visitor.visitAzm(); + case BRL: + return visitor.visitBrl(); + case AZN: + return visitor.visitAzn(); + case TWD: + return visitor.visitTwd(); + case NOK: + return visitor.visitNok(); + case SIT: + return visitor.visitSit(); + case KZT: + return visitor.visitKzt(); + case GQE: + return visitor.visitGqe(); + case ILR: + return visitor.visitIlr(); + case GHS: + return visitor.visitGhs(); + case VNN: + return visitor.visitVnn(); + case COU: + return visitor.visitCou(); + case CDF: + return visitor.visitCdf(); + case EGP: + return visitor.visitEgp(); + case KPW: + return visitor.visitKpw(); + case VEF: + return visitor.visitVef(); + case XBC: + return visitor.visitXbc(); + case SDG: + return visitor.visitSdg(); + case GRD: + return visitor.visitGrd(); + case MDL: + return visitor.visitMdl(); + case BEF: + return visitor.visitBef(); + case SBD: + return visitor.visitSbd(); + case AUD: + return visitor.visitAud(); + case BRE: + return visitor.visitBre(); + case ISK: + return visitor.visitIsk(); + case HTG: + return visitor.visitHtg(); + case KGS: + return visitor.visitKgs(); + case AON: + return visitor.visitAon(); + case BGM: + return visitor.visitBgm(); + case HRD: + return visitor.visitHrd(); + case UYW: + return visitor.visitUyw(); + case KES: + return visitor.visitKes(); + case SDP: + return visitor.visitSdp(); + case PLZ: + return visitor.visitPlz(); + case CLP: + return visitor.visitClp(); + case KHR: + return visitor.visitKhr(); + case NGN: + return visitor.visitNgn(); + case NZD: + return visitor.visitNzd(); + case HRK: + return visitor.visitHrk(); + case IDR: + return visitor.visitIdr(); + case MYR: + return visitor.visitMyr(); + case BWP: + return visitor.visitBwp(); + case BIF: + return visitor.visitBif(); + case PKR: + return visitor.visitPkr(); + case ZWD: + return visitor.visitZwd(); + case FJD: + return visitor.visitFjd(); + case MGA: + return visitor.visitMga(); + case PGK: + return visitor.visitPgk(); + case JPY: + return visitor.visitJpy(); + case GYD: + return visitor.visitGyd(); + case NIC: + return visitor.visitNic(); + case SOS: + return visitor.visitSos(); + case LKR: + return visitor.visitLkr(); + case MKN: + return visitor.visitMkn(); + case MLF: + return visitor.visitMlf(); + case KMF: + return visitor.visitKmf(); + case HNL: + return visitor.visitHnl(); + case GHC: + return visitor.visitGhc(); + case GWE: + return visitor.visitGwe(); + case TJS: + return visitor.visitTjs(); + case SCR: + return visitor.visitScr(); + case PEN: + return visitor.visitPen(); + case USD: + return visitor.visitUsd(); + case LBP: + return visitor.visitLbp(); + case GEL: + return visitor.visitGel(); + case MTL: + return visitor.visitMtl(); + case SRD: + return visitor.visitSrd(); + case XSU: + return visitor.visitXsu(); + case MWK: + return visitor.visitMwk(); + case VES: + return visitor.visitVes(); + case BND: + return visitor.visitBnd(); + case AOA: + return visitor.visitAoa(); + case ZMW: + return visitor.visitZmw(); + case CNX: + return visitor.visitCnx(); + case ILP: + return visitor.visitIlp(); + case SYP: + return visitor.visitSyp(); + case JMD: + return visitor.visitJmd(); + case UYI: + return visitor.visitUyi(); + case BRR: + return visitor.visitBrr(); + case XAF: + return visitor.visitXaf(); + case FIM: + return visitor.visitFim(); + case CZK: + return visitor.visitCzk(); + case AED: + return visitor.visitAed(); + case USS: + return visitor.visitUss(); + case EEK: + return visitor.visitEek(); + case CVE: + return visitor.visitCve(); + case CNH: + return visitor.visitCnh(); + case QAR: + return visitor.visitQar(); + case TOP: + return visitor.visitTop(); + case ZWL: + return visitor.visitZwl(); + case TJR: + return visitor.visitTjr(); + case UYP: + return visitor.visitUyp(); + case BRC: + return visitor.visitBrc(); + case BRZ: + return visitor.visitBrz(); + case ERN: + return visitor.visitErn(); + case ZRN: + return visitor.visitZrn(); + case SUR: + return visitor.visitSur(); + case RHD: + return visitor.visitRhd(); + case RWF: + return visitor.visitRwf(); + case BGO: + return visitor.visitBgo(); + case GEK: + return visitor.visitGek(); + case BOL: + return visitor.visitBol(); + case SAR: + return visitor.visitSar(); + case MVP: + return visitor.visitMvp(); + case BTN: + return visitor.visitBtn(); + case ZAL: + return visitor.visitZal(); + case TZS: + return visitor.visitTzs(); + case DJF: + return visitor.visitDjf(); + case GTQ: + return visitor.visitGtq(); + case ECS: + return visitor.visitEcs(); + case CHF: + return visitor.visitChf(); + case ANG: + return visitor.visitAng(); + case BSD: + return visitor.visitBsd(); + case LTT: + return visitor.visitLtt(); + case MAD: + return visitor.visitMad(); + case XPD: + return visitor.visitXpd(); + case MOP: + return visitor.visitMop(); + case BYB: + return visitor.visitByb(); + case LYD: + return visitor.visitLyd(); + case XTS: + return visitor.visitXts(); + case KWD: + return visitor.visitKwd(); + case BAN: + return visitor.visitBan(); + case SVC: + return visitor.visitSvc(); + case ALL: + return visitor.visitAll(); + case SHP: + return visitor.visitShp(); + case MGF: + return visitor.visitMgf(); + case MRU: + return visitor.visitMru(); + case BRB: + return visitor.visitBrb(); + case CUP: + return visitor.visitCup(); + case LRD: + return visitor.visitLrd(); + case MUR: + return visitor.visitMur(); + case PAB: + return visitor.visitPab(); + case KRH: + return visitor.visitKrh(); + case XBD: + return visitor.visitXbd(); + case YER: + return visitor.visitYer(); + case AFA: + return visitor.visitAfa(); + case BGL: + return visitor.visitBgl(); + case STD: + return visitor.visitStd(); + case NPR: + return visitor.visitNpr(); + case XPT: + return visitor.visitXpt(); + case UGX: + return visitor.visitUgx(); + case YUR: + return visitor.visitYur(); + case TTD: + return visitor.visitTtd(); + case BYR: + return visitor.visitByr(); + case EUR: + return visitor.visitEur(); + case SEK: + return visitor.visitSek(); + case KYD: + return visitor.visitKyd(); + case GNF: + return visitor.visitGnf(); + case BUK: + return visitor.visitBuk(); + case AFN: + return visitor.visitAfn(); + case CNY: + return visitor.visitCny(); + case PYG: + return visitor.visitPyg(); + case CSD: + return visitor.visitCsd(); + case BOV: + return visitor.visitBov(); + case XAG: + return visitor.visitXag(); + case ARA: + return visitor.visitAra(); + case DEM: + return visitor.visitDem(); + case BOB: + return visitor.visitBob(); + case ALK: + return visitor.visitAlk(); + case IEP: + return visitor.visitIep(); + case XEU: + return visitor.visitXeu(); + case AWG: + return visitor.visitAwg(); + case DKK: + return visitor.visitDkk(); + case IQD: + return visitor.visitIqd(); + case MXP: + return visitor.visitMxp(); + case TVD: + return visitor.visitTvd(); + case ZWN: + return visitor.visitZwn(); + case XOF: + return visitor.visitXof(); + case WST: + return visitor.visitWst(); + case UAH: + return visitor.visitUah(); + case BYN: + return visitor.visitByn(); + case LUF: + return visitor.visitLuf(); + case ZWR: + return visitor.visitZwr(); + case ARM: + return visitor.visitArm(); + case KRO: + return visitor.visitKro(); + case AOR: + return visitor.visitAor(); + case ROL: + return visitor.visitRol(); + case DDM: + return visitor.visitDdm(); + case CHE: + return visitor.visitChe(); + case CUC: + return visitor.visitCuc(); + case RON: + return visitor.visitRon(); + case MKD: + return visitor.visitMkd(); + case HUF: + return visitor.visitHuf(); + case ARS: + return visitor.visitArs(); + case CYP: + return visitor.visitCyp(); + case ECV: + return visitor.visitEcv(); + case DZD: + return visitor.visitDzd(); + case PTE: + return visitor.visitPte(); + case FKP: + return visitor.visitFkp(); + case KRW: + return visitor.visitKrw(); + case YUD: + return visitor.visitYud(); + case ZRZ: + return visitor.visitZrz(); + case BBD: + return visitor.visitBbd(); + case DOP: + return visitor.visitDop(); + case SDD: + return visitor.visitSdd(); + case TRL: + return visitor.visitTrl(); + case AMD: + return visitor.visitAmd(); + case BEC: + return visitor.visitBec(); + case ESA: + return visitor.visitEsa(); + case LVL: + return visitor.visitLvl(); + case CLF: + return visitor.visitClf(); + case ZMK: + return visitor.visitZmk(); + case IRR: + return visitor.visitIrr(); + case YUN: + return visitor.visitYun(); + case BHD: + return visitor.visitBhd(); + case LVR: + return visitor.visitLvr(); + case CHW: + return visitor.visitChw(); + case RUB: + return visitor.visitRub(); + case UYU: + return visitor.visitUyu(); + case TMT: + return visitor.visitTmt(); + case BEL: + return visitor.visitBel(); + case NIO: + return visitor.visitNio(); + case XUA: + return visitor.visitXua(); + case ETB: + return visitor.visitEtb(); + case MXV: + return visitor.visitMxv(); + case VND: + return visitor.visitVnd(); + case MCF: + return visitor.visitMcf(); + case MZE: + return visitor.visitMze(); + case BOP: + return visitor.visitBop(); + case SRG: + return visitor.visitSrg(); + case BRN: + return visitor.visitBrn(); + case MTP: + return visitor.visitMtp(); + case LUL: + return visitor.visitLul(); + case MMK: + return visitor.visitMmk(); + case RSD: + return visitor.visitRsd(); + case UZS: + return visitor.visitUzs(); + case USN: + return visitor.visitUsn(); + case LAK: + return visitor.visitLak(); + case NAD: + return visitor.visitNad(); + case ILS: + return visitor.visitIls(); + case MZM: + return visitor.visitMzm(); + case MZN: + return visitor.visitMzn(); + case TPE: + return visitor.visitTpe(); + case BAM: + return visitor.visitBam(); + case PLN: + return visitor.visitPln(); + case SZL: + return visitor.visitSzl(); + case XBA: + return visitor.visitXba(); + case PEI: + return visitor.visitPei(); + case ADP: + return visitor.visitAdp(); + case FRF: + return visitor.visitFrf(); + case CLE: + return visitor.visitCle(); + case RUR: + return visitor.visitRur(); + case ESB: + return visitor.visitEsb(); + case TMM: + return visitor.visitTmm(); + case MXN: + return visitor.visitMxn(); + case YDD: + return visitor.visitYdd(); + case SGD: + return visitor.visitSgd(); + case XFO: + return visitor.visitXfo(); + case GMD: + return visitor.visitGmd(); + case UGS: + return visitor.visitUgs(); + case YUM: + return visitor.visitYum(); + case GNS: + return visitor.visitGns(); + case LTL: + return visitor.visitLtl(); + case NLG: + return visitor.visitNlg(); + case BZD: + return visitor.visitBzd(); + case CRC: + return visitor.visitCrc(); + case TRY: + return visitor.visitTry(); + case OMR: + return visitor.visitOmr(); + case BDT: + return visitor.visitBdt(); + case GBP: + return visitor.visitGbp(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayCurrencyEnum valueOf(String value) { + switch (value) { + case "PES": + return PES; + case "UAK": + return UAK; + case "PHP": + return PHP; + case "XAU": + return XAU; + case "XCD": + return XCD; + case "MVR": + return MVR; + case "ARP": + return ARP; + case "JOD": + return JOD; + case "XDR": + return XDR; + case "HKD": + return HKD; + case "INR": + return INR; + case "THB": + return THB; + case "GWP": + return GWP; + case "XXX": + return XXX; + case "ITL": + return ITL; + case "STN": + return STN; + case "CAD": + return CAD; + case "ESP": + return ESP; + case "XPF": + return XPF; + case "MAF": + return MAF; + case "COP": + return COP; + case "MDC": + return MDC; + case "ZAR": + return ZAR; + case "MRO": + return MRO; + case "VEB": + return VEB; + case "LSL": + return LSL; + case "SKK": + return SKK; + case "VUV": + return VUV; + case "XBB": + return XBB; + case "TND": + return TND; + case "CSK": + return CSK; + case "IMP": + return IMP; + case "AOK": + return AOK; + case "GIP": + return GIP; + case "ISJ": + return ISJ; + case "BMD": + return BMD; + case "LUC": + return LUC; + case "BGN": + return BGN; + case "ARL": + return ARL; + case "SSP": + return SSP; + case "MNT": + return MNT; + case "SLL": + return SLL; + case "ATS": + return ATS; + case "XFU": + return XFU; + case "XRE": + return XRE; + case "BAD": + return BAD; + case "AZM": + return AZM; + case "BRL": + return BRL; + case "AZN": + return AZN; + case "TWD": + return TWD; + case "NOK": + return NOK; + case "SIT": + return SIT; + case "KZT": + return KZT; + case "GQE": + return GQE; + case "ILR": + return ILR; + case "GHS": + return GHS; + case "VNN": + return VNN; + case "COU": + return COU; + case "CDF": + return CDF; + case "EGP": + return EGP; + case "KPW": + return KPW; + case "VEF": + return VEF; + case "XBC": + return XBC; + case "SDG": + return SDG; + case "GRD": + return GRD; + case "MDL": + return MDL; + case "BEF": + return BEF; + case "SBD": + return SBD; + case "AUD": + return AUD; + case "BRE": + return BRE; + case "ISK": + return ISK; + case "HTG": + return HTG; + case "KGS": + return KGS; + case "AON": + return AON; + case "BGM": + return BGM; + case "HRD": + return HRD; + case "UYW": + return UYW; + case "KES": + return KES; + case "SDP": + return SDP; + case "PLZ": + return PLZ; + case "CLP": + return CLP; + case "KHR": + return KHR; + case "NGN": + return NGN; + case "NZD": + return NZD; + case "HRK": + return HRK; + case "IDR": + return IDR; + case "MYR": + return MYR; + case "BWP": + return BWP; + case "BIF": + return BIF; + case "PKR": + return PKR; + case "ZWD": + return ZWD; + case "FJD": + return FJD; + case "MGA": + return MGA; + case "PGK": + return PGK; + case "JPY": + return JPY; + case "GYD": + return GYD; + case "NIC": + return NIC; + case "SOS": + return SOS; + case "LKR": + return LKR; + case "MKN": + return MKN; + case "MLF": + return MLF; + case "KMF": + return KMF; + case "HNL": + return HNL; + case "GHC": + return GHC; + case "GWE": + return GWE; + case "TJS": + return TJS; + case "SCR": + return SCR; + case "PEN": + return PEN; + case "USD": + return USD; + case "LBP": + return LBP; + case "GEL": + return GEL; + case "MTL": + return MTL; + case "SRD": + return SRD; + case "XSU": + return XSU; + case "MWK": + return MWK; + case "VES": + return VES; + case "BND": + return BND; + case "AOA": + return AOA; + case "ZMW": + return ZMW; + case "CNX": + return CNX; + case "ILP": + return ILP; + case "SYP": + return SYP; + case "JMD": + return JMD; + case "UYI": + return UYI; + case "BRR": + return BRR; + case "XAF": + return XAF; + case "FIM": + return FIM; + case "CZK": + return CZK; + case "AED": + return AED; + case "USS": + return USS; + case "EEK": + return EEK; + case "CVE": + return CVE; + case "CNH": + return CNH; + case "QAR": + return QAR; + case "TOP": + return TOP; + case "ZWL": + return ZWL; + case "TJR": + return TJR; + case "UYP": + return UYP; + case "BRC": + return BRC; + case "BRZ": + return BRZ; + case "ERN": + return ERN; + case "ZRN": + return ZRN; + case "SUR": + return SUR; + case "RHD": + return RHD; + case "RWF": + return RWF; + case "BGO": + return BGO; + case "GEK": + return GEK; + case "BOL": + return BOL; + case "SAR": + return SAR; + case "MVP": + return MVP; + case "BTN": + return BTN; + case "ZAL": + return ZAL; + case "TZS": + return TZS; + case "DJF": + return DJF; + case "GTQ": + return GTQ; + case "ECS": + return ECS; + case "CHF": + return CHF; + case "ANG": + return ANG; + case "BSD": + return BSD; + case "LTT": + return LTT; + case "MAD": + return MAD; + case "XPD": + return XPD; + case "MOP": + return MOP; + case "BYB": + return BYB; + case "LYD": + return LYD; + case "XTS": + return XTS; + case "KWD": + return KWD; + case "BAN": + return BAN; + case "SVC": + return SVC; + case "ALL": + return ALL; + case "SHP": + return SHP; + case "MGF": + return MGF; + case "MRU": + return MRU; + case "BRB": + return BRB; + case "CUP": + return CUP; + case "LRD": + return LRD; + case "MUR": + return MUR; + case "PAB": + return PAB; + case "KRH": + return KRH; + case "XBD": + return XBD; + case "YER": + return YER; + case "AFA": + return AFA; + case "BGL": + return BGL; + case "STD": + return STD; + case "NPR": + return NPR; + case "XPT": + return XPT; + case "UGX": + return UGX; + case "YUR": + return YUR; + case "TTD": + return TTD; + case "BYR": + return BYR; + case "EUR": + return EUR; + case "SEK": + return SEK; + case "KYD": + return KYD; + case "GNF": + return GNF; + case "BUK": + return BUK; + case "AFN": + return AFN; + case "CNY": + return CNY; + case "PYG": + return PYG; + case "CSD": + return CSD; + case "BOV": + return BOV; + case "XAG": + return XAG; + case "ARA": + return ARA; + case "DEM": + return DEM; + case "BOB": + return BOB; + case "ALK": + return ALK; + case "IEP": + return IEP; + case "XEU": + return XEU; + case "AWG": + return AWG; + case "DKK": + return DKK; + case "IQD": + return IQD; + case "MXP": + return MXP; + case "TVD": + return TVD; + case "ZWN": + return ZWN; + case "XOF": + return XOF; + case "WST": + return WST; + case "UAH": + return UAH; + case "BYN": + return BYN; + case "LUF": + return LUF; + case "ZWR": + return ZWR; + case "ARM": + return ARM; + case "KRO": + return KRO; + case "AOR": + return AOR; + case "ROL": + return ROL; + case "DDM": + return DDM; + case "CHE": + return CHE; + case "CUC": + return CUC; + case "RON": + return RON; + case "MKD": + return MKD; + case "HUF": + return HUF; + case "ARS": + return ARS; + case "CYP": + return CYP; + case "ECV": + return ECV; + case "DZD": + return DZD; + case "PTE": + return PTE; + case "FKP": + return FKP; + case "KRW": + return KRW; + case "YUD": + return YUD; + case "ZRZ": + return ZRZ; + case "BBD": + return BBD; + case "DOP": + return DOP; + case "SDD": + return SDD; + case "TRL": + return TRL; + case "AMD": + return AMD; + case "BEC": + return BEC; + case "ESA": + return ESA; + case "LVL": + return LVL; + case "CLF": + return CLF; + case "ZMK": + return ZMK; + case "IRR": + return IRR; + case "YUN": + return YUN; + case "BHD": + return BHD; + case "LVR": + return LVR; + case "CHW": + return CHW; + case "RUB": + return RUB; + case "UYU": + return UYU; + case "TMT": + return TMT; + case "BEL": + return BEL; + case "NIO": + return NIO; + case "XUA": + return XUA; + case "ETB": + return ETB; + case "MXV": + return MXV; + case "VND": + return VND; + case "MCF": + return MCF; + case "MZE": + return MZE; + case "BOP": + return BOP; + case "SRG": + return SRG; + case "BRN": + return BRN; + case "MTP": + return MTP; + case "LUL": + return LUL; + case "MMK": + return MMK; + case "RSD": + return RSD; + case "UZS": + return UZS; + case "USN": + return USN; + case "LAK": + return LAK; + case "NAD": + return NAD; + case "ILS": + return ILS; + case "MZM": + return MZM; + case "MZN": + return MZN; + case "TPE": + return TPE; + case "BAM": + return BAM; + case "PLN": + return PLN; + case "SZL": + return SZL; + case "XBA": + return XBA; + case "PEI": + return PEI; + case "ADP": + return ADP; + case "FRF": + return FRF; + case "CLE": + return CLE; + case "RUR": + return RUR; + case "ESB": + return ESB; + case "TMM": + return TMM; + case "MXN": + return MXN; + case "YDD": + return YDD; + case "SGD": + return SGD; + case "XFO": + return XFO; + case "GMD": + return GMD; + case "UGS": + return UGS; + case "YUM": + return YUM; + case "GNS": + return GNS; + case "LTL": + return LTL; + case "NLG": + return NLG; + case "BZD": + return BZD; + case "CRC": + return CRC; + case "TRY": + return TRY; + case "OMR": + return OMR; + case "BDT": + return BDT; + case "GBP": + return GBP; + default: + return new PayCurrencyEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + XUA, + + AFN, + + AFA, + + ALL, + + ALK, + + DZD, + + ADP, + + AOA, + + AOK, + + AON, + + AOR, + + ARA, + + ARS, + + ARM, + + ARP, + + ARL, + + AMD, + + AWG, + + AUD, + + ATS, + + AZN, + + AZM, + + BSD, + + BHD, + + BDT, + + BBD, + + BYN, + + BYB, + + BYR, + + BEF, + + BEC, + + BEL, + + BZD, + + BMD, + + BTN, + + BOB, + + BOL, + + BOV, + + BOP, + + BAM, + + BAD, + + BAN, + + BWP, + + BRC, + + BRZ, + + BRE, + + BRR, + + BRN, + + BRB, + + BRL, + + GBP, + + BND, + + BGL, + + BGN, + + BGO, + + BGM, + + BUK, + + BIF, + + XPF, + + KHR, + + CAD, + + CVE, + + KYD, + + XAF, + + CLE, + + CLP, + + CLF, + + CNX, + + CNY, + + CNH, + + COP, + + COU, + + KMF, + + CDF, + + CRC, + + HRD, + + HRK, + + CUC, + + CUP, + + CYP, + + CZK, + + CSK, + + DKK, + + DJF, + + DOP, + + NLG, + + XCD, + + DDM, + + ECS, + + ECV, + + EGP, + + GQE, + + ERN, + + EEK, + + ETB, + + EUR, + + XBA, + + XEU, + + XBB, + + XBC, + + XBD, + + FKP, + + FJD, + + FIM, + + FRF, + + XFO, + + XFU, + + GMD, + + GEK, + + GEL, + + DEM, + + GHS, + + GHC, + + GIP, + + XAU, + + GRD, + + GTQ, + + GWP, + + GNF, + + GNS, + + GYD, + + HTG, + + HNL, + + HKD, + + HUF, + + IMP, + + ISK, + + ISJ, + + INR, + + IDR, + + IRR, + + IQD, + + IEP, + + ILS, + + ILP, + + ILR, + + ITL, + + JMD, + + JPY, + + JOD, + + KZT, + + KES, + + KWD, + + KGS, + + LAK, + + LVL, + + LVR, + + LBP, + + LSL, + + LRD, + + LYD, + + LTL, + + LTT, + + LUL, + + LUC, + + LUF, + + MOP, + + MKD, + + MKN, + + MGA, + + MGF, + + MWK, + + MYR, + + MVR, + + MVP, + + MLF, + + MTL, + + MTP, + + MRU, + + MRO, + + MUR, + + MXV, + + MXN, + + MXP, + + MDC, + + MDL, + + MCF, + + MNT, + + MAD, + + MAF, + + MZE, + + MZN, + + MZM, + + MMK, + + NAD, + + NPR, + + ANG, + + TWD, + + NZD, + + NIO, + + NIC, + + NGN, + + KPW, + + NOK, + + OMR, + + PKR, + + XPD, + + PAB, + + PGK, + + PYG, + + PEI, + + PEN, + + PES, + + PHP, + + XPT, + + PLN, + + PLZ, + + PTE, + + GWE, + + QAR, + + XRE, + + RHD, + + RON, + + ROL, + + RUB, + + RUR, + + RWF, + + SVC, + + WST, + + SAR, + + RSD, + + CSD, + + SCR, + + SLL, + + XAG, + + SGD, + + SKK, + + SIT, + + SBD, + + SOS, + + ZAR, + + ZAL, + + KRH, + + KRW, + + KRO, + + SSP, + + SUR, + + ESP, + + ESA, + + ESB, + + XDR, + + LKR, + + SHP, + + XSU, + + SDD, + + SDG, + + SDP, + + SRD, + + SRG, + + SZL, + + SEK, + + CHF, + + SYP, + + STN, + + STD, + + TVD, + + TJR, + + TJS, + + TZS, + + XTS, + + THB, + + XXX, + + TPE, + + TOP, + + TTD, + + TND, + + TRY, + + TRL, + + TMT, + + TMM, + + USD, + + USN, + + USS, + + UGX, + + UGS, + + UAH, + + UAK, + + AED, + + UYW, + + UYU, + + UYP, + + UYI, + + UZS, + + VUV, + + VES, + + VEB, + + VEF, + + VND, + + VNN, + + CHE, + + CHW, + + XOF, + + YDD, + + YER, + + YUN, + + YUD, + + YUM, + + YUR, + + ZWN, + + ZRN, + + ZRZ, + + ZMW, + + ZMK, + + ZWD, + + ZWR, + + ZWL, + + UNKNOWN + } + + public interface Visitor { + T visitXua(); + + T visitAfn(); + + T visitAfa(); + + T visitAll(); + + T visitAlk(); + + T visitDzd(); + + T visitAdp(); + + T visitAoa(); + + T visitAok(); + + T visitAon(); + + T visitAor(); + + T visitAra(); + + T visitArs(); + + T visitArm(); + + T visitArp(); + + T visitArl(); + + T visitAmd(); + + T visitAwg(); + + T visitAud(); + + T visitAts(); + + T visitAzn(); + + T visitAzm(); + + T visitBsd(); + + T visitBhd(); + + T visitBdt(); + + T visitBbd(); + + T visitByn(); + + T visitByb(); + + T visitByr(); + + T visitBef(); + + T visitBec(); + + T visitBel(); + + T visitBzd(); + + T visitBmd(); + + T visitBtn(); + + T visitBob(); + + T visitBol(); + + T visitBov(); + + T visitBop(); + + T visitBam(); + + T visitBad(); + + T visitBan(); + + T visitBwp(); + + T visitBrc(); + + T visitBrz(); + + T visitBre(); + + T visitBrr(); + + T visitBrn(); + + T visitBrb(); + + T visitBrl(); + + T visitGbp(); + + T visitBnd(); + + T visitBgl(); + + T visitBgn(); + + T visitBgo(); + + T visitBgm(); + + T visitBuk(); + + T visitBif(); + + T visitXpf(); + + T visitKhr(); + + T visitCad(); + + T visitCve(); + + T visitKyd(); + + T visitXaf(); + + T visitCle(); + + T visitClp(); + + T visitClf(); + + T visitCnx(); + + T visitCny(); + + T visitCnh(); + + T visitCop(); + + T visitCou(); + + T visitKmf(); + + T visitCdf(); + + T visitCrc(); + + T visitHrd(); + + T visitHrk(); + + T visitCuc(); + + T visitCup(); + + T visitCyp(); + + T visitCzk(); + + T visitCsk(); + + T visitDkk(); + + T visitDjf(); + + T visitDop(); + + T visitNlg(); + + T visitXcd(); + + T visitDdm(); + + T visitEcs(); + + T visitEcv(); + + T visitEgp(); + + T visitGqe(); + + T visitErn(); + + T visitEek(); + + T visitEtb(); + + T visitEur(); + + T visitXba(); + + T visitXeu(); + + T visitXbb(); + + T visitXbc(); + + T visitXbd(); + + T visitFkp(); + + T visitFjd(); + + T visitFim(); + + T visitFrf(); + + T visitXfo(); + + T visitXfu(); + + T visitGmd(); + + T visitGek(); + + T visitGel(); + + T visitDem(); + + T visitGhs(); + + T visitGhc(); + + T visitGip(); + + T visitXau(); + + T visitGrd(); + + T visitGtq(); + + T visitGwp(); + + T visitGnf(); + + T visitGns(); + + T visitGyd(); + + T visitHtg(); + + T visitHnl(); + + T visitHkd(); + + T visitHuf(); + + T visitImp(); + + T visitIsk(); + + T visitIsj(); + + T visitInr(); + + T visitIdr(); + + T visitIrr(); + + T visitIqd(); + + T visitIep(); + + T visitIls(); + + T visitIlp(); + + T visitIlr(); + + T visitItl(); + + T visitJmd(); + + T visitJpy(); + + T visitJod(); + + T visitKzt(); + + T visitKes(); + + T visitKwd(); + + T visitKgs(); + + T visitLak(); + + T visitLvl(); + + T visitLvr(); + + T visitLbp(); + + T visitLsl(); + + T visitLrd(); + + T visitLyd(); + + T visitLtl(); + + T visitLtt(); + + T visitLul(); + + T visitLuc(); + + T visitLuf(); + + T visitMop(); + + T visitMkd(); + + T visitMkn(); + + T visitMga(); + + T visitMgf(); + + T visitMwk(); + + T visitMyr(); + + T visitMvr(); + + T visitMvp(); + + T visitMlf(); + + T visitMtl(); + + T visitMtp(); + + T visitMru(); + + T visitMro(); + + T visitMur(); + + T visitMxv(); + + T visitMxn(); + + T visitMxp(); + + T visitMdc(); + + T visitMdl(); + + T visitMcf(); + + T visitMnt(); + + T visitMad(); + + T visitMaf(); + + T visitMze(); + + T visitMzn(); + + T visitMzm(); + + T visitMmk(); + + T visitNad(); + + T visitNpr(); + + T visitAng(); + + T visitTwd(); + + T visitNzd(); + + T visitNio(); + + T visitNic(); + + T visitNgn(); + + T visitKpw(); + + T visitNok(); + + T visitOmr(); + + T visitPkr(); + + T visitXpd(); + + T visitPab(); + + T visitPgk(); + + T visitPyg(); + + T visitPei(); + + T visitPen(); + + T visitPes(); + + T visitPhp(); + + T visitXpt(); + + T visitPln(); + + T visitPlz(); + + T visitPte(); + + T visitGwe(); + + T visitQar(); + + T visitXre(); + + T visitRhd(); + + T visitRon(); + + T visitRol(); + + T visitRub(); + + T visitRur(); + + T visitRwf(); + + T visitSvc(); + + T visitWst(); + + T visitSar(); + + T visitRsd(); + + T visitCsd(); + + T visitScr(); + + T visitSll(); + + T visitXag(); + + T visitSgd(); + + T visitSkk(); + + T visitSit(); + + T visitSbd(); + + T visitSos(); + + T visitZar(); + + T visitZal(); + + T visitKrh(); + + T visitKrw(); + + T visitKro(); + + T visitSsp(); + + T visitSur(); + + T visitEsp(); + + T visitEsa(); + + T visitEsb(); + + T visitXdr(); + + T visitLkr(); + + T visitShp(); + + T visitXsu(); + + T visitSdd(); + + T visitSdg(); + + T visitSdp(); + + T visitSrd(); + + T visitSrg(); + + T visitSzl(); + + T visitSek(); + + T visitChf(); + + T visitSyp(); + + T visitStn(); + + T visitStd(); + + T visitTvd(); + + T visitTjr(); + + T visitTjs(); + + T visitTzs(); + + T visitXts(); + + T visitThb(); + + T visitXxx(); + + T visitTpe(); + + T visitTop(); + + T visitTtd(); + + T visitTnd(); + + T visitTry(); + + T visitTrl(); + + T visitTmt(); + + T visitTmm(); + + T visitUsd(); + + T visitUsn(); + + T visitUss(); + + T visitUgx(); + + T visitUgs(); + + T visitUah(); + + T visitUak(); + + T visitAed(); + + T visitUyw(); + + T visitUyu(); + + T visitUyp(); + + T visitUyi(); + + T visitUzs(); + + T visitVuv(); + + T visitVes(); + + T visitVeb(); + + T visitVef(); + + T visitVnd(); + + T visitVnn(); + + T visitChe(); + + T visitChw(); + + T visitXof(); + + T visitYdd(); + + T visitYer(); + + T visitYun(); + + T visitYud(); + + T visitYum(); + + T visitYur(); + + T visitZwn(); + + T visitZrn(); + + T visitZrz(); + + T visitZmw(); + + T visitZmk(); + + T visitZwd(); + + T visitZwr(); + + T visitZwl(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayFrequencyEnum.java b/src/main/java/com/merge/api/hris/types/PayFrequencyEnum.java index cf63faaf4..33961d8ca 100644 --- a/src/main/java/com/merge/api/hris/types/PayFrequencyEnum.java +++ b/src/main/java/com/merge/api/hris/types/PayFrequencyEnum.java @@ -3,36 +3,152 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayFrequencyEnum { - WEEKLY("WEEKLY"), +public final class PayFrequencyEnum { + public static final PayFrequencyEnum QUARTERLY = new PayFrequencyEnum(Value.QUARTERLY, "QUARTERLY"); - BIWEEKLY("BIWEEKLY"), + public static final PayFrequencyEnum MONTHLY = new PayFrequencyEnum(Value.MONTHLY, "MONTHLY"); - MONTHLY("MONTHLY"), + public static final PayFrequencyEnum SEMIANNUALLY = new PayFrequencyEnum(Value.SEMIANNUALLY, "SEMIANNUALLY"); - QUARTERLY("QUARTERLY"), + public static final PayFrequencyEnum ANNUALLY = new PayFrequencyEnum(Value.ANNUALLY, "ANNUALLY"); - SEMIANNUALLY("SEMIANNUALLY"), + public static final PayFrequencyEnum SEMIMONTHLY = new PayFrequencyEnum(Value.SEMIMONTHLY, "SEMIMONTHLY"); - ANNUALLY("ANNUALLY"), + public static final PayFrequencyEnum WEEKLY = new PayFrequencyEnum(Value.WEEKLY, "WEEKLY"); - THIRTEEN_MONTHLY("THIRTEEN-MONTHLY"), + public static final PayFrequencyEnum THIRTEEN_MONTHLY = + new PayFrequencyEnum(Value.THIRTEEN_MONTHLY, "THIRTEEN-MONTHLY"); - PRO_RATA("PRO_RATA"), + public static final PayFrequencyEnum PRO_RATA = new PayFrequencyEnum(Value.PRO_RATA, "PRO_RATA"); - SEMIMONTHLY("SEMIMONTHLY"); + public static final PayFrequencyEnum BIWEEKLY = new PayFrequencyEnum(Value.BIWEEKLY, "BIWEEKLY"); - private final String value; + private final Value value; - PayFrequencyEnum(String value) { + private final String string; + + PayFrequencyEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayFrequencyEnum && this.string.equals(((PayFrequencyEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case QUARTERLY: + return visitor.visitQuarterly(); + case MONTHLY: + return visitor.visitMonthly(); + case SEMIANNUALLY: + return visitor.visitSemiannually(); + case ANNUALLY: + return visitor.visitAnnually(); + case SEMIMONTHLY: + return visitor.visitSemimonthly(); + case WEEKLY: + return visitor.visitWeekly(); + case THIRTEEN_MONTHLY: + return visitor.visitThirteenMonthly(); + case PRO_RATA: + return visitor.visitProRata(); + case BIWEEKLY: + return visitor.visitBiweekly(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayFrequencyEnum valueOf(String value) { + switch (value) { + case "QUARTERLY": + return QUARTERLY; + case "MONTHLY": + return MONTHLY; + case "SEMIANNUALLY": + return SEMIANNUALLY; + case "ANNUALLY": + return ANNUALLY; + case "SEMIMONTHLY": + return SEMIMONTHLY; + case "WEEKLY": + return WEEKLY; + case "THIRTEEN-MONTHLY": + return THIRTEEN_MONTHLY; + case "PRO_RATA": + return PRO_RATA; + case "BIWEEKLY": + return BIWEEKLY; + default: + return new PayFrequencyEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + WEEKLY, + + BIWEEKLY, + + MONTHLY, + + QUARTERLY, + + SEMIANNUALLY, + + ANNUALLY, + + THIRTEEN_MONTHLY, + + PRO_RATA, + + SEMIMONTHLY, + + UNKNOWN + } + + public interface Visitor { + T visitWeekly(); + + T visitBiweekly(); + + T visitMonthly(); + + T visitQuarterly(); + + T visitSemiannually(); + + T visitAnnually(); + + T visitThirteenMonthly(); + + T visitProRata(); + + T visitSemimonthly(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayPeriodEnum.java b/src/main/java/com/merge/api/hris/types/PayPeriodEnum.java index ac2eac120..7e10a3a44 100644 --- a/src/main/java/com/merge/api/hris/types/PayPeriodEnum.java +++ b/src/main/java/com/merge/api/hris/types/PayPeriodEnum.java @@ -3,36 +3,151 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayPeriodEnum { - HOUR("HOUR"), +public final class PayPeriodEnum { + public static final PayPeriodEnum WEEK = new PayPeriodEnum(Value.WEEK, "WEEK"); - DAY("DAY"), + public static final PayPeriodEnum HOUR = new PayPeriodEnum(Value.HOUR, "HOUR"); - WEEK("WEEK"), + public static final PayPeriodEnum QUARTER = new PayPeriodEnum(Value.QUARTER, "QUARTER"); - EVERY_TWO_WEEKS("EVERY_TWO_WEEKS"), + public static final PayPeriodEnum MONTH = new PayPeriodEnum(Value.MONTH, "MONTH"); - SEMIMONTHLY("SEMIMONTHLY"), + public static final PayPeriodEnum SEMIMONTHLY = new PayPeriodEnum(Value.SEMIMONTHLY, "SEMIMONTHLY"); - MONTH("MONTH"), + public static final PayPeriodEnum YEAR = new PayPeriodEnum(Value.YEAR, "YEAR"); - QUARTER("QUARTER"), + public static final PayPeriodEnum DAY = new PayPeriodEnum(Value.DAY, "DAY"); - EVERY_SIX_MONTHS("EVERY_SIX_MONTHS"), + public static final PayPeriodEnum EVERY_SIX_MONTHS = new PayPeriodEnum(Value.EVERY_SIX_MONTHS, "EVERY_SIX_MONTHS"); - YEAR("YEAR"); + public static final PayPeriodEnum EVERY_TWO_WEEKS = new PayPeriodEnum(Value.EVERY_TWO_WEEKS, "EVERY_TWO_WEEKS"); - private final String value; + private final Value value; - PayPeriodEnum(String value) { + private final String string; + + PayPeriodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayPeriodEnum && this.string.equals(((PayPeriodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case WEEK: + return visitor.visitWeek(); + case HOUR: + return visitor.visitHour(); + case QUARTER: + return visitor.visitQuarter(); + case MONTH: + return visitor.visitMonth(); + case SEMIMONTHLY: + return visitor.visitSemimonthly(); + case YEAR: + return visitor.visitYear(); + case DAY: + return visitor.visitDay(); + case EVERY_SIX_MONTHS: + return visitor.visitEverySixMonths(); + case EVERY_TWO_WEEKS: + return visitor.visitEveryTwoWeeks(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayPeriodEnum valueOf(String value) { + switch (value) { + case "WEEK": + return WEEK; + case "HOUR": + return HOUR; + case "QUARTER": + return QUARTER; + case "MONTH": + return MONTH; + case "SEMIMONTHLY": + return SEMIMONTHLY; + case "YEAR": + return YEAR; + case "DAY": + return DAY; + case "EVERY_SIX_MONTHS": + return EVERY_SIX_MONTHS; + case "EVERY_TWO_WEEKS": + return EVERY_TWO_WEEKS; + default: + return new PayPeriodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HOUR, + + DAY, + + WEEK, + + EVERY_TWO_WEEKS, + + SEMIMONTHLY, + + MONTH, + + QUARTER, + + EVERY_SIX_MONTHS, + + YEAR, + + UNKNOWN + } + + public interface Visitor { + T visitHour(); + + T visitDay(); + + T visitWeek(); + + T visitEveryTwoWeeks(); + + T visitSemimonthly(); + + T visitMonth(); + + T visitQuarter(); + + T visitEverySixMonths(); + + T visitYear(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRemoteFields.java index 13183b3ea..a03a9a640 100644 --- a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayrollRunsListRequestRemoteFields { - RUN_STATE("run_state"), +public final class PayrollRunsListRequestRemoteFields { + public static final PayrollRunsListRequestRemoteFields RUN_TYPE = + new PayrollRunsListRequestRemoteFields(Value.RUN_TYPE, "run_type"); - RUN_STATE_RUN_TYPE("run_state,run_type"), + public static final PayrollRunsListRequestRemoteFields RUN_STATE_RUN_TYPE = + new PayrollRunsListRequestRemoteFields(Value.RUN_STATE_RUN_TYPE, "run_state,run_type"); - RUN_TYPE("run_type"); + public static final PayrollRunsListRequestRemoteFields RUN_STATE = + new PayrollRunsListRequestRemoteFields(Value.RUN_STATE, "run_state"); - private final String value; + private final Value value; - PayrollRunsListRequestRemoteFields(String value) { + private final String string; + + PayrollRunsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayrollRunsListRequestRemoteFields + && this.string.equals(((PayrollRunsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RUN_TYPE: + return visitor.visitRunType(); + case RUN_STATE_RUN_TYPE: + return visitor.visitRunStateRunType(); + case RUN_STATE: + return visitor.visitRunState(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayrollRunsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "run_type": + return RUN_TYPE; + case "run_state,run_type": + return RUN_STATE_RUN_TYPE; + case "run_state": + return RUN_STATE; + default: + return new PayrollRunsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + RUN_STATE, + + RUN_STATE_RUN_TYPE, + + RUN_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitRunState(); + + T visitRunStateRunType(); + + T visitRunType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRunType.java b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRunType.java index eda4ef585..938f3f1ad 100644 --- a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRunType.java +++ b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestRunType.java @@ -3,28 +3,117 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayrollRunsListRequestRunType { - CORRECTION("CORRECTION"), +public final class PayrollRunsListRequestRunType { + public static final PayrollRunsListRequestRunType CORRECTION = + new PayrollRunsListRequestRunType(Value.CORRECTION, "CORRECTION"); - OFF_CYCLE("OFF_CYCLE"), + public static final PayrollRunsListRequestRunType REGULAR = + new PayrollRunsListRequestRunType(Value.REGULAR, "REGULAR"); - REGULAR("REGULAR"), + public static final PayrollRunsListRequestRunType SIGN_ON_BONUS = + new PayrollRunsListRequestRunType(Value.SIGN_ON_BONUS, "SIGN_ON_BONUS"); - SIGN_ON_BONUS("SIGN_ON_BONUS"), + public static final PayrollRunsListRequestRunType OFF_CYCLE = + new PayrollRunsListRequestRunType(Value.OFF_CYCLE, "OFF_CYCLE"); - TERMINATION("TERMINATION"); + public static final PayrollRunsListRequestRunType TERMINATION = + new PayrollRunsListRequestRunType(Value.TERMINATION, "TERMINATION"); - private final String value; + private final Value value; - PayrollRunsListRequestRunType(String value) { + private final String string; + + PayrollRunsListRequestRunType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayrollRunsListRequestRunType + && this.string.equals(((PayrollRunsListRequestRunType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CORRECTION: + return visitor.visitCorrection(); + case REGULAR: + return visitor.visitRegular(); + case SIGN_ON_BONUS: + return visitor.visitSignOnBonus(); + case OFF_CYCLE: + return visitor.visitOffCycle(); + case TERMINATION: + return visitor.visitTermination(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayrollRunsListRequestRunType valueOf(String value) { + switch (value) { + case "CORRECTION": + return CORRECTION; + case "REGULAR": + return REGULAR; + case "SIGN_ON_BONUS": + return SIGN_ON_BONUS; + case "OFF_CYCLE": + return OFF_CYCLE; + case "TERMINATION": + return TERMINATION; + default: + return new PayrollRunsListRequestRunType(Value.UNKNOWN, value); + } + } + + public enum Value { + CORRECTION, + + OFF_CYCLE, + + REGULAR, + + SIGN_ON_BONUS, + + TERMINATION, + + UNKNOWN + } + + public interface Visitor { + T visitCorrection(); + + T visitOffCycle(); + + T visitRegular(); + + T visitSignOnBonus(); + + T visitTermination(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestShowEnumOrigins.java index a0b013eed..b62e63636 100644 --- a/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/PayrollRunsListRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayrollRunsListRequestShowEnumOrigins { - RUN_STATE("run_state"), +public final class PayrollRunsListRequestShowEnumOrigins { + public static final PayrollRunsListRequestShowEnumOrigins RUN_TYPE = + new PayrollRunsListRequestShowEnumOrigins(Value.RUN_TYPE, "run_type"); - RUN_STATE_RUN_TYPE("run_state,run_type"), + public static final PayrollRunsListRequestShowEnumOrigins RUN_STATE_RUN_TYPE = + new PayrollRunsListRequestShowEnumOrigins(Value.RUN_STATE_RUN_TYPE, "run_state,run_type"); - RUN_TYPE("run_type"); + public static final PayrollRunsListRequestShowEnumOrigins RUN_STATE = + new PayrollRunsListRequestShowEnumOrigins(Value.RUN_STATE, "run_state"); - private final String value; + private final Value value; - PayrollRunsListRequestShowEnumOrigins(String value) { + private final String string; + + PayrollRunsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayrollRunsListRequestShowEnumOrigins + && this.string.equals(((PayrollRunsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RUN_TYPE: + return visitor.visitRunType(); + case RUN_STATE_RUN_TYPE: + return visitor.visitRunStateRunType(); + case RUN_STATE: + return visitor.visitRunState(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayrollRunsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "run_type": + return RUN_TYPE; + case "run_state,run_type": + return RUN_STATE_RUN_TYPE; + case "run_state": + return RUN_STATE; + default: + return new PayrollRunsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + RUN_STATE, + + RUN_STATE_RUN_TYPE, + + RUN_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitRunState(); + + T visitRunStateRunType(); + + T visitRunType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestRemoteFields.java index 6c70bba90..69993d02d 100644 --- a/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestRemoteFields.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayrollRunsRetrieveRequestRemoteFields { - RUN_STATE("run_state"), +public final class PayrollRunsRetrieveRequestRemoteFields { + public static final PayrollRunsRetrieveRequestRemoteFields RUN_TYPE = + new PayrollRunsRetrieveRequestRemoteFields(Value.RUN_TYPE, "run_type"); - RUN_STATE_RUN_TYPE("run_state,run_type"), + public static final PayrollRunsRetrieveRequestRemoteFields RUN_STATE_RUN_TYPE = + new PayrollRunsRetrieveRequestRemoteFields(Value.RUN_STATE_RUN_TYPE, "run_state,run_type"); - RUN_TYPE("run_type"); + public static final PayrollRunsRetrieveRequestRemoteFields RUN_STATE = + new PayrollRunsRetrieveRequestRemoteFields(Value.RUN_STATE, "run_state"); - private final String value; + private final Value value; - PayrollRunsRetrieveRequestRemoteFields(String value) { + private final String string; + + PayrollRunsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayrollRunsRetrieveRequestRemoteFields + && this.string.equals(((PayrollRunsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RUN_TYPE: + return visitor.visitRunType(); + case RUN_STATE_RUN_TYPE: + return visitor.visitRunStateRunType(); + case RUN_STATE: + return visitor.visitRunState(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayrollRunsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "run_type": + return RUN_TYPE; + case "run_state,run_type": + return RUN_STATE_RUN_TYPE; + case "run_state": + return RUN_STATE; + default: + return new PayrollRunsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + RUN_STATE, + + RUN_STATE_RUN_TYPE, + + RUN_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitRunState(); + + T visitRunStateRunType(); + + T visitRunType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestShowEnumOrigins.java index 6adb871a8..85bce012a 100644 --- a/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/PayrollRunsRetrieveRequestShowEnumOrigins.java @@ -3,24 +3,95 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PayrollRunsRetrieveRequestShowEnumOrigins { - RUN_STATE("run_state"), +public final class PayrollRunsRetrieveRequestShowEnumOrigins { + public static final PayrollRunsRetrieveRequestShowEnumOrigins RUN_TYPE = + new PayrollRunsRetrieveRequestShowEnumOrigins(Value.RUN_TYPE, "run_type"); - RUN_STATE_RUN_TYPE("run_state,run_type"), + public static final PayrollRunsRetrieveRequestShowEnumOrigins RUN_STATE_RUN_TYPE = + new PayrollRunsRetrieveRequestShowEnumOrigins(Value.RUN_STATE_RUN_TYPE, "run_state,run_type"); - RUN_TYPE("run_type"); + public static final PayrollRunsRetrieveRequestShowEnumOrigins RUN_STATE = + new PayrollRunsRetrieveRequestShowEnumOrigins(Value.RUN_STATE, "run_state"); - private final String value; + private final Value value; - PayrollRunsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + PayrollRunsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PayrollRunsRetrieveRequestShowEnumOrigins + && this.string.equals(((PayrollRunsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RUN_TYPE: + return visitor.visitRunType(); + case RUN_STATE_RUN_TYPE: + return visitor.visitRunStateRunType(); + case RUN_STATE: + return visitor.visitRunState(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PayrollRunsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "run_type": + return RUN_TYPE; + case "run_state,run_type": + return RUN_STATE_RUN_TYPE; + case "run_state": + return RUN_STATE; + default: + return new PayrollRunsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + RUN_STATE, + + RUN_STATE_RUN_TYPE, + + RUN_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitRunState(); + + T visitRunStateRunType(); + + T visitRunType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/PolicyTypeEnum.java b/src/main/java/com/merge/api/hris/types/PolicyTypeEnum.java index ddfe3682e..d16a7a4d2 100644 --- a/src/main/java/com/merge/api/hris/types/PolicyTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/PolicyTypeEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PolicyTypeEnum { - VACATION("VACATION"), +public final class PolicyTypeEnum { + public static final PolicyTypeEnum VACATION = new PolicyTypeEnum(Value.VACATION, "VACATION"); - SICK("SICK"), + public static final PolicyTypeEnum VOLUNTEER = new PolicyTypeEnum(Value.VOLUNTEER, "VOLUNTEER"); - PERSONAL("PERSONAL"), + public static final PolicyTypeEnum JURY_DUTY = new PolicyTypeEnum(Value.JURY_DUTY, "JURY_DUTY"); - JURY_DUTY("JURY_DUTY"), + public static final PolicyTypeEnum BEREAVEMENT = new PolicyTypeEnum(Value.BEREAVEMENT, "BEREAVEMENT"); - VOLUNTEER("VOLUNTEER"), + public static final PolicyTypeEnum SICK = new PolicyTypeEnum(Value.SICK, "SICK"); - BEREAVEMENT("BEREAVEMENT"); + public static final PolicyTypeEnum PERSONAL = new PolicyTypeEnum(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - PolicyTypeEnum(String value) { + private final String string; + + PolicyTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof PolicyTypeEnum && this.string.equals(((PolicyTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case VACATION: + return visitor.visitVacation(); + case VOLUNTEER: + return visitor.visitVolunteer(); + case JURY_DUTY: + return visitor.visitJuryDuty(); + case BEREAVEMENT: + return visitor.visitBereavement(); + case SICK: + return visitor.visitSick(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PolicyTypeEnum valueOf(String value) { + switch (value) { + case "VACATION": + return VACATION; + case "VOLUNTEER": + return VOLUNTEER; + case "JURY_DUTY": + return JURY_DUTY; + case "BEREAVEMENT": + return BEREAVEMENT; + case "SICK": + return SICK; + case "PERSONAL": + return PERSONAL; + default: + return new PolicyTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + VACATION, + + SICK, + + PERSONAL, + + JURY_DUTY, + + VOLUNTEER, + + BEREAVEMENT, + + UNKNOWN + } + + public interface Visitor { + T visitVacation(); + + T visitSick(); + + T visitPersonal(); + + T visitJuryDuty(); + + T visitVolunteer(); + + T visitBereavement(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/ReasonEnum.java b/src/main/java/com/merge/api/hris/types/ReasonEnum.java index 35ec3ffda..14c848288 100644 --- a/src/main/java/com/merge/api/hris/types/ReasonEnum.java +++ b/src/main/java/com/merge/api/hris/types/ReasonEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ReasonEnum { - GENERAL_CUSTOMER_REQUEST("GENERAL_CUSTOMER_REQUEST"), +public final class ReasonEnum { + public static final ReasonEnum GDPR = new ReasonEnum(Value.GDPR, "GDPR"); - GDPR("GDPR"), + public static final ReasonEnum GENERAL_CUSTOMER_REQUEST = + new ReasonEnum(Value.GENERAL_CUSTOMER_REQUEST, "GENERAL_CUSTOMER_REQUEST"); - OTHER("OTHER"); + public static final ReasonEnum OTHER = new ReasonEnum(Value.OTHER, "OTHER"); - private final String value; + private final Value value; - ReasonEnum(String value) { + private final String string; + + ReasonEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ReasonEnum && this.string.equals(((ReasonEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case GDPR: + return visitor.visitGdpr(); + case GENERAL_CUSTOMER_REQUEST: + return visitor.visitGeneralCustomerRequest(); + case OTHER: + return visitor.visitOther(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ReasonEnum valueOf(String value) { + switch (value) { + case "GDPR": + return GDPR; + case "GENERAL_CUSTOMER_REQUEST": + return GENERAL_CUSTOMER_REQUEST; + case "OTHER": + return OTHER; + default: + return new ReasonEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GENERAL_CUSTOMER_REQUEST, + + GDPR, + + OTHER, + + UNKNOWN + } + + public interface Visitor { + T visitGeneralCustomerRequest(); + + T visitGdpr(); + + T visitOther(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RelationshipEnum.java b/src/main/java/com/merge/api/hris/types/RelationshipEnum.java index dff24c12a..dcd93f20c 100644 --- a/src/main/java/com/merge/api/hris/types/RelationshipEnum.java +++ b/src/main/java/com/merge/api/hris/types/RelationshipEnum.java @@ -3,24 +3,92 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RelationshipEnum { - CHILD("CHILD"), +public final class RelationshipEnum { + public static final RelationshipEnum DOMESTIC_PARTNER = + new RelationshipEnum(Value.DOMESTIC_PARTNER, "DOMESTIC_PARTNER"); - SPOUSE("SPOUSE"), + public static final RelationshipEnum SPOUSE = new RelationshipEnum(Value.SPOUSE, "SPOUSE"); - DOMESTIC_PARTNER("DOMESTIC_PARTNER"); + public static final RelationshipEnum CHILD = new RelationshipEnum(Value.CHILD, "CHILD"); - private final String value; + private final Value value; - RelationshipEnum(String value) { + private final String string; + + RelationshipEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RelationshipEnum && this.string.equals(((RelationshipEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DOMESTIC_PARTNER: + return visitor.visitDomesticPartner(); + case SPOUSE: + return visitor.visitSpouse(); + case CHILD: + return visitor.visitChild(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RelationshipEnum valueOf(String value) { + switch (value) { + case "DOMESTIC_PARTNER": + return DOMESTIC_PARTNER; + case "SPOUSE": + return SPOUSE; + case "CHILD": + return CHILD; + default: + return new RelationshipEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CHILD, + + SPOUSE, + + DOMESTIC_PARTNER, + + UNKNOWN + } + + public interface Visitor { + T visitChild(); + + T visitSpouse(); + + T visitDomesticPartner(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RequestFormatEnum.java b/src/main/java/com/merge/api/hris/types/RequestFormatEnum.java index 47e6a40a2..40f5e908f 100644 --- a/src/main/java/com/merge/api/hris/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/hris/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RequestTypeEnum.java b/src/main/java/com/merge/api/hris/types/RequestTypeEnum.java index 264874b92..76ef29133 100644 --- a/src/main/java/com/merge/api/hris/types/RequestTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/RequestTypeEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestTypeEnum { - VACATION("VACATION"), +public final class RequestTypeEnum { + public static final RequestTypeEnum VACATION = new RequestTypeEnum(Value.VACATION, "VACATION"); - SICK("SICK"), + public static final RequestTypeEnum VOLUNTEER = new RequestTypeEnum(Value.VOLUNTEER, "VOLUNTEER"); - PERSONAL("PERSONAL"), + public static final RequestTypeEnum JURY_DUTY = new RequestTypeEnum(Value.JURY_DUTY, "JURY_DUTY"); - JURY_DUTY("JURY_DUTY"), + public static final RequestTypeEnum BEREAVEMENT = new RequestTypeEnum(Value.BEREAVEMENT, "BEREAVEMENT"); - VOLUNTEER("VOLUNTEER"), + public static final RequestTypeEnum SICK = new RequestTypeEnum(Value.SICK, "SICK"); - BEREAVEMENT("BEREAVEMENT"); + public static final RequestTypeEnum PERSONAL = new RequestTypeEnum(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - RequestTypeEnum(String value) { + private final String string; + + RequestTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestTypeEnum && this.string.equals(((RequestTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case VACATION: + return visitor.visitVacation(); + case VOLUNTEER: + return visitor.visitVolunteer(); + case JURY_DUTY: + return visitor.visitJuryDuty(); + case BEREAVEMENT: + return visitor.visitBereavement(); + case SICK: + return visitor.visitSick(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestTypeEnum valueOf(String value) { + switch (value) { + case "VACATION": + return VACATION; + case "VOLUNTEER": + return VOLUNTEER; + case "JURY_DUTY": + return JURY_DUTY; + case "BEREAVEMENT": + return BEREAVEMENT; + case "SICK": + return SICK; + case "PERSONAL": + return PERSONAL; + default: + return new RequestTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + VACATION, + + SICK, + + PERSONAL, + + JURY_DUTY, + + VOLUNTEER, + + BEREAVEMENT, + + UNKNOWN + } + + public interface Visitor { + T visitVacation(); + + T visitSick(); + + T visitPersonal(); + + T visitJuryDuty(); + + T visitVolunteer(); + + T visitBereavement(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/hris/types/ResponseTypeEnum.java index 47cd59d1f..305c24a73 100644 --- a/src/main/java/com/merge/api/hris/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RoleEnum.java b/src/main/java/com/merge/api/hris/types/RoleEnum.java index b61166c3a..b5ec2b259 100644 --- a/src/main/java/com/merge/api/hris/types/RoleEnum.java +++ b/src/main/java/com/merge/api/hris/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RunStateEnum.java b/src/main/java/com/merge/api/hris/types/RunStateEnum.java index b4a966b42..0fac7b314 100644 --- a/src/main/java/com/merge/api/hris/types/RunStateEnum.java +++ b/src/main/java/com/merge/api/hris/types/RunStateEnum.java @@ -3,28 +3,110 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RunStateEnum { - PAID("PAID"), +public final class RunStateEnum { + public static final RunStateEnum CLOSED = new RunStateEnum(Value.CLOSED, "CLOSED"); - DRAFT("DRAFT"), + public static final RunStateEnum DRAFT = new RunStateEnum(Value.DRAFT, "DRAFT"); - APPROVED("APPROVED"), + public static final RunStateEnum PAID = new RunStateEnum(Value.PAID, "PAID"); - FAILED("FAILED"), + public static final RunStateEnum APPROVED = new RunStateEnum(Value.APPROVED, "APPROVED"); - CLOSED("CLOSED"); + public static final RunStateEnum FAILED = new RunStateEnum(Value.FAILED, "FAILED"); - private final String value; + private final Value value; - RunStateEnum(String value) { + private final String string; + + RunStateEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RunStateEnum && this.string.equals(((RunStateEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLOSED: + return visitor.visitClosed(); + case DRAFT: + return visitor.visitDraft(); + case PAID: + return visitor.visitPaid(); + case APPROVED: + return visitor.visitApproved(); + case FAILED: + return visitor.visitFailed(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RunStateEnum valueOf(String value) { + switch (value) { + case "CLOSED": + return CLOSED; + case "DRAFT": + return DRAFT; + case "PAID": + return PAID; + case "APPROVED": + return APPROVED; + case "FAILED": + return FAILED; + default: + return new RunStateEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PAID, + + DRAFT, + + APPROVED, + + FAILED, + + CLOSED, + + UNKNOWN + } + + public interface Visitor { + T visitPaid(); + + T visitDraft(); + + T visitApproved(); + + T visitFailed(); + + T visitClosed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/RunTypeEnum.java b/src/main/java/com/merge/api/hris/types/RunTypeEnum.java index 57d5494d6..a7741e04e 100644 --- a/src/main/java/com/merge/api/hris/types/RunTypeEnum.java +++ b/src/main/java/com/merge/api/hris/types/RunTypeEnum.java @@ -3,28 +3,110 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RunTypeEnum { - REGULAR("REGULAR"), +public final class RunTypeEnum { + public static final RunTypeEnum CORRECTION = new RunTypeEnum(Value.CORRECTION, "CORRECTION"); - OFF_CYCLE("OFF_CYCLE"), + public static final RunTypeEnum REGULAR = new RunTypeEnum(Value.REGULAR, "REGULAR"); - CORRECTION("CORRECTION"), + public static final RunTypeEnum SIGN_ON_BONUS = new RunTypeEnum(Value.SIGN_ON_BONUS, "SIGN_ON_BONUS"); - TERMINATION("TERMINATION"), + public static final RunTypeEnum OFF_CYCLE = new RunTypeEnum(Value.OFF_CYCLE, "OFF_CYCLE"); - SIGN_ON_BONUS("SIGN_ON_BONUS"); + public static final RunTypeEnum TERMINATION = new RunTypeEnum(Value.TERMINATION, "TERMINATION"); - private final String value; + private final Value value; - RunTypeEnum(String value) { + private final String string; + + RunTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RunTypeEnum && this.string.equals(((RunTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CORRECTION: + return visitor.visitCorrection(); + case REGULAR: + return visitor.visitRegular(); + case SIGN_ON_BONUS: + return visitor.visitSignOnBonus(); + case OFF_CYCLE: + return visitor.visitOffCycle(); + case TERMINATION: + return visitor.visitTermination(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RunTypeEnum valueOf(String value) { + switch (value) { + case "CORRECTION": + return CORRECTION; + case "REGULAR": + return REGULAR; + case "SIGN_ON_BONUS": + return SIGN_ON_BONUS; + case "OFF_CYCLE": + return OFF_CYCLE; + case "TERMINATION": + return TERMINATION; + default: + return new RunTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + REGULAR, + + OFF_CYCLE, + + CORRECTION, + + TERMINATION, + + SIGN_ON_BONUS, + + UNKNOWN + } + + public interface Visitor { + T visitRegular(); + + T visitOffCycle(); + + T visitCorrection(); + + T visitTermination(); + + T visitSignOnBonus(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/hris/types/SelectiveSyncConfigurationsUsageEnum.java index 95ed29c1b..8d350dd97 100644 --- a/src/main/java/com/merge/api/hris/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/hris/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/StatusFd5Enum.java b/src/main/java/com/merge/api/hris/types/StatusFd5Enum.java index 8c25f0f6b..6191bf59c 100644 --- a/src/main/java/com/merge/api/hris/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/hris/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffBalancesListRequestPolicyType.java b/src/main/java/com/merge/api/hris/types/TimeOffBalancesListRequestPolicyType.java index 80e1c6e6a..f4633f880 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffBalancesListRequestPolicyType.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffBalancesListRequestPolicyType.java @@ -3,30 +3,128 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffBalancesListRequestPolicyType { - BEREAVEMENT("BEREAVEMENT"), +public final class TimeOffBalancesListRequestPolicyType { + public static final TimeOffBalancesListRequestPolicyType VACATION = + new TimeOffBalancesListRequestPolicyType(Value.VACATION, "VACATION"); - JURY_DUTY("JURY_DUTY"), + public static final TimeOffBalancesListRequestPolicyType VOLUNTEER = + new TimeOffBalancesListRequestPolicyType(Value.VOLUNTEER, "VOLUNTEER"); - PERSONAL("PERSONAL"), + public static final TimeOffBalancesListRequestPolicyType JURY_DUTY = + new TimeOffBalancesListRequestPolicyType(Value.JURY_DUTY, "JURY_DUTY"); - SICK("SICK"), + public static final TimeOffBalancesListRequestPolicyType BEREAVEMENT = + new TimeOffBalancesListRequestPolicyType(Value.BEREAVEMENT, "BEREAVEMENT"); - VACATION("VACATION"), + public static final TimeOffBalancesListRequestPolicyType SICK = + new TimeOffBalancesListRequestPolicyType(Value.SICK, "SICK"); - VOLUNTEER("VOLUNTEER"); + public static final TimeOffBalancesListRequestPolicyType PERSONAL = + new TimeOffBalancesListRequestPolicyType(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - TimeOffBalancesListRequestPolicyType(String value) { + private final String string; + + TimeOffBalancesListRequestPolicyType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffBalancesListRequestPolicyType + && this.string.equals(((TimeOffBalancesListRequestPolicyType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case VACATION: + return visitor.visitVacation(); + case VOLUNTEER: + return visitor.visitVolunteer(); + case JURY_DUTY: + return visitor.visitJuryDuty(); + case BEREAVEMENT: + return visitor.visitBereavement(); + case SICK: + return visitor.visitSick(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffBalancesListRequestPolicyType valueOf(String value) { + switch (value) { + case "VACATION": + return VACATION; + case "VOLUNTEER": + return VOLUNTEER; + case "JURY_DUTY": + return JURY_DUTY; + case "BEREAVEMENT": + return BEREAVEMENT; + case "SICK": + return SICK; + case "PERSONAL": + return PERSONAL; + default: + return new TimeOffBalancesListRequestPolicyType(Value.UNKNOWN, value); + } + } + + public enum Value { + BEREAVEMENT, + + JURY_DUTY, + + PERSONAL, + + SICK, + + VACATION, + + VOLUNTEER, + + UNKNOWN + } + + public interface Visitor { + T visitBereavement(); + + T visitJuryDuty(); + + T visitPersonal(); + + T visitSick(); + + T visitVacation(); + + T visitVolunteer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffListRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/TimeOffListRequestExpandItem.java index 9bab635fd..f248e6efa 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffListRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffListRequestExpandItem { - APPROVER("approver"), +public final class TimeOffListRequestExpandItem { + public static final TimeOffListRequestExpandItem EMPLOYEE = + new TimeOffListRequestExpandItem(Value.EMPLOYEE, "employee"); - EMPLOYEE("employee"); + public static final TimeOffListRequestExpandItem APPROVER = + new TimeOffListRequestExpandItem(Value.APPROVER, "approver"); - private final String value; + private final Value value; - TimeOffListRequestExpandItem(String value) { + private final String string; + + TimeOffListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffListRequestExpandItem + && this.string.equals(((TimeOffListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EMPLOYEE: + return visitor.visitEmployee(); + case APPROVER: + return visitor.visitApprover(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffListRequestExpandItem valueOf(String value) { + switch (value) { + case "employee": + return EMPLOYEE; + case "approver": + return APPROVER; + default: + return new TimeOffListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPROVER, + + EMPLOYEE, + + UNKNOWN + } + + public interface Visitor { + T visitApprover(); + + T visitEmployee(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffListRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/TimeOffListRequestRemoteFields.java index b7c9afecb..0c5cbb2ce 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffListRequestRemoteFields.java @@ -3,32 +3,138 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffListRequestRemoteFields { - REQUEST_TYPE("request_type"), +public final class TimeOffListRequestRemoteFields { + public static final TimeOffListRequestRemoteFields REQUEST_TYPE = + new TimeOffListRequestRemoteFields(Value.REQUEST_TYPE, "request_type"); - REQUEST_TYPE_STATUS("request_type,status"), + public static final TimeOffListRequestRemoteFields REQUEST_TYPE_STATUS_UNITS = + new TimeOffListRequestRemoteFields(Value.REQUEST_TYPE_STATUS_UNITS, "request_type,status,units"); - REQUEST_TYPE_STATUS_UNITS("request_type,status,units"), + public static final TimeOffListRequestRemoteFields STATUS = + new TimeOffListRequestRemoteFields(Value.STATUS, "status"); - REQUEST_TYPE_UNITS("request_type,units"), + public static final TimeOffListRequestRemoteFields UNITS = new TimeOffListRequestRemoteFields(Value.UNITS, "units"); - STATUS("status"), + public static final TimeOffListRequestRemoteFields REQUEST_TYPE_UNITS = + new TimeOffListRequestRemoteFields(Value.REQUEST_TYPE_UNITS, "request_type,units"); - STATUS_UNITS("status,units"), + public static final TimeOffListRequestRemoteFields REQUEST_TYPE_STATUS = + new TimeOffListRequestRemoteFields(Value.REQUEST_TYPE_STATUS, "request_type,status"); - UNITS("units"); + public static final TimeOffListRequestRemoteFields STATUS_UNITS = + new TimeOffListRequestRemoteFields(Value.STATUS_UNITS, "status,units"); - private final String value; + private final Value value; - TimeOffListRequestRemoteFields(String value) { + private final String string; + + TimeOffListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffListRequestRemoteFields + && this.string.equals(((TimeOffListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case REQUEST_TYPE: + return visitor.visitRequestType(); + case REQUEST_TYPE_STATUS_UNITS: + return visitor.visitRequestTypeStatusUnits(); + case STATUS: + return visitor.visitStatus(); + case UNITS: + return visitor.visitUnits(); + case REQUEST_TYPE_UNITS: + return visitor.visitRequestTypeUnits(); + case REQUEST_TYPE_STATUS: + return visitor.visitRequestTypeStatus(); + case STATUS_UNITS: + return visitor.visitStatusUnits(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffListRequestRemoteFields valueOf(String value) { + switch (value) { + case "request_type": + return REQUEST_TYPE; + case "request_type,status,units": + return REQUEST_TYPE_STATUS_UNITS; + case "status": + return STATUS; + case "units": + return UNITS; + case "request_type,units": + return REQUEST_TYPE_UNITS; + case "request_type,status": + return REQUEST_TYPE_STATUS; + case "status,units": + return STATUS_UNITS; + default: + return new TimeOffListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + REQUEST_TYPE, + + REQUEST_TYPE_STATUS, + + REQUEST_TYPE_STATUS_UNITS, + + REQUEST_TYPE_UNITS, + + STATUS, + + STATUS_UNITS, + + UNITS, + + UNKNOWN + } + + public interface Visitor { + T visitRequestType(); + + T visitRequestTypeStatus(); + + T visitRequestTypeStatusUnits(); + + T visitRequestTypeUnits(); + + T visitStatus(); + + T visitStatusUnits(); + + T visitUnits(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffListRequestRequestType.java b/src/main/java/com/merge/api/hris/types/TimeOffListRequestRequestType.java index 4b4689812..d1a709ec2 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffListRequestRequestType.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffListRequestRequestType.java @@ -3,30 +3,127 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffListRequestRequestType { - BEREAVEMENT("BEREAVEMENT"), +public final class TimeOffListRequestRequestType { + public static final TimeOffListRequestRequestType VACATION = + new TimeOffListRequestRequestType(Value.VACATION, "VACATION"); - JURY_DUTY("JURY_DUTY"), + public static final TimeOffListRequestRequestType VOLUNTEER = + new TimeOffListRequestRequestType(Value.VOLUNTEER, "VOLUNTEER"); - PERSONAL("PERSONAL"), + public static final TimeOffListRequestRequestType JURY_DUTY = + new TimeOffListRequestRequestType(Value.JURY_DUTY, "JURY_DUTY"); - SICK("SICK"), + public static final TimeOffListRequestRequestType BEREAVEMENT = + new TimeOffListRequestRequestType(Value.BEREAVEMENT, "BEREAVEMENT"); - VACATION("VACATION"), + public static final TimeOffListRequestRequestType SICK = new TimeOffListRequestRequestType(Value.SICK, "SICK"); - VOLUNTEER("VOLUNTEER"); + public static final TimeOffListRequestRequestType PERSONAL = + new TimeOffListRequestRequestType(Value.PERSONAL, "PERSONAL"); - private final String value; + private final Value value; - TimeOffListRequestRequestType(String value) { + private final String string; + + TimeOffListRequestRequestType(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffListRequestRequestType + && this.string.equals(((TimeOffListRequestRequestType) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case VACATION: + return visitor.visitVacation(); + case VOLUNTEER: + return visitor.visitVolunteer(); + case JURY_DUTY: + return visitor.visitJuryDuty(); + case BEREAVEMENT: + return visitor.visitBereavement(); + case SICK: + return visitor.visitSick(); + case PERSONAL: + return visitor.visitPersonal(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffListRequestRequestType valueOf(String value) { + switch (value) { + case "VACATION": + return VACATION; + case "VOLUNTEER": + return VOLUNTEER; + case "JURY_DUTY": + return JURY_DUTY; + case "BEREAVEMENT": + return BEREAVEMENT; + case "SICK": + return SICK; + case "PERSONAL": + return PERSONAL; + default: + return new TimeOffListRequestRequestType(Value.UNKNOWN, value); + } + } + + public enum Value { + BEREAVEMENT, + + JURY_DUTY, + + PERSONAL, + + SICK, + + VACATION, + + VOLUNTEER, + + UNKNOWN + } + + public interface Visitor { + T visitBereavement(); + + T visitJuryDuty(); + + T visitPersonal(); + + T visitSick(); + + T visitVacation(); + + T visitVolunteer(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/TimeOffListRequestShowEnumOrigins.java index 61ebaafd8..548bd0ca0 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffListRequestShowEnumOrigins.java @@ -3,32 +3,139 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffListRequestShowEnumOrigins { - REQUEST_TYPE("request_type"), +public final class TimeOffListRequestShowEnumOrigins { + public static final TimeOffListRequestShowEnumOrigins REQUEST_TYPE = + new TimeOffListRequestShowEnumOrigins(Value.REQUEST_TYPE, "request_type"); - REQUEST_TYPE_STATUS("request_type,status"), + public static final TimeOffListRequestShowEnumOrigins REQUEST_TYPE_STATUS_UNITS = + new TimeOffListRequestShowEnumOrigins(Value.REQUEST_TYPE_STATUS_UNITS, "request_type,status,units"); - REQUEST_TYPE_STATUS_UNITS("request_type,status,units"), + public static final TimeOffListRequestShowEnumOrigins STATUS = + new TimeOffListRequestShowEnumOrigins(Value.STATUS, "status"); - REQUEST_TYPE_UNITS("request_type,units"), + public static final TimeOffListRequestShowEnumOrigins UNITS = + new TimeOffListRequestShowEnumOrigins(Value.UNITS, "units"); - STATUS("status"), + public static final TimeOffListRequestShowEnumOrigins REQUEST_TYPE_UNITS = + new TimeOffListRequestShowEnumOrigins(Value.REQUEST_TYPE_UNITS, "request_type,units"); - STATUS_UNITS("status,units"), + public static final TimeOffListRequestShowEnumOrigins REQUEST_TYPE_STATUS = + new TimeOffListRequestShowEnumOrigins(Value.REQUEST_TYPE_STATUS, "request_type,status"); - UNITS("units"); + public static final TimeOffListRequestShowEnumOrigins STATUS_UNITS = + new TimeOffListRequestShowEnumOrigins(Value.STATUS_UNITS, "status,units"); - private final String value; + private final Value value; - TimeOffListRequestShowEnumOrigins(String value) { + private final String string; + + TimeOffListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffListRequestShowEnumOrigins + && this.string.equals(((TimeOffListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case REQUEST_TYPE: + return visitor.visitRequestType(); + case REQUEST_TYPE_STATUS_UNITS: + return visitor.visitRequestTypeStatusUnits(); + case STATUS: + return visitor.visitStatus(); + case UNITS: + return visitor.visitUnits(); + case REQUEST_TYPE_UNITS: + return visitor.visitRequestTypeUnits(); + case REQUEST_TYPE_STATUS: + return visitor.visitRequestTypeStatus(); + case STATUS_UNITS: + return visitor.visitStatusUnits(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "request_type": + return REQUEST_TYPE; + case "request_type,status,units": + return REQUEST_TYPE_STATUS_UNITS; + case "status": + return STATUS; + case "units": + return UNITS; + case "request_type,units": + return REQUEST_TYPE_UNITS; + case "request_type,status": + return REQUEST_TYPE_STATUS; + case "status,units": + return STATUS_UNITS; + default: + return new TimeOffListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + REQUEST_TYPE, + + REQUEST_TYPE_STATUS, + + REQUEST_TYPE_STATUS_UNITS, + + REQUEST_TYPE_UNITS, + + STATUS, + + STATUS_UNITS, + + UNITS, + + UNKNOWN + } + + public interface Visitor { + T visitRequestType(); + + T visitRequestTypeStatus(); + + T visitRequestTypeStatusUnits(); + + T visitRequestTypeUnits(); + + T visitStatus(); + + T visitStatusUnits(); + + T visitUnits(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffListRequestStatus.java b/src/main/java/com/merge/api/hris/types/TimeOffListRequestStatus.java index bc59a9569..592e6df45 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffListRequestStatus.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffListRequestStatus.java @@ -3,28 +3,112 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffListRequestStatus { - APPROVED("APPROVED"), +public final class TimeOffListRequestStatus { + public static final TimeOffListRequestStatus CANCELLED = new TimeOffListRequestStatus(Value.CANCELLED, "CANCELLED"); - CANCELLED("CANCELLED"), + public static final TimeOffListRequestStatus DELETED = new TimeOffListRequestStatus(Value.DELETED, "DELETED"); - DECLINED("DECLINED"), + public static final TimeOffListRequestStatus DECLINED = new TimeOffListRequestStatus(Value.DECLINED, "DECLINED"); - DELETED("DELETED"), + public static final TimeOffListRequestStatus APPROVED = new TimeOffListRequestStatus(Value.APPROVED, "APPROVED"); - REQUESTED("REQUESTED"); + public static final TimeOffListRequestStatus REQUESTED = new TimeOffListRequestStatus(Value.REQUESTED, "REQUESTED"); - private final String value; + private final Value value; - TimeOffListRequestStatus(String value) { + private final String string; + + TimeOffListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffListRequestStatus + && this.string.equals(((TimeOffListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CANCELLED: + return visitor.visitCancelled(); + case DELETED: + return visitor.visitDeleted(); + case DECLINED: + return visitor.visitDeclined(); + case APPROVED: + return visitor.visitApproved(); + case REQUESTED: + return visitor.visitRequested(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffListRequestStatus valueOf(String value) { + switch (value) { + case "CANCELLED": + return CANCELLED; + case "DELETED": + return DELETED; + case "DECLINED": + return DECLINED; + case "APPROVED": + return APPROVED; + case "REQUESTED": + return REQUESTED; + default: + return new TimeOffListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + APPROVED, + + CANCELLED, + + DECLINED, + + DELETED, + + REQUESTED, + + UNKNOWN + } + + public interface Visitor { + T visitApproved(); + + T visitCancelled(); + + T visitDeclined(); + + T visitDeleted(); + + T visitRequested(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestExpandItem.java index 4e339115e..3cdeed818 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffRetrieveRequestExpandItem { - APPROVER("approver"), +public final class TimeOffRetrieveRequestExpandItem { + public static final TimeOffRetrieveRequestExpandItem EMPLOYEE = + new TimeOffRetrieveRequestExpandItem(Value.EMPLOYEE, "employee"); - EMPLOYEE("employee"); + public static final TimeOffRetrieveRequestExpandItem APPROVER = + new TimeOffRetrieveRequestExpandItem(Value.APPROVER, "approver"); - private final String value; + private final Value value; - TimeOffRetrieveRequestExpandItem(String value) { + private final String string; + + TimeOffRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffRetrieveRequestExpandItem + && this.string.equals(((TimeOffRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case EMPLOYEE: + return visitor.visitEmployee(); + case APPROVER: + return visitor.visitApprover(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "employee": + return EMPLOYEE; + case "approver": + return APPROVER; + default: + return new TimeOffRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + APPROVER, + + EMPLOYEE, + + UNKNOWN + } + + public interface Visitor { + T visitApprover(); + + T visitEmployee(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestRemoteFields.java index b574b8839..160d608c8 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestRemoteFields.java @@ -3,32 +3,139 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffRetrieveRequestRemoteFields { - REQUEST_TYPE("request_type"), +public final class TimeOffRetrieveRequestRemoteFields { + public static final TimeOffRetrieveRequestRemoteFields REQUEST_TYPE = + new TimeOffRetrieveRequestRemoteFields(Value.REQUEST_TYPE, "request_type"); - REQUEST_TYPE_STATUS("request_type,status"), + public static final TimeOffRetrieveRequestRemoteFields REQUEST_TYPE_STATUS_UNITS = + new TimeOffRetrieveRequestRemoteFields(Value.REQUEST_TYPE_STATUS_UNITS, "request_type,status,units"); - REQUEST_TYPE_STATUS_UNITS("request_type,status,units"), + public static final TimeOffRetrieveRequestRemoteFields STATUS = + new TimeOffRetrieveRequestRemoteFields(Value.STATUS, "status"); - REQUEST_TYPE_UNITS("request_type,units"), + public static final TimeOffRetrieveRequestRemoteFields UNITS = + new TimeOffRetrieveRequestRemoteFields(Value.UNITS, "units"); - STATUS("status"), + public static final TimeOffRetrieveRequestRemoteFields REQUEST_TYPE_UNITS = + new TimeOffRetrieveRequestRemoteFields(Value.REQUEST_TYPE_UNITS, "request_type,units"); - STATUS_UNITS("status,units"), + public static final TimeOffRetrieveRequestRemoteFields REQUEST_TYPE_STATUS = + new TimeOffRetrieveRequestRemoteFields(Value.REQUEST_TYPE_STATUS, "request_type,status"); - UNITS("units"); + public static final TimeOffRetrieveRequestRemoteFields STATUS_UNITS = + new TimeOffRetrieveRequestRemoteFields(Value.STATUS_UNITS, "status,units"); - private final String value; + private final Value value; - TimeOffRetrieveRequestRemoteFields(String value) { + private final String string; + + TimeOffRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffRetrieveRequestRemoteFields + && this.string.equals(((TimeOffRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case REQUEST_TYPE: + return visitor.visitRequestType(); + case REQUEST_TYPE_STATUS_UNITS: + return visitor.visitRequestTypeStatusUnits(); + case STATUS: + return visitor.visitStatus(); + case UNITS: + return visitor.visitUnits(); + case REQUEST_TYPE_UNITS: + return visitor.visitRequestTypeUnits(); + case REQUEST_TYPE_STATUS: + return visitor.visitRequestTypeStatus(); + case STATUS_UNITS: + return visitor.visitStatusUnits(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "request_type": + return REQUEST_TYPE; + case "request_type,status,units": + return REQUEST_TYPE_STATUS_UNITS; + case "status": + return STATUS; + case "units": + return UNITS; + case "request_type,units": + return REQUEST_TYPE_UNITS; + case "request_type,status": + return REQUEST_TYPE_STATUS; + case "status,units": + return STATUS_UNITS; + default: + return new TimeOffRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + REQUEST_TYPE, + + REQUEST_TYPE_STATUS, + + REQUEST_TYPE_STATUS_UNITS, + + REQUEST_TYPE_UNITS, + + STATUS, + + STATUS_UNITS, + + UNITS, + + UNKNOWN + } + + public interface Visitor { + T visitRequestType(); + + T visitRequestTypeStatus(); + + T visitRequestTypeStatusUnits(); + + T visitRequestTypeUnits(); + + T visitStatus(); + + T visitStatusUnits(); + + T visitUnits(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestShowEnumOrigins.java index fd9dd02d7..32a23fc62 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffRetrieveRequestShowEnumOrigins.java @@ -3,32 +3,139 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffRetrieveRequestShowEnumOrigins { - REQUEST_TYPE("request_type"), +public final class TimeOffRetrieveRequestShowEnumOrigins { + public static final TimeOffRetrieveRequestShowEnumOrigins REQUEST_TYPE = + new TimeOffRetrieveRequestShowEnumOrigins(Value.REQUEST_TYPE, "request_type"); - REQUEST_TYPE_STATUS("request_type,status"), + public static final TimeOffRetrieveRequestShowEnumOrigins REQUEST_TYPE_STATUS_UNITS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.REQUEST_TYPE_STATUS_UNITS, "request_type,status,units"); - REQUEST_TYPE_STATUS_UNITS("request_type,status,units"), + public static final TimeOffRetrieveRequestShowEnumOrigins STATUS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.STATUS, "status"); - REQUEST_TYPE_UNITS("request_type,units"), + public static final TimeOffRetrieveRequestShowEnumOrigins UNITS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.UNITS, "units"); - STATUS("status"), + public static final TimeOffRetrieveRequestShowEnumOrigins REQUEST_TYPE_UNITS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.REQUEST_TYPE_UNITS, "request_type,units"); - STATUS_UNITS("status,units"), + public static final TimeOffRetrieveRequestShowEnumOrigins REQUEST_TYPE_STATUS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.REQUEST_TYPE_STATUS, "request_type,status"); - UNITS("units"); + public static final TimeOffRetrieveRequestShowEnumOrigins STATUS_UNITS = + new TimeOffRetrieveRequestShowEnumOrigins(Value.STATUS_UNITS, "status,units"); - private final String value; + private final Value value; - TimeOffRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + TimeOffRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffRetrieveRequestShowEnumOrigins + && this.string.equals(((TimeOffRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case REQUEST_TYPE: + return visitor.visitRequestType(); + case REQUEST_TYPE_STATUS_UNITS: + return visitor.visitRequestTypeStatusUnits(); + case STATUS: + return visitor.visitStatus(); + case UNITS: + return visitor.visitUnits(); + case REQUEST_TYPE_UNITS: + return visitor.visitRequestTypeUnits(); + case REQUEST_TYPE_STATUS: + return visitor.visitRequestTypeStatus(); + case STATUS_UNITS: + return visitor.visitStatusUnits(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "request_type": + return REQUEST_TYPE; + case "request_type,status,units": + return REQUEST_TYPE_STATUS_UNITS; + case "status": + return STATUS; + case "units": + return UNITS; + case "request_type,units": + return REQUEST_TYPE_UNITS; + case "request_type,status": + return REQUEST_TYPE_STATUS; + case "status,units": + return STATUS_UNITS; + default: + return new TimeOffRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + REQUEST_TYPE, + + REQUEST_TYPE_STATUS, + + REQUEST_TYPE_STATUS_UNITS, + + REQUEST_TYPE_UNITS, + + STATUS, + + STATUS_UNITS, + + UNITS, + + UNKNOWN + } + + public interface Visitor { + T visitRequestType(); + + T visitRequestTypeStatus(); + + T visitRequestTypeStatusUnits(); + + T visitRequestTypeUnits(); + + T visitStatus(); + + T visitStatusUnits(); + + T visitUnits(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimeOffStatusEnum.java b/src/main/java/com/merge/api/hris/types/TimeOffStatusEnum.java index d37c6d167..4a6f12f53 100644 --- a/src/main/java/com/merge/api/hris/types/TimeOffStatusEnum.java +++ b/src/main/java/com/merge/api/hris/types/TimeOffStatusEnum.java @@ -3,28 +3,111 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimeOffStatusEnum { - REQUESTED("REQUESTED"), +public final class TimeOffStatusEnum { + public static final TimeOffStatusEnum CANCELLED = new TimeOffStatusEnum(Value.CANCELLED, "CANCELLED"); - APPROVED("APPROVED"), + public static final TimeOffStatusEnum DELETED = new TimeOffStatusEnum(Value.DELETED, "DELETED"); - DECLINED("DECLINED"), + public static final TimeOffStatusEnum DECLINED = new TimeOffStatusEnum(Value.DECLINED, "DECLINED"); - CANCELLED("CANCELLED"), + public static final TimeOffStatusEnum APPROVED = new TimeOffStatusEnum(Value.APPROVED, "APPROVED"); - DELETED("DELETED"); + public static final TimeOffStatusEnum REQUESTED = new TimeOffStatusEnum(Value.REQUESTED, "REQUESTED"); - private final String value; + private final Value value; - TimeOffStatusEnum(String value) { + private final String string; + + TimeOffStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimeOffStatusEnum && this.string.equals(((TimeOffStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CANCELLED: + return visitor.visitCancelled(); + case DELETED: + return visitor.visitDeleted(); + case DECLINED: + return visitor.visitDeclined(); + case APPROVED: + return visitor.visitApproved(); + case REQUESTED: + return visitor.visitRequested(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimeOffStatusEnum valueOf(String value) { + switch (value) { + case "CANCELLED": + return CANCELLED; + case "DELETED": + return DELETED; + case "DECLINED": + return DECLINED; + case "APPROVED": + return APPROVED; + case "REQUESTED": + return REQUESTED; + default: + return new TimeOffStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + REQUESTED, + + APPROVED, + + DECLINED, + + CANCELLED, + + DELETED, + + UNKNOWN + } + + public interface Visitor { + T visitRequested(); + + T visitApproved(); + + T visitDeclined(); + + T visitCancelled(); + + T visitDeleted(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/TimesheetEntriesListRequestOrderBy.java b/src/main/java/com/merge/api/hris/types/TimesheetEntriesListRequestOrderBy.java index a6d345cb3..4f282f4b4 100644 --- a/src/main/java/com/merge/api/hris/types/TimesheetEntriesListRequestOrderBy.java +++ b/src/main/java/com/merge/api/hris/types/TimesheetEntriesListRequestOrderBy.java @@ -3,22 +3,84 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TimesheetEntriesListRequestOrderBy { - START_TIME_DESCENDING("-start_time"), +public final class TimesheetEntriesListRequestOrderBy { + public static final TimesheetEntriesListRequestOrderBy START_TIME_DESCENDING = + new TimesheetEntriesListRequestOrderBy(Value.START_TIME_DESCENDING, "-start_time"); - START_TIME_ASCENDING("start_time"); + public static final TimesheetEntriesListRequestOrderBy START_TIME_ASCENDING = + new TimesheetEntriesListRequestOrderBy(Value.START_TIME_ASCENDING, "start_time"); - private final String value; + private final Value value; - TimesheetEntriesListRequestOrderBy(String value) { + private final String string; + + TimesheetEntriesListRequestOrderBy(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TimesheetEntriesListRequestOrderBy + && this.string.equals(((TimesheetEntriesListRequestOrderBy) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case START_TIME_DESCENDING: + return visitor.visitStartTimeDescending(); + case START_TIME_ASCENDING: + return visitor.visitStartTimeAscending(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TimesheetEntriesListRequestOrderBy valueOf(String value) { + switch (value) { + case "-start_time": + return START_TIME_DESCENDING; + case "start_time": + return START_TIME_ASCENDING; + default: + return new TimesheetEntriesListRequestOrderBy(Value.UNKNOWN, value); + } + } + + public enum Value { + START_TIME_DESCENDING, + + START_TIME_ASCENDING, + + UNKNOWN + } + + public interface Visitor { + T visitStartTimeDescending(); + + T visitStartTimeAscending(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/hris/types/UnitsEnum.java b/src/main/java/com/merge/api/hris/types/UnitsEnum.java index 60d530791..3ae0a20d0 100644 --- a/src/main/java/com/merge/api/hris/types/UnitsEnum.java +++ b/src/main/java/com/merge/api/hris/types/UnitsEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.hris.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum UnitsEnum { - HOURS("HOURS"), +public final class UnitsEnum { + public static final UnitsEnum DAYS = new UnitsEnum(Value.DAYS, "DAYS"); - DAYS("DAYS"); + public static final UnitsEnum HOURS = new UnitsEnum(Value.HOURS, "HOURS"); - private final String value; + private final Value value; - UnitsEnum(String value) { + private final String string; + + UnitsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof UnitsEnum && this.string.equals(((UnitsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DAYS: + return visitor.visitDays(); + case HOURS: + return visitor.visitHours(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static UnitsEnum valueOf(String value) { + switch (value) { + case "DAYS": + return DAYS; + case "HOURS": + return HOURS; + default: + return new UnitsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HOURS, + + DAYS, + + UNKNOWN + } + + public interface Visitor { + T visitHours(); + + T visitDays(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/AccountDetailsAndActionsStatusEnum.java b/src/main/java/com/merge/api/ticketing/types/AccountDetailsAndActionsStatusEnum.java index bc18fb04d..5c0339752 100644 --- a/src/main/java/com/merge/api/ticketing/types/AccountDetailsAndActionsStatusEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/AccountDetailsAndActionsStatusEnum.java @@ -3,26 +3,106 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum AccountDetailsAndActionsStatusEnum { - COMPLETE("COMPLETE"), +public final class AccountDetailsAndActionsStatusEnum { + public static final AccountDetailsAndActionsStatusEnum RELINK_NEEDED = + new AccountDetailsAndActionsStatusEnum(Value.RELINK_NEEDED, "RELINK_NEEDED"); - INCOMPLETE("INCOMPLETE"), + public static final AccountDetailsAndActionsStatusEnum INCOMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.INCOMPLETE, "INCOMPLETE"); - RELINK_NEEDED("RELINK_NEEDED"), + public static final AccountDetailsAndActionsStatusEnum IDLE = + new AccountDetailsAndActionsStatusEnum(Value.IDLE, "IDLE"); - IDLE("IDLE"); + public static final AccountDetailsAndActionsStatusEnum COMPLETE = + new AccountDetailsAndActionsStatusEnum(Value.COMPLETE, "COMPLETE"); - private final String value; + private final Value value; - AccountDetailsAndActionsStatusEnum(String value) { + private final String string; + + AccountDetailsAndActionsStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof AccountDetailsAndActionsStatusEnum + && this.string.equals(((AccountDetailsAndActionsStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RELINK_NEEDED: + return visitor.visitRelinkNeeded(); + case INCOMPLETE: + return visitor.visitIncomplete(); + case IDLE: + return visitor.visitIdle(); + case COMPLETE: + return visitor.visitComplete(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static AccountDetailsAndActionsStatusEnum valueOf(String value) { + switch (value) { + case "RELINK_NEEDED": + return RELINK_NEEDED; + case "INCOMPLETE": + return INCOMPLETE; + case "IDLE": + return IDLE; + case "COMPLETE": + return COMPLETE; + default: + return new AccountDetailsAndActionsStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPLETE, + + INCOMPLETE, + + RELINK_NEEDED, + + IDLE, + + UNKNOWN + } + + public interface Visitor { + T visitComplete(); + + T visitIncomplete(); + + T visitRelinkNeeded(); + + T visitIdle(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CategoriesEnum.java b/src/main/java/com/merge/api/ticketing/types/CategoriesEnum.java index 016c96a92..025980351 100644 --- a/src/main/java/com/merge/api/ticketing/types/CategoriesEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/CategoriesEnum.java @@ -3,32 +3,131 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoriesEnum { - HRIS("hris"), +public final class CategoriesEnum { + public static final CategoriesEnum HRIS = new CategoriesEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoriesEnum TICKETING = new CategoriesEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoriesEnum CRM = new CategoriesEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoriesEnum FILESTORAGE = new CategoriesEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoriesEnum ACCOUNTING = new CategoriesEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoriesEnum MKTG = new CategoriesEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoriesEnum ATS = new CategoriesEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoriesEnum(String value) { + private final String string; + + CategoriesEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CategoriesEnum && this.string.equals(((CategoriesEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoriesEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoriesEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CategoryEnum.java b/src/main/java/com/merge/api/ticketing/types/CategoryEnum.java index 7bc3d2288..0cb982b4c 100644 --- a/src/main/java/com/merge/api/ticketing/types/CategoryEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/CategoryEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CategoryEnum { - HRIS("hris"), +public final class CategoryEnum { + public static final CategoryEnum HRIS = new CategoryEnum(Value.HRIS, "hris"); - ATS("ats"), + public static final CategoryEnum TICKETING = new CategoryEnum(Value.TICKETING, "ticketing"); - ACCOUNTING("accounting"), + public static final CategoryEnum CRM = new CategoryEnum(Value.CRM, "crm"); - TICKETING("ticketing"), + public static final CategoryEnum FILESTORAGE = new CategoryEnum(Value.FILESTORAGE, "filestorage"); - CRM("crm"), + public static final CategoryEnum ACCOUNTING = new CategoryEnum(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final CategoryEnum MKTG = new CategoryEnum(Value.MKTG, "mktg"); - FILESTORAGE("filestorage"); + public static final CategoryEnum ATS = new CategoryEnum(Value.ATS, "ats"); - private final String value; + private final Value value; - CategoryEnum(String value) { + private final String string; + + CategoryEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof CategoryEnum && this.string.equals(((CategoryEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CategoryEnum valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new CategoryEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + HRIS, + + ATS, + + ACCOUNTING, + + TICKETING, + + CRM, + + MKTG, + + FILESTORAGE, + + UNKNOWN + } + + public interface Visitor { + T visitHris(); + + T visitAts(); + + T visitAccounting(); + + T visitTicketing(); + + T visitCrm(); + + T visitMktg(); + + T visitFilestorage(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CollectionAccessLevelEnum.java b/src/main/java/com/merge/api/ticketing/types/CollectionAccessLevelEnum.java index bec28ca10..414adf21d 100644 --- a/src/main/java/com/merge/api/ticketing/types/CollectionAccessLevelEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/CollectionAccessLevelEnum.java @@ -3,26 +3,103 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CollectionAccessLevelEnum { - PRIVATE("PRIVATE"), +public final class CollectionAccessLevelEnum { + public static final CollectionAccessLevelEnum PUBLIC = new CollectionAccessLevelEnum(Value.PUBLIC, "PUBLIC"); - COMPANY("COMPANY"), + public static final CollectionAccessLevelEnum COMPANY = new CollectionAccessLevelEnum(Value.COMPANY, "COMPANY"); - PUBLIC("PUBLIC"), + public static final CollectionAccessLevelEnum PRIVATE = new CollectionAccessLevelEnum(Value.PRIVATE, "PRIVATE"); - PARENT_COLLECTION("PARENT_COLLECTION"); + public static final CollectionAccessLevelEnum PARENT_COLLECTION = + new CollectionAccessLevelEnum(Value.PARENT_COLLECTION, "PARENT_COLLECTION"); - private final String value; + private final Value value; - CollectionAccessLevelEnum(String value) { + private final String string; + + CollectionAccessLevelEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CollectionAccessLevelEnum + && this.string.equals(((CollectionAccessLevelEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PUBLIC: + return visitor.visitPublic(); + case COMPANY: + return visitor.visitCompany(); + case PRIVATE: + return visitor.visitPrivate(); + case PARENT_COLLECTION: + return visitor.visitParentCollection(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CollectionAccessLevelEnum valueOf(String value) { + switch (value) { + case "PUBLIC": + return PUBLIC; + case "COMPANY": + return COMPANY; + case "PRIVATE": + return PRIVATE; + case "PARENT_COLLECTION": + return PARENT_COLLECTION; + default: + return new CollectionAccessLevelEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + PRIVATE, + + COMPANY, + + PUBLIC, + + PARENT_COLLECTION, + + UNKNOWN + } + + public interface Visitor { + T visitPrivate(); + + T visitCompany(); + + T visitPublic(); + + T visitParentCollection(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CollectionTypeEnum.java b/src/main/java/com/merge/api/ticketing/types/CollectionTypeEnum.java index d573a450d..4eb6fe59a 100644 --- a/src/main/java/com/merge/api/ticketing/types/CollectionTypeEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/CollectionTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CollectionTypeEnum { - LIST("LIST"), +public final class CollectionTypeEnum { + public static final CollectionTypeEnum LIST = new CollectionTypeEnum(Value.LIST, "LIST"); - PROJECT("PROJECT"); + public static final CollectionTypeEnum PROJECT = new CollectionTypeEnum(Value.PROJECT, "PROJECT"); - private final String value; + private final Value value; - CollectionTypeEnum(String value) { + private final String string; + + CollectionTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CollectionTypeEnum && this.string.equals(((CollectionTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case LIST: + return visitor.visitList(); + case PROJECT: + return visitor.visitProject(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CollectionTypeEnum valueOf(String value) { + switch (value) { + case "LIST": + return LIST; + case "PROJECT": + return PROJECT; + default: + return new CollectionTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + LIST, + + PROJECT, + + UNKNOWN + } + + public interface Visitor { + T visitList(); + + T visitProject(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CollectionsViewersListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/CollectionsViewersListRequestExpandItem.java index 061e7c54c..3c21007b1 100644 --- a/src/main/java/com/merge/api/ticketing/types/CollectionsViewersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/CollectionsViewersListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CollectionsViewersListRequestExpandItem { - TEAM("team"), +public final class CollectionsViewersListRequestExpandItem { + public static final CollectionsViewersListRequestExpandItem USER = + new CollectionsViewersListRequestExpandItem(Value.USER, "user"); - USER("user"); + public static final CollectionsViewersListRequestExpandItem TEAM = + new CollectionsViewersListRequestExpandItem(Value.TEAM, "team"); - private final String value; + private final Value value; - CollectionsViewersListRequestExpandItem(String value) { + private final String string; + + CollectionsViewersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CollectionsViewersListRequestExpandItem + && this.string.equals(((CollectionsViewersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case USER: + return visitor.visitUser(); + case TEAM: + return visitor.visitTeam(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CollectionsViewersListRequestExpandItem valueOf(String value) { + switch (value) { + case "user": + return USER; + case "team": + return TEAM; + default: + return new CollectionsViewersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + TEAM, + + USER, + + UNKNOWN + } + + public interface Visitor { + T visitTeam(); + + T visitUser(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CommentsListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/CommentsListRequestExpandItem.java index cf96718e9..5389fc9cd 100644 --- a/src/main/java/com/merge/api/ticketing/types/CommentsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/CommentsListRequestExpandItem.java @@ -3,24 +3,94 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CommentsListRequestExpandItem { - CONTACT("contact"), +public final class CommentsListRequestExpandItem { + public static final CommentsListRequestExpandItem TICKET = + new CommentsListRequestExpandItem(Value.TICKET, "ticket"); - TICKET("ticket"), + public static final CommentsListRequestExpandItem USER = new CommentsListRequestExpandItem(Value.USER, "user"); - USER("user"); + public static final CommentsListRequestExpandItem CONTACT = + new CommentsListRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - CommentsListRequestExpandItem(String value) { + private final String string; + + CommentsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CommentsListRequestExpandItem + && this.string.equals(((CommentsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case TICKET: + return visitor.visitTicket(); + case USER: + return visitor.visitUser(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CommentsListRequestExpandItem valueOf(String value) { + switch (value) { + case "ticket": + return TICKET; + case "user": + return USER; + case "contact": + return CONTACT; + default: + return new CommentsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CONTACT, + + TICKET, + + USER, + + UNKNOWN + } + + public interface Visitor { + T visitContact(); + + T visitTicket(); + + T visitUser(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/CommentsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/CommentsRetrieveRequestExpandItem.java index d9bb981fd..763fa356b 100644 --- a/src/main/java/com/merge/api/ticketing/types/CommentsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/CommentsRetrieveRequestExpandItem.java @@ -3,24 +3,95 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum CommentsRetrieveRequestExpandItem { - CONTACT("contact"), +public final class CommentsRetrieveRequestExpandItem { + public static final CommentsRetrieveRequestExpandItem TICKET = + new CommentsRetrieveRequestExpandItem(Value.TICKET, "ticket"); - TICKET("ticket"), + public static final CommentsRetrieveRequestExpandItem USER = + new CommentsRetrieveRequestExpandItem(Value.USER, "user"); - USER("user"); + public static final CommentsRetrieveRequestExpandItem CONTACT = + new CommentsRetrieveRequestExpandItem(Value.CONTACT, "contact"); - private final String value; + private final Value value; - CommentsRetrieveRequestExpandItem(String value) { + private final String string; + + CommentsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof CommentsRetrieveRequestExpandItem + && this.string.equals(((CommentsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case TICKET: + return visitor.visitTicket(); + case USER: + return visitor.visitUser(); + case CONTACT: + return visitor.visitContact(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static CommentsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "ticket": + return TICKET; + case "user": + return USER; + case "contact": + return CONTACT; + default: + return new CommentsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + CONTACT, + + TICKET, + + USER, + + UNKNOWN + } + + public interface Visitor { + T visitContact(); + + T visitTicket(); + + T visitUser(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/EnabledActionsEnum.java b/src/main/java/com/merge/api/ticketing/types/EnabledActionsEnum.java index 00191b8f5..11af821ce 100644 --- a/src/main/java/com/merge/api/ticketing/types/EnabledActionsEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/EnabledActionsEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EnabledActionsEnum { - READ("READ"), +public final class EnabledActionsEnum { + public static final EnabledActionsEnum READ = new EnabledActionsEnum(Value.READ, "READ"); - WRITE("WRITE"); + public static final EnabledActionsEnum WRITE = new EnabledActionsEnum(Value.WRITE, "WRITE"); - private final String value; + private final Value value; - EnabledActionsEnum(String value) { + private final String string; + + EnabledActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EnabledActionsEnum && this.string.equals(((EnabledActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case READ: + return visitor.visitRead(); + case WRITE: + return visitor.visitWrite(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EnabledActionsEnum valueOf(String value) { + switch (value) { + case "READ": + return READ; + case "WRITE": + return WRITE; + default: + return new EnabledActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + READ, + + WRITE, + + UNKNOWN + } + + public interface Visitor { + T visitRead(); + + T visitWrite(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/EncodingEnum.java b/src/main/java/com/merge/api/ticketing/types/EncodingEnum.java index 599144d9d..991af7e23 100644 --- a/src/main/java/com/merge/api/ticketing/types/EncodingEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/EncodingEnum.java @@ -3,24 +3,90 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EncodingEnum { - RAW("RAW"), +public final class EncodingEnum { + public static final EncodingEnum RAW = new EncodingEnum(Value.RAW, "RAW"); - BASE_64("BASE64"), + public static final EncodingEnum GZIP_BASE_64 = new EncodingEnum(Value.GZIP_BASE_64, "GZIP_BASE64"); - GZIP_BASE_64("GZIP_BASE64"); + public static final EncodingEnum BASE_64 = new EncodingEnum(Value.BASE_64, "BASE64"); - private final String value; + private final Value value; - EncodingEnum(String value) { + private final String string; + + EncodingEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof EncodingEnum && this.string.equals(((EncodingEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case RAW: + return visitor.visitRaw(); + case GZIP_BASE_64: + return visitor.visitGzipBase64(); + case BASE_64: + return visitor.visitBase64(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EncodingEnum valueOf(String value) { + switch (value) { + case "RAW": + return RAW; + case "GZIP_BASE64": + return GZIP_BASE_64; + case "BASE64": + return BASE_64; + default: + return new EncodingEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + RAW, + + BASE_64, + + GZIP_BASE_64, + + UNKNOWN + } + + public interface Visitor { + T visitRaw(); + + T visitBase64(); + + T visitGzipBase64(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/EventTypeEnum.java b/src/main/java/com/merge/api/ticketing/types/EventTypeEnum.java index 94dda7473..71aaeb995 100644 --- a/src/main/java/com/merge/api/ticketing/types/EventTypeEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/EventTypeEnum.java @@ -3,104 +3,528 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum EventTypeEnum { - CREATED_REMOTE_PRODUCTION_API_KEY("CREATED_REMOTE_PRODUCTION_API_KEY"), +public final class EventTypeEnum { + public static final EventTypeEnum DISABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.DISABLED_MERGE_WEBHOOK, "DISABLED_MERGE_WEBHOOK"); - DELETED_REMOTE_PRODUCTION_API_KEY("DELETED_REMOTE_PRODUCTION_API_KEY"), + public static final EventTypeEnum CHANGED_PERSONAL_INFORMATION = + new EventTypeEnum(Value.CHANGED_PERSONAL_INFORMATION, "CHANGED_PERSONAL_INFORMATION"); - CREATED_TEST_API_KEY("CREATED_TEST_API_KEY"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_TEST_API_KEY("DELETED_TEST_API_KEY"), + public static final EventTypeEnum DELETED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.DELETED_REMOTE_PRODUCTION_API_KEY, "DELETED_REMOTE_PRODUCTION_API_KEY"); - REGENERATED_PRODUCTION_API_KEY("REGENERATED_PRODUCTION_API_KEY"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT_FIELD_MAPPING, "DELETED_LINKED_ACCOUNT_FIELD_MAPPING"); - REGENERATED_WEBHOOK_SIGNATURE("REGENERATED_WEBHOOK_SIGNATURE"), + public static final EventTypeEnum ENABLED_MERGE_WEBHOOK = + new EventTypeEnum(Value.ENABLED_MERGE_WEBHOOK, "ENABLED_MERGE_WEBHOOK"); - INVITED_USER("INVITED_USER"), + public static final EventTypeEnum DISABLED_INTEGRATION = + new EventTypeEnum(Value.DISABLED_INTEGRATION, "DISABLED_INTEGRATION"); - TWO_FACTOR_AUTH_ENABLED("TWO_FACTOR_AUTH_ENABLED"), + public static final EventTypeEnum DELETED_DESTINATION = + new EventTypeEnum(Value.DELETED_DESTINATION, "DELETED_DESTINATION"); - TWO_FACTOR_AUTH_DISABLED("TWO_FACTOR_AUTH_DISABLED"), + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_LINKED_ACCOUNT("DELETED_LINKED_ACCOUNT"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE = new EventTypeEnum( + Value.DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"); - DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT("DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum CREATED_TEST_API_KEY = + new EventTypeEnum(Value.CREATED_TEST_API_KEY, "CREATED_TEST_API_KEY"); - CREATED_DESTINATION("CREATED_DESTINATION"), + public static final EventTypeEnum REGENERATED_PRODUCTION_API_KEY = + new EventTypeEnum(Value.REGENERATED_PRODUCTION_API_KEY, "REGENERATED_PRODUCTION_API_KEY"); - DELETED_DESTINATION("DELETED_DESTINATION"), + public static final EventTypeEnum END_USER_CREDENTIALS_ACCESSED = + new EventTypeEnum(Value.END_USER_CREDENTIALS_ACCESSED, "END_USER_CREDENTIALS_ACCESSED"); - CHANGED_DESTINATION("CHANGED_DESTINATION"), + public static final EventTypeEnum DISABLED_CATEGORY = + new EventTypeEnum(Value.DISABLED_CATEGORY, "DISABLED_CATEGORY"); - CHANGED_SCOPES("CHANGED_SCOPES"), + public static final EventTypeEnum DELETED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.DELETED_INTEGRATION_WIDE_FIELD_MAPPING, "DELETED_INTEGRATION_WIDE_FIELD_MAPPING"); - CHANGED_PERSONAL_INFORMATION("CHANGED_PERSONAL_INFORMATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_ENABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_ENABLED, "TWO_FACTOR_AUTH_ENABLED"); - CHANGED_ORGANIZATION_SETTINGS("CHANGED_ORGANIZATION_SETTINGS"), + public static final EventTypeEnum CHANGED_DESTINATION = + new EventTypeEnum(Value.CHANGED_DESTINATION, "CHANGED_DESTINATION"); - ENABLED_INTEGRATION("ENABLED_INTEGRATION"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - DISABLED_INTEGRATION("DISABLED_INTEGRATION"), + public static final EventTypeEnum TWO_FACTOR_AUTH_DISABLED = + new EventTypeEnum(Value.TWO_FACTOR_AUTH_DISABLED, "TWO_FACTOR_AUTH_DISABLED"); - ENABLED_CATEGORY("ENABLED_CATEGORY"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - DISABLED_CATEGORY("DISABLED_CATEGORY"), + public static final EventTypeEnum FORCED_LINKED_ACCOUNT_RESYNC = + new EventTypeEnum(Value.FORCED_LINKED_ACCOUNT_RESYNC, "FORCED_LINKED_ACCOUNT_RESYNC"); - CHANGED_PASSWORD("CHANGED_PASSWORD"), + public static final EventTypeEnum CHANGED_ORGANIZATION_SETTINGS = + new EventTypeEnum(Value.CHANGED_ORGANIZATION_SETTINGS, "CHANGED_ORGANIZATION_SETTINGS"); - RESET_PASSWORD("RESET_PASSWORD"), + public static final EventTypeEnum ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION = new EventTypeEnum( + Value.ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum RESET_PASSWORD = new EventTypeEnum(Value.RESET_PASSWORD, "RESET_PASSWORD"); - ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum INVITED_USER = new EventTypeEnum(Value.INVITED_USER, "INVITED_USER"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION("DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION"), + public static final EventTypeEnum MERGE_WEBHOOK_TARGET_CHANGED = + new EventTypeEnum(Value.MERGE_WEBHOOK_TARGET_CHANGED, "MERGE_WEBHOOK_TARGET_CHANGED"); - DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT("DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"), + public static final EventTypeEnum MUTED_ISSUE = new EventTypeEnum(Value.MUTED_ISSUE, "MUTED_ISSUE"); - CREATED_INTEGRATION_WIDE_FIELD_MAPPING("CREATED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum GENERATED_MAGIC_LINK = + new EventTypeEnum(Value.GENERATED_MAGIC_LINK, "GENERATED_MAGIC_LINK"); - CREATED_LINKED_ACCOUNT_FIELD_MAPPING("CREATED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CREATED_REMOTE_PRODUCTION_API_KEY = + new EventTypeEnum(Value.CREATED_REMOTE_PRODUCTION_API_KEY, "CREATED_REMOTE_PRODUCTION_API_KEY"); - CHANGED_INTEGRATION_WIDE_FIELD_MAPPING("CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_LINKED_ACCOUNT = + new EventTypeEnum(Value.DELETED_LINKED_ACCOUNT, "DELETED_LINKED_ACCOUNT"); - CHANGED_LINKED_ACCOUNT_FIELD_MAPPING("CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_SCOPES = new EventTypeEnum(Value.CHANGED_SCOPES, "CHANGED_SCOPES"); - DELETED_INTEGRATION_WIDE_FIELD_MAPPING("DELETED_INTEGRATION_WIDE_FIELD_MAPPING"), + public static final EventTypeEnum CHANGED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING"); - DELETED_LINKED_ACCOUNT_FIELD_MAPPING("DELETED_LINKED_ACCOUNT_FIELD_MAPPING"), + public static final EventTypeEnum DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT"); - CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum REGENERATED_WEBHOOK_SIGNATURE = + new EventTypeEnum(Value.REGENERATED_WEBHOOK_SIGNATURE, "REGENERATED_WEBHOOK_SIGNATURE"); - CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum CHANGED_PASSWORD = new EventTypeEnum(Value.CHANGED_PASSWORD, "CHANGED_PASSWORD"); - DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE("DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE"), + public static final EventTypeEnum DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT = new EventTypeEnum( + Value.DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT"); - FORCED_LINKED_ACCOUNT_RESYNC("FORCED_LINKED_ACCOUNT_RESYNC"), + public static final EventTypeEnum CREATED_INTEGRATION_WIDE_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_INTEGRATION_WIDE_FIELD_MAPPING, "CREATED_INTEGRATION_WIDE_FIELD_MAPPING"); - MUTED_ISSUE("MUTED_ISSUE"), + public static final EventTypeEnum CREATED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CREATED_LINKED_ACCOUNT_FIELD_MAPPING, "CREATED_LINKED_ACCOUNT_FIELD_MAPPING"); - GENERATED_MAGIC_LINK("GENERATED_MAGIC_LINK"), + public static final EventTypeEnum ENABLED_INTEGRATION = + new EventTypeEnum(Value.ENABLED_INTEGRATION, "ENABLED_INTEGRATION"); - ENABLED_MERGE_WEBHOOK("ENABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum DELETED_TEST_API_KEY = + new EventTypeEnum(Value.DELETED_TEST_API_KEY, "DELETED_TEST_API_KEY"); - DISABLED_MERGE_WEBHOOK("DISABLED_MERGE_WEBHOOK"), + public static final EventTypeEnum ENABLED_CATEGORY = new EventTypeEnum(Value.ENABLED_CATEGORY, "ENABLED_CATEGORY"); - MERGE_WEBHOOK_TARGET_CHANGED("MERGE_WEBHOOK_TARGET_CHANGED"), + public static final EventTypeEnum CREATED_DESTINATION = + new EventTypeEnum(Value.CREATED_DESTINATION, "CREATED_DESTINATION"); - END_USER_CREDENTIALS_ACCESSED("END_USER_CREDENTIALS_ACCESSED"); + public static final EventTypeEnum CHANGED_LINKED_ACCOUNT_FIELD_MAPPING = + new EventTypeEnum(Value.CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING"); - private final String value; + private final Value value; - EventTypeEnum(String value) { + private final String string; + + EventTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof EventTypeEnum && this.string.equals(((EventTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED_MERGE_WEBHOOK: + return visitor.visitDisabledMergeWebhook(); + case CHANGED_PERSONAL_INFORMATION: + return visitor.visitChangedPersonalInformation(); + case CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitCreatedLinkedAccountCommonModelOverride(); + case DELETED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitDeletedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitDeletedLinkedAccountFieldMapping(); + case ENABLED_MERGE_WEBHOOK: + return visitor.visitEnabledMergeWebhook(); + case DISABLED_INTEGRATION: + return visitor.visitDisabledIntegration(); + case DELETED_DESTINATION: + return visitor.visitDeletedDestination(); + case CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitChangedLinkedAccountCommonModelOverride(); + case DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE: + return visitor.visitDeletedLinkedAccountCommonModelOverride(); + case CREATED_TEST_API_KEY: + return visitor.visitCreatedTestApiKey(); + case REGENERATED_PRODUCTION_API_KEY: + return visitor.visitRegeneratedProductionApiKey(); + case END_USER_CREDENTIALS_ACCESSED: + return visitor.visitEndUserCredentialsAccessed(); + case DISABLED_CATEGORY: + return visitor.visitDisabledCategory(); + case DELETED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitDeletedIntegrationWideFieldMapping(); + case TWO_FACTOR_AUTH_ENABLED: + return visitor.visitTwoFactorAuthEnabled(); + case CHANGED_DESTINATION: + return visitor.visitChangedDestination(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitDisabledRedactUnmappedDataForOrganization(); + case TWO_FACTOR_AUTH_DISABLED: + return visitor.visitTwoFactorAuthDisabled(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitEnabledRedactUnmappedDataForLinkedAccount(); + case FORCED_LINKED_ACCOUNT_RESYNC: + return visitor.visitForcedLinkedAccountResync(); + case CHANGED_ORGANIZATION_SETTINGS: + return visitor.visitChangedOrganizationSettings(); + case ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION: + return visitor.visitEnabledRedactUnmappedDataForOrganization(); + case RESET_PASSWORD: + return visitor.visitResetPassword(); + case INVITED_USER: + return visitor.visitInvitedUser(); + case MERGE_WEBHOOK_TARGET_CHANGED: + return visitor.visitMergeWebhookTargetChanged(); + case MUTED_ISSUE: + return visitor.visitMutedIssue(); + case GENERATED_MAGIC_LINK: + return visitor.visitGeneratedMagicLink(); + case CREATED_REMOTE_PRODUCTION_API_KEY: + return visitor.visitCreatedRemoteProductionApiKey(); + case DELETED_LINKED_ACCOUNT: + return visitor.visitDeletedLinkedAccount(); + case CHANGED_SCOPES: + return visitor.visitChangedScopes(); + case CHANGED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitChangedIntegrationWideFieldMapping(); + case DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT: + return visitor.visitDeletedAllCommonModelsForLinkedAccount(); + case REGENERATED_WEBHOOK_SIGNATURE: + return visitor.visitRegeneratedWebhookSignature(); + case CHANGED_PASSWORD: + return visitor.visitChangedPassword(); + case DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT: + return visitor.visitDisabledRedactUnmappedDataForLinkedAccount(); + case CREATED_INTEGRATION_WIDE_FIELD_MAPPING: + return visitor.visitCreatedIntegrationWideFieldMapping(); + case CREATED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitCreatedLinkedAccountFieldMapping(); + case ENABLED_INTEGRATION: + return visitor.visitEnabledIntegration(); + case DELETED_TEST_API_KEY: + return visitor.visitDeletedTestApiKey(); + case ENABLED_CATEGORY: + return visitor.visitEnabledCategory(); + case CREATED_DESTINATION: + return visitor.visitCreatedDestination(); + case CHANGED_LINKED_ACCOUNT_FIELD_MAPPING: + return visitor.visitChangedLinkedAccountFieldMapping(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static EventTypeEnum valueOf(String value) { + switch (value) { + case "DISABLED_MERGE_WEBHOOK": + return DISABLED_MERGE_WEBHOOK; + case "CHANGED_PERSONAL_INFORMATION": + return CHANGED_PERSONAL_INFORMATION; + case "CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_REMOTE_PRODUCTION_API_KEY": + return DELETED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT_FIELD_MAPPING": + return DELETED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_MERGE_WEBHOOK": + return ENABLED_MERGE_WEBHOOK; + case "DISABLED_INTEGRATION": + return DISABLED_INTEGRATION; + case "DELETED_DESTINATION": + return DELETED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE": + return DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE; + case "CREATED_TEST_API_KEY": + return CREATED_TEST_API_KEY; + case "REGENERATED_PRODUCTION_API_KEY": + return REGENERATED_PRODUCTION_API_KEY; + case "END_USER_CREDENTIALS_ACCESSED": + return END_USER_CREDENTIALS_ACCESSED; + case "DISABLED_CATEGORY": + return DISABLED_CATEGORY; + case "DELETED_INTEGRATION_WIDE_FIELD_MAPPING": + return DELETED_INTEGRATION_WIDE_FIELD_MAPPING; + case "TWO_FACTOR_AUTH_ENABLED": + return TWO_FACTOR_AUTH_ENABLED; + case "CHANGED_DESTINATION": + return CHANGED_DESTINATION; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "TWO_FACTOR_AUTH_DISABLED": + return TWO_FACTOR_AUTH_DISABLED; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "FORCED_LINKED_ACCOUNT_RESYNC": + return FORCED_LINKED_ACCOUNT_RESYNC; + case "CHANGED_ORGANIZATION_SETTINGS": + return CHANGED_ORGANIZATION_SETTINGS; + case "ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION": + return ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION; + case "RESET_PASSWORD": + return RESET_PASSWORD; + case "INVITED_USER": + return INVITED_USER; + case "MERGE_WEBHOOK_TARGET_CHANGED": + return MERGE_WEBHOOK_TARGET_CHANGED; + case "MUTED_ISSUE": + return MUTED_ISSUE; + case "GENERATED_MAGIC_LINK": + return GENERATED_MAGIC_LINK; + case "CREATED_REMOTE_PRODUCTION_API_KEY": + return CREATED_REMOTE_PRODUCTION_API_KEY; + case "DELETED_LINKED_ACCOUNT": + return DELETED_LINKED_ACCOUNT; + case "CHANGED_SCOPES": + return CHANGED_SCOPES; + case "CHANGED_INTEGRATION_WIDE_FIELD_MAPPING": + return CHANGED_INTEGRATION_WIDE_FIELD_MAPPING; + case "DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT": + return DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT; + case "REGENERATED_WEBHOOK_SIGNATURE": + return REGENERATED_WEBHOOK_SIGNATURE; + case "CHANGED_PASSWORD": + return CHANGED_PASSWORD; + case "DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT": + return DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT; + case "CREATED_INTEGRATION_WIDE_FIELD_MAPPING": + return CREATED_INTEGRATION_WIDE_FIELD_MAPPING; + case "CREATED_LINKED_ACCOUNT_FIELD_MAPPING": + return CREATED_LINKED_ACCOUNT_FIELD_MAPPING; + case "ENABLED_INTEGRATION": + return ENABLED_INTEGRATION; + case "DELETED_TEST_API_KEY": + return DELETED_TEST_API_KEY; + case "ENABLED_CATEGORY": + return ENABLED_CATEGORY; + case "CREATED_DESTINATION": + return CREATED_DESTINATION; + case "CHANGED_LINKED_ACCOUNT_FIELD_MAPPING": + return CHANGED_LINKED_ACCOUNT_FIELD_MAPPING; + default: + return new EventTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + CREATED_REMOTE_PRODUCTION_API_KEY, + + DELETED_REMOTE_PRODUCTION_API_KEY, + + CREATED_TEST_API_KEY, + + DELETED_TEST_API_KEY, + + REGENERATED_PRODUCTION_API_KEY, + + REGENERATED_WEBHOOK_SIGNATURE, + + INVITED_USER, + + TWO_FACTOR_AUTH_ENABLED, + + TWO_FACTOR_AUTH_DISABLED, + + DELETED_LINKED_ACCOUNT, + + DELETED_ALL_COMMON_MODELS_FOR_LINKED_ACCOUNT, + + CREATED_DESTINATION, + + DELETED_DESTINATION, + + CHANGED_DESTINATION, + + CHANGED_SCOPES, + + CHANGED_PERSONAL_INFORMATION, + + CHANGED_ORGANIZATION_SETTINGS, + + ENABLED_INTEGRATION, + + DISABLED_INTEGRATION, + + ENABLED_CATEGORY, + + DISABLED_CATEGORY, + + CHANGED_PASSWORD, + + RESET_PASSWORD, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + ENABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_ORGANIZATION, + + DISABLED_REDACT_UNMAPPED_DATA_FOR_LINKED_ACCOUNT, + + CREATED_INTEGRATION_WIDE_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_FIELD_MAPPING, + + CHANGED_INTEGRATION_WIDE_FIELD_MAPPING, + + CHANGED_LINKED_ACCOUNT_FIELD_MAPPING, + + DELETED_INTEGRATION_WIDE_FIELD_MAPPING, + + DELETED_LINKED_ACCOUNT_FIELD_MAPPING, + + CREATED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + CHANGED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + DELETED_LINKED_ACCOUNT_COMMON_MODEL_OVERRIDE, + + FORCED_LINKED_ACCOUNT_RESYNC, + + MUTED_ISSUE, + + GENERATED_MAGIC_LINK, + + ENABLED_MERGE_WEBHOOK, + + DISABLED_MERGE_WEBHOOK, + + MERGE_WEBHOOK_TARGET_CHANGED, + + END_USER_CREDENTIALS_ACCESSED, + + UNKNOWN + } + + public interface Visitor { + T visitCreatedRemoteProductionApiKey(); + + T visitDeletedRemoteProductionApiKey(); + + T visitCreatedTestApiKey(); + + T visitDeletedTestApiKey(); + + T visitRegeneratedProductionApiKey(); + + T visitRegeneratedWebhookSignature(); + + T visitInvitedUser(); + + T visitTwoFactorAuthEnabled(); + + T visitTwoFactorAuthDisabled(); + + T visitDeletedLinkedAccount(); + + T visitDeletedAllCommonModelsForLinkedAccount(); + + T visitCreatedDestination(); + + T visitDeletedDestination(); + + T visitChangedDestination(); + + T visitChangedScopes(); + + T visitChangedPersonalInformation(); + + T visitChangedOrganizationSettings(); + + T visitEnabledIntegration(); + + T visitDisabledIntegration(); + + T visitEnabledCategory(); + + T visitDisabledCategory(); + + T visitChangedPassword(); + + T visitResetPassword(); + + T visitEnabledRedactUnmappedDataForOrganization(); + + T visitEnabledRedactUnmappedDataForLinkedAccount(); + + T visitDisabledRedactUnmappedDataForOrganization(); + + T visitDisabledRedactUnmappedDataForLinkedAccount(); + + T visitCreatedIntegrationWideFieldMapping(); + + T visitCreatedLinkedAccountFieldMapping(); + + T visitChangedIntegrationWideFieldMapping(); + + T visitChangedLinkedAccountFieldMapping(); + + T visitDeletedIntegrationWideFieldMapping(); + + T visitDeletedLinkedAccountFieldMapping(); + + T visitCreatedLinkedAccountCommonModelOverride(); + + T visitChangedLinkedAccountCommonModelOverride(); + + T visitDeletedLinkedAccountCommonModelOverride(); + + T visitForcedLinkedAccountResync(); + + T visitMutedIssue(); + + T visitGeneratedMagicLink(); + + T visitEnabledMergeWebhook(); + + T visitDisabledMergeWebhook(); + + T visitMergeWebhookTargetChanged(); + + T visitEndUserCredentialsAccessed(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/FieldFormatEnum.java b/src/main/java/com/merge/api/ticketing/types/FieldFormatEnum.java index 8b1fc1471..b5b11f574 100644 --- a/src/main/java/com/merge/api/ticketing/types/FieldFormatEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/FieldFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldFormatEnum { - STRING("string"), +public final class FieldFormatEnum { + public static final FieldFormatEnum NUMBER = new FieldFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldFormatEnum STRING = new FieldFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldFormatEnum BOOL = new FieldFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldFormatEnum LIST = new FieldFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldFormatEnum DATETIME = new FieldFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldFormatEnum DATE = new FieldFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldFormatEnum(String value) { + private final String string; + + FieldFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldFormatEnum && this.string.equals(((FieldFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/FieldTypeEnum.java b/src/main/java/com/merge/api/ticketing/types/FieldTypeEnum.java index 98f475a38..239f5caef 100644 --- a/src/main/java/com/merge/api/ticketing/types/FieldTypeEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/FieldTypeEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum FieldTypeEnum { - STRING("string"), +public final class FieldTypeEnum { + public static final FieldTypeEnum NUMBER = new FieldTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final FieldTypeEnum STRING = new FieldTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final FieldTypeEnum BOOL = new FieldTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final FieldTypeEnum LIST = new FieldTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final FieldTypeEnum DATETIME = new FieldTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final FieldTypeEnum DATE = new FieldTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - FieldTypeEnum(String value) { + private final String string; + + FieldTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof FieldTypeEnum && this.string.equals(((FieldTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static FieldTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new FieldTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/IssueStatusEnum.java b/src/main/java/com/merge/api/ticketing/types/IssueStatusEnum.java index 14ffba2bd..14022ed02 100644 --- a/src/main/java/com/merge/api/ticketing/types/IssueStatusEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/IssueStatusEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssueStatusEnum { - ONGOING("ONGOING"), +public final class IssueStatusEnum { + public static final IssueStatusEnum ONGOING = new IssueStatusEnum(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssueStatusEnum RESOLVED = new IssueStatusEnum(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssueStatusEnum(String value) { + private final String string; + + IssueStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssueStatusEnum && this.string.equals(((IssueStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssueStatusEnum valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssueStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/IssuesListRequestStatus.java b/src/main/java/com/merge/api/ticketing/types/IssuesListRequestStatus.java index 6a6838821..5e3d99fc8 100644 --- a/src/main/java/com/merge/api/ticketing/types/IssuesListRequestStatus.java +++ b/src/main/java/com/merge/api/ticketing/types/IssuesListRequestStatus.java @@ -3,22 +3,82 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum IssuesListRequestStatus { - ONGOING("ONGOING"), +public final class IssuesListRequestStatus { + public static final IssuesListRequestStatus ONGOING = new IssuesListRequestStatus(Value.ONGOING, "ONGOING"); - RESOLVED("RESOLVED"); + public static final IssuesListRequestStatus RESOLVED = new IssuesListRequestStatus(Value.RESOLVED, "RESOLVED"); - private final String value; + private final Value value; - IssuesListRequestStatus(String value) { + private final String string; + + IssuesListRequestStatus(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof IssuesListRequestStatus + && this.string.equals(((IssuesListRequestStatus) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ONGOING: + return visitor.visitOngoing(); + case RESOLVED: + return visitor.visitResolved(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static IssuesListRequestStatus valueOf(String value) { + switch (value) { + case "ONGOING": + return ONGOING; + case "RESOLVED": + return RESOLVED; + default: + return new IssuesListRequestStatus(Value.UNKNOWN, value); + } + } + + public enum Value { + ONGOING, + + RESOLVED, + + UNKNOWN + } + + public interface Visitor { + T visitOngoing(); + + T visitResolved(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/ItemFormatEnum.java b/src/main/java/com/merge/api/ticketing/types/ItemFormatEnum.java index cb6dc1f59..96ab04de6 100644 --- a/src/main/java/com/merge/api/ticketing/types/ItemFormatEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/ItemFormatEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemFormatEnum { - STRING("string"), +public final class ItemFormatEnum { + public static final ItemFormatEnum NUMBER = new ItemFormatEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemFormatEnum STRING = new ItemFormatEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemFormatEnum BOOL = new ItemFormatEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemFormatEnum LIST = new ItemFormatEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemFormatEnum DATETIME = new ItemFormatEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemFormatEnum DATE = new ItemFormatEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemFormatEnum(String value) { + private final String string; + + ItemFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ItemFormatEnum && this.string.equals(((ItemFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemFormatEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/ItemTypeEnum.java b/src/main/java/com/merge/api/ticketing/types/ItemTypeEnum.java index e618ed5b3..704fae6fd 100644 --- a/src/main/java/com/merge/api/ticketing/types/ItemTypeEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/ItemTypeEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ItemTypeEnum { - STRING("string"), +public final class ItemTypeEnum { + public static final ItemTypeEnum NUMBER = new ItemTypeEnum(Value.NUMBER, "number"); - NUMBER("number"), + public static final ItemTypeEnum STRING = new ItemTypeEnum(Value.STRING, "string"); - DATE("date"), + public static final ItemTypeEnum BOOL = new ItemTypeEnum(Value.BOOL, "bool"); - DATETIME("datetime"), + public static final ItemTypeEnum LIST = new ItemTypeEnum(Value.LIST, "list"); - BOOL("bool"), + public static final ItemTypeEnum DATETIME = new ItemTypeEnum(Value.DATETIME, "datetime"); - LIST("list"); + public static final ItemTypeEnum DATE = new ItemTypeEnum(Value.DATE, "date"); - private final String value; + private final Value value; - ItemTypeEnum(String value) { + private final String string; + + ItemTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof ItemTypeEnum && this.string.equals(((ItemTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case NUMBER: + return visitor.visitNumber(); + case STRING: + return visitor.visitString(); + case BOOL: + return visitor.visitBool(); + case LIST: + return visitor.visitList(); + case DATETIME: + return visitor.visitDatetime(); + case DATE: + return visitor.visitDate(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ItemTypeEnum valueOf(String value) { + switch (value) { + case "number": + return NUMBER; + case "string": + return STRING; + case "bool": + return BOOL; + case "list": + return LIST; + case "datetime": + return DATETIME; + case "date": + return DATE; + default: + return new ItemTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + STRING, + + NUMBER, + + DATE, + + DATETIME, + + BOOL, + + LIST, + + UNKNOWN + } + + public interface Visitor { + T visitString(); + + T visitNumber(); + + T visitDate(); + + T visitDatetime(); + + T visitBool(); + + T visitList(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/LanguageEnum.java b/src/main/java/com/merge/api/ticketing/types/LanguageEnum.java index f78055ff2..ea5064815 100644 --- a/src/main/java/com/merge/api/ticketing/types/LanguageEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/LanguageEnum.java @@ -3,22 +3,80 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LanguageEnum { - EN("en"), +public final class LanguageEnum { + public static final LanguageEnum DE = new LanguageEnum(Value.DE, "de"); - DE("de"); + public static final LanguageEnum EN = new LanguageEnum(Value.EN, "en"); - private final String value; + private final Value value; - LanguageEnum(String value) { + private final String string; + + LanguageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof LanguageEnum && this.string.equals(((LanguageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DE: + return visitor.visitDe(); + case EN: + return visitor.visitEn(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LanguageEnum valueOf(String value) { + switch (value) { + case "de": + return DE; + case "en": + return EN; + default: + return new LanguageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + EN, + + DE, + + UNKNOWN + } + + public interface Visitor { + T visitEn(); + + T visitDe(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/LastSyncResultEnum.java b/src/main/java/com/merge/api/ticketing/types/LastSyncResultEnum.java index 066c9067e..2f5018fbd 100644 --- a/src/main/java/com/merge/api/ticketing/types/LastSyncResultEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/LastSyncResultEnum.java @@ -3,30 +3,122 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LastSyncResultEnum { - SYNCING("SYNCING"), +public final class LastSyncResultEnum { + public static final LastSyncResultEnum DISABLED = new LastSyncResultEnum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final LastSyncResultEnum SYNCING = new LastSyncResultEnum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final LastSyncResultEnum PAUSED = new LastSyncResultEnum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final LastSyncResultEnum DONE = new LastSyncResultEnum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final LastSyncResultEnum FAILED = new LastSyncResultEnum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final LastSyncResultEnum PARTIALLY_SYNCED = + new LastSyncResultEnum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - LastSyncResultEnum(String value) { + private final String string; + + LastSyncResultEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LastSyncResultEnum && this.string.equals(((LastSyncResultEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LastSyncResultEnum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new LastSyncResultEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/LinkedAccountsListRequestCategory.java b/src/main/java/com/merge/api/ticketing/types/LinkedAccountsListRequestCategory.java index 088ff407d..552952260 100644 --- a/src/main/java/com/merge/api/ticketing/types/LinkedAccountsListRequestCategory.java +++ b/src/main/java/com/merge/api/ticketing/types/LinkedAccountsListRequestCategory.java @@ -3,32 +3,137 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum LinkedAccountsListRequestCategory { - ACCOUNTING("accounting"), +public final class LinkedAccountsListRequestCategory { + public static final LinkedAccountsListRequestCategory HRIS = + new LinkedAccountsListRequestCategory(Value.HRIS, "hris"); - ATS("ats"), + public static final LinkedAccountsListRequestCategory TICKETING = + new LinkedAccountsListRequestCategory(Value.TICKETING, "ticketing"); - CRM("crm"), + public static final LinkedAccountsListRequestCategory CRM = new LinkedAccountsListRequestCategory(Value.CRM, "crm"); - FILESTORAGE("filestorage"), + public static final LinkedAccountsListRequestCategory FILESTORAGE = + new LinkedAccountsListRequestCategory(Value.FILESTORAGE, "filestorage"); - HRIS("hris"), + public static final LinkedAccountsListRequestCategory ACCOUNTING = + new LinkedAccountsListRequestCategory(Value.ACCOUNTING, "accounting"); - MKTG("mktg"), + public static final LinkedAccountsListRequestCategory MKTG = + new LinkedAccountsListRequestCategory(Value.MKTG, "mktg"); - TICKETING("ticketing"); + public static final LinkedAccountsListRequestCategory ATS = new LinkedAccountsListRequestCategory(Value.ATS, "ats"); - private final String value; + private final Value value; - LinkedAccountsListRequestCategory(String value) { + private final String string; + + LinkedAccountsListRequestCategory(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof LinkedAccountsListRequestCategory + && this.string.equals(((LinkedAccountsListRequestCategory) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case HRIS: + return visitor.visitHris(); + case TICKETING: + return visitor.visitTicketing(); + case CRM: + return visitor.visitCrm(); + case FILESTORAGE: + return visitor.visitFilestorage(); + case ACCOUNTING: + return visitor.visitAccounting(); + case MKTG: + return visitor.visitMktg(); + case ATS: + return visitor.visitAts(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static LinkedAccountsListRequestCategory valueOf(String value) { + switch (value) { + case "hris": + return HRIS; + case "ticketing": + return TICKETING; + case "crm": + return CRM; + case "filestorage": + return FILESTORAGE; + case "accounting": + return ACCOUNTING; + case "mktg": + return MKTG; + case "ats": + return ATS; + default: + return new LinkedAccountsListRequestCategory(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNTING, + + ATS, + + CRM, + + FILESTORAGE, + + HRIS, + + MKTG, + + TICKETING, + + UNKNOWN + } + + public interface Visitor { + T visitAccounting(); + + T visitAts(); + + T visitCrm(); + + T visitFilestorage(); + + T visitHris(); + + T visitMktg(); + + T visitTicketing(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/MethodEnum.java b/src/main/java/com/merge/api/ticketing/types/MethodEnum.java index dc751174f..75d3eb0ed 100644 --- a/src/main/java/com/merge/api/ticketing/types/MethodEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/MethodEnum.java @@ -3,32 +3,130 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum MethodEnum { - GET("GET"), +public final class MethodEnum { + public static final MethodEnum OPTIONS = new MethodEnum(Value.OPTIONS, "OPTIONS"); - OPTIONS("OPTIONS"), + public static final MethodEnum PATCH = new MethodEnum(Value.PATCH, "PATCH"); - HEAD("HEAD"), + public static final MethodEnum DELETE = new MethodEnum(Value.DELETE, "DELETE"); - POST("POST"), + public static final MethodEnum GET = new MethodEnum(Value.GET, "GET"); - PUT("PUT"), + public static final MethodEnum PUT = new MethodEnum(Value.PUT, "PUT"); - PATCH("PATCH"), + public static final MethodEnum HEAD = new MethodEnum(Value.HEAD, "HEAD"); - DELETE("DELETE"); + public static final MethodEnum POST = new MethodEnum(Value.POST, "POST"); - private final String value; + private final Value value; - MethodEnum(String value) { + private final String string; + + MethodEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof MethodEnum && this.string.equals(((MethodEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case OPTIONS: + return visitor.visitOptions(); + case PATCH: + return visitor.visitPatch(); + case DELETE: + return visitor.visitDelete(); + case GET: + return visitor.visitGet(); + case PUT: + return visitor.visitPut(); + case HEAD: + return visitor.visitHead(); + case POST: + return visitor.visitPost(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static MethodEnum valueOf(String value) { + switch (value) { + case "OPTIONS": + return OPTIONS; + case "PATCH": + return PATCH; + case "DELETE": + return DELETE; + case "GET": + return GET; + case "PUT": + return PUT; + case "HEAD": + return HEAD; + case "POST": + return POST; + default: + return new MethodEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + GET, + + OPTIONS, + + HEAD, + + POST, + + PUT, + + PATCH, + + DELETE, + + UNKNOWN + } + + public interface Visitor { + T visitGet(); + + T visitOptions(); + + T visitHead(); + + T visitPost(); + + T visitPut(); + + T visitPatch(); + + T visitDelete(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/PriorityEnum.java b/src/main/java/com/merge/api/ticketing/types/PriorityEnum.java index a50eedec2..193aa50f7 100644 --- a/src/main/java/com/merge/api/ticketing/types/PriorityEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/PriorityEnum.java @@ -3,26 +3,100 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum PriorityEnum { - URGENT("URGENT"), +public final class PriorityEnum { + public static final PriorityEnum URGENT = new PriorityEnum(Value.URGENT, "URGENT"); - HIGH("HIGH"), + public static final PriorityEnum NORMAL = new PriorityEnum(Value.NORMAL, "NORMAL"); - NORMAL("NORMAL"), + public static final PriorityEnum LOW = new PriorityEnum(Value.LOW, "LOW"); - LOW("LOW"); + public static final PriorityEnum HIGH = new PriorityEnum(Value.HIGH, "HIGH"); - private final String value; + private final Value value; - PriorityEnum(String value) { + private final String string; + + PriorityEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof PriorityEnum && this.string.equals(((PriorityEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case URGENT: + return visitor.visitUrgent(); + case NORMAL: + return visitor.visitNormal(); + case LOW: + return visitor.visitLow(); + case HIGH: + return visitor.visitHigh(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static PriorityEnum valueOf(String value) { + switch (value) { + case "URGENT": + return URGENT; + case "NORMAL": + return NORMAL; + case "LOW": + return LOW; + case "HIGH": + return HIGH; + default: + return new PriorityEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + URGENT, + + HIGH, + + NORMAL, + + LOW, + + UNKNOWN + } + + public interface Visitor { + T visitUrgent(); + + T visitHigh(); + + T visitNormal(); + + T visitLow(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/ProjectsUsersListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/ProjectsUsersListRequestExpandItem.java index 3561ea796..56ba77755 100644 --- a/src/main/java/com/merge/api/ticketing/types/ProjectsUsersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/ProjectsUsersListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ProjectsUsersListRequestExpandItem { - ROLES("roles"), +public final class ProjectsUsersListRequestExpandItem { + public static final ProjectsUsersListRequestExpandItem TEAMS = + new ProjectsUsersListRequestExpandItem(Value.TEAMS, "teams"); - TEAMS("teams"); + public static final ProjectsUsersListRequestExpandItem ROLES = + new ProjectsUsersListRequestExpandItem(Value.ROLES, "roles"); - private final String value; + private final Value value; - ProjectsUsersListRequestExpandItem(String value) { + private final String string; + + ProjectsUsersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ProjectsUsersListRequestExpandItem + && this.string.equals(((ProjectsUsersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case TEAMS: + return visitor.visitTeams(); + case ROLES: + return visitor.visitRoles(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ProjectsUsersListRequestExpandItem valueOf(String value) { + switch (value) { + case "teams": + return TEAMS; + case "roles": + return ROLES; + default: + return new ProjectsUsersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ROLES, + + TEAMS, + + UNKNOWN + } + + public interface Visitor { + T visitRoles(); + + T visitTeams(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/RequestFormatEnum.java b/src/main/java/com/merge/api/ticketing/types/RequestFormatEnum.java index 4fc60f413..eb0f7fd1e 100644 --- a/src/main/java/com/merge/api/ticketing/types/RequestFormatEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/RequestFormatEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RequestFormatEnum { - JSON("JSON"), +public final class RequestFormatEnum { + public static final RequestFormatEnum MULTIPART = new RequestFormatEnum(Value.MULTIPART, "MULTIPART"); - XML("XML"), + public static final RequestFormatEnum XML = new RequestFormatEnum(Value.XML, "XML"); - MULTIPART("MULTIPART"); + public static final RequestFormatEnum JSON = new RequestFormatEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - RequestFormatEnum(String value) { + private final String string; + + RequestFormatEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof RequestFormatEnum && this.string.equals(((RequestFormatEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case MULTIPART: + return visitor.visitMultipart(); + case XML: + return visitor.visitXml(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RequestFormatEnum valueOf(String value) { + switch (value) { + case "MULTIPART": + return MULTIPART; + case "XML": + return XML; + case "JSON": + return JSON; + default: + return new RequestFormatEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + XML, + + MULTIPART, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitXml(); + + T visitMultipart(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/ResponseTypeEnum.java b/src/main/java/com/merge/api/ticketing/types/ResponseTypeEnum.java index 537ffb204..8727ec619 100644 --- a/src/main/java/com/merge/api/ticketing/types/ResponseTypeEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/ResponseTypeEnum.java @@ -3,22 +3,81 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum ResponseTypeEnum { - JSON("JSON"), +public final class ResponseTypeEnum { + public static final ResponseTypeEnum BASE_64_GZIP = new ResponseTypeEnum(Value.BASE_64_GZIP, "BASE64_GZIP"); - BASE_64_GZIP("BASE64_GZIP"); + public static final ResponseTypeEnum JSON = new ResponseTypeEnum(Value.JSON, "JSON"); - private final String value; + private final Value value; - ResponseTypeEnum(String value) { + private final String string; + + ResponseTypeEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof ResponseTypeEnum && this.string.equals(((ResponseTypeEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case BASE_64_GZIP: + return visitor.visitBase64Gzip(); + case JSON: + return visitor.visitJson(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static ResponseTypeEnum valueOf(String value) { + switch (value) { + case "BASE64_GZIP": + return BASE_64_GZIP; + case "JSON": + return JSON; + default: + return new ResponseTypeEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + JSON, + + BASE_64_GZIP, + + UNKNOWN + } + + public interface Visitor { + T visitJson(); + + T visitBase64Gzip(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/RoleEnum.java b/src/main/java/com/merge/api/ticketing/types/RoleEnum.java index 0f8f8f66d..bef8c3d30 100644 --- a/src/main/java/com/merge/api/ticketing/types/RoleEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/RoleEnum.java @@ -3,30 +3,120 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum RoleEnum { - ADMIN("ADMIN"), +public final class RoleEnum { + public static final RoleEnum API = new RoleEnum(Value.API, "API"); - DEVELOPER("DEVELOPER"), + public static final RoleEnum DEVELOPER = new RoleEnum(Value.DEVELOPER, "DEVELOPER"); - MEMBER("MEMBER"), + public static final RoleEnum MERGE_TEAM = new RoleEnum(Value.MERGE_TEAM, "MERGE_TEAM"); - API("API"), + public static final RoleEnum MEMBER = new RoleEnum(Value.MEMBER, "MEMBER"); - SYSTEM("SYSTEM"), + public static final RoleEnum SYSTEM = new RoleEnum(Value.SYSTEM, "SYSTEM"); - MERGE_TEAM("MERGE_TEAM"); + public static final RoleEnum ADMIN = new RoleEnum(Value.ADMIN, "ADMIN"); - private final String value; + private final Value value; - RoleEnum(String value) { + private final String string; + + RoleEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) || (other instanceof RoleEnum && this.string.equals(((RoleEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case API: + return visitor.visitApi(); + case DEVELOPER: + return visitor.visitDeveloper(); + case MERGE_TEAM: + return visitor.visitMergeTeam(); + case MEMBER: + return visitor.visitMember(); + case SYSTEM: + return visitor.visitSystem(); + case ADMIN: + return visitor.visitAdmin(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static RoleEnum valueOf(String value) { + switch (value) { + case "API": + return API; + case "DEVELOPER": + return DEVELOPER; + case "MERGE_TEAM": + return MERGE_TEAM; + case "MEMBER": + return MEMBER; + case "SYSTEM": + return SYSTEM; + case "ADMIN": + return ADMIN; + default: + return new RoleEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ADMIN, + + DEVELOPER, + + MEMBER, + + API, + + SYSTEM, + + MERGE_TEAM, + + UNKNOWN + } + + public interface Visitor { + T visitAdmin(); + + T visitDeveloper(); + + T visitMember(); + + T visitApi(); + + T visitSystem(); + + T visitMergeTeam(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/SelectiveSyncConfigurationsUsageEnum.java b/src/main/java/com/merge/api/ticketing/types/SelectiveSyncConfigurationsUsageEnum.java index ee224d603..a0f1aadce 100644 --- a/src/main/java/com/merge/api/ticketing/types/SelectiveSyncConfigurationsUsageEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/SelectiveSyncConfigurationsUsageEnum.java @@ -3,22 +3,84 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum SelectiveSyncConfigurationsUsageEnum { - IN_NEXT_SYNC("IN_NEXT_SYNC"), +public final class SelectiveSyncConfigurationsUsageEnum { + public static final SelectiveSyncConfigurationsUsageEnum IN_NEXT_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_NEXT_SYNC, "IN_NEXT_SYNC"); - IN_LAST_SYNC("IN_LAST_SYNC"); + public static final SelectiveSyncConfigurationsUsageEnum IN_LAST_SYNC = + new SelectiveSyncConfigurationsUsageEnum(Value.IN_LAST_SYNC, "IN_LAST_SYNC"); - private final String value; + private final Value value; - SelectiveSyncConfigurationsUsageEnum(String value) { + private final String string; + + SelectiveSyncConfigurationsUsageEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof SelectiveSyncConfigurationsUsageEnum + && this.string.equals(((SelectiveSyncConfigurationsUsageEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case IN_NEXT_SYNC: + return visitor.visitInNextSync(); + case IN_LAST_SYNC: + return visitor.visitInLastSync(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static SelectiveSyncConfigurationsUsageEnum valueOf(String value) { + switch (value) { + case "IN_NEXT_SYNC": + return IN_NEXT_SYNC; + case "IN_LAST_SYNC": + return IN_LAST_SYNC; + default: + return new SelectiveSyncConfigurationsUsageEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + IN_NEXT_SYNC, + + IN_LAST_SYNC, + + UNKNOWN + } + + public interface Visitor { + T visitInNextSync(); + + T visitInLastSync(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/StatusFd5Enum.java b/src/main/java/com/merge/api/ticketing/types/StatusFd5Enum.java index bbffad9f3..3bdb64a65 100644 --- a/src/main/java/com/merge/api/ticketing/types/StatusFd5Enum.java +++ b/src/main/java/com/merge/api/ticketing/types/StatusFd5Enum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum StatusFd5Enum { - SYNCING("SYNCING"), +public final class StatusFd5Enum { + public static final StatusFd5Enum DISABLED = new StatusFd5Enum(Value.DISABLED, "DISABLED"); - DONE("DONE"), + public static final StatusFd5Enum SYNCING = new StatusFd5Enum(Value.SYNCING, "SYNCING"); - FAILED("FAILED"), + public static final StatusFd5Enum PAUSED = new StatusFd5Enum(Value.PAUSED, "PAUSED"); - DISABLED("DISABLED"), + public static final StatusFd5Enum DONE = new StatusFd5Enum(Value.DONE, "DONE"); - PAUSED("PAUSED"), + public static final StatusFd5Enum FAILED = new StatusFd5Enum(Value.FAILED, "FAILED"); - PARTIALLY_SYNCED("PARTIALLY_SYNCED"); + public static final StatusFd5Enum PARTIALLY_SYNCED = new StatusFd5Enum(Value.PARTIALLY_SYNCED, "PARTIALLY_SYNCED"); - private final String value; + private final Value value; - StatusFd5Enum(String value) { + private final String string; + + StatusFd5Enum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof StatusFd5Enum && this.string.equals(((StatusFd5Enum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DISABLED: + return visitor.visitDisabled(); + case SYNCING: + return visitor.visitSyncing(); + case PAUSED: + return visitor.visitPaused(); + case DONE: + return visitor.visitDone(); + case FAILED: + return visitor.visitFailed(); + case PARTIALLY_SYNCED: + return visitor.visitPartiallySynced(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static StatusFd5Enum valueOf(String value) { + switch (value) { + case "DISABLED": + return DISABLED; + case "SYNCING": + return SYNCING; + case "PAUSED": + return PAUSED; + case "DONE": + return DONE; + case "FAILED": + return FAILED; + case "PARTIALLY_SYNCED": + return PARTIALLY_SYNCED; + default: + return new StatusFd5Enum(Value.UNKNOWN, value); + } + } + + public enum Value { + SYNCING, + + DONE, + + FAILED, + + DISABLED, + + PAUSED, + + PARTIALLY_SYNCED, + + UNKNOWN + } + + public interface Visitor { + T visitSyncing(); + + T visitDone(); + + T visitFailed(); + + T visitDisabled(); + + T visitPaused(); + + T visitPartiallySynced(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketAccessEnum.java b/src/main/java/com/merge/api/ticketing/types/TicketAccessEnum.java index d3f45bd93..f09b42483 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketAccessEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketAccessEnum.java @@ -3,24 +3,91 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketAccessEnum { - ALL("ALL"), +public final class TicketAccessEnum { + public static final TicketAccessEnum ALL = new TicketAccessEnum(Value.ALL, "ALL"); - ASSIGNED_ONLY("ASSIGNED_ONLY"), + public static final TicketAccessEnum TEAM_ONLY = new TicketAccessEnum(Value.TEAM_ONLY, "TEAM_ONLY"); - TEAM_ONLY("TEAM_ONLY"); + public static final TicketAccessEnum ASSIGNED_ONLY = new TicketAccessEnum(Value.ASSIGNED_ONLY, "ASSIGNED_ONLY"); - private final String value; + private final Value value; - TicketAccessEnum(String value) { + private final String string; + + TicketAccessEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketAccessEnum && this.string.equals(((TicketAccessEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case ALL: + return visitor.visitAll(); + case TEAM_ONLY: + return visitor.visitTeamOnly(); + case ASSIGNED_ONLY: + return visitor.visitAssignedOnly(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketAccessEnum valueOf(String value) { + switch (value) { + case "ALL": + return ALL; + case "TEAM_ONLY": + return TEAM_ONLY; + case "ASSIGNED_ONLY": + return ASSIGNED_ONLY; + default: + return new TicketAccessEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + ALL, + + ASSIGNED_ONLY, + + TEAM_ONLY, + + UNKNOWN + } + + public interface Visitor { + T visitAll(); + + T visitAssignedOnly(); + + T visitTeamOnly(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketAccessLevelEnum.java b/src/main/java/com/merge/api/ticketing/types/TicketAccessLevelEnum.java index 8b0a84762..228db0cd6 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketAccessLevelEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketAccessLevelEnum.java @@ -3,26 +3,102 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketAccessLevelEnum { - COMPANY("COMPANY"), +public final class TicketAccessLevelEnum { + public static final TicketAccessLevelEnum PUBLIC = new TicketAccessLevelEnum(Value.PUBLIC, "PUBLIC"); - PUBLIC("PUBLIC"), + public static final TicketAccessLevelEnum COMPANY = new TicketAccessLevelEnum(Value.COMPANY, "COMPANY"); - PRIVATE("PRIVATE"), + public static final TicketAccessLevelEnum PRIVATE = new TicketAccessLevelEnum(Value.PRIVATE, "PRIVATE"); - COLLECTION("COLLECTION"); + public static final TicketAccessLevelEnum COLLECTION = new TicketAccessLevelEnum(Value.COLLECTION, "COLLECTION"); - private final String value; + private final Value value; - TicketAccessLevelEnum(String value) { + private final String string; + + TicketAccessLevelEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketAccessLevelEnum + && this.string.equals(((TicketAccessLevelEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PUBLIC: + return visitor.visitPublic(); + case COMPANY: + return visitor.visitCompany(); + case PRIVATE: + return visitor.visitPrivate(); + case COLLECTION: + return visitor.visitCollection(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketAccessLevelEnum valueOf(String value) { + switch (value) { + case "PUBLIC": + return PUBLIC; + case "COMPANY": + return COMPANY; + case "PRIVATE": + return PRIVATE; + case "COLLECTION": + return COLLECTION; + default: + return new TicketAccessLevelEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + COMPANY, + + PUBLIC, + + PRIVATE, + + COLLECTION, + + UNKNOWN + } + + public interface Visitor { + T visitCompany(); + + T visitPublic(); + + T visitPrivate(); + + T visitCollection(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketActionsEnum.java b/src/main/java/com/merge/api/ticketing/types/TicketActionsEnum.java index 838053804..547897a4c 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketActionsEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketActionsEnum.java @@ -3,30 +3,121 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketActionsEnum { - VIEW("VIEW"), +public final class TicketActionsEnum { + public static final TicketActionsEnum DELETE = new TicketActionsEnum(Value.DELETE, "DELETE"); - CREATE("CREATE"), + public static final TicketActionsEnum CLOSE = new TicketActionsEnum(Value.CLOSE, "CLOSE"); - EDIT("EDIT"), + public static final TicketActionsEnum ASSIGN = new TicketActionsEnum(Value.ASSIGN, "ASSIGN"); - DELETE("DELETE"), + public static final TicketActionsEnum VIEW = new TicketActionsEnum(Value.VIEW, "VIEW"); - CLOSE("CLOSE"), + public static final TicketActionsEnum CREATE = new TicketActionsEnum(Value.CREATE, "CREATE"); - ASSIGN("ASSIGN"); + public static final TicketActionsEnum EDIT = new TicketActionsEnum(Value.EDIT, "EDIT"); - private final String value; + private final Value value; - TicketActionsEnum(String value) { + private final String string; + + TicketActionsEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketActionsEnum && this.string.equals(((TicketActionsEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case DELETE: + return visitor.visitDelete(); + case CLOSE: + return visitor.visitClose(); + case ASSIGN: + return visitor.visitAssign(); + case VIEW: + return visitor.visitView(); + case CREATE: + return visitor.visitCreate(); + case EDIT: + return visitor.visitEdit(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketActionsEnum valueOf(String value) { + switch (value) { + case "DELETE": + return DELETE; + case "CLOSE": + return CLOSE; + case "ASSIGN": + return ASSIGN; + case "VIEW": + return VIEW; + case "CREATE": + return CREATE; + case "EDIT": + return EDIT; + default: + return new TicketActionsEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + VIEW, + + CREATE, + + EDIT, + + DELETE, + + CLOSE, + + ASSIGN, + + UNKNOWN + } + + public interface Visitor { + T visitView(); + + T visitCreate(); + + T visitEdit(); + + T visitDelete(); + + T visitClose(); + + T visitAssign(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketStatusEnum.java b/src/main/java/com/merge/api/ticketing/types/TicketStatusEnum.java index 38f7f2c71..808c61a28 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketStatusEnum.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketStatusEnum.java @@ -3,26 +3,101 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketStatusEnum { - OPEN("OPEN"), +public final class TicketStatusEnum { + public static final TicketStatusEnum CLOSED = new TicketStatusEnum(Value.CLOSED, "CLOSED"); - CLOSED("CLOSED"), + public static final TicketStatusEnum IN_PROGRESS = new TicketStatusEnum(Value.IN_PROGRESS, "IN_PROGRESS"); - IN_PROGRESS("IN_PROGRESS"), + public static final TicketStatusEnum OPEN = new TicketStatusEnum(Value.OPEN, "OPEN"); - ON_HOLD("ON_HOLD"); + public static final TicketStatusEnum ON_HOLD = new TicketStatusEnum(Value.ON_HOLD, "ON_HOLD"); - private final String value; + private final Value value; - TicketStatusEnum(String value) { + private final String string; + + TicketStatusEnum(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketStatusEnum && this.string.equals(((TicketStatusEnum) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CLOSED: + return visitor.visitClosed(); + case IN_PROGRESS: + return visitor.visitInProgress(); + case OPEN: + return visitor.visitOpen(); + case ON_HOLD: + return visitor.visitOnHold(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketStatusEnum valueOf(String value) { + switch (value) { + case "CLOSED": + return CLOSED; + case "IN_PROGRESS": + return IN_PROGRESS; + case "OPEN": + return OPEN; + case "ON_HOLD": + return ON_HOLD; + default: + return new TicketStatusEnum(Value.UNKNOWN, value); + } + } + + public enum Value { + OPEN, + + CLOSED, + + IN_PROGRESS, + + ON_HOLD, + + UNKNOWN + } + + public interface Visitor { + T visitOpen(); + + T visitClosed(); + + T visitInProgress(); + + T visitOnHold(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestExpandItem.java index 73b1e9352..cc730875d 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestExpandItem.java @@ -3,34 +3,150 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsListRequestExpandItem { - ACCOUNT("account"), +public final class TicketsListRequestExpandItem { + public static final TicketsListRequestExpandItem CREATOR = + new TicketsListRequestExpandItem(Value.CREATOR, "creator"); - ASSIGNED_TEAMS("assigned_teams"), + public static final TicketsListRequestExpandItem ATTACHMENTS = + new TicketsListRequestExpandItem(Value.ATTACHMENTS, "attachments"); - ASSIGNEES("assignees"), + public static final TicketsListRequestExpandItem ACCOUNT = + new TicketsListRequestExpandItem(Value.ACCOUNT, "account"); - ATTACHMENTS("attachments"), + public static final TicketsListRequestExpandItem ASSIGNED_TEAMS = + new TicketsListRequestExpandItem(Value.ASSIGNED_TEAMS, "assigned_teams"); - COLLECTIONS("collections"), + public static final TicketsListRequestExpandItem COLLECTIONS = + new TicketsListRequestExpandItem(Value.COLLECTIONS, "collections"); - CONTACT("contact"), + public static final TicketsListRequestExpandItem CONTACT = + new TicketsListRequestExpandItem(Value.CONTACT, "contact"); - CREATOR("creator"), + public static final TicketsListRequestExpandItem ASSIGNEES = + new TicketsListRequestExpandItem(Value.ASSIGNEES, "assignees"); - PARENT_TICKET("parent_ticket"); + public static final TicketsListRequestExpandItem PARENT_TICKET = + new TicketsListRequestExpandItem(Value.PARENT_TICKET, "parent_ticket"); - private final String value; + private final Value value; - TicketsListRequestExpandItem(String value) { + private final String string; + + TicketsListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsListRequestExpandItem + && this.string.equals(((TicketsListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATOR: + return visitor.visitCreator(); + case ATTACHMENTS: + return visitor.visitAttachments(); + case ACCOUNT: + return visitor.visitAccount(); + case ASSIGNED_TEAMS: + return visitor.visitAssignedTeams(); + case COLLECTIONS: + return visitor.visitCollections(); + case CONTACT: + return visitor.visitContact(); + case ASSIGNEES: + return visitor.visitAssignees(); + case PARENT_TICKET: + return visitor.visitParentTicket(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsListRequestExpandItem valueOf(String value) { + switch (value) { + case "creator": + return CREATOR; + case "attachments": + return ATTACHMENTS; + case "account": + return ACCOUNT; + case "assigned_teams": + return ASSIGNED_TEAMS; + case "collections": + return COLLECTIONS; + case "contact": + return CONTACT; + case "assignees": + return ASSIGNEES; + case "parent_ticket": + return PARENT_TICKET; + default: + return new TicketsListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ASSIGNED_TEAMS, + + ASSIGNEES, + + ATTACHMENTS, + + COLLECTIONS, + + CONTACT, + + CREATOR, + + PARENT_TICKET, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAssignedTeams(); + + T visitAssignees(); + + T visitAttachments(); + + T visitCollections(); + + T visitContact(); + + T visitCreator(); + + T visitParentTicket(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestPriority.java b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestPriority.java index 51df2265a..963c9e518 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestPriority.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestPriority.java @@ -3,26 +3,102 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsListRequestPriority { - HIGH("HIGH"), +public final class TicketsListRequestPriority { + public static final TicketsListRequestPriority URGENT = new TicketsListRequestPriority(Value.URGENT, "URGENT"); - LOW("LOW"), + public static final TicketsListRequestPriority NORMAL = new TicketsListRequestPriority(Value.NORMAL, "NORMAL"); - NORMAL("NORMAL"), + public static final TicketsListRequestPriority LOW = new TicketsListRequestPriority(Value.LOW, "LOW"); - URGENT("URGENT"); + public static final TicketsListRequestPriority HIGH = new TicketsListRequestPriority(Value.HIGH, "HIGH"); - private final String value; + private final Value value; - TicketsListRequestPriority(String value) { + private final String string; + + TicketsListRequestPriority(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsListRequestPriority + && this.string.equals(((TicketsListRequestPriority) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case URGENT: + return visitor.visitUrgent(); + case NORMAL: + return visitor.visitNormal(); + case LOW: + return visitor.visitLow(); + case HIGH: + return visitor.visitHigh(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsListRequestPriority valueOf(String value) { + switch (value) { + case "URGENT": + return URGENT; + case "NORMAL": + return NORMAL; + case "LOW": + return LOW; + case "HIGH": + return HIGH; + default: + return new TicketsListRequestPriority(Value.UNKNOWN, value); + } + } + + public enum Value { + HIGH, + + LOW, + + NORMAL, + + URGENT, + + UNKNOWN + } + + public interface Visitor { + T visitHigh(); + + T visitLow(); + + T visitNormal(); + + T visitUrgent(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestRemoteFields.java b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestRemoteFields.java index 4dd164569..2ddafb6db 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestRemoteFields.java @@ -3,32 +3,139 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsListRequestRemoteFields { - PRIORITY("priority"), +public final class TicketsListRequestRemoteFields { + public static final TicketsListRequestRemoteFields PRIORITY_TICKET_TYPE = + new TicketsListRequestRemoteFields(Value.PRIORITY_TICKET_TYPE, "priority,ticket_type"); - PRIORITY_STATUS("priority,status"), + public static final TicketsListRequestRemoteFields TICKET_TYPE = + new TicketsListRequestRemoteFields(Value.TICKET_TYPE, "ticket_type"); - PRIORITY_STATUS_TICKET_TYPE("priority,status,ticket_type"), + public static final TicketsListRequestRemoteFields PRIORITY_STATUS_TICKET_TYPE = + new TicketsListRequestRemoteFields(Value.PRIORITY_STATUS_TICKET_TYPE, "priority,status,ticket_type"); - PRIORITY_TICKET_TYPE("priority,ticket_type"), + public static final TicketsListRequestRemoteFields STATUS = + new TicketsListRequestRemoteFields(Value.STATUS, "status"); - STATUS("status"), + public static final TicketsListRequestRemoteFields PRIORITY = + new TicketsListRequestRemoteFields(Value.PRIORITY, "priority"); - STATUS_TICKET_TYPE("status,ticket_type"), + public static final TicketsListRequestRemoteFields STATUS_TICKET_TYPE = + new TicketsListRequestRemoteFields(Value.STATUS_TICKET_TYPE, "status,ticket_type"); - TICKET_TYPE("ticket_type"); + public static final TicketsListRequestRemoteFields PRIORITY_STATUS = + new TicketsListRequestRemoteFields(Value.PRIORITY_STATUS, "priority,status"); - private final String value; + private final Value value; - TicketsListRequestRemoteFields(String value) { + private final String string; + + TicketsListRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsListRequestRemoteFields + && this.string.equals(((TicketsListRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PRIORITY_TICKET_TYPE: + return visitor.visitPriorityTicketType(); + case TICKET_TYPE: + return visitor.visitTicketType(); + case PRIORITY_STATUS_TICKET_TYPE: + return visitor.visitPriorityStatusTicketType(); + case STATUS: + return visitor.visitStatus(); + case PRIORITY: + return visitor.visitPriority(); + case STATUS_TICKET_TYPE: + return visitor.visitStatusTicketType(); + case PRIORITY_STATUS: + return visitor.visitPriorityStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsListRequestRemoteFields valueOf(String value) { + switch (value) { + case "priority,ticket_type": + return PRIORITY_TICKET_TYPE; + case "ticket_type": + return TICKET_TYPE; + case "priority,status,ticket_type": + return PRIORITY_STATUS_TICKET_TYPE; + case "status": + return STATUS; + case "priority": + return PRIORITY; + case "status,ticket_type": + return STATUS_TICKET_TYPE; + case "priority,status": + return PRIORITY_STATUS; + default: + return new TicketsListRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + PRIORITY, + + PRIORITY_STATUS, + + PRIORITY_STATUS_TICKET_TYPE, + + PRIORITY_TICKET_TYPE, + + STATUS, + + STATUS_TICKET_TYPE, + + TICKET_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitPriority(); + + T visitPriorityStatus(); + + T visitPriorityStatusTicketType(); + + T visitPriorityTicketType(); + + T visitStatus(); + + T visitStatusTicketType(); + + T visitTicketType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestShowEnumOrigins.java index e9e767823..bd92bb992 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsListRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsListRequestShowEnumOrigins.java @@ -3,32 +3,139 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsListRequestShowEnumOrigins { - PRIORITY("priority"), +public final class TicketsListRequestShowEnumOrigins { + public static final TicketsListRequestShowEnumOrigins PRIORITY_TICKET_TYPE = + new TicketsListRequestShowEnumOrigins(Value.PRIORITY_TICKET_TYPE, "priority,ticket_type"); - PRIORITY_STATUS("priority,status"), + public static final TicketsListRequestShowEnumOrigins TICKET_TYPE = + new TicketsListRequestShowEnumOrigins(Value.TICKET_TYPE, "ticket_type"); - PRIORITY_STATUS_TICKET_TYPE("priority,status,ticket_type"), + public static final TicketsListRequestShowEnumOrigins PRIORITY_STATUS_TICKET_TYPE = + new TicketsListRequestShowEnumOrigins(Value.PRIORITY_STATUS_TICKET_TYPE, "priority,status,ticket_type"); - PRIORITY_TICKET_TYPE("priority,ticket_type"), + public static final TicketsListRequestShowEnumOrigins STATUS = + new TicketsListRequestShowEnumOrigins(Value.STATUS, "status"); - STATUS("status"), + public static final TicketsListRequestShowEnumOrigins PRIORITY = + new TicketsListRequestShowEnumOrigins(Value.PRIORITY, "priority"); - STATUS_TICKET_TYPE("status,ticket_type"), + public static final TicketsListRequestShowEnumOrigins STATUS_TICKET_TYPE = + new TicketsListRequestShowEnumOrigins(Value.STATUS_TICKET_TYPE, "status,ticket_type"); - TICKET_TYPE("ticket_type"); + public static final TicketsListRequestShowEnumOrigins PRIORITY_STATUS = + new TicketsListRequestShowEnumOrigins(Value.PRIORITY_STATUS, "priority,status"); - private final String value; + private final Value value; - TicketsListRequestShowEnumOrigins(String value) { + private final String string; + + TicketsListRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsListRequestShowEnumOrigins + && this.string.equals(((TicketsListRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PRIORITY_TICKET_TYPE: + return visitor.visitPriorityTicketType(); + case TICKET_TYPE: + return visitor.visitTicketType(); + case PRIORITY_STATUS_TICKET_TYPE: + return visitor.visitPriorityStatusTicketType(); + case STATUS: + return visitor.visitStatus(); + case PRIORITY: + return visitor.visitPriority(); + case STATUS_TICKET_TYPE: + return visitor.visitStatusTicketType(); + case PRIORITY_STATUS: + return visitor.visitPriorityStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsListRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "priority,ticket_type": + return PRIORITY_TICKET_TYPE; + case "ticket_type": + return TICKET_TYPE; + case "priority,status,ticket_type": + return PRIORITY_STATUS_TICKET_TYPE; + case "status": + return STATUS; + case "priority": + return PRIORITY; + case "status,ticket_type": + return STATUS_TICKET_TYPE; + case "priority,status": + return PRIORITY_STATUS; + default: + return new TicketsListRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + PRIORITY, + + PRIORITY_STATUS, + + PRIORITY_STATUS_TICKET_TYPE, + + PRIORITY_TICKET_TYPE, + + STATUS, + + STATUS_TICKET_TYPE, + + TICKET_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitPriority(); + + T visitPriorityStatus(); + + T visitPriorityStatusTicketType(); + + T visitPriorityTicketType(); + + T visitStatus(); + + T visitStatusTicketType(); + + T visitTicketType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestExpandItem.java index ddc4c07e7..83d1d8f0a 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestExpandItem.java @@ -3,34 +3,150 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsRetrieveRequestExpandItem { - ACCOUNT("account"), +public final class TicketsRetrieveRequestExpandItem { + public static final TicketsRetrieveRequestExpandItem CREATOR = + new TicketsRetrieveRequestExpandItem(Value.CREATOR, "creator"); - ASSIGNED_TEAMS("assigned_teams"), + public static final TicketsRetrieveRequestExpandItem ATTACHMENTS = + new TicketsRetrieveRequestExpandItem(Value.ATTACHMENTS, "attachments"); - ASSIGNEES("assignees"), + public static final TicketsRetrieveRequestExpandItem ACCOUNT = + new TicketsRetrieveRequestExpandItem(Value.ACCOUNT, "account"); - ATTACHMENTS("attachments"), + public static final TicketsRetrieveRequestExpandItem ASSIGNED_TEAMS = + new TicketsRetrieveRequestExpandItem(Value.ASSIGNED_TEAMS, "assigned_teams"); - COLLECTIONS("collections"), + public static final TicketsRetrieveRequestExpandItem COLLECTIONS = + new TicketsRetrieveRequestExpandItem(Value.COLLECTIONS, "collections"); - CONTACT("contact"), + public static final TicketsRetrieveRequestExpandItem CONTACT = + new TicketsRetrieveRequestExpandItem(Value.CONTACT, "contact"); - CREATOR("creator"), + public static final TicketsRetrieveRequestExpandItem ASSIGNEES = + new TicketsRetrieveRequestExpandItem(Value.ASSIGNEES, "assignees"); - PARENT_TICKET("parent_ticket"); + public static final TicketsRetrieveRequestExpandItem PARENT_TICKET = + new TicketsRetrieveRequestExpandItem(Value.PARENT_TICKET, "parent_ticket"); - private final String value; + private final Value value; - TicketsRetrieveRequestExpandItem(String value) { + private final String string; + + TicketsRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsRetrieveRequestExpandItem + && this.string.equals(((TicketsRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case CREATOR: + return visitor.visitCreator(); + case ATTACHMENTS: + return visitor.visitAttachments(); + case ACCOUNT: + return visitor.visitAccount(); + case ASSIGNED_TEAMS: + return visitor.visitAssignedTeams(); + case COLLECTIONS: + return visitor.visitCollections(); + case CONTACT: + return visitor.visitContact(); + case ASSIGNEES: + return visitor.visitAssignees(); + case PARENT_TICKET: + return visitor.visitParentTicket(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "creator": + return CREATOR; + case "attachments": + return ATTACHMENTS; + case "account": + return ACCOUNT; + case "assigned_teams": + return ASSIGNED_TEAMS; + case "collections": + return COLLECTIONS; + case "contact": + return CONTACT; + case "assignees": + return ASSIGNEES; + case "parent_ticket": + return PARENT_TICKET; + default: + return new TicketsRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ACCOUNT, + + ASSIGNED_TEAMS, + + ASSIGNEES, + + ATTACHMENTS, + + COLLECTIONS, + + CONTACT, + + CREATOR, + + PARENT_TICKET, + + UNKNOWN + } + + public interface Visitor { + T visitAccount(); + + T visitAssignedTeams(); + + T visitAssignees(); + + T visitAttachments(); + + T visitCollections(); + + T visitContact(); + + T visitCreator(); + + T visitParentTicket(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestRemoteFields.java b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestRemoteFields.java index 19aac210a..ce04ebd0b 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestRemoteFields.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestRemoteFields.java @@ -3,32 +3,139 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsRetrieveRequestRemoteFields { - PRIORITY("priority"), +public final class TicketsRetrieveRequestRemoteFields { + public static final TicketsRetrieveRequestRemoteFields PRIORITY_TICKET_TYPE = + new TicketsRetrieveRequestRemoteFields(Value.PRIORITY_TICKET_TYPE, "priority,ticket_type"); - PRIORITY_STATUS("priority,status"), + public static final TicketsRetrieveRequestRemoteFields TICKET_TYPE = + new TicketsRetrieveRequestRemoteFields(Value.TICKET_TYPE, "ticket_type"); - PRIORITY_STATUS_TICKET_TYPE("priority,status,ticket_type"), + public static final TicketsRetrieveRequestRemoteFields PRIORITY_STATUS_TICKET_TYPE = + new TicketsRetrieveRequestRemoteFields(Value.PRIORITY_STATUS_TICKET_TYPE, "priority,status,ticket_type"); - PRIORITY_TICKET_TYPE("priority,ticket_type"), + public static final TicketsRetrieveRequestRemoteFields STATUS = + new TicketsRetrieveRequestRemoteFields(Value.STATUS, "status"); - STATUS("status"), + public static final TicketsRetrieveRequestRemoteFields PRIORITY = + new TicketsRetrieveRequestRemoteFields(Value.PRIORITY, "priority"); - STATUS_TICKET_TYPE("status,ticket_type"), + public static final TicketsRetrieveRequestRemoteFields STATUS_TICKET_TYPE = + new TicketsRetrieveRequestRemoteFields(Value.STATUS_TICKET_TYPE, "status,ticket_type"); - TICKET_TYPE("ticket_type"); + public static final TicketsRetrieveRequestRemoteFields PRIORITY_STATUS = + new TicketsRetrieveRequestRemoteFields(Value.PRIORITY_STATUS, "priority,status"); - private final String value; + private final Value value; - TicketsRetrieveRequestRemoteFields(String value) { + private final String string; + + TicketsRetrieveRequestRemoteFields(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsRetrieveRequestRemoteFields + && this.string.equals(((TicketsRetrieveRequestRemoteFields) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PRIORITY_TICKET_TYPE: + return visitor.visitPriorityTicketType(); + case TICKET_TYPE: + return visitor.visitTicketType(); + case PRIORITY_STATUS_TICKET_TYPE: + return visitor.visitPriorityStatusTicketType(); + case STATUS: + return visitor.visitStatus(); + case PRIORITY: + return visitor.visitPriority(); + case STATUS_TICKET_TYPE: + return visitor.visitStatusTicketType(); + case PRIORITY_STATUS: + return visitor.visitPriorityStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsRetrieveRequestRemoteFields valueOf(String value) { + switch (value) { + case "priority,ticket_type": + return PRIORITY_TICKET_TYPE; + case "ticket_type": + return TICKET_TYPE; + case "priority,status,ticket_type": + return PRIORITY_STATUS_TICKET_TYPE; + case "status": + return STATUS; + case "priority": + return PRIORITY; + case "status,ticket_type": + return STATUS_TICKET_TYPE; + case "priority,status": + return PRIORITY_STATUS; + default: + return new TicketsRetrieveRequestRemoteFields(Value.UNKNOWN, value); + } + } + + public enum Value { + PRIORITY, + + PRIORITY_STATUS, + + PRIORITY_STATUS_TICKET_TYPE, + + PRIORITY_TICKET_TYPE, + + STATUS, + + STATUS_TICKET_TYPE, + + TICKET_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitPriority(); + + T visitPriorityStatus(); + + T visitPriorityStatusTicketType(); + + T visitPriorityTicketType(); + + T visitStatus(); + + T visitStatusTicketType(); + + T visitTicketType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestShowEnumOrigins.java b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestShowEnumOrigins.java index d2e5b6d92..85d70fa22 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestShowEnumOrigins.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsRetrieveRequestShowEnumOrigins.java @@ -3,32 +3,139 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsRetrieveRequestShowEnumOrigins { - PRIORITY("priority"), +public final class TicketsRetrieveRequestShowEnumOrigins { + public static final TicketsRetrieveRequestShowEnumOrigins PRIORITY_TICKET_TYPE = + new TicketsRetrieveRequestShowEnumOrigins(Value.PRIORITY_TICKET_TYPE, "priority,ticket_type"); - PRIORITY_STATUS("priority,status"), + public static final TicketsRetrieveRequestShowEnumOrigins TICKET_TYPE = + new TicketsRetrieveRequestShowEnumOrigins(Value.TICKET_TYPE, "ticket_type"); - PRIORITY_STATUS_TICKET_TYPE("priority,status,ticket_type"), + public static final TicketsRetrieveRequestShowEnumOrigins PRIORITY_STATUS_TICKET_TYPE = + new TicketsRetrieveRequestShowEnumOrigins(Value.PRIORITY_STATUS_TICKET_TYPE, "priority,status,ticket_type"); - PRIORITY_TICKET_TYPE("priority,ticket_type"), + public static final TicketsRetrieveRequestShowEnumOrigins STATUS = + new TicketsRetrieveRequestShowEnumOrigins(Value.STATUS, "status"); - STATUS("status"), + public static final TicketsRetrieveRequestShowEnumOrigins PRIORITY = + new TicketsRetrieveRequestShowEnumOrigins(Value.PRIORITY, "priority"); - STATUS_TICKET_TYPE("status,ticket_type"), + public static final TicketsRetrieveRequestShowEnumOrigins STATUS_TICKET_TYPE = + new TicketsRetrieveRequestShowEnumOrigins(Value.STATUS_TICKET_TYPE, "status,ticket_type"); - TICKET_TYPE("ticket_type"); + public static final TicketsRetrieveRequestShowEnumOrigins PRIORITY_STATUS = + new TicketsRetrieveRequestShowEnumOrigins(Value.PRIORITY_STATUS, "priority,status"); - private final String value; + private final Value value; - TicketsRetrieveRequestShowEnumOrigins(String value) { + private final String string; + + TicketsRetrieveRequestShowEnumOrigins(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsRetrieveRequestShowEnumOrigins + && this.string.equals(((TicketsRetrieveRequestShowEnumOrigins) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case PRIORITY_TICKET_TYPE: + return visitor.visitPriorityTicketType(); + case TICKET_TYPE: + return visitor.visitTicketType(); + case PRIORITY_STATUS_TICKET_TYPE: + return visitor.visitPriorityStatusTicketType(); + case STATUS: + return visitor.visitStatus(); + case PRIORITY: + return visitor.visitPriority(); + case STATUS_TICKET_TYPE: + return visitor.visitStatusTicketType(); + case PRIORITY_STATUS: + return visitor.visitPriorityStatus(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsRetrieveRequestShowEnumOrigins valueOf(String value) { + switch (value) { + case "priority,ticket_type": + return PRIORITY_TICKET_TYPE; + case "ticket_type": + return TICKET_TYPE; + case "priority,status,ticket_type": + return PRIORITY_STATUS_TICKET_TYPE; + case "status": + return STATUS; + case "priority": + return PRIORITY; + case "status,ticket_type": + return STATUS_TICKET_TYPE; + case "priority,status": + return PRIORITY_STATUS; + default: + return new TicketsRetrieveRequestShowEnumOrigins(Value.UNKNOWN, value); + } + } + + public enum Value { + PRIORITY, + + PRIORITY_STATUS, + + PRIORITY_STATUS_TICKET_TYPE, + + PRIORITY_TICKET_TYPE, + + STATUS, + + STATUS_TICKET_TYPE, + + TICKET_TYPE, + + UNKNOWN + } + + public interface Visitor { + T visitPriority(); + + T visitPriorityStatus(); + + T visitPriorityStatusTicketType(); + + T visitPriorityTicketType(); + + T visitStatus(); + + T visitStatusTicketType(); + + T visitTicketType(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/TicketsViewersListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/TicketsViewersListRequestExpandItem.java index 784065c26..5257bf026 100644 --- a/src/main/java/com/merge/api/ticketing/types/TicketsViewersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/TicketsViewersListRequestExpandItem.java @@ -3,22 +3,84 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum TicketsViewersListRequestExpandItem { - TEAM("team"), +public final class TicketsViewersListRequestExpandItem { + public static final TicketsViewersListRequestExpandItem USER = + new TicketsViewersListRequestExpandItem(Value.USER, "user"); - USER("user"); + public static final TicketsViewersListRequestExpandItem TEAM = + new TicketsViewersListRequestExpandItem(Value.TEAM, "team"); - private final String value; + private final Value value; - TicketsViewersListRequestExpandItem(String value) { + private final String string; + + TicketsViewersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof TicketsViewersListRequestExpandItem + && this.string.equals(((TicketsViewersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case USER: + return visitor.visitUser(); + case TEAM: + return visitor.visitTeam(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static TicketsViewersListRequestExpandItem valueOf(String value) { + switch (value) { + case "user": + return USER; + case "team": + return TEAM; + default: + return new TicketsViewersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + TEAM, + + USER, + + UNKNOWN + } + + public interface Visitor { + T visitTeam(); + + T visitUser(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/UsersListRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/UsersListRequestExpandItem.java index 56f8927f1..872b500ee 100644 --- a/src/main/java/com/merge/api/ticketing/types/UsersListRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/UsersListRequestExpandItem.java @@ -3,22 +3,82 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum UsersListRequestExpandItem { - ROLES("roles"), +public final class UsersListRequestExpandItem { + public static final UsersListRequestExpandItem TEAMS = new UsersListRequestExpandItem(Value.TEAMS, "teams"); - TEAMS("teams"); + public static final UsersListRequestExpandItem ROLES = new UsersListRequestExpandItem(Value.ROLES, "roles"); - private final String value; + private final Value value; - UsersListRequestExpandItem(String value) { + private final String string; + + UsersListRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof UsersListRequestExpandItem + && this.string.equals(((UsersListRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case TEAMS: + return visitor.visitTeams(); + case ROLES: + return visitor.visitRoles(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static UsersListRequestExpandItem valueOf(String value) { + switch (value) { + case "teams": + return TEAMS; + case "roles": + return ROLES; + default: + return new UsersListRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ROLES, + + TEAMS, + + UNKNOWN + } + + public interface Visitor { + T visitRoles(); + + T visitTeams(); + + T visitUnknown(String unknownType); } } diff --git a/src/main/java/com/merge/api/ticketing/types/UsersRetrieveRequestExpandItem.java b/src/main/java/com/merge/api/ticketing/types/UsersRetrieveRequestExpandItem.java index cc7e4715a..1475e015c 100644 --- a/src/main/java/com/merge/api/ticketing/types/UsersRetrieveRequestExpandItem.java +++ b/src/main/java/com/merge/api/ticketing/types/UsersRetrieveRequestExpandItem.java @@ -3,22 +3,82 @@ */ package com.merge.api.ticketing.types; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -public enum UsersRetrieveRequestExpandItem { - ROLES("roles"), +public final class UsersRetrieveRequestExpandItem { + public static final UsersRetrieveRequestExpandItem TEAMS = new UsersRetrieveRequestExpandItem(Value.TEAMS, "teams"); - TEAMS("teams"); + public static final UsersRetrieveRequestExpandItem ROLES = new UsersRetrieveRequestExpandItem(Value.ROLES, "roles"); - private final String value; + private final Value value; - UsersRetrieveRequestExpandItem(String value) { + private final String string; + + UsersRetrieveRequestExpandItem(Value value, String string) { this.value = value; + this.string = string; + } + + public Value getEnumValue() { + return value; } - @JsonValue @java.lang.Override + @JsonValue public String toString() { - return this.value; + return this.string; + } + + @java.lang.Override + public boolean equals(Object other) { + return (this == other) + || (other instanceof UsersRetrieveRequestExpandItem + && this.string.equals(((UsersRetrieveRequestExpandItem) other).string)); + } + + @java.lang.Override + public int hashCode() { + return this.string.hashCode(); + } + + public T visit(Visitor visitor) { + switch (value) { + case TEAMS: + return visitor.visitTeams(); + case ROLES: + return visitor.visitRoles(); + case UNKNOWN: + default: + return visitor.visitUnknown(string); + } + } + + @JsonCreator(mode = JsonCreator.Mode.DELEGATING) + public static UsersRetrieveRequestExpandItem valueOf(String value) { + switch (value) { + case "teams": + return TEAMS; + case "roles": + return ROLES; + default: + return new UsersRetrieveRequestExpandItem(Value.UNKNOWN, value); + } + } + + public enum Value { + ROLES, + + TEAMS, + + UNKNOWN + } + + public interface Visitor { + T visitRoles(); + + T visitTeams(); + + T visitUnknown(String unknownType); } }