Package org.eclipse.core.runtime.jobs

Examples of org.eclipse.core.runtime.jobs.MultiRule


      }
    }
    if (rules.size() == 0)
      return null;
    else
      return new MultiRule(rules.toArray(new ISchedulingRule[rules.size()]));
  }
View Full Code Here


  }
 
  protected ISchedulingRule getSchedulingRule() {
    if (this.canChangeResources) {
      IResourceRuleFactory ruleFactory = ResourcesPlugin.getWorkspace().getRuleFactory();
      return new MultiRule(new ISchedulingRule[] {
        // use project modification rule as this is needed to create the .classpath file if it doesn't exist yet, or to update project references
        ruleFactory.modifyRule(this.project.getProject()),
       
        // and external project modification rule in case the external folders are modified
        ruleFactory.modifyRule(JavaModelManager.getExternalManager().getExternalFoldersProject())
View Full Code Here

    if (rules.isEmpty())
      return null;
    if (rules.size() == 1)
      return (ISchedulingRule) rules.iterator().next();
    ISchedulingRule[] ruleArray = (ISchedulingRule[]) rules.toArray(new ISchedulingRule[rules.size()]);
    return new MultiRule(ruleArray);
  }
View Full Code Here

    if (rules.isEmpty())
      return null;
    if (rules.size() == 1)
      return (ISchedulingRule) rules.iterator().next();
    ISchedulingRule[] ruleArray = (ISchedulingRule[]) rules.toArray(new ISchedulingRule[rules.size()]);
    return new MultiRule(ruleArray);
  }
View Full Code Here

      return true;
    //must allow notifications to nest in all resource rules
    if (rule.getClass().equals(WorkManager.NotifyRule.class))
      return true;
    if (rule instanceof MultiRule) {
      MultiRule multi = (MultiRule) rule;
      ISchedulingRule[] children = multi.getChildren();
      for (int i = 0; i < children.length; i++)
        if (!contains(children[i]))
          return false;
      return true;
    }
View Full Code Here

    }

    try {
      // lock to prevent resource changes from being propagated
      lock(remoteChanges);
      applyRemoteChanges(remoteChanges, new MultiRule(rules));
    } finally {
      // unlock now that we've applied the remote changes to our
      // own workspace
      unlock(remoteChanges);
    }
View Full Code Here

  private ISchedulingRule createSchedulingRule(Collection rules) {
    if (rules.size() == 1) {
      return (ISchedulingRule) rules.iterator().next();
    }
    return new MultiRule((ISchedulingRule[]) rules.toArray(new ISchedulingRule[rules.size()]));
  }
View Full Code Here

TOP

Related Classes of org.eclipse.core.runtime.jobs.MultiRule

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.