IEntityBeanAware.java :  » MVC » simpleframework » net » simpleframework » ado » db » Java Open Source

Java Open Source » MVC » simpleframework 
simpleframework » net » simpleframework » ado » db » IEntityBeanAware.java
package net.simpleframework.ado.db;

import java.util.Map;

import net.simpleframework.ado.bean.IDataObjectBean;
import net.simpleframework.ado.db.schema.Column;
import net.simpleframework.util.StringUtils;

/**
 * LGPLv3
 * 
 * @author (cknet@126.com, 13910090885)
 *         http://code.google.com/p/simpleframework/
 *         http://www.simpleframework.net
 */
public interface IEntityBeanAware extends IDataObjectBean {

  Map<String, Column> getTableColumnDefinition();

  public static class Utils {
    public static String getColumnName(final Object beanAware, final String propertyName) {
      if (beanAware instanceof IEntityBeanAware) {
        final Map<String, Column> columns = ((IEntityBeanAware) beanAware)
            .getTableColumnDefinition();
        if (columns != null && StringUtils.hasText(propertyName)) {
          final Column column = columns.get(propertyName);
          if (column != null) {
            return column.getColumnName();
          }
        }
      }
      return propertyName;
    }

    public static String getPropertyName(final Object beanAware, final String columnName) {
      if (beanAware instanceof IEntityBeanAware) {
        final Map<String, Column> columns = ((IEntityBeanAware) beanAware)
            .getTableColumnDefinition();
        if (columns != null && StringUtils.hasText(columnName)) {
          for (final Map.Entry<String, Column> entry : columns.entrySet()) {
            if (columnName.equals(entry.getValue().getColumnName())) {
              return entry.getKey();
            }
          }
        }
      }
      return columnName;
    }
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.