blob: 8b035d73cea449aa47f239f1e7bfc5c6c0c95dd6 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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.apache.tomcat.util.collections;
import java.util.Enumeration;
import org.apache.tomcat.util.buf.MessageBytes;
/** Enumerate the values for a (possibly ) multiple
* value element.
*/
class MultiMapValuesEnumeration implements Enumeration {
int pos;
int size;
MessageBytes next;
MultiMap headers;
String name;
MultiMapValuesEnumeration(MultiMap headers, String name,
boolean toString) {
this.name=name;
this.headers=headers;
pos=0;
size = headers.size();
findNext();
}
private void findNext() {
next=null;
for( ; pos< size; pos++ ) {
MessageBytes n1=headers.getName( pos );
if( n1.equalsIgnoreCase( name )) {
next=headers.getValue( pos );
break;
}
}
pos++;
}
public boolean hasMoreElements() {
return next!=null;
}
public Object nextElement() {
MessageBytes current=next;
findNext();
return current.toString();
}
}