use of com.robotoworks.mechanoid.db.sqliteModel.ColumnSource in project mechanoid by robotoworks.
the class ActiveRecordGenerator method _generateParcelSerializationStatements.
protected CharSequence _generateParcelSerializationStatements(final CreateViewStatement stmt) {
StringConcatenation _builder = new StringConcatenation();
ArrayList<ColumnSource> cols = ModelUtil.getViewResultColumns(stmt);
_builder.newLineIfNotEmpty();
{
final Function1<ColumnSource, Boolean> _function = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter = IterableExtensions.<ColumnSource>filter(cols, _function);
for (final ColumnSource item : _filter) {
ResultColumn col = ((ResultColumn) item);
_builder.newLineIfNotEmpty();
ColumnType type = ModelUtil.getInferredColumnType(col);
_builder.newLineIfNotEmpty();
{
boolean _equals = Objects.equal(type, ColumnType.BOOLEAN);
if (_equals) {
_builder.append("dest.writeInt(m");
String _name = col.getName();
String _pascalize = Strings.pascalize(_name);
_builder.append(_pascalize, "");
_builder.append(" ? 1 : 0);");
_builder.newLineIfNotEmpty();
} else {
boolean _equals_1 = Objects.equal(type, ColumnType.BLOB);
if (_equals_1) {
_builder.append("dest.writeByteArray(m");
String _name_1 = col.getName();
String _pascalize_1 = Strings.pascalize(_name_1);
_builder.append(_pascalize_1, "");
_builder.append(");");
_builder.newLineIfNotEmpty();
} else {
_builder.append("dest.write");
String _javaTypeName = ModelUtil.toJavaTypeName(type);
String _pascalize_2 = Strings.pascalize(_javaTypeName);
_builder.append(_pascalize_2, "");
_builder.append("(m");
String _name_2 = col.getName();
String _pascalize_3 = Strings.pascalize(_name_2);
_builder.append(_pascalize_3, "");
_builder.append(");");
_builder.newLineIfNotEmpty();
}
}
}
}
}
_builder.append("dest.writeBooleanArray(new boolean[] {");
_builder.newLine();
{
final Function1<ColumnSource, Boolean> _function_1 = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter_1 = IterableExtensions.<ColumnSource>filter(cols, _function_1);
boolean _hasElements = false;
for (final ColumnSource col_1 : _filter_1) {
if (!_hasElements) {
_hasElements = true;
} else {
_builder.appendImmediate(",", "\t");
}
_builder.append("\t");
_builder.append("m");
String _name_3 = col_1.getName();
String _pascalize_4 = Strings.pascalize(_name_3);
_builder.append(_pascalize_4, "\t");
_builder.append("Dirty");
_builder.newLineIfNotEmpty();
}
}
_builder.append("});");
_builder.newLine();
return _builder;
}
use of com.robotoworks.mechanoid.db.sqliteModel.ColumnSource in project mechanoid by robotoworks.
the class ActiveRecordGenerator method _generateProjectionIndicesMembers.
protected CharSequence _generateProjectionIndicesMembers(final CreateTableStatement stmt) {
StringConcatenation _builder = new StringConcatenation();
int counter = (-1);
_builder.newLineIfNotEmpty();
{
EList<ColumnSource> _columnDefs = stmt.getColumnDefs();
for (final ColumnSource col : _columnDefs) {
_builder.append("int ");
String _name = col.getName();
String _underscore = Strings.underscore(_name);
String _upperCase = _underscore.toUpperCase();
_builder.append(_upperCase, "");
_builder.append(" = ");
_builder.append(counter = (counter + 1), "");
_builder.append(";");
_builder.newLineIfNotEmpty();
}
}
return _builder;
}
use of com.robotoworks.mechanoid.db.sqliteModel.ColumnSource in project mechanoid by robotoworks.
the class ActiveRecordGenerator method _generateParcelDeserializationStatements.
protected CharSequence _generateParcelDeserializationStatements(final CreateViewStatement stmt) {
StringConcatenation _builder = new StringConcatenation();
int counter = (-1);
_builder.newLineIfNotEmpty();
ArrayList<ColumnSource> cols = ModelUtil.getViewResultColumns(stmt);
_builder.newLineIfNotEmpty();
{
final Function1<ColumnSource, Boolean> _function = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter = IterableExtensions.<ColumnSource>filter(cols, _function);
for (final ColumnSource item : _filter) {
ResultColumn col = ((ResultColumn) item);
_builder.newLineIfNotEmpty();
ColumnType type = ModelUtil.getInferredColumnType(col);
_builder.newLineIfNotEmpty();
{
boolean _equals = Objects.equal(type, ColumnType.BOOLEAN);
if (_equals) {
_builder.append("m");
String _name = col.getName();
String _pascalize = Strings.pascalize(_name);
_builder.append(_pascalize, "");
_builder.append(" = (in.readInt() > 0);");
_builder.newLineIfNotEmpty();
} else {
boolean _equals_1 = Objects.equal(type, ColumnType.BLOB);
if (_equals_1) {
_builder.append("m");
String _name_1 = col.getName();
String _pascalize_1 = Strings.pascalize(_name_1);
_builder.append(_pascalize_1, "");
_builder.append(" = in.createByteArray();");
_builder.newLineIfNotEmpty();
} else {
_builder.append("m");
String _name_2 = col.getName();
String _pascalize_2 = Strings.pascalize(_name_2);
_builder.append(_pascalize_2, "");
_builder.append(" = in.read");
String _javaTypeName = ModelUtil.toJavaTypeName(type);
String _pascalize_3 = Strings.pascalize(_javaTypeName);
_builder.append(_pascalize_3, "");
_builder.append("();");
_builder.newLineIfNotEmpty();
}
}
}
}
}
_builder.newLine();
_builder.append("boolean[] dirtyFlags = new boolean[");
int _size = cols.size();
int _minus = (_size - 1);
_builder.append(_minus, "");
_builder.append("];");
_builder.newLineIfNotEmpty();
_builder.append("in.readBooleanArray(dirtyFlags);");
_builder.newLine();
{
final Function1<ColumnSource, Boolean> _function_1 = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter_1 = IterableExtensions.<ColumnSource>filter(cols, _function_1);
for (final ColumnSource col_1 : _filter_1) {
_builder.append("m");
String _name_3 = col_1.getName();
String _pascalize_4 = Strings.pascalize(_name_3);
_builder.append(_pascalize_4, "");
_builder.append("Dirty = dirtyFlags[");
_builder.append(counter = (counter + 1), "");
_builder.append("];");
_builder.newLineIfNotEmpty();
}
}
return _builder;
}
use of com.robotoworks.mechanoid.db.sqliteModel.ColumnSource in project mechanoid by robotoworks.
the class ActiveRecordGenerator method _generateSetFromCursorStatements.
protected CharSequence _generateSetFromCursorStatements(final CreateViewStatement stmt) {
StringConcatenation _builder = new StringConcatenation();
ArrayList<ColumnSource> cols = ModelUtil.getViewResultColumns(stmt);
_builder.newLineIfNotEmpty();
{
final Function1<ColumnSource, Boolean> _function = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter = IterableExtensions.<ColumnSource>filter(cols, _function);
for (final ColumnSource item : _filter) {
ResultColumn col = ((ResultColumn) item);
_builder.newLineIfNotEmpty();
ColumnType type = ModelUtil.getInferredColumnType(col);
_builder.newLineIfNotEmpty();
{
boolean _equals = Objects.equal(type, ColumnType.BOOLEAN);
if (_equals) {
_builder.append("set");
String _name = col.getName();
String _pascalize = Strings.pascalize(_name);
_builder.append(_pascalize, "");
_builder.append("(c.getInt(Indices.");
String _name_1 = col.getName();
String _underscore = Strings.underscore(_name_1);
String _upperCase = _underscore.toUpperCase();
_builder.append(_upperCase, "");
_builder.append(") > 0);");
_builder.newLineIfNotEmpty();
} else {
boolean _equals_1 = Objects.equal(type, ColumnType.BLOB);
if (_equals_1) {
_builder.append("set");
String _name_2 = col.getName();
String _pascalize_1 = Strings.pascalize(_name_2);
_builder.append(_pascalize_1, "");
_builder.append("(c.getBlob(Indices.");
String _name_3 = col.getName();
String _underscore_1 = Strings.underscore(_name_3);
String _upperCase_1 = _underscore_1.toUpperCase();
_builder.append(_upperCase_1, "");
_builder.append("));");
_builder.newLineIfNotEmpty();
} else {
_builder.append("set");
String _name_4 = col.getName();
String _pascalize_2 = Strings.pascalize(_name_4);
_builder.append(_pascalize_2, "");
_builder.append("(c.get");
String _javaTypeName = ModelUtil.toJavaTypeName(type);
String _pascalize_3 = Strings.pascalize(_javaTypeName);
_builder.append(_pascalize_3, "");
_builder.append("(Indices.");
String _name_5 = col.getName();
String _underscore_2 = Strings.underscore(_name_5);
String _upperCase_2 = _underscore_2.toUpperCase();
_builder.append(_upperCase_2, "");
_builder.append("));");
_builder.newLineIfNotEmpty();
}
}
}
}
}
return _builder;
}
use of com.robotoworks.mechanoid.db.sqliteModel.ColumnSource in project mechanoid by robotoworks.
the class ActiveRecordGenerator method _generateBuilderStatements.
protected CharSequence _generateBuilderStatements(final CreateViewStatement stmt) {
StringConcatenation _builder = new StringConcatenation();
ArrayList<ColumnSource> cols = ModelUtil.getViewResultColumns(stmt);
_builder.newLineIfNotEmpty();
{
final Function1<ColumnSource, Boolean> _function = new Function1<ColumnSource, Boolean>() {
public Boolean apply(final ColumnSource it) {
String _name = it.getName();
boolean _equals = _name.equals("_id");
return Boolean.valueOf((!_equals));
}
};
Iterable<ColumnSource> _filter = IterableExtensions.<ColumnSource>filter(cols, _function);
for (final ColumnSource col : _filter) {
_builder.append("if(m");
String _name = col.getName();
String _pascalize = Strings.pascalize(_name);
_builder.append(_pascalize, "");
_builder.append("Dirty) {");
_builder.newLineIfNotEmpty();
_builder.append("\t");
_builder.append("builder.set");
String _name_1 = col.getName();
String _pascalize_1 = Strings.pascalize(_name_1);
_builder.append(_pascalize_1, "\t");
_builder.append("(m");
String _name_2 = col.getName();
String _pascalize_2 = Strings.pascalize(_name_2);
_builder.append(_pascalize_2, "\t");
_builder.append(");");
_builder.newLineIfNotEmpty();
_builder.append("}");
_builder.newLine();
}
}
return _builder;
}
Aggregations