/** * {@inheritDoc} */ @Override public boolean equals(Object obj) { boolean result=super.equals(obj); if(result && this.getClass()==obj.getClass()) { MutableMembershipAwareContainerTemplate that = (MutableMembershipAwareContainerTemplate) obj; result= Objects.equals(this.membershipPredicate, that.membershipPredicate) && Objects.equals(this.membershipRelation, that.membershipRelation); } return result; }
/** * {@inheritDoc} */ @Override public int hashCode() { return Objects. hash(super.hashCode(),this.membershipPredicate,this.membershipRelation); }
/** * {@inheritDoc} */ @Override protected ToStringHelper stringHelper() { return super. stringHelper(). add("membershipPredicate",this.membershipPredicate). add("membershipRelation", this.membershipRelation); }
@Override protected void doPostprocess(A annotation, T template, TemplateResolver resolver) { super.doPostprocess(annotation,template, resolver); Class<? extends ResourceHandler> handler = memberHandler(annotation); ResourceTemplate memberTemplate = resolver.resolve(handler); if(memberTemplate==null) { throw new TemplateCreationException(template.id(), "Could not resolve template for member handler '"+handler.getCanonicalName()+"' "); } template.setMemberTemplate(memberTemplate); }
@Override protected T doProcess(A annotation, Class<? extends ContainerHandler> handler) { T template = super.doProcess(annotation, handler); template.setMemberPath(nullable(memberPath(annotation))); return template; }
/** * {@inheritDoc} */ @Override public String toString() { return stringHelper(). add("memberTemplate.id()",this.memberTemplate.id()). add("memberPath",this.memberPath). toString(); }