public Collection getOptions()

in src/net/sourceforge/transparent/ClearCaseOptionsTopHitProvider.java [31:76]


  public Collection<OptionDescription> getOptions(@Nullable final Project project) {
    if (project != null) {
      for (VcsDescriptor descriptor : ProjectLevelVcsManager.getInstance(project).getAllVcss()) {
        if ("ClearCase".equals(descriptor.getDisplayName())) {
          ArrayList<BooleanOptionDescription> options = new ArrayList<>();
          CCaseViewsManager manager = CCaseViewsManager.getInstance(project);
          final CCaseConfig config = CCaseConfig.getInstance(project);
          if (manager.isAnySnapshotView()) {
            options.add(
              new PublicMethodBasedOptionDescription("ClearCase: Work Offline (on edit: hijack instead of checkout)", ID, "isOffline", "setOfflineMode") {
                @Override
                public Object getInstance() {
                  return config;
                }
              });
          }
          options.add(option(config, "ClearCase: Reserved Checkouts", "checkoutReserved"));
          options.add(option(config, "ClearCase: Check out automatically hijacked file on check in", "checkInUseHijack"));
          options.add(new PublicMethodBasedOptionDescription("ClearCase: Use UCM model", ID, "isUseUcmModel", "setUcmMode") {
            @Override
            public Object getInstance() {
              return CCaseSharedConfig.getInstance(project);
            }

            @Override
            public void setOptionState(boolean enabled) {
              super.setOptionState(enabled);
              if (enabled) {
                CCaseViewsManager.getInstance(project).extractViewActivities();
              }
            }

            @Override
            protected void fireUpdated() {
              TransparentVcs.getInstance(project).checkRootsForUCMMismatch();
            }
          });
          options.add(option(config, "ClearCase: Synchronize activities on refresh", "synchActivitiesOnRefresh"));
          options.add(option(config, "ClearCase: Use \"-identical\" switch during check in", "useIdenticalSwitch"));
          options.add(option(config, "ClearCase: Restrict history records by " + config.getHistoryRevisionsMargin(), "isHistoryResticted"));
          return Collections.unmodifiableCollection(options);
        }
      }
    }
    return Collections.emptyList();
  }