Пример #1
0
  public Loader getLoader(JAXBContextImpl context, boolean typeSubstitutionCapable) {
    if (loader == null) {
      // these variables have to be set before they are initialized,
      // because the initialization may build other loaders and they may refer to this.
      StructureLoader sl = new StructureLoader(this);
      loader = sl;
      if (ci.hasSubClasses()) loaderWithTypeSubst = new XsiTypeLoader(this);
      else
        // optimization. we know there can be no @xsi:type
        loaderWithTypeSubst = loader;

      sl.init(context, this, ci.getAttributeWildcard());
    }
    if (typeSubstitutionCapable) return loaderWithTypeSubst;
    else return loader;
  }