Uploaded image for project: 'Causeway'
  1. Causeway
  2. CAUSEWAY-1732

Document "hidden" as a supported method for services.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 1.15.0
    • None
    • Docs & Website
    • None

    Description

      eg, in kitchensink, we have:

      public abstract class RepositoryAbstract<T extends Entity> {
      
          private final Class<T> cls;
      
          public RepositoryAbstract(Class<T> cls, Visibility visibility) {
              this.cls = cls;
              this.visibility = visibility;
          }
      
          //region > visibility
      
          private final Visibility visibility;
      
          protected enum Visibility {
              VISIBLE,
              NOT_VISIBLE
          }
      
          public boolean hidden() {
              return this.visibility == Visibility.NOT_VISIBLE;
          }
          //endregion
       ....
      

      and then:

      @DomainService(
              repositoryFor = ChildObject.class
      )
      public class ChildObjects extends RepositoryAbstract<ChildObject> {
      
          public ChildObjects() {
              super(ChildObject.class, Visibility.NOT_VISIBLE);
          }
      
          public ChildObject create(
                  final String name,
                  final ParentObject parentObject) {
              return repositoryService.persist(ChildObject.create(name, parentObject));
          }
      
          public List<ChildObject> listAll() {
              return repositoryService.allInstances(ChildObject.class);
          }
      
      }
      

      if use super(...VISIBLE) then this service appears in the menu. so, "hidden()" is a way of globally hiding an object (or a domain service, at least).

      Attachments

        Activity

          People

            Unassigned Unassigned
            danhaywood Daniel Keir Haywood
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: