@Override public List<FieldDeclaration> getFields(EmitContext context, ModelDeclaration model) throws IOException { if (isTarget(model) == false) { return Collections.emptyList(); } CacheSupportTrait trait = model.getTrait(CacheSupportTrait.class); assert trait != null; List<FieldDeclaration> results = Lists.create(); if (trait.getDeleteFlagValue() != null) { results.add(createDeleteFlagValueField(context, model, trait.getDeleteFlagValue())); } return results; }