PropertyChangeEvent.java (oldVal): Renamed to oldValue.
* java/beans/PropertyChangeEvent.java (oldVal): Renamed to oldValue. (newVal): Renamed to newValue. * java/beans/PropertyVetoException.java (changeEvent): Renamed to evt. * java/beans/beancontext/BeanContextServiceRevokedEvent.java (revokeNow): Renamed to invalidateRefs. * java/io/OptionalDataException.java: Updated FIXME. (eof): New placeholder field. (length); Ditto. * java/io/WriteAbortedException.java (message): Made transient. * java/lang/ClassNotFoundException.java: Updated comments for JDK 1.2. * java/lang/Throwable.java (stackTrace): Made transient. * java/net/InetAddress.java: Made Serializable. * java/security/KeyPair.java: Made Serializable. * java/security/Provider.java: Replaced with Classpath version that implements serialization and proper methods. * java/text/ChoiceFormat.java (strings): Renamed to choiceFormats. (limits): Renamed to choiceLimits. Serialization changes per: http://java.sun.com/products/jdk/1.2/docs/api/serialized-form.html From-SVN: r34726
This commit is contained in:
parent
cf1748bfce
commit
7b245d2461
12 changed files with 271 additions and 97 deletions
|
@ -1,53 +1,197 @@
|
|||
/* Copyright (C) 2000 Free Software Foundation
|
||||
/* Provider.java -- Security provider information
|
||||
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of libgcj.
|
||||
This file is part of GNU Classpath.
|
||||
|
||||
GNU Classpath is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU Classpath is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Classpath; see the file COPYING. If not, write to the
|
||||
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA.
|
||||
|
||||
As a special exception, if you link this library with other files to
|
||||
produce an executable, this library does not by itself cause the
|
||||
resulting executable to be covered by the GNU General Public License.
|
||||
This exception does not however invalidate any other reasons why the
|
||||
executable file might be covered by the GNU General Public License. */
|
||||
|
||||
This software is copyrighted work licensed under the terms of the
|
||||
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
||||
details. */
|
||||
|
||||
package java.security;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Properties;
|
||||
|
||||
/**
|
||||
* @author Warren Levy <warrenl@cygnus.com>
|
||||
* @date February 7, 2000.
|
||||
* This class represents a Java security architecture service provider.
|
||||
* The services provided by a such a provider can range from security
|
||||
* algorithms to key generation.
|
||||
* <p>
|
||||
* Providers are installed by name and verion number. There is one
|
||||
* standard provider supplied with the class library. This is the
|
||||
* "GNU" provider, which can also be accessed by the alias "SUN" for
|
||||
* compatibility with the JDK.
|
||||
*
|
||||
* @version 0.0
|
||||
*
|
||||
* @author Aaron M. Renn (arenn@urbanophile.com)
|
||||
*/
|
||||
public abstract class Provider extends Properties implements Serializable
|
||||
{
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/*
|
||||
* Instance Variables
|
||||
*/
|
||||
|
||||
/**
|
||||
* Written using on-line Java Platform 1.2 API Specification.
|
||||
* Status: Partially implemented.
|
||||
* This is a textual description of the provider
|
||||
*/
|
||||
private String info;
|
||||
|
||||
/**
|
||||
* This is the name of the provider
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* This is the version number of the provider
|
||||
*/
|
||||
private double version;
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/*
|
||||
* Constructors
|
||||
*/
|
||||
|
||||
public abstract class Provider extends Properties
|
||||
/**
|
||||
* This method initializes a new instance of <code>Provider</code> to have
|
||||
* the specified name, version, and description information.
|
||||
*
|
||||
* @param name The name to assign to this <code>Provider</code>.
|
||||
* @param version The version number for this <code>Provider</code>.
|
||||
* @param info A textual description of this provider.
|
||||
*/
|
||||
protected
|
||||
Provider(String name, double version, String info)
|
||||
{
|
||||
// FIXME: Check the following property values against specs!
|
||||
protected Provider(String name, double version, String info)
|
||||
{
|
||||
super();
|
||||
put("java.security.Provider.Name", name);
|
||||
put("java.security.Provider.Version", Double.toString(version));
|
||||
put("java.security.Provider.Info", info);
|
||||
}
|
||||
this.name = name;
|
||||
this.version = version;
|
||||
this.info = info;
|
||||
}
|
||||
|
||||
public String getName()
|
||||
{
|
||||
return getProperty("java.security.Provider.Name");
|
||||
}
|
||||
/*************************************************************************/
|
||||
|
||||
public double getVersion()
|
||||
{
|
||||
return Double.valueOf(getProperty("java.security.Provider.Version")).doubleValue();
|
||||
}
|
||||
/*
|
||||
* Instance Methods
|
||||
*/
|
||||
|
||||
public String getInfo()
|
||||
{
|
||||
return getProperty("java.security.Provider.Info");
|
||||
}
|
||||
|
||||
public String toString()
|
||||
{
|
||||
// FIXME: Check this string against the spec.
|
||||
return getName() + " " + getProperty("java.security.Provider.Version");
|
||||
}
|
||||
/**
|
||||
* This method returns the name assigned to this <code>Provider</code>.
|
||||
*
|
||||
* @return The <code>Provider</code>'s name.
|
||||
*/
|
||||
public String
|
||||
getName()
|
||||
{
|
||||
return(name);
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method retunrs the version number of this <code>Provider</code>.
|
||||
*
|
||||
* @return The <code>Provider</code>'s version number.
|
||||
*/
|
||||
public double
|
||||
getVersion()
|
||||
{
|
||||
return(version);
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method returns a textual description of the <code>Provider</code>.
|
||||
*
|
||||
* @return A description of the <code>Provider</code>.
|
||||
*/
|
||||
public String
|
||||
getInfo()
|
||||
{
|
||||
return(info);
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method sets the specified key to have the specified value.
|
||||
*
|
||||
* @param key The property key
|
||||
* @param value The property value
|
||||
*
|
||||
* @return The previous value for this key, or <code>null</code> if no previous value.
|
||||
*/
|
||||
public Object
|
||||
put(Object key, Object value)
|
||||
{
|
||||
return(super.put(key, value));
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method removes the specified key entry (and its associated value)
|
||||
* from the property mapping list.
|
||||
*
|
||||
* @param key The key to remove
|
||||
*
|
||||
* @return The previous value for this key, or <code>null</code> if no previous value.
|
||||
*/
|
||||
public Object
|
||||
remove(Object key)
|
||||
{
|
||||
return(super.remove(key));
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method clears the entire property list such that it no longer
|
||||
* contains the properties used to look up the services provided by
|
||||
* the <code>Provider</code>.
|
||||
*/
|
||||
public void
|
||||
clear()
|
||||
{
|
||||
super.clear();
|
||||
}
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
/**
|
||||
* This method returns a <code>String</code> representation of this
|
||||
* object. This will include the <code>Provider</code> name and
|
||||
* version number.
|
||||
*
|
||||
* @return A <code>String</code> representation of this object.
|
||||
*/
|
||||
public String
|
||||
toString()
|
||||
{
|
||||
return(getClass().getName() + ": name=" + getName() + " version=" + version);
|
||||
}
|
||||
|
||||
} // class Provider
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue