
org.jclouds.gogrid.functions.internal.CustomDeserializers Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gogrid Show documentation
Show all versions of gogrid Show documentation
ComputeService implementation of GoGrid datacenters
The newest version!
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jclouds.gogrid.functions.internal;
import java.lang.reflect.Type;
import org.jclouds.gogrid.domain.IpState;
import org.jclouds.gogrid.domain.JobState;
import org.jclouds.gogrid.domain.LoadBalancerOs;
import org.jclouds.gogrid.domain.LoadBalancerPersistenceType;
import org.jclouds.gogrid.domain.LoadBalancerState;
import org.jclouds.gogrid.domain.LoadBalancerType;
import org.jclouds.gogrid.domain.ObjectType;
import org.jclouds.gogrid.domain.ServerImageState;
import org.jclouds.gogrid.domain.ServerImageType;
import org.jclouds.gogrid.domain.ServerState;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
public class CustomDeserializers {
public static class ServerStateAdapter implements JsonDeserializer {
@Override
public ServerState deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return ServerState.fromValue(name);
}
}
public static class ObjectTypeAdapter implements JsonDeserializer {
@Override
public ObjectType deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return ObjectType.fromValue(name);
}
}
public static class LoadBalancerOsAdapter implements JsonDeserializer {
@Override
public LoadBalancerOs deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return LoadBalancerOs.fromValue(name);
}
}
public static class LoadBalancerStateAdapter implements JsonDeserializer {
@Override
public LoadBalancerState deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return LoadBalancerState.fromValue(name);
}
}
public static class LoadBalancerPersistenceTypeAdapter implements JsonDeserializer {
@Override
public LoadBalancerPersistenceType deserialize(JsonElement jsonElement, Type type,
JsonDeserializationContext context) throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return LoadBalancerPersistenceType.fromValue(name);
}
}
public static class LoadBalancerTypeAdapter implements JsonDeserializer {
@Override
public LoadBalancerType deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return LoadBalancerType.fromValue(name);
}
}
public static class IpStateAdapter implements JsonDeserializer {
@Override
public IpState deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return IpState.fromValue(name);
}
}
public static class JobStateAdapter implements JsonDeserializer {
@Override
public JobState deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return JobState.fromValue(name);
}
}
public static class ServerImageStateAdapter implements JsonDeserializer {
@Override
public ServerImageState deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return ServerImageState.fromValue(name);
}
}
public static class ServerImageTypeAdapter implements JsonDeserializer {
@Override
public ServerImageType deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext context)
throws JsonParseException {
String name = ((JsonObject) jsonElement).get("name").getAsString();
return ServerImageType.fromValue(name);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy