⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 101e7250e9b7001a1c27ace50896501e

📁 这是一个用java和xml编写的流媒体服务器管理软件
💻
📖 第 1 页 / 共 3 页
字号:
            || (nodeName.equals("clientPort")) 
            || (nodeName.equals("multiGroup"))   
            || (nodeName.equals("hostname"))
            || (nodeName.equals("Camera1"))
            || (nodeName.equals("Camera2"))
            || (nodeName.equals("Camera3"))
            || (nodeName.equals("Camera4"))
            || (nodeName.equals("Camera5"))
            || (nodeName.equals("Camera6"))
            || (nodeName.equals("Camera7"))
            || (nodeName.equals("Camera8"))
            || (nodeName.equals("temperature"))
            || (nodeName.equals("smokeAlarm"))
            || (nodeName.equals("water"))
            || (nodeName.equals("key")))
        {

          // Uncomment for debug:
          // System.out.println("skipping " + nodeName);
          return NodeFilter.FILTER_SKIP;
        }

        return NodeFilter.FILTER_ACCEPT;
      }

    };

    if (elementFilter.acceptNode(what) != NodeFilter.FILTER_ACCEPT)
    {
      return null;
    }

    String elementName = what.getNodeName();
    String parentName = "";
    String grandparentName = "";
    Node parentNode = what.getParentNode();
    Node grandparentNode = null;

    if (parentNode != null)
    {
      parentName = parentNode.getNodeName();
      grandparentNode = parentNode.getParentNode();

      if (grandparentNode != null)
      {
        grandparentName = grandparentNode.getNodeName();
      }
    }

    int type = UNKNOWN;

    if (elementName.equals("uaclient"))
    {
  	  type = UA_CLIENT;
    }    
    else if (elementName.equals("dvrClient"))
    {
  	  type = DVR_CLIENT;
    }
    else if (elementName.equals("envClient"))
    {
  	  type = ENV_CLIENT;
    }
    else if (elementName.equals("serverType"))
    {
      if (parentName.equals("featureServers"))
      {
        type = FEATURE_TYPE;
      }
      else if (parentName.equals("marshalServers"))
      {
        type = MARSHAL_TYPE;
      }
    }
    else if (elementName.equals("serverGroup"))
    {
      if (grandparentName.equals("featureServers"))
      {
        type = FEATURE_GROUP;
      }
      else if (parentName.equals("dvrClient"))
      {
    	  type = DVR_GROUP;
      }
      else if (parentName.equals("envClient"))
      {
    	  type = ENV_GROUP;
      }
    }
    else if (elementName.equals("dvr"))
    {
  	  type = DVR;
    }
    else if (elementName.equals("env"))
    {
  	  type = ENV;
    }          
    
    
    StringBuffer name = new StringBuffer();

    name.append(what.getNodeName());

    NamedNodeMap attrs = what.getAttributes();

    if (attrs != null)
    {
      Node qualifier = attrs.getNamedItem("value");

      if (qualifier != null)
      {
        name.append(" " + ((Attr) qualifier).getValue());
      }
      else
      {
        qualifier = attrs.getNamedItem("host");

        if (qualifier != null)
        {
          name.append(" " + ((Attr) qualifier).getValue());
        }

        qualifier = attrs.getNamedItem("port");

        if (qualifier != null)
        {
          name.append(":" + ((Attr) qualifier).getValue());
        }

        qualifier = attrs.getNamedItem("callingPort");

        if (qualifier != null)
        {
          name.append(":" + ((Attr) qualifier).getValue());
        }

        qualifier = attrs.getNamedItem("calledPort");

        if (qualifier != null)
        {
          name.append(":" + ((Attr) qualifier).getValue());
        }
      }
    }



    MutableTreeNode element = insertNode(name.toString(), where, type);

    // if this is a Servers type of node, expand it.
    if (type == UA_CLIENT)
    {
       treeNodesToExpand.addElement(element);
    }
    else if (type == DVR_CLIENT)
    {
    	treeNodesToExpand.addElement(element);
    }
    else if (type == ENV_CLIENT)
    {
    	treeNodesToExpand.addElement(element);
    }

    nodeMap.put(element, what);

    int attrCount = (attrs != null) ? attrs.getLength() : 0;

    for (int i = 0; i < attrCount; i++)
    {
      Attr attr = (Attr) (attrs.item(i));

      if ((attr.getName().equals("host")) 
          || (attr.getName().equals("port")) 
          || (attr.getName().equals("callingPort")) 
          || (attr.getName().equals("calledPort")) 
          || (attr.getName().equals("value")) 
          || (attr.getName().equals("fileDir")) 
          || (attr.getName().equals("fileName")) 
          || (attr.getName().equals("fileType")))
      {
        continue;
      }

      StringBuffer line = new StringBuffer();

      line.append(attr.getName());
      line.append(" = ");
      line.append(attr.getValue());

      MutableTreeNode attrNode = insertNode(line.toString(), element);

      nodeMap.put(attrNode, attr.getName());
    }

    // if this is a multiGroup, we do not include the children
    if (elementName.equals("multiGroup"))
    {
      return element;
    }

    // gather up attributes and children nodes
    NodeList children = what.getChildNodes();
    int len = (children != null) ? children.getLength() : 0;

    for (int i = 0; i < len; i++)
    {
      Node node = children.item(i);

      switch (node.getNodeType())
      {

        case Node.CDATA_SECTION_NODE:
        {
          insertCDataSectionNode(node, element);      // Add a Section Node

          break;
        }

        case Node.TEXT_NODE:
        {
          insertTextNode(node, element);

          break;
        }

        case Node.ELEMENT_NODE:
        {
          insertElementNode(node, element);

          break;
        }
      }
    }

    return element;

  }   // insertElementNode(Node,MutableTreeNode):MutableTreeNode
  
  /**
   * Inserts a text node.
   */
  private MutableTreeNode insertTextNode(Node what, MutableTreeNode where)
  {
    String value = what.getNodeValue().trim();

    if (value.length() > 0)
    {
      MutableTreeNode treeNode = insertNode(value, where);

      nodeMap.put(treeNode, what);

      return treeNode;
    }

    return null;
  }
  
  /**
   * Inserts a CData Section Node.
   */
  private MutableTreeNode insertCDataSectionNode(Node what, 
          MutableTreeNode where)
  {
    StringBuffer CSectionBfr = new StringBuffer();

    // --- optional --- CSectionBfr.append( "<![CDATA[" );
    CSectionBfr.append(what.getNodeValue());

    // --- optional --- CSectionBfr.append( "]]>" );
    if (CSectionBfr.length() > 0)
    {
      MutableTreeNode treeNode = insertNode(CSectionBfr.toString(), where);

      nodeMap.put(treeNode, what);

      return treeNode;
    }

    return null;
  }
  
  
  
    //建立EMS_Client树
 /* 
	public JTree setTreeListener()
	{/*
		treeModel = new DefaultTreeModel(new DefaultMutableTreeNode("EMS Server"));			
		tree = new JTree(treeModel);		
		tree.setShowsRootHandles(true);			
		//new DefaultMutableTreeNode(new DefaultMutableTreeNode("EMS Server"));
		try
	      {
	        this.treeDOM = DvrFileToDOM.readFiles();
	      }
	      catch (Exception e)
	      {
	        e.printStackTrace();
	      }
	   */   
	      //	    clear tree and re-populate
	      //((DefaultMutableTreeNode) getRoot()).removeAllChildren();
	      //nodeMap.clear();
	      //return buildTree();
		//return tree;
	      /*
	      fireTreeStructureChanged(this, new Object[]
	      {
	        getRoot()
	      }, new int[0], new Object[0]);
	      */
		/*
		
		DefaultMutableTreeNode root = new DefaultMutableTreeNode("EMS Server");
		DefaultMutableTreeNode subroot = new DefaultMutableTreeNode("视频机");
		DefaultMutableTreeNode subroot1 = new DefaultMutableTreeNode("环境机");
		
		DefaultMutableTreeNode dvrleaf1 = new DefaultMutableTreeNode("DVR1");
		DefaultMutableTreeNode dvrleaf2 = new DefaultMutableTreeNode("DVR2");
		DefaultMutableTreeNode dvrleaf3 = new DefaultMutableTreeNode("DVR3");
		DefaultMutableTreeNode dvrleaf4 = new DefaultMutableTreeNode("DVR4");
		DefaultMutableTreeNode dvrleaf5 = new DefaultMutableTreeNode("DVR4");
		
		DefaultMutableTreeNode envleaf1 = new DefaultMutableTreeNode("ENV1");
		DefaultMutableTreeNode envleaf2 = new DefaultMutableTreeNode("ENV2");
		DefaultMutableTreeNode envleaf3 = new DefaultMutableTreeNode("ENV3");
		DefaultMutableTreeNode envleaf4 = new DefaultMutableTreeNode("ENV4");
		
		treeModel = new DefaultTreeModel(root);			
		tree = new JTree(treeModel);		
		tree.setShowsRootHandles(true);			
		treeModel.insertNodeInto(subroot,root,0);
		treeModel.insertNodeInto(subroot1,root,1);
		
		subroot.add(dvrleaf1);
		subroot.add(dvrleaf2);
		subroot.add(dvrleaf3);
		subroot.add(dvrleaf4);
		subroot.add(dvrleaf5);
		subroot1.add(envleaf1);
		subroot1.add(envleaf2);
		subroot1.add(envleaf3);
		subroot1.add(envleaf4);
		
		tree.addTreeSelectionListener(new TreeSelectionListener()
		{
			public void valueChanged(TreeSelectionEvent tse)
			{
				//int type = tse.getSelectedNodeType();
				TreePath tp = tse.getNewLeadSelectionPath();	
				Object currentstring = tp.getLastPathComponent();
				
				System.out.println("Selected: " + tp.getLastPathComponent());
				System.out.println("Selected: " + tp.getPathCount());
				
				String currentstr = currentstring.toString();
				System.out.println("Selected: " + currentstr);
				if ("视频机"==currentstr)
				{					
					System.out.println("haha: " + currentstr);
				}
				
				if ("环境机"==currentstr) 
				{					
					System.out.println("haha: " + currentstr);
				}
			}
			
		});
		//getContentPane().add(tree,BorderLayout.CENTER);
		//tree.setExpandsSelectedPaths(false);
		
		tree.expandRow(2);
		*/
		//return tree;
		
/*		
	}
	
*/

private void setTreeListener()
{
  tree.addTreeSelectionListener(new TreeSelectionListener()
  {
    public void valueChanged(TreeSelectionEvent e)
    {
      int type = tree.getSelectedNodeType();
      //System.out.println("select type: " + type);
      //System.out.println("selected node is " + TreeNodeTypes.strings[type] 
      //                   + " (" + Integer.toString(type) + ")");		

      currentNodeType = tree.getSelectedNodeType();

      /*
       * We do two switch statements here so that we can
       * first set the buttons for sets of similar screens
       * and then deal with each screen individually.
       */      

      switch (currentNodeType)
      {

        case UNKNOWN:
        	
        case DVR_CLIENT:
      	  
        case ENV_CLIENT:  
        {
        	//set buttons
            //newButton.setEnabled(true);
        	//setCurrentScreen(blankScreen);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -