Package org.jdom.xpath

Examples of org.jdom.xpath.XPath



      final Document   doc= builder.build(filename);           
      java.util.List listOfElement = null;
      if(txtIncludeNode.getText() != null && txtIncludeNode.getText().length() > 0) {
        XPath x = XPath.newInstance(txtIncludeNode.getText());
        //Element e = (Element)x.selectSingleNode(doc);
        listOfElement = x.selectNodes(doc);                               
       
       
      }else {
        listOfElement = new java.util.ArrayList();       
        params = doc.getRootElement();
View Full Code Here


      String[] retVal = new String[]{""};
      ArrayList<String> stateList = new ArrayList<String>();
     
      try {
        String jobChainname = getCommandAttribute("job_chain");       
        XPath x3 = XPath.newInstance("//job_chain[@name='"+ jobChainname + "']");
        Element jobChain = (Element)x3.selectSingleNode(_dom.getDoc());
       
        if(jobChain == null) {
          jobChainname = getCommandAttribute("job_chain_node.job_chain");
          x3 = XPath.newInstance("//job_chain_node.job_chain[@name='"+ jobChainname + "']");
            jobChain = (Element)x3.selectSingleNode(_dom.getDoc());
             
        }
        if(jobChain == null)
          return retVal;
       
View Full Code Here

  private void getJobDocumentation() {
    if(jobname != null && jobname.length() > 0) {
      try{

        XPath x = XPath.newInstance("//job[@name='"+ jobname + "']/description/include");        
        List listOfElement = x.selectNodes(schedulerDom.getDoc());
        if(!listOfElement.isEmpty()) {
          Element include = (Element)listOfElement.get(0);
          if(include != null) {
            jobDocumentation = Utils.getAttributeValue("file", include);           
          }
View Full Code Here

      String[] retVal = new String[]{""};
      ArrayList stateList = new ArrayList();
     
      try {
        String jobChainname = Utils.getAttributeValue("job_chain", getCommand());       
        XPath x3 = XPath.newInstance("//job_chain[@name='"+ jobChainname + "']");
        Element jobChain = (Element)x3.selectSingleNode(_dom.getDoc());
       
        if(jobChain == null) {
          jobChainname = Utils.getAttributeValue("job_chain_node.job_chain", getCommand());
          x3 = XPath.newInstance("//job_chain_node.job_chain[@name='"+ jobChainname + "']");
            jobChain = (Element)x3.selectSingleNode(_dom.getDoc());
           
        }
        if(jobChain == null)
          return retVal;
       
View Full Code Here

          null,
          _dom.isLifeElement() || _dom.isDirectory(),
          _dom.getFilename());

      //Document d = detailListener.getDoc();
      XPath x = XPath.newInstance("//process[@state='"+ oldstate + "']");        
      List listOfElement = x.selectNodes(detailListener.getDoc());

      XPath xnew = XPath.newInstance("//process[@state='"+ newstate + "']");        
      List listOfElementnew = xnew.selectNodes(detailListener.getDoc());
      if(listOfElementnew.isEmpty()) {
        if(!listOfElement.isEmpty()) {
          //System.out.println("hier �ndern");
          Element process = (Element)listOfElement.get(0);
          process.setAttribute("state", newstate);
View Full Code Here

          null,
          _dom.isLifeElement() || _dom.isDirectory(),
          _dom.getFilename());


      XPath x = XPath.newInstance("settings/job_chain[@name='"+ jobchainName +"']");        
      List listOfElement = x.selectNodes(detailListener.getDoc());
      if(!listOfElement.isEmpty()) {
          Element jobchain = (Element)listOfElement.get(0);
          jobchain.setAttribute("name", jobChainNewName);
          detailListener.save();
          //MainWindow.getContainer().getCurrentTab().setData("ftp_details_parameter_file", detailListener.getConfigurationFilename());
View Full Code Here

          null,
          dom.isLifeElement() || dom.isDirectory(),
          dom.getFilename());


      XPath x = XPath.newInstance("//process[@state='"+ state + "']");        
      List listOfElement = x.selectNodes(detailListener.getDoc());

      if(!listOfElement.isEmpty()) {

        Element process = (Element)listOfElement.get(0);
        process.detach();
View Full Code Here

      if(state != null) { 
        //FAll 2: Es gibt eine Details Parameter. D.h. nur der eine job in der Jobkette mit der state bekommt einen Monitoring 
        sel = "//job_chain[@name='"+ jobChainname + "']/job_chain_node[@state='"+state+"']";

      }     
      XPath x = XPath.newInstance(sel);        
      List listOfElement = x.selectNodes(dom.getDoc());

      if(!listOfElement.isEmpty()) {
        for(int i = 0; i < listOfElement.size(); i++) {

          Element jobChainNode = (Element)listOfElement.get(i);
          //jobname in der Jobkette ermitteln
          String jobname = Utils.getAttributeValue("job", jobChainNode);
          String hotFolderfilename = "";
                    File hotFolderfile = null;
                   
          if ( new File(Options.getSchedulerHotFolder(), jobname + ".job.xml").exists()) {
             hotFolderfile = new File(Options.getSchedulerHotFolder(), jobname + ".job.xml");
          }else {
             hotFolderfile = new File(new File(dom.getFilename()).getParent(), new File(jobname).getName() + ".job.xml");
          }
         
          hotFolderfilename = hotFolderfile.getCanonicalPath();
          //Unterscheiden, ob Hot Folder Element. Wenn ja, dann Hot Folder Datei �ffnen. Wenn der Hot Folder Element bereits offen ist, dann ver�ndern
          List listOfElement2  = null;

          if(dom.isLifeElement() || new File(jobname).getParent() != null ) {

            if(!hotFolderfile.exists()) {
              openFilePerFTP(hotFolderfilename);
              if(!new File(hotFolderfilename).exists()) {
                sos.scheduler.editor.app.MainWindow.message("Could not add Monitoring Job, cause Hot Folder File " + hotFolderfilename + " not exist.", SWT.ICON_WARNING);
                continue;
              }
            }

            XPath x2 = null;
            //Es ist ein Hot Folder oder der Job ist woanders abgelegt
            sos.scheduler.editor.app.TabbedContainer tab = ((sos.scheduler.editor.app.TabbedContainer)MainWindow.getContainer());
            String pathFromHotFolderDirectory = new File(hotFolderfilename).getParent();
            if(tab.getFilelist() != null &&
                (tab.getFilelist().contains(hotFolderfilename) || 
                    tab.getFilelist().contains(pathFromHotFolderDirectory)    )) {
              //Hot Folder oder Hot Folder Element ist in einem Tabraiter offen oder             
              SchedulerForm form = null;

              if(tab.getFilelist().contains(hotFolderfilename)) {
                form = (SchedulerForm)tab.getEditor(hotFolderfilename);//hot folder element
                x2 = XPath.newInstance("//job/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
              } else {
                form = (SchedulerForm)tab.getEditor(pathFromHotFolderDirectory);//hot folder
                x2 = XPath.newInstance("//job[@name='"+new File(jobname).getName()+"']/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
              }

              SchedulerDom currdom = (SchedulerDom)form.getDom();

              listOfElement2 = x2.selectNodes(currdom.getDoc());
              if(listOfElement2.isEmpty()) {             
                XPath x3 = null;
                XPath x4 = null;
                if(tab.getFilelist().contains(hotFolderfilename)) {
                  x3 = XPath.newInstance("//job/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
                  x4 = XPath.newInstance("//job");;
                } else {
                  x3 = XPath.newInstance("//job[@name='"+new File(jobname).getName()+"']/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
                  x4 = XPath.newInstance("//job[@name='"+new File(jobname).getName()+"']");
                }
                List listOfElement3  = x3.selectNodes(currdom.getDoc());
                if(listOfElement3.isEmpty()) {                 
                  List listOfElement4  = x4.selectNodes(currdom.getDoc());
                  Element job = (Element)listOfElement4.get(0);
                  addMonitoring(job, currdom);

                  if(currdom.isLifeElement())
                    form.getTree().setSelection(new org.eclipse.swt.widgets.TreeItem[] { form.getTree().getItem(0) });
                  else if(currdom.isDirectory())
                    form.selectTreeItem(SchedulerListener.JOBS , SchedulerListener.JOB + new File(jobname).getName());

                  currdom.setChanged(true);
                  if(form != null) {

                    form.updateJob(job);
                    form.updateJob();
                    form.update();
                  }
                  currdom.setChanged(true);
                  form.dataChanged();
                  dom.setChanged(true);

                  if(tab.getFilelist().contains(hotFolderfilename)) {
                    form.dataChanged(tab.getFolderTab(hotFolderfilename));
                  } else {
                    form.dataChanged(tab.getFolderTab(pathFromHotFolderDirectory));
                  }

                }
              }

            } else {
//              Hot Folder Element ist nicht offen in einem Tabraiter
              SchedulerDom currDom = new SchedulerDom(SchedulerDom.LIFE_JOB);
              currDom.read(hotFolderfilename);

              if(x2==null)
                x2 = XPath.newInstance("//job/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");

              listOfElement2 = x2.selectNodes(currDom.getDoc());
              if(listOfElement2.isEmpty()) {             
                XPath x3 = XPath.newInstance("//job");
                List listOfElement3  = x3.selectNodes(currDom.getDoc());
                if(!listOfElement3.isEmpty()) {
                  Element job = (Element)listOfElement3.get(0);
                  addMonitoring(job, currDom);
                  currDom.writeElement(currDom.getFilename(), currDom.getDoc());
                  MainWindow.getContainer().getCurrentTab().setData("ftp_details_parameter_file", hotFolderfilename);
                  MainWindow.saveFTP(new java.util.HashMap());
                }

              }
            }
          } else {
            XPath x2 = XPath.newInstance("//job[@name='"+ jobname + "']/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
            listOfElement2 = x2.selectNodes(dom.getDoc());
            if(listOfElement2.isEmpty()) {             
              XPath x3 = XPath.newInstance("//jobs/job[@name='"+ jobname + "']");
              List listOfElement3  = x3.selectNodes(dom.getDoc());
              if(!listOfElement3.isEmpty()) {
                Element job = (Element)listOfElement3.get(0);
                addMonitoring(job, dom);

                if(update != null) {
View Full Code Here

          null,
          dom.isLifeElement() || dom.isDirectory(),
          dom.getFilename());

      //Document d = detailListener.getDoc();
      XPath x = null;
      if(global)
        x = XPath.newInstance("//order/params/param");
      else
        x = XPath.newInstance("//process[@state='"+ state + "']/params/param");
     
      List listOfElement = x.selectNodes(detailListener.getDoc());

      return !listOfElement.isEmpty();


View Full Code Here

          null,
          dom.isLifeElement() || dom.isDirectory(),
          dom.getFilename());

      //Document d = detailListener.getDoc();
      XPath x = XPath.newInstance("//order/params/param");        
      List listOfElement = x.selectNodes(detailListener.getDoc());

      if(!listOfElement.isEmpty()){


        String hotFolderfilename = new File(Options.getSchedulerHotFolder(), jobname + ".job.xml").getCanonicalPath();
        //Unterscheiden, ob Hot Folder Element. Wenn ja, dann Hot Folder Datei �ffnen. Wenn der Hot Folder Element bereits offen ist, dann ver�ndern
        List listOfElement2  = null;

        if(dom.isLifeElement() || new File(jobname).getParent() != null ) {

          if(!new File(hotFolderfilename).exists()) {
            sos.scheduler.editor.app.MainWindow.message("Could not add Monitoring Job, cause Hot Folder File " + hotFolderfilename + " not exist.", SWT.ICON_WARNING);
            return;
          }

          XPath x2 = XPath.newInstance("//job/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
          //Es ist ein Hot Folder oder der Job ist woanders abgelegt
          sos.scheduler.editor.app.TabbedContainer tab = ((sos.scheduler.editor.app.TabbedContainer)MainWindow.getContainer());
          if(tab.getFilelist() != null && tab.getFilelist().contains(hotFolderfilename)) {
            //Hot Folder Element ist in einem Tabraiter offen 
            //org.eclipse.swt.custom.CTabItem f = tab.getFolderTab(hotFolderfilename);
            SchedulerForm form =(SchedulerForm)tab.getEditor(hotFolderfilename);
            SchedulerDom currdom = (SchedulerDom)form.getDom();

            listOfElement2 = x2.selectNodes(currdom.getDoc());
            if(listOfElement2.isEmpty()) {             
              XPath x3 = XPath.newInstance("//job/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
              List listOfElement3  = x3.selectNodes(currdom.getDoc());
              if(listOfElement3.isEmpty()) {
                x3 = XPath.newInstance("//job");
                listOfElement3  = x3.selectNodes(currdom.getDoc());
                Element job = (Element)listOfElement3.get(0);
                addMonitoring(job, currdom);

                form.getTree().setSelection(new org.eclipse.swt.widgets.TreeItem[] { form.getTree().getItem(0) });

                currdom.setChanged(true);
                if(form != null) {

                  form.updateJob();
                  form.update();
                }
                currdom.setChanged(true);
                form.dataChanged();
                dom.setChanged(true);


                form.dataChanged(tab.getFolderTab(hotFolderfilename));

              }
            }

          } else {
//            Hot Folder Element ist nicht offen in einem Tabraiter
            SchedulerDom currDom = new SchedulerDom(SchedulerDom.LIFE_JOB);
            currDom.read(hotFolderfilename);
            listOfElement2 = x2.selectNodes(currDom.getDoc());
            if(listOfElement2.isEmpty()) {             
              //XPath x3 = XPath.newInstance("//jobs/job[@name='"+ jobname + "']");
              //XPath x3 = XPath.newInstance("//job[@name='"+ jobname + "']");
              XPath x3 = XPath.newInstance("//job");
              List listOfElement3  = x3.selectNodes(currDom.getDoc());
              if(!listOfElement3.isEmpty()) {
                Element job = (Element)listOfElement3.get(0);
                addMonitoring(job, currDom);
                currDom.writeElement(currDom.getFilename(), currDom.getDoc());
              }

            }
          }
        } else {
          XPath x2 = XPath.newInstance("//job[@name='"+ jobname + "']/monitor/script[@java_class='sos.scheduler.managed.configuration.ConfigurationOrderMonitor']");
          listOfElement2 = x2.selectNodes(dom.getDoc());
          if(listOfElement2.isEmpty()) {             
            XPath x3 = XPath.newInstance("//jobs/job[@name='"+ jobname + "']");
            List listOfElement3  = x3.selectNodes(dom.getDoc());
            if(!listOfElement3.isEmpty()) {
              Element job = (Element)listOfElement3.get(0);
              addMonitoring(job, dom);

              if(update != null)
View Full Code Here

TOP

Related Classes of org.jdom.xpath.XPath

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.