public JsonCommandWriter() { mapper = new ObjectMapper(); // Pay attention to fields of objects, not getters mapper.setVisibilityChecker(VisibilityChecker.Std.defaultInstance() .withGetterVisibility(JsonAutoDetect.Visibility.NONE) .withIsGetterVisibility(JsonAutoDetect.Visibility.NONE) .withFieldVisibility(JsonAutoDetect.Visibility.ANY)); SerializationConfig config=mapper.getSerializationConfig(); config.without(SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS); // Specialized serializers SimpleModule module = new SimpleModule("insight-json", new Version(1, 7, 2, "insight")); module.addSerializer(Frame.class, new JsonCustomFrameSerializer()); module.addSerializer(FrameId.class, new JsonFrameIdSerializer()); module.addSerializer(TraceId.class, new JsonTraceIdSerializer()); module.addSerializer(ResourceKey.class, new JsonResourceKeySerializer()); module.addSerializer(SparseHistogram.class, new JsonSparseHistogramSerializer()); module.addSerializer(HistogramDefinition.class, new JsonHistogramDefinitionSerializer()); module.addSerializer(ApplicationName.class, new JsonApplicationNameSerializer()); mapper.registerModule(module); }
@Override public Std withVisibility(JsonMethod method, Visibility v) { switch (method) { case GETTER: return withGetterVisibility(v); case SETTER: return withSetterVisibility(v); case CREATOR: return withCreatorVisibility(v); case FIELD: return withFieldVisibility(v); case IS_GETTER: return withIsGetterVisibility(v); case ALL: return with(v); //case NONE: // break; } return this; }
@Override public Std with(JsonAutoDetect ann) { if (ann == null) return this; Std curr = this; JsonMethod[] incl = ann.value(); Visibility v; v = hasMethod(incl, JsonMethod.GETTER) ? ann.getterVisibility() : Visibility.NONE; curr = curr.withGetterVisibility(v); v = hasMethod(incl, JsonMethod.IS_GETTER) ? ann.isGetterVisibility() : Visibility.NONE; curr = curr.withIsGetterVisibility(v); v = hasMethod(incl, JsonMethod.SETTER) ? ann.setterVisibility() : Visibility.NONE; curr = curr.withSetterVisibility(v); v = hasMethod(incl, JsonMethod.CREATOR) ? ann.creatorVisibility() : Visibility.NONE; curr = curr.withCreatorVisibility(v); v = hasMethod(incl, JsonMethod.FIELD) ? ann.fieldVisibility() : Visibility.NONE; curr = curr.withFieldVisibility(v); return curr; }
@Override public Std withVisibility(JsonMethod method, Visibility v) { switch (method) { case GETTER: return withGetterVisibility(v); case SETTER: return withSetterVisibility(v); case CREATOR: return withCreatorVisibility(v); case FIELD: return withFieldVisibility(v); case IS_GETTER: return withIsGetterVisibility(v); case ALL: return with(v); //case NONE: // break; } return this; }
@Override public Std with(JsonAutoDetect ann) { if (ann == null) return this; Std curr = this; JsonMethod[] incl = ann.value(); Visibility v; v = hasMethod(incl, JsonMethod.GETTER) ? ann.getterVisibility() : Visibility.NONE; curr = curr.withGetterVisibility(v); v = hasMethod(incl, JsonMethod.IS_GETTER) ? ann.isGetterVisibility() : Visibility.NONE; curr = curr.withIsGetterVisibility(v); v = hasMethod(incl, JsonMethod.SETTER) ? ann.setterVisibility() : Visibility.NONE; curr = curr.withSetterVisibility(v); v = hasMethod(incl, JsonMethod.CREATOR) ? ann.creatorVisibility() : Visibility.NONE; curr = curr.withCreatorVisibility(v); v = hasMethod(incl, JsonMethod.FIELD) ? ann.fieldVisibility() : Visibility.NONE; curr = curr.withFieldVisibility(v); return curr; }
public Std with(JsonAutoDetect ann) { if (ann == null) return this; Std curr = this; JsonMethod[] incl = ann.value(); Visibility v; v = hasMethod(incl, JsonMethod.GETTER) ? ann.getterVisibility() : Visibility.NONE; curr = curr.withGetterVisibility(v); v = hasMethod(incl, JsonMethod.IS_GETTER) ? ann.isGetterVisibility() : Visibility.NONE; curr = curr.withIsGetterVisibility(v); v = hasMethod(incl, JsonMethod.SETTER) ? ann.setterVisibility() : Visibility.NONE; curr = curr.withSetterVisibility(v); v = hasMethod(incl, JsonMethod.CREATOR) ? ann.creatorVisibility() : Visibility.NONE; curr = curr.withCreatorVisibility(v); v = hasMethod(incl, JsonMethod.FIELD) ? ann.fieldVisibility() : Visibility.NONE; curr = curr.withFieldVisibility(v); return curr; }
@Override public Std withVisibility(JsonMethod method, Visibility v) { switch (method) { case GETTER: return withGetterVisibility(v); case SETTER: return withSetterVisibility(v); case CREATOR: return withCreatorVisibility(v); case FIELD: return withFieldVisibility(v); case IS_GETTER: return withIsGetterVisibility(v); case ALL: return with(v); //case NONE: // break; } return this; }
@Override public Std with(JsonAutoDetect ann) { if (ann == null) return this; Std curr = this; JsonMethod[] incl = ann.value(); Visibility v; v = hasMethod(incl, JsonMethod.GETTER) ? ann.getterVisibility() : Visibility.NONE; curr = curr.withGetterVisibility(v); v = hasMethod(incl, JsonMethod.IS_GETTER) ? ann.isGetterVisibility() : Visibility.NONE; curr = curr.withIsGetterVisibility(v); v = hasMethod(incl, JsonMethod.SETTER) ? ann.setterVisibility() : Visibility.NONE; curr = curr.withSetterVisibility(v); v = hasMethod(incl, JsonMethod.CREATOR) ? ann.creatorVisibility() : Visibility.NONE; curr = curr.withCreatorVisibility(v); v = hasMethod(incl, JsonMethod.FIELD) ? ann.fieldVisibility() : Visibility.NONE; curr = curr.withFieldVisibility(v); return curr; }
@Override public Std withVisibility(JsonMethod method, Visibility v) { switch (method) { case GETTER: return withGetterVisibility(v); case SETTER: return withSetterVisibility(v); case CREATOR: return withCreatorVisibility(v); case FIELD: return withFieldVisibility(v); case IS_GETTER: return withIsGetterVisibility(v); case ALL: return with(v); //case NONE: // break; } return this; }
@Override public Std with(JsonAutoDetect ann) { if (ann == null) return this; Std curr = this; JsonMethod[] incl = ann.value(); Visibility v; v = hasMethod(incl, JsonMethod.GETTER) ? ann.getterVisibility() : Visibility.NONE; curr = curr.withGetterVisibility(v); v = hasMethod(incl, JsonMethod.IS_GETTER) ? ann.isGetterVisibility() : Visibility.NONE; curr = curr.withIsGetterVisibility(v); v = hasMethod(incl, JsonMethod.SETTER) ? ann.setterVisibility() : Visibility.NONE; curr = curr.withSetterVisibility(v); v = hasMethod(incl, JsonMethod.CREATOR) ? ann.creatorVisibility() : Visibility.NONE; curr = curr.withCreatorVisibility(v); v = hasMethod(incl, JsonMethod.FIELD) ? ann.fieldVisibility() : Visibility.NONE; curr = curr.withFieldVisibility(v); return curr; }