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

br.com.objectos.way.sql.LocalDateColumnInfoBuilderPojo Maven / Gradle / Ivy

package br.com.objectos.way.sql;

import com.google.common.base.Optional;
import org.joda.time.LocalDate;

@javax.annotation.Generated("br.com.objectos.way.auto.pojo.AutoPojoProcessor")
final class LocalDateColumnInfoBuilderPojo
    implements 
    LocalDateColumnInfoBuilder, 
    LocalDateColumnInfoBuilder.LocalDateColumnInfoBuilderTableName, 
    LocalDateColumnInfoBuilder.LocalDateColumnInfoBuilderName, 
    LocalDateColumnInfoBuilder.LocalDateColumnInfoBuilderNullable, 
    LocalDateColumnInfoBuilder.LocalDateColumnInfoBuilderDefaultValue { 

  private TableName tableName;
  private String name;
  private boolean nullable;
  private Optional defaultValue;
  
  public LocalDateColumnInfoBuilderPojo() {
  }
  
  @Override
  public LocalDateColumnInfo build() {
    return new LocalDateColumnInfoPojo(this);
  }

  @Override
  public LocalDateColumnInfoBuilderTableName tableName(TableName tableName) {  
    if (tableName == null) {
      throw new NullPointerException();
    }
    this.tableName = tableName;
    return this;
  }
  
  @Override
  public LocalDateColumnInfoBuilderName name(String name) {  
    if (name == null) {
      throw new NullPointerException();
    }
    this.name = name;
    return this;
  }
  
  @Override
  public LocalDateColumnInfoBuilderNullable nullable(boolean nullable) {  
    this.nullable = nullable;
    return this;
  }
  
  @Override
  public LocalDateColumnInfoBuilderDefaultValue defaultValue(Optional defaultValue) {  
    if (defaultValue == null) {
      throw new NullPointerException();
    }
    this.defaultValue = defaultValue;
    return this;
  }
  
  TableName tableName() {
    return tableName;
  }
  
  String name() {
    return name;
  }
  
  boolean nullable() {
    return nullable;
  }
  
  Optional defaultValue() {
    return defaultValue;
  }
  
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy