/*******************************************************************************
* Copyright (c) 2009, 2010 Progress Software Corporation.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
******************************************************************************/
package org.fusesource.tools.core.ui.url.urlchooser;
import java.util.LinkedHashMap;
import java.util.StringTokenizer;
public class URLChooserFilter extends LinkedHashMap {
public URLChooserFilter() {
}
public URLChooserFilter(String filter) {
put(filter, filter);
}
public URLChooserFilter(String[] filter) {
for (String element : filter) {
put(element, element);
}
}
public String[] getFilterNames() {
return (String[]) values().toArray(new String[0]);
}
public String[] getFilterExtensions() {
return (String[]) keySet().toArray(new String[0]);
}
@Override
public Object put(Object key, Object value) {
boolean equal = key.equals(value);
StringTokenizer st = new StringTokenizer((String) key, ";");
while (st.hasMoreTokens()) {
String token = st.nextToken();
super.put(token, equal ? token : value);
}
return null;
}
}