All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.gdface.facelog.dborm.image.FlImageBean Maven / Gradle / Ivy

There is a newer version: 2.5.1
Show newest version
// ______________________________________________________
// Generated by sql2java - https://github.com/10km/sql2java-2-6-7 (custom branch) 
// modified by guyadong from
// sql2java original version https://sourceforge.net/projects/sql2java/ 
// JDBC driver used at code generation time: com.mysql.jdbc.Driver
// template: bean.java.vm
// ______________________________________________________
package net.gdface.facelog.dborm.image;
import java.io.Serializable;
import java.util.List;
import java.util.Objects;

import net.gdface.facelog.dborm.Constant;
import net.gdface.facelog.dborm.BaseBean;
import net.gdface.facelog.dborm.device.FlDeviceBean;
import net.gdface.facelog.dborm.CompareToBuilder;
import net.gdface.facelog.dborm.EqualsBuilder;
import net.gdface.facelog.dborm.HashCodeBuilder;
/**
 * FlImageBean is a mapping of fl_image Table.
 * 
Meta Data Information (in progress): *
    *
  • comments: 图像信息存储表,用于存储系统中所有用到的图像数据,表中只包含图像基本信息,图像二进制源数据存在在fl_store中(md5对应)
  • *
* @author guyadong */ public class FlImageBean implements Serializable,BaseBean,Comparable,Constant,Cloneable { private static final long serialVersionUID = 646979810912117585L; /** NULL {@link FlImageBean} bean , IMMUTABLE instance */ public static final FlImageBean NULL = new FlImageBean().asNULL().asImmutable(); /** comments:主键,图像md5检验码,同时也是从 fl_store 获取图像数据的key */ private String md5; /** comments:图像格式 */ private String format; /** comments:图像宽度 */ private Integer width; /** comments:图像高度 */ private Integer height; /** comments:通道数 */ private Integer depth; /** comments:图像中的人脸数目 */ private Integer faceNum; /** comments:缩略图md5,图像数据存储在 fl_imae_store(md5) */ private String thumbMd5; /** comments:外键,图像来源设备 */ private Integer deviceId; /** flag whether {@code this} can be modified */ private Boolean immutable; /** columns modified flag */ private int modified; /** columns initialized flag */ private int initialized; /** new record flag */ private boolean isNew; /** * set immutable status * @return {@code this} */ private FlImageBean immutable(Boolean immutable) { this.immutable = immutable; return this; } /** * set {@code this} as immutable object * @return {@code this} */ public FlImageBean asImmutable() { return immutable(Boolean.TRUE); } /** * @return {@code true} if {@code this} is a mutable object */ public boolean mutable(){ return !Boolean.TRUE.equals(this.immutable); } /** * @return {@code this} * @throws IllegalStateException if {@code this} is a immutable object */ private FlImageBean checkMutable(){ if(!mutable()){ throw new IllegalStateException("this is a immutable object"); } return this; } /** * @return return a new mutable copy of this object. */ public FlImageBean cloneMutable(){ return clone().immutable(null); } @Override public boolean isNew() { return this.isNew; } @Override public void isNew(boolean isNew) { this.isNew = isNew; } /** * Specifies to the object if it has been set as new. * * @param isNew the boolean value to be assigned to the isNew field */ public void setNew(boolean isNew) { this.isNew = isNew; } /** * @return the modified status of columns */ public int getModified(){ return modified; } /** * @param modified the modified status bit to be assigned to {@link #modified} */ public void setModified(int modified){ this.modified = modified; } /** * @return the initialized status of columns */ public int getInitialized(){ return initialized; } /** * @param initialized the initialized status bit to be assigned to {@link #initialized} */ public void setInitialized(int initialized){ this.initialized = initialized; } protected static final >boolean equals(T a, T b) { return a == b || (a != null && 0==a.compareTo(b)); } public FlImageBean(){ super(); reset(); } /** * construct a new instance filled with primary keys * @param md5 PK# 1 */ public FlImageBean(String md5){ this(); setMd5(md5); } /** * Getter method for {@link #md5}.
* PRIMARY KEY.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.md5
  • *
  • imported key: fl_face.image_md5
  • *
  • imported key: fl_person.image_md5
  • *
  • comments: 主键,图像md5检验码,同时也是从 fl_store 获取图像数据的key
  • *
  • NOT NULL
  • *
  • column size: 32
  • *
  • JDBC type returned by the driver: Types.CHAR
  • *
* * @return the value of md5 */ public String getMd5(){ return md5; } /** * Setter method for {@link #md5}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value( NOT NULL) to be assigned to md5 */ public void setMd5(String newVal) { checkMutable(); modified |= FL_IMAGE_ID_MD5_MASK; initialized |= FL_IMAGE_ID_MD5_MASK; if (Objects.equals(newVal, md5)) { return; } md5 = newVal; } /** * Determines if the md5 has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkMd5Modified() { return 0L != (modified & FL_IMAGE_ID_MD5_MASK); } /** * Determines if the md5 has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkMd5Initialized() { return 0L != (initialized & FL_IMAGE_ID_MD5_MASK); } /** * Getter method for {@link #format}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.format
  • *
  • comments: 图像格式
  • *
  • column size: 32
  • *
  • JDBC type returned by the driver: Types.VARCHAR
  • *
* * @return the value of format */ public String getFormat(){ return format; } /** * Setter method for {@link #format}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value to be assigned to format */ public void setFormat(String newVal) { checkMutable(); modified |= FL_IMAGE_ID_FORMAT_MASK; initialized |= FL_IMAGE_ID_FORMAT_MASK; if (Objects.equals(newVal, format)) { return; } format = newVal; } /** * Determines if the format has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkFormatModified() { return 0L != (modified & FL_IMAGE_ID_FORMAT_MASK); } /** * Determines if the format has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkFormatInitialized() { return 0L != (initialized & FL_IMAGE_ID_FORMAT_MASK); } /** * Getter method for {@link #width}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.width
  • *
  • comments: 图像宽度
  • *
  • NOT NULL
  • *
  • column size: 10
  • *
  • JDBC type returned by the driver: Types.INTEGER
  • *
* * @return the value of width */ public Integer getWidth(){ return width; } /** * Setter method for {@link #width}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value( NOT NULL) to be assigned to width */ public void setWidth(Integer newVal) { checkMutable(); modified |= FL_IMAGE_ID_WIDTH_MASK; initialized |= FL_IMAGE_ID_WIDTH_MASK; if (Objects.equals(newVal, width)) { return; } width = newVal; } /** * Determines if the width has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkWidthModified() { return 0L != (modified & FL_IMAGE_ID_WIDTH_MASK); } /** * Determines if the width has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkWidthInitialized() { return 0L != (initialized & FL_IMAGE_ID_WIDTH_MASK); } /** * Getter method for {@link #height}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.height
  • *
  • comments: 图像高度
  • *
  • NOT NULL
  • *
  • column size: 10
  • *
  • JDBC type returned by the driver: Types.INTEGER
  • *
* * @return the value of height */ public Integer getHeight(){ return height; } /** * Setter method for {@link #height}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value( NOT NULL) to be assigned to height */ public void setHeight(Integer newVal) { checkMutable(); modified |= FL_IMAGE_ID_HEIGHT_MASK; initialized |= FL_IMAGE_ID_HEIGHT_MASK; if (Objects.equals(newVal, height)) { return; } height = newVal; } /** * Determines if the height has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkHeightModified() { return 0L != (modified & FL_IMAGE_ID_HEIGHT_MASK); } /** * Determines if the height has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkHeightInitialized() { return 0L != (initialized & FL_IMAGE_ID_HEIGHT_MASK); } /** * Getter method for {@link #depth}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.depth
  • *
  • comments: 通道数
  • *
  • default value: '0'
  • *
  • NOT NULL
  • *
  • column size: 10
  • *
  • JDBC type returned by the driver: Types.INTEGER
  • *
* * @return the value of depth */ public Integer getDepth(){ return depth; } /** * Setter method for {@link #depth}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value( NOT NULL) to be assigned to depth */ public void setDepth(Integer newVal) { checkMutable(); modified |= FL_IMAGE_ID_DEPTH_MASK; initialized |= FL_IMAGE_ID_DEPTH_MASK; if (Objects.equals(newVal, depth)) { return; } depth = newVal; } /** * Determines if the depth has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkDepthModified() { return 0L != (modified & FL_IMAGE_ID_DEPTH_MASK); } /** * Determines if the depth has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkDepthInitialized() { return 0L != (initialized & FL_IMAGE_ID_DEPTH_MASK); } /** * Getter method for {@link #faceNum}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.face_num
  • *
  • comments: 图像中的人脸数目
  • *
  • default value: '0'
  • *
  • NOT NULL
  • *
  • column size: 10
  • *
  • JDBC type returned by the driver: Types.INTEGER
  • *
* * @return the value of faceNum */ public Integer getFaceNum(){ return faceNum; } /** * Setter method for {@link #faceNum}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value( NOT NULL) to be assigned to faceNum */ public void setFaceNum(Integer newVal) { checkMutable(); modified |= FL_IMAGE_ID_FACE_NUM_MASK; initialized |= FL_IMAGE_ID_FACE_NUM_MASK; if (Objects.equals(newVal, faceNum)) { return; } faceNum = newVal; } /** * Determines if the faceNum has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkFaceNumModified() { return 0L != (modified & FL_IMAGE_ID_FACE_NUM_MASK); } /** * Determines if the faceNum has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkFaceNumInitialized() { return 0L != (initialized & FL_IMAGE_ID_FACE_NUM_MASK); } /** * Getter method for {@link #thumbMd5}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.thumb_md5
  • *
  • comments: 缩略图md5,图像数据存储在 fl_imae_store(md5)
  • *
  • column size: 32
  • *
  • JDBC type returned by the driver: Types.CHAR
  • *
* * @return the value of thumbMd5 */ public String getThumbMd5(){ return thumbMd5; } /** * Setter method for {@link #thumbMd5}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value to be assigned to thumbMd5 */ public void setThumbMd5(String newVal) { checkMutable(); modified |= FL_IMAGE_ID_THUMB_MD5_MASK; initialized |= FL_IMAGE_ID_THUMB_MD5_MASK; if (Objects.equals(newVal, thumbMd5)) { return; } thumbMd5 = newVal; } /** * Determines if the thumbMd5 has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkThumbMd5Modified() { return 0L != (modified & FL_IMAGE_ID_THUMB_MD5_MASK); } /** * Determines if the thumbMd5 has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkThumbMd5Initialized() { return 0L != (initialized & FL_IMAGE_ID_THUMB_MD5_MASK); } /** * Getter method for {@link #deviceId}.
* Meta Data Information (in progress): *
    *
  • full name: fl_image.device_id
  • *
  • foreign key: fl_device.id
  • *
  • comments: 外键,图像来源设备
  • *
  • column size: 10
  • *
  • JDBC type returned by the driver: Types.INTEGER
  • *
* * @return the value of deviceId */ public Integer getDeviceId(){ return deviceId; } /** * Setter method for {@link #deviceId}.
* The new value is set only if equals() says it is different, * or if one of either the new value or the current value is null. * In case the new value is different, it is set and the field is marked as 'modified'. * * @param newVal the new value to be assigned to deviceId */ public void setDeviceId(Integer newVal) { checkMutable(); modified |= FL_IMAGE_ID_DEVICE_ID_MASK; initialized |= FL_IMAGE_ID_DEVICE_ID_MASK; if (Objects.equals(newVal, deviceId)) { return; } deviceId = newVal; } /** * Determines if the deviceId has been modified. * * @return true if the field has been modified, false if the field has not been modified */ public boolean checkDeviceIdModified() { return 0L != (modified & FL_IMAGE_ID_DEVICE_ID_MASK); } /** * Determines if the deviceId has been initialized.
* * It is useful to determine if a field is null on purpose or just because it has not been initialized. * * @return true if the field has been initialized, false otherwise */ public boolean checkDeviceIdInitialized() { return 0L != (initialized & FL_IMAGE_ID_DEVICE_ID_MASK); } ////////////////////////////////////// // referenced bean for FOREIGN KEYS ////////////////////////////////////// /** * The referenced {@link FlDeviceBean} by {@link #deviceId} .
* FOREIGN KEY (device_id) REFERENCES fl_device(id) */ private FlDeviceBean referencedByDeviceId; /** * Getter method for {@link #referencedByDeviceId}. * @return FlDeviceBean */ public FlDeviceBean getReferencedByDeviceId() { return this.referencedByDeviceId; } /** * Setter method for {@link #referencedByDeviceId}. * @param reference FlDeviceBean */ public void setReferencedByDeviceId(FlDeviceBean reference) { this.referencedByDeviceId = reference; } @Override public boolean isModified() { return 0 != modified; } @Override public boolean isModified(int columnID){ switch ( columnID ){ case FL_IMAGE_ID_MD5: return checkMd5Modified(); case FL_IMAGE_ID_FORMAT: return checkFormatModified(); case FL_IMAGE_ID_WIDTH: return checkWidthModified(); case FL_IMAGE_ID_HEIGHT: return checkHeightModified(); case FL_IMAGE_ID_DEPTH: return checkDepthModified(); case FL_IMAGE_ID_FACE_NUM: return checkFaceNumModified(); case FL_IMAGE_ID_THUMB_MD5: return checkThumbMd5Modified(); case FL_IMAGE_ID_DEVICE_ID: return checkDeviceIdModified(); default: return false; } } @Override public boolean isInitialized(int columnID){ switch(columnID) { case FL_IMAGE_ID_MD5: return checkMd5Initialized(); case FL_IMAGE_ID_FORMAT: return checkFormatInitialized(); case FL_IMAGE_ID_WIDTH: return checkWidthInitialized(); case FL_IMAGE_ID_HEIGHT: return checkHeightInitialized(); case FL_IMAGE_ID_DEPTH: return checkDepthInitialized(); case FL_IMAGE_ID_FACE_NUM: return checkFaceNumInitialized(); case FL_IMAGE_ID_THUMB_MD5: return checkThumbMd5Initialized(); case FL_IMAGE_ID_DEVICE_ID: return checkDeviceIdInitialized(); default: return false; } } @Override public boolean isModified(String column){ return isModified(columnIDOf(column)); } @Override public boolean isInitialized(String column){ return isInitialized(columnIDOf(column)); } @Override public void resetIsModified() { checkMutable(); modified = 0; } @Override public void resetPrimaryKeysModified() { modified &= (~(FL_IMAGE_ID_MD5_MASK)); } /** * Resets columns modification status except primary keys to 'not modified'. */ public void resetModifiedExceptPrimaryKeys() { modified &= (~(FL_IMAGE_ID_FORMAT_MASK | FL_IMAGE_ID_WIDTH_MASK | FL_IMAGE_ID_HEIGHT_MASK | FL_IMAGE_ID_DEPTH_MASK | FL_IMAGE_ID_FACE_NUM_MASK | FL_IMAGE_ID_THUMB_MD5_MASK | FL_IMAGE_ID_DEVICE_ID_MASK)); } /** * Resets the object initialization status to 'not initialized'. */ private void resetInitialized() { initialized = 0; } /** reset all fields to initial value, equal to a new bean */ public void reset(){ checkMutable(); this.md5 = null; this.format = null; this.width = null; this.height = null; /* DEFAULT:'0'*/ this.depth = new Integer(0); /* DEFAULT:'0'*/ this.faceNum = new Integer(0); this.thumbMd5 = null; this.deviceId = null; this.isNew = true; this.modified = 0; this.initialized = (FL_IMAGE_ID_DEPTH_MASK | FL_IMAGE_ID_FACE_NUM_MASK); } @Override public boolean equals(Object object) { if (!(object instanceof FlImageBean)) { return false; } FlImageBean obj = (FlImageBean) object; return new EqualsBuilder() .append(getMd5(), obj.getMd5()) .append(getFormat(), obj.getFormat()) .append(getWidth(), obj.getWidth()) .append(getHeight(), obj.getHeight()) .append(getDepth(), obj.getDepth()) .append(getFaceNum(), obj.getFaceNum()) .append(getThumbMd5(), obj.getThumbMd5()) .append(getDeviceId(), obj.getDeviceId()) .isEquals(); } @Override public int hashCode() { return new HashCodeBuilder(-82280557, -700257973) .append(getMd5()) .toHashCode(); } @Override public String toString() { return toString(true,false); } /** * cast byte array to HEX string * * @param input * @return {@code null} if {@code input} is null */ private static final String toHex(byte[] input) { if (null == input){ return null; } StringBuffer sb = new StringBuffer(input.length * 2); for (int i = 0; i < input.length; i++) { sb.append(Character.forDigit((input[i] & 240) >> 4, 16)); sb.append(Character.forDigit(input[i] & 15, 16)); } return sb.toString(); } protected static final StringBuilder append(StringBuilder buffer,boolean full,byte[] value){ if(full || null == value){ buffer.append(toHex(value)); }else{ buffer.append(value.length).append(" bytes"); } return buffer; } private static int stringLimit = 64; private static final int MINIMUM_LIMIT = 16; protected static final StringBuilder append(StringBuilder buffer,boolean full,String value){ if(full || null == value || value.length() <= stringLimit){ buffer.append(value); }else{ buffer.append(value.substring(0,stringLimit - 8)).append(" ...").append(value.substring(stringLimit-4,stringLimit)); } return buffer; } protected static final StringBuilder append(StringBuilder buffer,boolean full,T value){ return buffer.append(value); } public static final void setStringLimit(int limit){ if(limit < MINIMUM_LIMIT){ throw new IllegalArgumentException(String.format("INVALID limit %d,minimum value %d",limit,MINIMUM_LIMIT)); } stringLimit = limit; } @Override public String toString(boolean notNull, boolean fullIfStringOrBytes) { // only output initialized field StringBuilder builder = new StringBuilder(this.getClass().getName()).append("@").append(Integer.toHexString(this.hashCode())).append("["); int count = 0; if(checkMd5Initialized()){ if(!notNull || null != getMd5()){ if(count++ >0){ builder.append(","); } builder.append("md5="); append(builder,fullIfStringOrBytes,getMd5()); } } if(checkFormatInitialized()){ if(!notNull || null != getFormat()){ if(count++ >0){ builder.append(","); } builder.append("format="); append(builder,fullIfStringOrBytes,getFormat()); } } if(checkWidthInitialized()){ if(!notNull || null != getWidth()){ if(count++ >0){ builder.append(","); } builder.append("width="); append(builder,fullIfStringOrBytes,getWidth()); } } if(checkHeightInitialized()){ if(!notNull || null != getHeight()){ if(count++ >0){ builder.append(","); } builder.append("height="); append(builder,fullIfStringOrBytes,getHeight()); } } if(checkDepthInitialized()){ if(!notNull || null != getDepth()){ if(count++ >0){ builder.append(","); } builder.append("depth="); append(builder,fullIfStringOrBytes,getDepth()); } } if(checkFaceNumInitialized()){ if(!notNull || null != getFaceNum()){ if(count++ >0){ builder.append(","); } builder.append("face_num="); append(builder,fullIfStringOrBytes,getFaceNum()); } } if(checkThumbMd5Initialized()){ if(!notNull || null != getThumbMd5()){ if(count++ >0){ builder.append(","); } builder.append("thumb_md5="); append(builder,fullIfStringOrBytes,getThumbMd5()); } } if(checkDeviceIdInitialized()){ if(!notNull || null != getDeviceId()){ if(count++ >0){ builder.append(","); } builder.append("device_id="); append(builder,fullIfStringOrBytes,getDeviceId()); } } builder.append("]"); return builder.toString(); } @Override public int compareTo(FlImageBean object){ return new CompareToBuilder() .append(getMd5(), object.getMd5()) .append(getFormat(), object.getFormat()) .append(getWidth(), object.getWidth()) .append(getHeight(), object.getHeight()) .append(getDepth(), object.getDepth()) .append(getFaceNum(), object.getFaceNum()) .append(getThumbMd5(), object.getThumbMd5()) .append(getDeviceId(), object.getDeviceId()) .toComparison(); } @Override public FlImageBean clone(){ try { return (FlImageBean) super.clone(); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } } /** * Make {@code this} to a NULL bean
* set all fields to null, {@link #modified} and {@link #initialized} be set to 0 * @return {@code this} bean * @author guyadong */ public FlImageBean asNULL() { checkMutable(); setMd5((String)null); setFormat((String)null); setWidth((Integer)null); setHeight((Integer)null); setDepth((Integer)null); setFaceNum((Integer)null); setThumbMd5((String)null); setDeviceId((Integer)null); isNew(true); resetInitialized(); resetIsModified(); return this; } /** * check whether this bean is a NULL bean * @return {@code true} if {@link #initialized} be set to zero * @see #asNULL() */ public boolean checkNULL(){ return 0 == getInitialized(); } /** * @param source source list * @return {@code source} replace {@code null} element with null instance({@link #NULL}) */ public static final List replaceNull(List source){ if(null != source){ for(int i = 0,endIndex = source.size();i replaceNullInstance(List source){ if(null != source){ for(int i = 0,endIndex = source.size();iT getValue(int columnID) { switch( columnID ){ case FL_IMAGE_ID_MD5: return (T)getMd5(); case FL_IMAGE_ID_FORMAT: return (T)getFormat(); case FL_IMAGE_ID_WIDTH: return (T)getWidth(); case FL_IMAGE_ID_HEIGHT: return (T)getHeight(); case FL_IMAGE_ID_DEPTH: return (T)getDepth(); case FL_IMAGE_ID_FACE_NUM: return (T)getFaceNum(); case FL_IMAGE_ID_THUMB_MD5: return (T)getThumbMd5(); case FL_IMAGE_ID_DEVICE_ID: return (T)getDeviceId(); default: return null; } } @Override public void setValue(int columnID,T value) { switch( columnID ) { case FL_IMAGE_ID_MD5: setMd5((String)value); break; case FL_IMAGE_ID_FORMAT: setFormat((String)value); break; case FL_IMAGE_ID_WIDTH: setWidth((Integer)value); break; case FL_IMAGE_ID_HEIGHT: setHeight((Integer)value); break; case FL_IMAGE_ID_DEPTH: setDepth((Integer)value); break; case FL_IMAGE_ID_FACE_NUM: setFaceNum((Integer)value); break; case FL_IMAGE_ID_THUMB_MD5: setThumbMd5((String)value); break; case FL_IMAGE_ID_DEVICE_ID: setDeviceId((Integer)value); break; default: break; } } @Override public T getValue(String column) { return getValue(columnIDOf(column)); } @Override public void setValue(String column,T value) { setValue(columnIDOf(column),value); } /** * @param column column name * @return column id for the given field name or negative if {@code column} is invalid name */ public static int columnIDOf(String column){ int index = FL_IMAGE_FIELDS_LIST.indexOf(column); return index < 0 ? FL_IMAGE_JAVA_FIELDS_LIST.indexOf(column) : index; } public static final Builder builder(){ return new Builder().reset(); } /** * a builder for FlImageBean,the template instance is thread local variable * a instance of Builder can be reused. */ public static final class Builder{ /** FlImageBean instance used for template to create new FlImageBean instance. */ static final ThreadLocal TEMPLATE = new ThreadLocal(){ @Override protected FlImageBean initialValue() { return new FlImageBean(); }}; private Builder() {} /** * reset the bean as template * @see FlImageBean#reset() */ public Builder reset(){ TEMPLATE.get().reset(); return this; } /** set a bean as template,must not be {@code null} */ public Builder template(FlImageBean bean){ if(null == bean){ throw new NullPointerException(); } TEMPLATE.set(bean); return this; } /** return a clone instance of {@link #TEMPLATE}*/ public FlImageBean build(){ return TEMPLATE.get().clone(); } /** * fill the field : fl_image.md5 * @param md5 主键,图像md5检验码,同时也是从 fl_store 获取图像数据的key * @see FlImageBean#getMd5() * @see FlImageBean#setMd5(String) */ public Builder md5(String md5){ TEMPLATE.get().setMd5(md5); return this; } /** * fill the field : fl_image.format * @param format 图像格式 * @see FlImageBean#getFormat() * @see FlImageBean#setFormat(String) */ public Builder format(String format){ TEMPLATE.get().setFormat(format); return this; } /** * fill the field : fl_image.width * @param width 图像宽度 * @see FlImageBean#getWidth() * @see FlImageBean#setWidth(Integer) */ public Builder width(Integer width){ TEMPLATE.get().setWidth(width); return this; } /** * fill the field : fl_image.height * @param height 图像高度 * @see FlImageBean#getHeight() * @see FlImageBean#setHeight(Integer) */ public Builder height(Integer height){ TEMPLATE.get().setHeight(height); return this; } /** * fill the field : fl_image.depth * @param depth 通道数 * @see FlImageBean#getDepth() * @see FlImageBean#setDepth(Integer) */ public Builder depth(Integer depth){ TEMPLATE.get().setDepth(depth); return this; } /** * fill the field : fl_image.face_num * @param faceNum 图像中的人脸数目 * @see FlImageBean#getFaceNum() * @see FlImageBean#setFaceNum(Integer) */ public Builder faceNum(Integer faceNum){ TEMPLATE.get().setFaceNum(faceNum); return this; } /** * fill the field : fl_image.thumb_md5 * @param thumbMd5 缩略图md5,图像数据存储在 fl_imae_store(md5) * @see FlImageBean#getThumbMd5() * @see FlImageBean#setThumbMd5(String) */ public Builder thumbMd5(String thumbMd5){ TEMPLATE.get().setThumbMd5(thumbMd5); return this; } /** * fill the field : fl_image.device_id * @param deviceId 外键,图像来源设备 * @see FlImageBean#getDeviceId() * @see FlImageBean#setDeviceId(Integer) */ public Builder deviceId(Integer deviceId){ TEMPLATE.get().setDeviceId(deviceId); return this; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy