Queries.java
package net.metanotion.contentstore;
/** <i>This is a SQL query class generated by the SQLC compiler.</i> */
@javax.annotation.Generated("net.metanotion.sqlc.SQLC") public final class Queries {
private final net.metanotion.util.Dictionary<Class,net.metanotion.util.types.Parser> types;
public Queries() { this.types = new net.metanotion.util.types.TypeDictionary(); }
public Queries(net.metanotion.util.Dictionary<Class,net.metanotion.util.types.Parser> types) { this.types = types; }
public int deleteCollection(final java.sql.Connection _0, final @javax.inject.Named("id") long _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("DELETE FROM Collections WHERE CollectionID = ?")) {
_2.setLong(1, _1);
final int _3 = _2.executeUpdate();
return _3;
}
}
public java.util.List<net.metanotion.contentstore.Header> listCollectionHeaders(final java.sql.Connection _0, final @javax.inject.Named("id") long _1, final @javax.inject.Named("pageSize") int _2, final @javax.inject.Named("pageOffset") int _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("SELECT Title, EntryID AS id\r\n\t\t\tFROM Entries\r\n\t\t\tWHERE CollectionID = ?\r\n\t\t\tORDER BY AddedDate DESC\r\n\t\t\tLIMIT ?\r\n\t\t\tOFFSET ?")) {
_4.setLong(1, _1);
_4.setInt(2, _2);
_4.setInt(3, _3);
try (final java.sql.ResultSet _5 = _4.executeQuery()) {
final java.util.List<net.metanotion.contentstore.Header> _6 = new java.util.ArrayList<net.metanotion.contentstore.Header>();
final net.metanotion.util.reflect.GetInitializer<net.metanotion.contentstore.Header> _7 = net.metanotion.util.reflect.ReflectiveFieldInitializer.getInitializer(net.metanotion.contentstore.Header.class, this.types);
while(_5.next()) {
final net.metanotion.util.reflect.Initializer<net.metanotion.contentstore.Header> _8 = _7.initializer();
_8.put("Title", _5.getString("Title"));
_8.put("id", _5.getLong("id"));
_6.add(_8.instance());
}
return _6;
}
}
}
public int addCollection(final java.sql.Connection _0, final @javax.inject.Named("name") String _1, final @javax.inject.Named("id") long _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("INSERT INTO Collections(Name, CollectionID) VALUES (?, ?)")) {
_3.setString(1, _1);
_3.setLong(2, _2);
final int _4 = _3.executeUpdate();
return _4;
}
}
public int updateTextEntry(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("content") String _2, final @javax.inject.Named("contentType") String _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("DELETE FROM FileItems WHERE EntryID = ?")) {
_4.setLong(1, _1);
final int _5 = _4.executeUpdate();
try (final java.sql.PreparedStatement _6 = _0.prepareStatement("UPDATE TextItems SET Content = ?, ContentType = ? WHERE EntryID = ?")) {
_6.setString(1, _2);
_6.setString(2, _3);
_6.setLong(3, _1);
final int _7 = _6.executeUpdate();
try (final java.sql.PreparedStatement _8 = _0.prepareStatement("INSERT INTO TextItems (EntryID, Content, ContentType) \r\n\t\t\tSELECT ?, ?, ?\r\n\t\t\t\tWHERE NOT EXISTS (SELECT 1 FROM TextItems WHERE EntryID = ?)")) {
_8.setLong(1, _1);
_8.setString(2, _2);
_8.setString(3, _3);
_8.setLong(4, _1);
final int _9 = _8.executeUpdate();
return _9;
}
}
}
}
public int addEntry(final java.sql.Connection _0, final @javax.inject.Named("cid") long _1, final @javax.inject.Named("eid") long _2, final @javax.inject.Named("title") String _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("INSERT INTO Entries(CollectionID, EntryID, Title) VALUES (?, ?, ?)")) {
_4.setLong(1, _1);
_4.setLong(2, _2);
_4.setString(3, _3);
final int _5 = _4.executeUpdate();
return _5;
}
}
public int detachCollection(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("cid") long _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("DELETE FROM Attachments WHERE EntryID = ? AND CollectionID = ?")) {
_3.setLong(1, _1);
_3.setLong(2, _2);
final int _4 = _3.executeUpdate();
return _4;
}
}
public long reserveFID(final java.sql.Connection _0) throws Exception {
try (final java.sql.PreparedStatement _1 = _0.prepareStatement("SELECT nextval('FileIds_FileId_seq') AS FID")) {
try (final java.sql.ResultSet _2 = _1.executeQuery()) {
_2.next();
return _2.getLong(1);
}
}
}
public net.metanotion.contentstore.SQLEntry getEntry(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("SELECT\te.Title AS Title,\r\n\t\t\t\t\te.EntryID AS id,\r\n\t\t\t\t\te.CollectionID AS cid,\r\n\t\t\t\t\te.AddedDate AS AddedDate,\r\n\t\t\t\t\tCOALESCE(ti.ContentType, fi.ContentType) AS ContentType,\r\n\t\t\t\t\tCOALESCE(ti.UpdateDate, fi.UpdateDate) AS UpdateDate,\r\n\t\t\t\t\tti.Content AS TextValue,\r\n\t\t\t\t\tfi.OriginalFileName AS FileName,\r\n\t\t\t\t\tfi.FileID AS FileID\r\n\t\t\tFROM Entries e\r\n\t\t\t\tLEFT JOIN TextItems ti\r\n\t\t\t\t\tON (e.EntryID = ti.EntryID)\r\n\t\t\t\tLEFT JOIN FileItems fi\r\n\t\t\t\t\tON (e.EntryID = fi.EntryID)\r\n\t\t\tWHERE e.EntryID = ?")) {
_2.setLong(1, _1);
try (final java.sql.ResultSet _3 = _2.executeQuery()) {
_3.next();
final net.metanotion.util.reflect.GetInitializer<net.metanotion.contentstore.SQLEntry> _4 = net.metanotion.util.reflect.ReflectiveFieldInitializer.getInitializer(net.metanotion.contentstore.SQLEntry.class, this.types);
final net.metanotion.util.reflect.Initializer<net.metanotion.contentstore.SQLEntry> _5 = _4.initializer();
_5.put("Title", _3.getString("Title"));
_5.put("id", _3.getLong("id"));
_5.put("cid", _3.getLong("cid"));
_5.put("AddedDate", _3.getDate("AddedDate"));
_5.put("ContentType", _3.getString("ContentType"));
_5.put("UpdateDate", _3.getDate("UpdateDate"));
_5.put("TextValue", _3.getString("TextValue"));
_5.put("FileName", _3.getString("FileName"));
_5.put("FileID", _3.getLong("FileID"));
return _5.instance();
}
}
}
public long reserveEID(final java.sql.Connection _0) throws Exception {
try (final java.sql.PreparedStatement _1 = _0.prepareStatement("SELECT nextval('Entries_EntryID_seq') AS EID")) {
try (final java.sql.ResultSet _2 = _1.executeQuery()) {
_2.next();
return _2.getLong(1);
}
}
}
public int updateCollectionTitle(final java.sql.Connection _0, final @javax.inject.Named("id") long _1, final @javax.inject.Named("title") String _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("UPDATE Collections SET Name = ? WHERE CollectionID = ?")) {
_3.setString(1, _2);
_3.setLong(2, _1);
final int _4 = _3.executeUpdate();
return _4;
}
}
public int attachCollection(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("cid") long _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("INSERT INTO Attachments(EntryID, CollectionID) VALUES (?, ?)")) {
_3.setLong(1, _1);
_3.setLong(2, _2);
final int _4 = _3.executeUpdate();
return _4;
}
}
public int deleteEntry(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("DELETE FROM Entries WHERE EntryID = ?")) {
_2.setLong(1, _1);
final int _3 = _2.executeUpdate();
return _3;
}
}
public int updateFileEntry(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("newFid") long _2, final @javax.inject.Named("contentType") String _3, final @javax.inject.Named("originalName") String _4) throws Exception {
try (final java.sql.PreparedStatement _5 = _0.prepareStatement("DELETE FROM TextItems WHERE EntryID = ?")) {
_5.setLong(1, _1);
final int _6 = _5.executeUpdate();
try (final java.sql.PreparedStatement _7 = _0.prepareStatement("DELETE FROM FileItems WHERE EntryID = ?")) {
_7.setLong(1, _1);
final int _8 = _7.executeUpdate();
try (final java.sql.PreparedStatement _9 = _0.prepareStatement("INSERT INTO FileIds (FileId, Src) VALUES (?, 'K')")) {
_9.setLong(1, _2);
final int _10 = _9.executeUpdate();
try (final java.sql.PreparedStatement _11 = _0.prepareStatement("INSERT INTO FileItems (EntryID, FileID, ContentType, OriginalFileName)\r\n\t\t\tVALUES (?, ?, ?, ?)")) {
_11.setLong(1, _1);
_11.setLong(2, _2);
_11.setString(3, _3);
_11.setString(4, _4);
final int _12 = _11.executeUpdate();
return _12;
}
}
}
}
}
public int updateEntryTitle(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("title") String _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("UPDATE Entries SET Title = ? WHERE EntryID = ?")) {
_3.setString(1, _2);
_3.setLong(2, _1);
final int _4 = _3.executeUpdate();
return _4;
}
}
public java.util.List<net.metanotion.contentstore.Header> listEntryHeaders(final java.sql.Connection _0, final @javax.inject.Named("id") long _1, final @javax.inject.Named("pageSize") int _2, final @javax.inject.Named("pageOffset") int _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("SELECT c.Name AS Title, c.CollectionID AS id\r\n\t\t\tFROM Attachments a\r\n\t\t\t\tJOIN Collections c\r\n\t\t\t\t\tON (a.CollectionID = c.CollectionID)\r\n\t\t\tWHERE a.EntryID = ?\r\n\t\t\tORDER BY a.AddedDate DESC\r\n\t\t\tLIMIT ?\r\n\t\t\tOFFSET ?")) {
_4.setLong(1, _1);
_4.setInt(2, _2);
_4.setInt(3, _3);
try (final java.sql.ResultSet _5 = _4.executeQuery()) {
final java.util.List<net.metanotion.contentstore.Header> _6 = new java.util.ArrayList<net.metanotion.contentstore.Header>();
final net.metanotion.util.reflect.GetInitializer<net.metanotion.contentstore.Header> _7 = net.metanotion.util.reflect.ReflectiveFieldInitializer.getInitializer(net.metanotion.contentstore.Header.class, this.types);
while(_5.next()) {
final net.metanotion.util.reflect.Initializer<net.metanotion.contentstore.Header> _8 = _7.initializer();
_8.put("Title", _5.getString("Title"));
_8.put("id", _5.getLong("id"));
_6.add(_8.instance());
}
return _6;
}
}
}
public int moveEntry(final java.sql.Connection _0, final @javax.inject.Named("eid") long _1, final @javax.inject.Named("oldCid") long _2, final @javax.inject.Named("newCid") long _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("UPDATE Entries\r\n\t\t\tSET CollectionID = ?\r\n\t\t\tWHERE EntryID = ? AND CollectionID = ?")) {
_4.setLong(1, _3);
_4.setLong(2, _1);
_4.setLong(3, _2);
final int _5 = _4.executeUpdate();
return _5;
}
}
public long reserveCID(final java.sql.Connection _0) throws Exception {
try (final java.sql.PreparedStatement _1 = _0.prepareStatement("SELECT nextval('Collections_CollectionID_seq') AS CID")) {
try (final java.sql.ResultSet _2 = _1.executeQuery()) {
_2.next();
return _2.getLong(1);
}
}
}
public int finalizeFile(final java.sql.Connection _0, final @javax.inject.Named("fid") long _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("DELETE FROM FileItemDeleteQueue WHERE FileId = ?")) {
_2.setLong(1, _1);
final int _3 = _2.executeUpdate();
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("DELETE FROM FileIds WHERE FileId = ? AND Src = 'D'")) {
_4.setLong(1, _1);
final int _5 = _4.executeUpdate();
return _5;
}
}
}
public java.util.List<net.metanotion.contentstore.SQLEntry> listEntries(final java.sql.Connection _0, final @javax.inject.Named("cid") long _1, final @javax.inject.Named("pageSize") int _2, final @javax.inject.Named("pageOffset") int _3) throws Exception {
try (final java.sql.PreparedStatement _4 = _0.prepareStatement("SELECT\te.Title AS Title,\r\n\t\t\t\t\te.EntryID AS id,\r\n\t\t\t\t\te.AddedDate AS AddedDate,\r\n\t\t\t\t\tCOALESCE(ti.ContentType, fi.ContentType) AS ContentType,\r\n\t\t\t\t\tCOALESCE(ti.UpdateDate, fi.UpdateDate) AS UpdateDate,\r\n\t\t\t\t\tti.Content AS TextValue,\r\n\t\t\t\t\tfi.OriginalFileName AS FileName,\r\n\t\t\t\t\tfi.FileID AS FileID,\r\n\t\t\t\t\t? AS cid\r\n\t\t\tFROM Entries e\r\n\t\t\t\tLEFT JOIN TextItems ti\r\n\t\t\t\t\tON (e.EntryID = ti.EntryID)\r\n\t\t\t\tLEFT JOIN FileItems fi\r\n\t\t\t\t\tON (e.EntryID = fi.EntryID)\r\n\t\t\tWHERE e.CollectionID = ?\r\n\t\t\tORDER BY e.AddedDate DESC\r\n\t\t\tLIMIT ?\r\n\t\t\tOFFSET ?")) {
_4.setLong(1, _1);
_4.setLong(2, _1);
_4.setInt(3, _2);
_4.setInt(4, _3);
try (final java.sql.ResultSet _5 = _4.executeQuery()) {
final java.util.List<net.metanotion.contentstore.SQLEntry> _6 = new java.util.ArrayList<net.metanotion.contentstore.SQLEntry>();
final net.metanotion.util.reflect.GetInitializer<net.metanotion.contentstore.SQLEntry> _7 = net.metanotion.util.reflect.ReflectiveFieldInitializer.getInitializer(net.metanotion.contentstore.SQLEntry.class, this.types);
while(_5.next()) {
final net.metanotion.util.reflect.Initializer<net.metanotion.contentstore.SQLEntry> _8 = _7.initializer();
_8.put("Title", _5.getString("Title"));
_8.put("id", _5.getLong("id"));
_8.put("AddedDate", _5.getDate("AddedDate"));
_8.put("ContentType", _5.getString("ContentType"));
_8.put("UpdateDate", _5.getDate("UpdateDate"));
_8.put("TextValue", _5.getString("TextValue"));
_8.put("FileName", _5.getString("FileName"));
_8.put("FileID", _5.getLong("FileID"));
_8.put("cid", _5.getLong("cid"));
_6.add(_8.instance());
}
return _6;
}
}
}
public java.util.List<Long> readDeleteQueue(final java.sql.Connection _0, final @javax.inject.Named("fid") long _1, final @javax.inject.Named("maxFiles") int _2) throws Exception {
try (final java.sql.PreparedStatement _3 = _0.prepareStatement("SELECT FileId\r\n\t\t\tFROM FileItemDeleteQueue\r\n\t\t\tWHERE FileId >= ?\r\n\t\t\tORDER BY FileId ASC\r\n\t\t\tLIMIT ?")) {
_3.setLong(1, _1);
_3.setInt(2, _2);
try (final java.sql.ResultSet _4 = _3.executeQuery()) {
final java.util.List<Long> _5 = new java.util.ArrayList<Long>();
while(_4.next()) {
_5.add(_4.getLong(1));
}
return _5;
}
}
}
public long lookupCollection(final java.sql.Connection _0, final @javax.inject.Named("name") String _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("SELECT CollectionID FROM Collections WHERE Name = ?")) {
_2.setString(1, _1);
try (final java.sql.ResultSet _3 = _2.executeQuery()) {
_3.next();
return _3.getLong(1);
}
}
}
public String getCollection(final java.sql.Connection _0, final @javax.inject.Named("id") long _1) throws Exception {
try (final java.sql.PreparedStatement _2 = _0.prepareStatement("SELECT Name FROM Collections WHERE CollectionID = ?")) {
_2.setLong(1, _1);
try (final java.sql.ResultSet _3 = _2.executeQuery()) {
_3.next();
return _3.getString(1);
}
}
}
}