/* * Generated by Robotoworks Mechanoid */ package com.robotoworks.example.ghissues.db; import android.content.ContentResolver; import android.database.Cursor; import android.os.Bundle; import android.os.Parcel; import android.os.Parcelable; import android.net.Uri; import com.robotoworks.example.ghissues.db.GithubDBContract.Issues; import com.robotoworks.example.ghissues.db.GithubDBContract.Issues.Builder; import com.robotoworks.mechanoid.util.Closeables; import com.robotoworks.mechanoid.db.ActiveRecord; import com.robotoworks.mechanoid.db.ActiveRecordFactory; import com.robotoworks.mechanoid.Mechanoid; import com.robotoworks.mechanoid.db.AbstractValuesBuilder; public class IssuesRecord extends ActiveRecord implements Parcelable { private static ActiveRecordFactory<IssuesRecord> sFactory = new ActiveRecordFactory<IssuesRecord>() { @Override public IssuesRecord create(Cursor c) { return fromCursor(c); } @Override public String[] getProjection() { return PROJECTION; } @Override public Uri getContentUri() { return Issues.CONTENT_URI; } }; public static ActiveRecordFactory<IssuesRecord> getFactory() { return sFactory; } public static final Parcelable.Creator<IssuesRecord> CREATOR = new Parcelable.Creator<IssuesRecord>() { public IssuesRecord createFromParcel(Parcel in) { return new IssuesRecord(in); } public IssuesRecord[] newArray(int size) { return new IssuesRecord[size]; } }; public static String[] PROJECTION = { Issues._ID, Issues.OWNER, Issues.REPO, Issues.GHID, Issues.NUMBER, Issues.TITLE, Issues.BODY, Issues.CREATED }; public interface Indices { int _ID = 0; int OWNER = 1; int REPO = 2; int GHID = 3; int NUMBER = 4; int TITLE = 5; int BODY = 6; int CREATED = 7; } private String mOwner; private boolean mOwnerDirty; private String mRepo; private boolean mRepoDirty; private long mGhid; private boolean mGhidDirty; private long mNumber; private boolean mNumberDirty; private String mTitle; private boolean mTitleDirty; private String mBody; private boolean mBodyDirty; private long mCreated; private boolean mCreatedDirty; @Override protected String[] _getProjection() { return PROJECTION; } public void setOwner(String owner) { mOwner = owner; mOwnerDirty = true; } public String getOwner() { return mOwner; } public void setRepo(String repo) { mRepo = repo; mRepoDirty = true; } public String getRepo() { return mRepo; } public void setGhid(long ghid) { mGhid = ghid; mGhidDirty = true; } public long getGhid() { return mGhid; } public void setNumber(long number) { mNumber = number; mNumberDirty = true; } public long getNumber() { return mNumber; } public void setTitle(String title) { mTitle = title; mTitleDirty = true; } public String getTitle() { return mTitle; } public void setBody(String body) { mBody = body; mBodyDirty = true; } public String getBody() { return mBody; } public void setCreated(long created) { mCreated = created; mCreatedDirty = true; } public long getCreated() { return mCreated; } public IssuesRecord() { super(Issues.CONTENT_URI); } private IssuesRecord(Parcel in) { super(Issues.CONTENT_URI); setId(in.readLong()); mOwner = in.readString(); mRepo = in.readString(); mGhid = in.readLong(); mNumber = in.readLong(); mTitle = in.readString(); mBody = in.readString(); mCreated = in.readLong(); boolean[] dirtyFlags = new boolean[7]; in.readBooleanArray(dirtyFlags); mOwnerDirty = dirtyFlags[0]; mRepoDirty = dirtyFlags[1]; mGhidDirty = dirtyFlags[2]; mNumberDirty = dirtyFlags[3]; mTitleDirty = dirtyFlags[4]; mBodyDirty = dirtyFlags[5]; mCreatedDirty = dirtyFlags[6]; } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeLong(getId()); dest.writeString(mOwner); dest.writeString(mRepo); dest.writeLong(mGhid); dest.writeLong(mNumber); dest.writeString(mTitle); dest.writeString(mBody); dest.writeLong(mCreated); dest.writeBooleanArray(new boolean[] { mOwnerDirty, mRepoDirty, mGhidDirty, mNumberDirty, mTitleDirty, mBodyDirty, mCreatedDirty }); } @Override protected AbstractValuesBuilder createBuilder() { Builder builder = Issues.newBuilder(); if(mOwnerDirty) { builder.setOwner(mOwner); } if(mRepoDirty) { builder.setRepo(mRepo); } if(mGhidDirty) { builder.setGhid(mGhid); } if(mNumberDirty) { builder.setNumber(mNumber); } if(mTitleDirty) { builder.setTitle(mTitle); } if(mBodyDirty) { builder.setBody(mBody); } if(mCreatedDirty) { builder.setCreated(mCreated); } return builder; } @Override public void makeDirty(boolean dirty){ mOwnerDirty = dirty; mRepoDirty = dirty; mGhidDirty = dirty; mNumberDirty = dirty; mTitleDirty = dirty; mBodyDirty = dirty; mCreatedDirty = dirty; } @Override protected void setPropertiesFromCursor(Cursor c) { setId(c.getLong(Indices._ID)); setOwner(c.getString(Indices.OWNER)); setRepo(c.getString(Indices.REPO)); setGhid(c.getLong(Indices.GHID)); setNumber(c.getLong(Indices.NUMBER)); setTitle(c.getString(Indices.TITLE)); setBody(c.getString(Indices.BODY)); setCreated(c.getLong(Indices.CREATED)); } public static IssuesRecord fromCursor(Cursor c) { IssuesRecord item = new IssuesRecord(); item.setPropertiesFromCursor(c); item.makeDirty(false); return item; } public static IssuesRecord fromBundle(Bundle bundle, String key) { bundle.setClassLoader(IssuesRecord.class.getClassLoader()); return bundle.getParcelable(key); } public static IssuesRecord get(long id) { Cursor c = null; ContentResolver resolver = Mechanoid.getContentResolver(); try { c = resolver.query(Issues.CONTENT_URI.buildUpon() .appendPath(String.valueOf(id)).build(), PROJECTION, null, null, null); if(!c.moveToFirst()) { return null; } return fromCursor(c); } finally { Closeables.closeSilently(c); } } }