java.lang.Object
org.ehrbase.openehr.sdk.serialisation.walker.Walker<T>
Direct Known Subclasses:
FromCompositionWalker, ToCompositionWalker

public abstract class Walker<T> extends Object
  • Field Details

    • ARCHIE_RM_INFO_LOOKUP

      public static final com.nedap.archie.rminfo.ArchieRMInfoLookup ARCHIE_RM_INFO_LOOKUP
  • Constructor Details

    • Walker

      public Walker()
  • Method Details

    • walk

      public void walk(com.nedap.archie.rm.composition.Composition composition, T object, WebTemplate webTemplate, DefaultValues defaultValues, String templateId)
    • walk

      public void walk(com.nedap.archie.rm.RMObject composition, T object, WebTemplateNode root, String templateId)
    • walk

      public void walk(com.nedap.archie.rm.RMObject composition, T object, WebTemplateNode root, DefaultValues defaultValues, String templateId)
    • handleInheritance

      protected void handleInheritance(WebTemplateNode currentNode)
      Add inheritance classes as explicit choices
      Parameters:
      currentNode -
    • extractPair

      protected abstract org.apache.commons.lang3.tuple.ImmutablePair<T,com.nedap.archie.rm.RMObject> extractPair(Context<T> context, WebTemplateNode currentNode, Map<String,List<WebTemplateNode>> choices, WebTemplateNode childNode, Integer i)
    • extractRMChild

      protected abstract Object extractRMChild(com.nedap.archie.rm.RMObject currentRM, WebTemplateNode currentNode, WebTemplateNode childNode, boolean isChoice, Integer count)
    • visitChildren

      protected boolean visitChildren(WebTemplateNode node)
    • extract

      protected abstract T extract(Context<T> context, WebTemplateNode child, boolean isChoice, Integer i)
    • preHandle

      protected abstract void preHandle(Context<T> context)
    • postHandle

      protected abstract void postHandle(Context<T> context)
    • insertDefaults

      protected void insertDefaults(Context<T> context)
    • wrap

      protected Object wrap(Object child)
    • calculateSize

      protected abstract int calculateSize(Context<T> context, WebTemplateNode childNode)
    • deepClone

      protected com.nedap.archie.rm.RMObject deepClone(com.nedap.archie.rm.RMObject rmObject)