private void configure(Document mediaRendererXML) throws IOException, SAXException{
    	
        name = XMLTool.search(mediaRendererXML, "friendlyName").getFirstChild().getNodeValue();
        
    	Node serviceList = XMLTool.search(mediaRendererXML, "serviceList");
    	
    	for(Node service = serviceList.getFirstChild();
    			service != null;
    			service = service.getNextSibling()) {
    		Node type = XMLTool.search(service, "serviceType");
    		Node descrURL = XMLTool.search(service, "SCPDURL");
    		Node ctrlURL = XMLTool.search(service, "controlURL");
    		Node eventURL = XMLTool.search(service, "eventSubURL");
    		
    		if (type.getFirstChild().getNodeValue().equals(AVTRANSPORTTYPE)) {
    			URL url = new URL(root.base(), descrURL.getFirstChild().getNodeValue());
    		    avTransport = new AVTransport1(url);
    			avTransportControl = new URL(root.base(), ctrlURL.getFirstChild().getNodeValue());
    			avTransportEvent = new URL(root.base(), eventURL.getFirstChild().getNodeValue());
    		} else if (type.getFirstChild().getNodeValue().equals(CONNECTIONMANAGERTYPE)) {
    			connectionManager = new ConnectionManager1(
    			    new URL(root.base(), descrURL.getFirstChild().getNodeValue()));
    			connectionManagerControl = new URL(root.base(), ctrlURL.getFirstChild().getNodeValue());
    			connectionManagerEvent = new URL(root.base(), eventURL.getFirstChild().getNodeValue());
    		} else if (type.getFirstChild().getNodeValue().equals(RENDERINGCONTROLTYPE)) {
    			renderingControl = new RenderingControl1(
    			    new URL(root.base(), descrURL.getFirstChild().getNodeValue()));
    			renderingControlControl = new URL(root.base(), ctrlURL.getFirstChild().getNodeValue());
    			renderingControlEvent = new URL(root.base(), eventURL.getFirstChild().getNodeValue());
    		}
    	}
    }