public List<JType> getSuperTypesFromAllAnyOne(String nodeName, JsonNode node, JPackage jPackage, Schema schema) {
    if (node instanceof ObjectNode
        && !node.has("extendsJavaClass")
        && !node.has("extends")) {
      JsonNode allOf = node.get("allOf");
      JsonNode anyOf = node.get("anyOf");
      JsonNode oneOf = node.get("oneOf");
      JsonNode superRef = allOf;
      String propName = "allOf";

      if (superRef == null) {
        if (oneOf != null && anyOf == null) {
          superRef = oneOf;
          propName = "oneOf";
        }
        else if (oneOf == null && anyOf != null) {
          superRef = anyOf;
          propName = "anyOf";
        }
      }
      else if (anyOf != null || oneOf != null) {
        superRef = null;
      }

      if (superRef != null && superRef.isArray() && (superRef.size() == 1 || (superRef.size() > 1 && propName.equals("allOf")))) {
        List<JType> result = new ArrayList<>();
        for (int i = 0; i < superRef.size(); i++) {
          Schema superTypeSchema = this.ruleFactory.resolveSchemaRef(schema, propName + "/" + i);
          JType superType = this.ruleFactory.getSchemaRule().apply(
            nodeName + "Parent", superRef.get(i), node, jPackage, superTypeSchema);
          if (superType != null) {
            result.add(superType);
          }
        }
        return result;
      }
    }
    return Collections.emptyList();
  }
public List<JType> getSuperTypesFromAllAnyOne(String nodeName, JsonNode node, JPackage jPackage, Schema schema)