
mil.nga.geopackage.user.custom.UserCustomTable Maven / Gradle / Ivy
package mil.nga.geopackage.user.custom;
import java.util.Collection;
import java.util.List;
import mil.nga.geopackage.user.UserTable;
/**
* Represents a user custom table
*
* @author osbornb
* @since 3.0.1
*/
public class UserCustomTable extends UserTable {
/**
* Constructor
*
* @param tableName
* table name
* @param columns
* list of columns
*/
public UserCustomTable(String tableName, List columns) {
this(tableName, columns, null);
}
/**
* Constructor
*
* @param tableName
* table name
* @param columns
* list of columns
* @param requiredColumns
* list of required columns
*/
public UserCustomTable(String tableName, List columns,
Collection requiredColumns) {
this(new UserCustomColumns(tableName, columns, requiredColumns));
}
/**
* Constructor
*
* @param columns
* columns
* @since 3.5.0
*/
public UserCustomTable(UserCustomColumns columns) {
super(columns);
}
/**
* Copy Constructor
*
* @param userCustomTable
* user custom table
*/
public UserCustomTable(UserCustomTable userCustomTable) {
super(userCustomTable);
}
/**
* {@inheritDoc}
*/
@Override
public UserCustomTable copy() {
return new UserCustomTable(this);
}
/**
* {@inheritDoc}
*/
@Override
public String getDataType() {
return getDataType(null);
}
/**
* {@inheritDoc}
*/
@Override
public UserCustomColumns getUserColumns() {
return (UserCustomColumns) super.getUserColumns();
}
/**
* {@inheritDoc}
*/
@Override
public UserCustomColumns createUserColumns(List columns) {
return new UserCustomColumns(getTableName(), columns,
getRequiredColumns(), true);
}
/**
* Get the required columns
*
* @return required columns
*/
public Collection getRequiredColumns() {
return getUserColumns().getRequiredColumns();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy