コード例 #1
0
  public static synchronized void switchAutoProvThreadIfNecessary() throws ServiceException {
    Server localServer = Provisioning.getInstance().getLocalServer();

    long interval = localServer.getTimeInterval(Provisioning.A_zimbraAutoProvPollingInterval, 0);

    Set<String> scheduledDomains =
        localServer.getMultiAttrSet(Provisioning.A_zimbraAutoProvScheduledDomains);

    boolean needRunning = interval > 0 && !scheduledDomains.isEmpty();

    if (needRunning && !AutoProvisionThread.isRunning()) {
      AutoProvisionThread.startup();
    } else if (!needRunning && AutoProvisionThread.isRunning()) {
      AutoProvisionThread.shutdown();
    }
  }