@Override
    public CRArtifact deserialize(JsonElement json, Type type, JsonDeserializationContext context) throws JsonParseException {
        return determineJsonElementForDistinguishingImplementers(json, context, TYPE, TypeAdapter.ARTIFACT_ORIGIN);
    }
@Test
    public void shouldInstantiateATaskForTypeNant() {
        JsonObject jsonObject = new JsonObject();
        jsonObject.addProperty("type", "external");
        artifactTypeAdapter.deserialize(jsonObject, type, jsonDeserializationContext);

        verify(jsonDeserializationContext).deserialize(jsonObject, CRPluggableArtifact.class);
    }