예제 #1
0
    @Override
    public ICoreEnvironmentVariableSupplier[] getSuppliers() {
      if (fSuppliers == null) {
        ICoreEnvironmentVariableSupplier[] suppliers = fBaseInfo.getSuppliers();
        int i = 0;
        for (; i < suppliers.length; i++) {
          if (suppliers[i] == EnvironmentVariableManager.fEclipseSupplier) {
            break;
          }
        }

        if (i != suppliers.length) {
          ICoreEnvironmentVariableSupplier tmp[] =
              new ICoreEnvironmentVariableSupplier[suppliers.length - 1];
          if (i != 0) System.arraycopy(suppliers, 0, tmp, 0, i);
          if (i != tmp.length) System.arraycopy(suppliers, i + 1, tmp, i, tmp.length - i);
          suppliers = tmp;
        }

        fSuppliers = suppliers;
      }
      return fSuppliers;
    }
예제 #2
0
 @Override
 public IEnvironmentContextInfo getNext() {
   IEnvironmentContextInfo baseNext = fBaseInfo.getNext();
   if (baseNext != null) return new ContributedEnvContextInfo(baseNext);
   return null;
 }
예제 #3
0
 public ContributedEnvContextInfo(IEnvironmentContextInfo info) {
   super(info.getContext());
   fBaseInfo = info;
 }