Package org.w3c.jigsaw.webdav

Source Code of org.w3c.jigsaw.webdav.MultiStatusException

// MultiStatusException.java
// $Id: MultiStatusException.java,v 1.2 2000/10/13 13:44:52 bmahe Exp $
// (c) COPYRIGHT MIT, INRIA and Keio, 2000.
// Please first read the full copyright statement in file COPYRIGHT.html
package org.w3c.jigsaw.webdav;

import org.w3c.dom.Document;
import org.w3c.dom.DOMException;
import org.w3c.dom.Element;

import org.w3c.www.webdav.xml.DAVBody;
import org.w3c.www.webdav.xml.DAVFactory;
import org.w3c.www.webdav.xml.DAVMultiStatus;
import org.w3c.www.webdav.xml.DAVNode;
import org.w3c.www.webdav.xml.DAVResponse;

/**
* @version $Revision: 1.2 $
* @author  Beno�t Mah� (bmahe@w3.org)
*/
public class MultiStatusException extends Exception {

    // flag
    private boolean multi = false;

    // only one status
    private String url    = null;
    private String status = null;
    private String msg    = null;

    // several status
    private Document document = null;

    public Document getDocument() {
  if (document == null) {
      document = DAVBody.createDocument(DAVNode.MULTISTATUS_NODE);
      DAVResponse dr  = null;
      if (msg != null) {
    dr = DAVFactory.createResponse(url, status, msg, document);
      } else {
    dr = DAVFactory.createResponse(url, status, document);
      }
      document.getDocumentElement().appendChild(dr.getNode());
  }
  return document;
    }

    public void addResponses(Document doc, DAVMultiStatus dms) {
  if (multi) {
      // get our own dms
      Element odms = document.getDocumentElement();
      try {
    DAVNode.exportChildren(doc, dms.getNode(), odms, true);
      } catch (DOMException ex) {
    ex.printStackTrace();
      }
  } else {
      DAVResponse dr  = null;
      if (msg != null) {
    dr = DAVFactory.createResponse(url, status, msg, doc);
      } else {
    dr = DAVFactory.createResponse(url, status, doc);
      }
      dms.addDAVNode(dr);
  }
    }

    public MultiStatusException(Document document) {
  super("Forwarded");
  this.document = document;
  this.multi    = true;
    }

    public MultiStatusException(String url, String status, String msg) {
  super(url+" ["+status+"] "+msg);
  this.url    = url;
  this.status = status;
  this.msg    = msg;
  this.multi  = false;
    }

    public MultiStatusException(String url, String status) {
  super(url+" ["+status+"]");
  this.url    = url;
  this.status = status;
  this.multi  = false;
    }

}
TOP

Related Classes of org.w3c.jigsaw.webdav.MultiStatusException

TOP
Copyright © 2018 www.massapi.com. 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.