blob: 2080b22cc64416de084b01e7097f76758e2d72ed [file] [log] [blame]
/******************************************************************************
* Copyright (c) 2002, 2009 IBM Corporation and others.
* 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
*
* Contributors:
* IBM Corporation - initial API and implementation
****************************************************************************/
package org.eclipse.gmf.tests.runtime.common.core.internal.util;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IContributor;
import org.eclipse.core.runtime.IExtension;
import org.eclipse.core.runtime.InvalidRegistryObjectException;
import org.eclipse.core.runtime.Status;
/**
* @author Yasser Lulu
*
*/
public class TestingConfigurationElement implements IConfigurationElement {
private Map attributeMap;
private Map childrenMap;
public static final TestingConfigurationElement[] EMPTY_TESTING_CONFIG_ELEMENT =
new TestingConfigurationElement[0];
/**
* Constructor for TestingConfigurationElement.
*/
public TestingConfigurationElement(Map attributeMap, Map childrenMap) {
setAttributeMap(attributeMap);
setChildrenMap(childrenMap);
}
/**
* Constructor for TestingConfigurationElement.
*/
public TestingConfigurationElement() {
setAttributeMap(new HashMap());
setChildrenMap(new HashMap());
}
public void addAttribute(String name, String value) {
getAttributeMap().put(name, value);
}
public void addChildren(String name, List childrenList) {
getChildrenMap().put(name, childrenList);
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#createExecutableExtension(String)
*/
public Object createExecutableExtension(String propertyName)
throws CoreException {
throw new CoreException(new Status(Status.ERROR, "", 0, "", null)); //$NON-NLS-1$ //$NON-NLS-2$
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getAttribute(String)
*/
public String getAttribute(String name) {
return (String) getAttributeMap().get(name);
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getAttributeAsIs(String)
*/
public String getAttributeAsIs(String name) {
return getAttribute(name);
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getAttributeNames()
*/
public String[] getAttributeNames() {
return null;
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getChildren()
*/
public IConfigurationElement[] getChildren() {
return null;
}
public final List getChildrenList(String name){
return (List)getChildrenMap().get(name);
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getChildren(String)
*/
public IConfigurationElement[] getChildren(String name) {
List childrenList = getChildrenList(name);
return ((childrenList != null) && (childrenList.isEmpty() == false))
? (TestingConfigurationElement[]) childrenList.toArray(
EMPTY_TESTING_CONFIG_ELEMENT)
: EMPTY_TESTING_CONFIG_ELEMENT;
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getDeclaringExtension()
*/
public IExtension getDeclaringExtension() {
return null;
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getName()
*/
public String getName() {
return null;
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getValue()
*/
public String getValue() {
return null;
}
/**
* @see org.eclipse.core.runtime.IConfigurationElement#getValueAsIs()
*/
public String getValueAsIs() {
return null;
}
/**
* Returns the attributeMap.
* @return Map
*/
public Map getAttributeMap() {
return attributeMap;
}
/**
* Returns the childrenMap.
* @return Map
*/
public Map getChildrenMap() {
return childrenMap;
}
/**
* Sets the attributeMap.
* @param attributeMap The attributeMap to set
*/
private void setAttributeMap(Map attributeMap) {
this.attributeMap = attributeMap;
}
/**
* Sets the childrenMap.
* @param childrenMap The childrenMap to set
*/
private void setChildrenMap(Map childrenMap) {
this.childrenMap = childrenMap;
}
/* (non-Javadoc)
* @see org.eclipse.core.runtime.IConfigurationElement#getParent()
*/
public Object getParent() {
return null;
}
public String getNamespace() throws InvalidRegistryObjectException {
return null;
}
public boolean isValid() {
return false;
}
public IContributor getContributor()
throws InvalidRegistryObjectException {
return null;
}
public String getNamespaceIdentifier()
throws InvalidRegistryObjectException {
return null;
}
public String getAttribute(String attrName, String locale)
throws InvalidRegistryObjectException {
return null;
}
public String getValue(String locale) throws InvalidRegistryObjectException {
return null;
}
}