jford 2004/03/25 14:19:24
Added: commons/src/java/org/apache/jetspeed/om/common/impl
LocalizedFieldImpl.java GenericMetadataImpl.java
DublinCoreImpl.java
Log:
Moved from registry component
Revision Changes Path
1.3 +59 -1
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/om/common/impl/LocalizedFieldImpl.java
1.1
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/om/common/impl/GenericMetadataImpl.java
Index: GenericMetadataImpl.java
===================================================================
/* Copyright 2004 Apache Software Foundation
*
* 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 org.apache.jetspeed.om.common.impl;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Locale;
import org.apache.commons.collections.MultiHashMap;
import org.apache.jetspeed.om.common.GenericMetadata;
import org.apache.jetspeed.om.common.LocalizedField;
/**
* GenericMetadataImpl
* <br/>
* Implementation that allows retrieving localized information
*
* @author <a href="mailto:[EMAIL PROTECTED]">Jeremy Ford</a>
* @version $Id: GenericMetadataImpl.java,v 1.1 2004/03/25 22:19:23 jford Exp $
*
*/
public abstract class GenericMetadataImpl implements GenericMetadata
{
private Collection fields = null;
private transient MultiHashMap fieldMap = new MultiHashMap();
/* (non-Javadoc)
* @see org.apache.jetspeed.om.common.GenericMetadata#addField(java.util.Locale,
java.lang.String, java.lang.String)
*/
public void addField(Locale locale, String name, String value)
{
LocalizedFieldImpl field = new LocalizedFieldImpl();
field.setName(name);
field.setValue(value);
field.setLocale(locale);
addField(field);
}
/* (non-Javadoc)
* @see
org.apache.jetspeed.om.common.GenericMetadata#addField(org.apache.jetspeed.om.common.LocalizedField)
*/
public void addField(LocalizedField field)
{
if(fields == null)
{
fields = new ArrayList();
}
fields.add(field);
fieldMap.put(field.getName(), field);
}
/* (non-Javadoc)
* @see org.apache.jetspeed.om.common.GenericMetadata#getFields(java.lang.String)
*/
public Collection getFields(String name)
{
//TODO: return an immutable version?
return (Collection)fieldMap.get(name);
}
/* (non-Javadoc)
* @see
org.apache.jetspeed.om.common.GenericMetadata#setFields(java.lang.String,
java.util.Collection)
*/
public void setFields(String name, Collection values)
{
fieldMap.remove(name);
Iterator fieldIter = fields.iterator();
while(fieldIter.hasNext())
{
LocalizedField field = (LocalizedField)fieldIter.next();
if(field != null && field.getName() != null &&
field.getName().equals(name))
{
fieldIter.remove();
}
}
if(values != null)
{
Iterator iter = values.iterator();
while(iter.hasNext())
{
LocalizedField field = (LocalizedField)iter.next();
fieldMap.put(field.getName(), field);
}
fields.addAll(values);
}
}
/* (non-Javadoc)
* @see org.apache.jetspeed.om.common.GenericMetadata#getFields()
*/
public Collection getFields() {
return fields;
}
/* (non-Javadoc)
* @see
org.apache.jetspeed.om.common.GenericMetadata#setField(java.util.Collection)
*/
public void setFields(Collection fields)
{
this.fields = fields;
if(fields != null)
{
Iterator fieldIter = fields.iterator();
while(fieldIter.hasNext())
{
LocalizedField field = (LocalizedField)fieldIter.next();
fieldMap.put(field.getName(), field);
}
}
}
}
1.4 +85 -153
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/om/common/impl/DublinCoreImpl.java
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]