package org.playorm.cron.impl.db; import org.joda.time.DateTime; import com.alvazan.orm.api.base.NoSqlEntityManager; import com.alvazan.orm.api.base.Query; import com.alvazan.orm.api.base.anno.NoSqlEntity; import com.alvazan.orm.api.base.anno.NoSqlId; import com.alvazan.orm.api.base.anno.NoSqlIndexed; import com.alvazan.orm.api.base.anno.NoSqlQuery; import com.alvazan.orm.api.z8spi.KeyValue; import com.alvazan.orm.api.z8spi.iter.Cursor; @NoSqlEntity @NoSqlQuery(name="all", query="select s from TABLE as s") public class WebNodeDbo { @NoSqlId(usegenerator=false) private String webServerName; private DateTime lastSeen; //purely for index and NOT on isUp on purpose as we could get corrupt index too easily with computers running @NoSqlIndexed private String indexed = "webnode"; private boolean isUp; @Override public String toString() { return "[webNode='"+webServerName+"' up="+isUp+" lastSeen="+lastSeen+"]"; } public String getWebServerName() { return webServerName; } public void setWebServerName(String webServerName) { this.webServerName = webServerName; } public DateTime getLastSeen() { return lastSeen; } public void setLastSeen(DateTime lastSeen) { this.lastSeen = lastSeen; } public boolean isUp() { return isUp; } public void setUp(boolean isUp) { this.isUp = isUp; } public static Cursor<KeyValue<WebNodeDbo>> findAllNodes(NoSqlEntityManager mgr) { Query<WebNodeDbo> query = mgr.createNamedQuery(WebNodeDbo.class, "all"); return query.getResults(); } }