blob: c0cf79c4b3d7e605184bc0ef6056151d8b4ca4ff [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2005 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.wst.ws.internal.explorer.platform.perspective;
import java.util.Enumeration;
import java.util.Hashtable;
public class FormToolProperties implements FormToolPropertiesInterface
{
private Hashtable propertyTable_;
private Hashtable errantValues_;
public FormToolProperties()
{
propertyTable_ = new Hashtable();
errantValues_ = new Hashtable();
}
public final Object getProperty(Object key)
{
return propertyTable_.get(key);
}
public final void setProperty(Object key,Object value)
{
propertyTable_.put(key,value);
}
public final void removeProperty(Object key)
{
propertyTable_.remove(key);
}
public final void clearPropertyTable()
{
propertyTable_.clear();
}
public final void updatePropertyTable(Hashtable newPropertyTable)
{
Enumeration e = newPropertyTable.keys();
while (e.hasMoreElements())
{
String key = (String)e.nextElement();
propertyTable_.put(key,newPropertyTable.get(key));
}
}
public final void setPropertyTable(Hashtable newPropertyTable)
{
clearPropertyTable();
updatePropertyTable(newPropertyTable);
}
public final void flagError(Object inputKey)
{
if (isInputValid(inputKey))
errantValues_.put(inputKey,Boolean.TRUE);
}
public final void flagRowError(Object inputKey,int rowNumber)
{
flagRowError(inputKey,String.valueOf(rowNumber));
}
public final void flagRowError(Object inputKey,Object rowId)
{
Object errorObject = errantValues_.get(inputKey);
Hashtable rowHash;
if (errorObject instanceof Hashtable)
rowHash = (Hashtable)errorObject;
else
rowHash = new Hashtable();
rowHash.put(rowId,Boolean.TRUE);
errantValues_.put(inputKey,rowHash);
}
public final void clearErrors()
{
errantValues_.clear();
}
public final boolean isInputValid(Object inputKey)
{
return (errantValues_.get(inputKey) == null);
}
public final boolean isRowInputValid(Object inputKey,int rowNumber)
{
return isRowInputValid(inputKey,String.valueOf(rowNumber));
}
public final boolean isRowInputValid(Object inputKey,Object rowId)
{
Hashtable rowHash = (Hashtable)errantValues_.get(inputKey);
if (rowHash == null)
return true;
return (rowHash.get(rowId) == null);
}
}