Package org.platformlayer.tests

Source Code of org.platformlayer.tests.SimpleTypedItemMapper

package org.platformlayer.tests;

import java.util.List;

import org.platformlayer.TypedItemMapper;
import org.platformlayer.ops.OpsException;
import org.platformlayer.xml.XmlHelper;
import org.platformlayer.xml.XmlHelper.ElementInfo;

import com.google.common.collect.Lists;

public class SimpleTypedItemMapper extends TypedItemMapper {

  final List<Class<?>> modelClasses = Lists.newArrayList();

  public SimpleTypedItemMapper() {
  }

  @Override
  protected <T> Class<T> mapToJavaClass(ElementInfo elementInfo) throws OpsException {
    for (Class<?> modelClass : modelClasses) {
      ElementInfo classElementInfo = XmlHelper.getXmlElementInfo(modelClass);
      if (elementInfo.equals(classElementInfo)) {
        return (Class<T>) modelClass;
      }
    }

    throw new OpsException("Unknown item type: " + elementInfo);
  }

  public void addClass(Class<?> modelClass) {
    modelClasses.add(modelClass);
  }

}
TOP

Related Classes of org.platformlayer.tests.SimpleTypedItemMapper

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.