@Value.Lazy public Optional<Long> serialVersion() { Optional<VersionMirror> version = VersionMirror.find(element()); if (version.isPresent()) { return Optional.of(version.get().value()); } for (AnnotationMirror mirror : element().getAnnotationMirrors()) { MetaAnnotated metaAnnotated = MetaAnnotated.from(mirror); Optional<Long> serialVersion = metaAnnotated.serialVersion(); if (serialVersion.isPresent()) { return serialVersion; } } return Optional.<Long>absent(); }
@Value.Derived @Value.Auxiliary public Optional<Long> serialVersion() { Optional<VersionMirror> version = VersionMirror.find(element()); return version.isPresent() ? Optional.of(version.get().value()) : Optional.<Long>absent(); }