
org.globus.gsi.X509ExtensionSet Maven / Gradle / Ivy
The newest version!
/*
* Copyright 1999-2010 University of Chicago
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License is
* distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied.
*
* See the License for the specific language governing permissions and limitations under the License.
*/
package org.globus.gsi;
import java.util.Set;
import java.util.Hashtable;
import org.globus.util.I18n;
/**
* Represents a set of X.509 extensions.
*/
public class X509ExtensionSet {
private static I18n i18n =
I18n.getI18n("org.globus.gsi.errors",
X509ExtensionSet.class.getClassLoader());
private Hashtable extensions;
/**
* Creates an empty X509ExtensionSet object.
*/
public X509ExtensionSet() {
this.extensions = new Hashtable();
}
/**
* Adds a X509Extension object to this set.
*
* @param extension the extension to add
* @return an extension that was removed with the same oid as the
* new extension. Null, if none existed before.
*/
public X509Extension add(X509Extension extension) {
if (extension == null) {
throw new IllegalArgumentException(i18n
.getMessage("extensionNull"));
}
return (X509Extension)this.extensions.put(extension.getOid(),
extension);
}
/**
* Retrieves X509Extension by given oid.
*
* @param oid the oid of the extension to retrieve.
* @return the extension with the specified oid. Can be null if
* there is no extension with such oid.
*/
public X509Extension get(String oid) {
if (oid == null) {
throw new IllegalArgumentException(i18n.getMessage("oidNull"));
}
return (X509Extension)this.extensions.get(oid);
}
/**
* Removes X509Extension by given oid.
*
* @param oid the oid of the extension to remove.
* @return extension that was removed. Null, if extension with the
* specified oid does not exist in this set.
*/
public X509Extension remove(String oid) {
if (oid == null) {
throw new IllegalArgumentException(i18n.getMessage("oidNull"));
}
return (X509Extension)this.extensions.remove(oid);
}
/**
* Returns the size of the set.
*
* @return the size of the set.
*/
public int size() {
return this.extensions.size();
}
/**
* Returns if the set is empty.
*
* @return true if the set if empty, false otherwise.
*/
public boolean isEmpty() {
return this.extensions.isEmpty();
}
/**
* Removes all extensions from the set.
*/
public void clear() {
this.extensions.clear();
}
/**
* Returns a set view of the OIDs of the extensions contained in this
* extension set.
*
* @return the set with oids.
*/
public Set oidSet() {
return this.extensions.keySet();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy