org.globus.gsi.stores.ResourceCACertStore Maven / Gradle / Ivy
/*
* 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.stores;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import java.io.File;
import java.io.FilenameFilter;
import java.security.cert.TrustAnchor;
import org.globus.util.GlobusResource;
/**
* Created by IntelliJ IDEA.
* User: turtlebender
* Date: Dec 29, 2009
* Time: 11:49:20 AM
* To change this template use File | Settings | File Templates.
*/
public class ResourceCACertStore extends ResourceSecurityWrapperStore {
private static FilenameFilter filter = new TrustAnchorFilter();
private Log logger = LogFactory.getLog(getClass().getCanonicalName());
@Override
public ResourceTrustAnchor create(GlobusResource globusResource) throws ResourceStoreException {
return new ResourceTrustAnchor(false, globusResource);
}
@Override
protected Log getLog() {
return logger;
}
@Override
public FilenameFilter getDefaultFilenameFilter() {
return filter;
}
/**
* File filter for determining a Trust Anchor
*/
public static class TrustAnchorFilter implements FilenameFilter {
public boolean accept(File dir, String file) {
if (file == null) {
throw new IllegalArgumentException();
}
int length = file.length();
return length > 2
&& file.charAt(length - 2) == '.'
&& file.charAt(length - 1) >= '0'
&& file.charAt(length - 1) <= '9';
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy