Interface Content


public interface Content
Content of this object graph. The content API of an object can be accessed via the vmf() method:

 VObject o = ...
 Content r = o.vmf().content()
 
  • Method Details

    • iterator

      VIterator iterator()
      Returns an iterator that traverses the object graph (depth first) using the VIterator.IterationStrategy.UNIQUE_PROPERTY iteration strategy.
      Returns:
      an iterator that traverses the object graph
    • iterator

      Returns an iterator that traverses the object graph (depth first) using the specified iteration strategy.
      Parameters:
      strategy - iteration strategy
      Returns:
      an iterator that traverses the object graph
    • stream

      Stream<VObject> stream()
      Returns a stream that contains all elements of the object graph (depth first) using the VIterator.IterationStrategy.UNIQUE_PROPERTY iteration strategy.
      Returns:
      a stream that contains all elements of the object graph
    • stream

      Returns a stream that contains all elements of the object graph (depth first) using the specified iteration strategy.
      Parameters:
      strategy - iteration strategy
      Returns:
      a stream that contains all elements of the object graph
    • stream

      <T extends VObject> Stream<T> stream(Class<T> type)
      Returns a stream that contains all elements of the object graph (depth first) that implement/extend the specified type. It maps all elements to the specified type, i.e. returns Stream<T>.
      Type Parameters:
      T - element type
      Parameters:
      type - type for filtering and mapping
      Returns:
      a stream of type , i.e. Stream<T>
    • stream

      <T extends VObject> Stream<T> stream(Class<T> type, VIterator.IterationStrategy strategy)
      Returns a stream that contains all elements of the object graph (depth first) that implement/extend the specified type. It maps all elements to the specified type, i.e. returns Stream<T> using the specified iteration strategy.
      Type Parameters:
      T - element type
      Parameters:
      type - type for filtering and mapping
      strategy - iteration strategy
      Returns:
      a stream of type , i.e. Stream<T>
    • referencedBy

      @Deprecated eu.mihosoft.vcollections.VList<VObject> referencedBy()
      Deprecated.
      Returns an unmodifiable list of all objects that reference this object.
      Returns:
      an unmodifiable list of all objects that reference this object
    • references

      @Deprecated eu.mihosoft.vcollections.VList<VObject> references()
      Deprecated.
      Returns an unmodifiable list of all objects that are referenced by this object.
      Returns:
      an unmodifiable list of all objects that are referenced by this object.
    • deepCopy

      <T> T deepCopy()
      Returns a deep copy of this object.
      Returns:
      a deep copy of this object
    • shallowCopy

      <T> T shallowCopy()
      Returns a shallow copy of this object.
      Returns:
      a shallow copy of this object
    • equals

      boolean equals(Object o)
      Indicates whether this VMF object is equal to the specified model object. It uses VMFs equals implementation which compares all properties unless they are ignored explicitly via annotation.

      Example:

      
           MyModel m1 = ...
           MyModel m2 = ...
           boolean equals = m1.vmf().content().equals(m2);
           System.out.println("Models are equal: " + equals);
           // output: Models are equal: true
       
      Overrides:
      equals in class Object
      Parameters:
      o - object to compare
      Returns:
      if equals; false otherwise
    • hashCode

      int hashCode()
      Returns the hash-code for this VMF object. It uses VMFs hashCode implementation which takes all properties into account unless they are ignored explicitly via annotation.
      Overrides:
      hashCode in class Object
      Returns:
      if equals; false otherwise