Package org.w3c.jigsaw.admin

Source Code of org.w3c.jigsaw.admin.AdminReader

// AdminReader.java
// $Id: AdminReader.java,v 1.15 2000/08/17 09:57:41 ylafon Exp $
// (c) COPYRIGHT MIT and INRIA, 1997.
// Please first read the full copyright statement in file COPYRIGHT.html

package org.w3c.jigsaw.admin;


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;

import java.net.URL;

import org.w3c.tools.resources.Resource;

import org.w3c.tools.resources.serialization.ResourceDescription;
import org.w3c.tools.resources.serialization.SerializationException;
import org.w3c.tools.resources.serialization.Serializer;

class AdminReader implements AdminProtocol {
    /**
     * The RemoteResource factory to create remote resource instances.
     */
    RemoteResourceFactory factory = null;
    /**
     * The client side admin object we are attached to.
     */
    protected AdminContext admin = null;

    /**
     * Our serializer.
     */
    protected static Serializer serializer = null;

    static {
  serializer =
      new org.w3c.tools.resources.serialization.xml.XMLSerializer();
    }

    protected RemoteResource readResource(URL parent,
            String identifier,
            InputStream in)
  throws IOException, AdminProtocolException
    {
  try {
      Reader reader = new BufferedReader(new InputStreamReader(in));
      ResourceDescription descriptions[] =
    serializer.readResourceDescriptions(reader);
      if (descriptions.length < 1)
    throw new AdminProtocolException("Unknown resource");
      return factory.createRemoteResource(parent,
            identifier,
            descriptions[0]);
  } catch (SerializationException ex) {
      throw new AdminProtocolException("Error in serialized resource :"+
               ex.getMessage());
  }
    }

    public static Resource readResource(InputStream in)
  throws IOException, AdminProtocolException
    {
  try {
      Reader reader = new BufferedReader(new InputStreamReader(in));
      Resource resources[] =
    serializer.readResources(reader);
      if (resources.length < 1)
    throw new AdminProtocolException("No resource found.");
      return resources[0];
  } catch (SerializationException ex) {
      throw new AdminProtocolException("Error in serialized resource :"+
               ex.getMessage());
  }
    }

    public static ResourceDescription readResourceDescription(InputStream in)
  throws IOException, AdminProtocolException
    {
  try {
      Reader reader = new BufferedReader(new InputStreamReader(in));
      ResourceDescription descriptions[] =
    serializer.readResourceDescriptions(reader);
      if (descriptions.length < 1) {
    throw new AdminProtocolException("No resource found.");
      }
      return descriptions[0];
  } catch (SerializationException ex) {
      throw new AdminProtocolException("Error in serialized resource :"+
               ex.getMessage());
  }
    }

    AdminReader(AdminContext admin) {
  this.admin      = admin;
  this.factory    = new RemoteResourceFactory(admin);
    }

}

TOP

Related Classes of org.w3c.jigsaw.admin.AdminReader

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.