[freeboxos] Restore enum in API response record DTO (MacOS file sharing) (#17284)

Partial revert of #17203

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
This commit is contained in:
lolodomo 2024-08-18 13:26:08 +02:00 committed by GitHub
parent 687337f88b
commit 04d87ad599
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -19,6 +19,8 @@ import org.eclipse.jdt.annotation.Nullable;
import org.openhab.binding.freeboxos.internal.api.FreeboxException; import org.openhab.binding.freeboxos.internal.api.FreeboxException;
import org.openhab.binding.freeboxos.internal.api.Response; import org.openhab.binding.freeboxos.internal.api.Response;
import com.google.gson.annotations.SerializedName;
/** /**
* The {@link AfpManager} is the Java class used to handle api requests related to Afp shares * The {@link AfpManager} is the Java class used to handle api requests related to Afp shares
* *
@ -31,8 +33,33 @@ public class AfpManager extends ConfigurableRest<AfpManager.Afp, AfpManager.Conf
protected static class ConfigResponse extends Response<Afp> { protected static class ConfigResponse extends Response<Afp> {
} }
protected static record Afp(boolean enabled, boolean guestAllow, String serverType, @Nullable String loginName, protected static record Afp(boolean enabled, boolean guestAllow, ServerType serverType, @Nullable String loginName,
@Nullable String loginPassword) { @Nullable String loginPassword) {
private enum ServerType {
@SerializedName("powerbook")
POWERBOOK,
@SerializedName("powermac")
POWERMAC,
@SerializedName("macmini")
MACMINI,
@SerializedName("imac")
IMAC,
@SerializedName("macbook")
MACBOOK,
@SerializedName("macbookpro")
MACBOOKPRO,
@SerializedName("macbookair")
MACBOOKAIR,
@SerializedName("macpro")
MACPRO,
@SerializedName("appletv")
APPLETV,
@SerializedName("airport")
AIRPORT,
@SerializedName("xserve")
XSERVE,
UNKNOWN
}
} }
public AfpManager(FreeboxOsSession session, UriBuilder uriBuilder) throws FreeboxException { public AfpManager(FreeboxOsSession session, UriBuilder uriBuilder) throws FreeboxException {