001package com.box.sdkgen.managers.webhooks; 002 003import com.box.sdkgen.serialization.json.EnumWrapper; 004import com.box.sdkgen.serialization.json.Valuable; 005import com.fasterxml.jackson.annotation.JsonValue; 006import com.fasterxml.jackson.core.JsonGenerator; 007import com.fasterxml.jackson.core.JsonParser; 008import com.fasterxml.jackson.databind.DeserializationContext; 009import com.fasterxml.jackson.databind.JsonDeserializer; 010import com.fasterxml.jackson.databind.JsonSerializer; 011import com.fasterxml.jackson.databind.SerializerProvider; 012import java.io.IOException; 013import java.util.Arrays; 014 015public enum UpdateWebhookByIdRequestBodyTriggersField implements Valuable { 016 FILE_UPLOADED("FILE.UPLOADED"), 017 FILE_PREVIEWED("FILE.PREVIEWED"), 018 FILE_DOWNLOADED("FILE.DOWNLOADED"), 019 FILE_TRASHED("FILE.TRASHED"), 020 FILE_DELETED("FILE.DELETED"), 021 FILE_RESTORED("FILE.RESTORED"), 022 FILE_COPIED("FILE.COPIED"), 023 FILE_MOVED("FILE.MOVED"), 024 FILE_LOCKED("FILE.LOCKED"), 025 FILE_UNLOCKED("FILE.UNLOCKED"), 026 FILE_RENAMED("FILE.RENAMED"), 027 COMMENT_CREATED("COMMENT.CREATED"), 028 COMMENT_UPDATED("COMMENT.UPDATED"), 029 COMMENT_DELETED("COMMENT.DELETED"), 030 TASK_ASSIGNMENT_CREATED("TASK_ASSIGNMENT.CREATED"), 031 TASK_ASSIGNMENT_UPDATED("TASK_ASSIGNMENT.UPDATED"), 032 METADATA_INSTANCE_CREATED("METADATA_INSTANCE.CREATED"), 033 METADATA_INSTANCE_UPDATED("METADATA_INSTANCE.UPDATED"), 034 METADATA_INSTANCE_DELETED("METADATA_INSTANCE.DELETED"), 035 FOLDER_CREATED("FOLDER.CREATED"), 036 FOLDER_RENAMED("FOLDER.RENAMED"), 037 FOLDER_DOWNLOADED("FOLDER.DOWNLOADED"), 038 FOLDER_RESTORED("FOLDER.RESTORED"), 039 FOLDER_DELETED("FOLDER.DELETED"), 040 FOLDER_COPIED("FOLDER.COPIED"), 041 FOLDER_MOVED("FOLDER.MOVED"), 042 FOLDER_TRASHED("FOLDER.TRASHED"), 043 WEBHOOK_DELETED("WEBHOOK.DELETED"), 044 COLLABORATION_CREATED("COLLABORATION.CREATED"), 045 COLLABORATION_ACCEPTED("COLLABORATION.ACCEPTED"), 046 COLLABORATION_REJECTED("COLLABORATION.REJECTED"), 047 COLLABORATION_REMOVED("COLLABORATION.REMOVED"), 048 COLLABORATION_UPDATED("COLLABORATION.UPDATED"), 049 SHARED_LINK_DELETED("SHARED_LINK.DELETED"), 050 SHARED_LINK_CREATED("SHARED_LINK.CREATED"), 051 SHARED_LINK_UPDATED("SHARED_LINK.UPDATED"), 052 SIGN_REQUEST_COMPLETED("SIGN_REQUEST.COMPLETED"), 053 SIGN_REQUEST_DECLINED("SIGN_REQUEST.DECLINED"), 054 SIGN_REQUEST_EXPIRED("SIGN_REQUEST.EXPIRED"), 055 SIGN_REQUEST_SIGNER_EMAIL_BOUNCED("SIGN_REQUEST.SIGNER_EMAIL_BOUNCED"), 056 SIGN_REQUEST_SIGN_SIGNER_SIGNED("SIGN_REQUEST.SIGN_SIGNER_SIGNED"), 057 SIGN_REQUEST_SIGN_DOCUMENT_CREATED("SIGN_REQUEST.SIGN_DOCUMENT_CREATED"), 058 SIGN_REQUEST_SIGN_ERROR_FINALIZING("SIGN_REQUEST.SIGN_ERROR_FINALIZING"); 059 060 private final String value; 061 062 UpdateWebhookByIdRequestBodyTriggersField(String value) { 063 this.value = value; 064 } 065 066 @JsonValue 067 public String getValue() { 068 return value; 069 } 070 071 public static class UpdateWebhookByIdRequestBodyTriggersFieldDeserializer 072 extends JsonDeserializer<EnumWrapper<UpdateWebhookByIdRequestBodyTriggersField>> { 073 074 public UpdateWebhookByIdRequestBodyTriggersFieldDeserializer() { 075 super(); 076 } 077 078 @Override 079 public EnumWrapper<UpdateWebhookByIdRequestBodyTriggersField> deserialize( 080 JsonParser p, DeserializationContext ctxt) throws IOException { 081 String value = p.getValueAsString(); 082 return Arrays.stream(UpdateWebhookByIdRequestBodyTriggersField.values()) 083 .filter((v) -> v.getValue().equalsIgnoreCase(value)) 084 .findFirst() 085 .map(EnumWrapper::new) 086 .orElse(new EnumWrapper<UpdateWebhookByIdRequestBodyTriggersField>(value)); 087 } 088 } 089 090 public static class UpdateWebhookByIdRequestBodyTriggersFieldSerializer 091 extends JsonSerializer<EnumWrapper<UpdateWebhookByIdRequestBodyTriggersField>> { 092 093 public UpdateWebhookByIdRequestBodyTriggersFieldSerializer() { 094 super(); 095 } 096 097 @Override 098 public void serialize( 099 EnumWrapper<UpdateWebhookByIdRequestBodyTriggersField> value, 100 JsonGenerator gen, 101 SerializerProvider serializers) 102 throws IOException { 103 gen.writeString(value.getStringValue()); 104 } 105 } 106}