Package org.w3c.jigsaw.ccpp

Source Code of org.w3c.jigsaw.ccpp.CCPPFrame

// CCPPFrame.java
// $Id: CCPPFrame.java,v 1.7 2000/08/16 21:37:34 ylafon Exp $
// (c) COPYRIGHT MIT, INRIA and Keio, 2000.
// Please first read the full copyright statement in file COPYRIGHT.html

package org.w3c.jigsaw.ccpp;

import java.io.InputStream;

import org.w3c.jigsaw.frames.HTTPExtFrame;
import org.w3c.jigsaw.http.Reply;
import org.w3c.jigsaw.http.Request;
import org.w3c.tools.resources.ProtocolException;
import org.w3c.tools.resources.ResourceException;

/**
* @version $Revision: 1.7 $
* @author  Beno�t Mah� (bmahe@w3.org)
*/
public class CCPPFrame extends HTTPExtFrame {

    static {
  String classname = "org.w3c.jigsaw.ccpp.CCPPFrame";
  String methods[] = { "GET", "POST", "HEAD" }; // FIXME PUT? ...
  registerExtension(CCPP.HTTP_EXT_ID, methods, classname);
    }

    /**
     * Get the CC/PP Request
     * @param request the HTTP Request
     * @return a CCPPRequest instance
     */
    public CCPPRequest getCCPPRequest(Request request) {
  return CCPPRequest.getCCPPRequest(request);
    }

    /**
     * Set the Ext and/or C-Ext Header if necessary.
     * @param request the incomming request.
     * @param reply the reply
     * @return the acknowledged reply instance
     */
    protected Reply acknowledgeExtension(Request request, Reply reply) {
  CCPPRequest ccpp = getCCPPRequest(request);
  return ccpp.acknowledge(reply);
    }

    /**
     * The default GET method.
     * @param request The request to handle.
     * @exception ProtocolException If processsing the request failed.
     * @exception ResourceException If the resource got a fatal error.
     */

    public Reply get(Request request)
  throws ProtocolException, ResourceException
    {
  return test_get(request);
    }

    /**
     * For testing only
     * @param request The request to handle.
     * @exception ProtocolException If processsing the request failed.
     * @exception ResourceException If the resource got a fatal error.
     */
    public Reply test_get(Request request)
  throws ProtocolException, ResourceException
    {
  CCPPRequest ccpp  = getCCPPRequest(request);
  Reply       reply = super.get(request);

  ProfileRef refs[] = ccpp.getProfileReferences();
  for (int i = 0 ; i < refs.length ; i++) {
      try {
    if (refs[i].isURI()) {
        System.out.println("Ref["+i+"] (uri) : "+refs[i].getURI());
        ccpp.addWarning(reply, CCPP.NOT_APPLIED, refs[i].getURI());
    } else {
        int dn = refs[i].getDiffNumber();
        System.out.println("Ref["+i+"] (dif) : ("+dn+", "+
               refs[i].getDiffName()+")");
        System.out.println("  Diff["+dn+"] : "+
               ccpp.getProfileDiff(dn));
    }
      } catch (InvalidProfileException ex) {
    System.out.println("Ref["+i+"] (invalid) : "+
           refs[i].getUnparsedRef());
      }
  }
  return reply;
    }

    /**
     * CCPP HEAD method
     */
    public Reply head(Request request)
  throws ProtocolException, ResourceException
    {
  Reply reply = null;
  reply = get(request) ;
  reply.setStream((InputStream) null);
  return reply;
    }

}

TOP

Related Classes of org.w3c.jigsaw.ccpp.CCPPFrame

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.