From 20eea0b8549d919ba6ad501afa68f7904b3ced6f Mon Sep 17 00:00:00 2001 From: gitnexbot Date: Fri, 2 Aug 2024 00:07:18 +0000 Subject: [PATCH] Synchronizing API and documentation updates --- docs/AddCollaboratorOption.md | 10 +++- .../v2/models/AddCollaboratorOption.java | 58 +++++++++++++++++-- 2 files changed, 63 insertions(+), 5 deletions(-) diff --git a/docs/AddCollaboratorOption.md b/docs/AddCollaboratorOption.md index d6dcfe9..37813fe 100644 --- a/docs/AddCollaboratorOption.md +++ b/docs/AddCollaboratorOption.md @@ -3,4 +3,12 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**permission** | **String** | | [optional] +**permission** | [**PermissionEnum**](#PermissionEnum) | | [optional] + + +## Enum: PermissionEnum +Name | Value +---- | ----- +READ | "read" +WRITE | "write" +ADMIN | "admin" diff --git a/src/main/java/org/gitnex/tea4j/v2/models/AddCollaboratorOption.java b/src/main/java/org/gitnex/tea4j/v2/models/AddCollaboratorOption.java index 1c886d9..f28dcc8 100644 --- a/src/main/java/org/gitnex/tea4j/v2/models/AddCollaboratorOption.java +++ b/src/main/java/org/gitnex/tea4j/v2/models/AddCollaboratorOption.java @@ -12,8 +12,13 @@ package org.gitnex.tea4j.v2.models; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; import io.swagger.v3.oas.annotations.media.Schema; +import java.io.IOException; import java.io.Serializable; import java.util.Objects; @@ -23,11 +28,56 @@ import java.util.Objects; "AddCollaboratorOption options when adding a user as a collaborator of a repository") public class AddCollaboratorOption implements Serializable { private static final long serialVersionUID = 1L; + /** Gets or Sets permission */ + @JsonAdapter(PermissionEnum.Adapter.class) + public enum PermissionEnum { + READ("read"), + WRITE("write"), + ADMIN("admin"); + + private String value; + + PermissionEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static PermissionEnum fromValue(String input) { + for (PermissionEnum b : PermissionEnum.values()) { + if (b.value.equals(input)) { + return b; + } + } + return null; + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final PermissionEnum enumeration) + throws IOException { + jsonWriter.value(String.valueOf(enumeration.getValue())); + } + + @Override + public PermissionEnum read(final JsonReader jsonReader) throws IOException { + Object value = jsonReader.nextString(); + return PermissionEnum.fromValue((String) (value)); + } + } + } @SerializedName("permission") - private String permission = null; + private PermissionEnum permission = null; - public AddCollaboratorOption permission(String permission) { + public AddCollaboratorOption permission(PermissionEnum permission) { this.permission = permission; return this; } @@ -38,11 +88,11 @@ public class AddCollaboratorOption implements Serializable { * @return permission */ @Schema(description = "") - public String getPermission() { + public PermissionEnum getPermission() { return permission; } - public void setPermission(String permission) { + public void setPermission(PermissionEnum permission) { this.permission = permission; }