/*
* Copyright 2011 Cloud.com, Inc.
*
* 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 com.cloud.bridge.service.core.s3;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class S3PolicyPrincipal {
private List<String> principalList = new ArrayList<String>();
public S3PolicyPrincipal() {
}
public String[] getPrincipals() {
return principalList.toArray(new String[0]);
}
public void addPrincipal(String principal) {
principalList.add( principal );
}
public boolean contains(String findPrincipal) {
Iterator<String> itr = principalList.iterator();
while( itr.hasNext())
{
// -> "You can specify multiple principals, or a wildcard (*) to indicate all possible users."
String onePrincipal = itr.next();
if (onePrincipal.equals("*")) return true;
if (onePrincipal.equals( findPrincipal )) return true;
}
return false;
}
public String toString() {
StringBuffer value = new StringBuffer();
Iterator<String> itr = principalList.iterator();
value.append( "Principals: \n" );
while( itr.hasNext()) {
String onePrincipal = itr.next();
value.append( onePrincipal );
value.append( "\n" );
}
return value.toString();
}
}