public SoyValue computeForJava()

in java/com/google/cloud/deploymentmanager/autogen/SoyFunctions.java [118:142]


    public SoyValue computeForJava(List<SoyValue> args) {
      VmTierSpec tier = (VmTierSpec) ((SoyProtoValue) args.get(0)).getProto();
      List<VmTierSpec> tierList;
      try {
        tierList = extractTierList(args.get(1));
      } catch (IllegalArgumentException e) {
        throw new IllegalArgumentException("Unexpected 2nd arg type for dependentTiers", e);
      }

      Set<Integer> dependentIndices = new HashSet<>();
      for (GceMetadataItem item : tier.getGceMetadataItemsList()) {
        if (item.hasTierVmNames()) {
          dependentIndices.add(findTier(item.getTierVmNames().getTier(), tierList));
        }
      }

      // List dependents in the order they appear in the tier list.
      List<VmTierSpec> dependents = new ArrayList<>(dependentIndices.size());
      for (int i = 0; i < tierList.size(); i++) {
        if (dependentIndices.contains(i)) {
          dependents.add(tierList.get(i));
        }
      }
      return SoyValueConverter.INSTANCE.convert(dependents).resolve();
    }