package com.perforce.spark.repository;
import java.lang.reflect.Type;
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;
import com.perforce.spark.artifact.ArtifactType;
import com.perforce.spark.site.SiteType;
public class AbstractRepoAdapter implements JsonDeserializer<RepoInterface> {
@Override
public RepoInterface deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context) throws JsonParseException {
JsonObject jsonObject = json.getAsJsonObject();
String typeStr = jsonObject.get("type").getAsString();
ArtifactType type = ArtifactType.parse(typeStr);
String siteStr = jsonObject.get("site").getAsString();
SiteType site = SiteType.parse(siteStr);
Class<?> clazz = RepoFactory.getClass(site, type);
return context.deserialize(json, clazz);
}
}
# |
Change |
User |
Description |
Committed |
|
#1
|
15801 |
Paul Allen |
Experimental copy of PAM. |
|
|
//guest/paul_allen/p4am/src/main/java/com/perforce/spark/repository/AbstractRepoAdapter.java |
#2
|
15094 |
Paul Allen |
Added support for Proxy and Group. |
|
|
#1
|
14181 |
Paul Allen |
Lots of updates and refactoring. |
|
|