@Override public boolean isValid() { return sobj.isValid(); }
protected ISObject buf() { if (null == buf) { synchronized (this) { if (null == buf) { buf = loadBuf(); if (!buf.isValid()) { this.valid = false; this.cause = buf.getException(); } } } } return buf; }
@Override public ISObject forceGet(final String key) { ISObject sobj = Cache.get(key, ISObject.class); if (null != sobj) { return sobj; } if (migrateData) { // try gfs first sobj = gs.get(key); if (null != sobj) { putLater(key, sobj, ss, new _.F0<Void>() { @Override public Void apply() { removeLater(key, gs, 60); return null; } }, _.F1); } } if (null == sobj) { sobj = ss.forceGet(key); if (!sobj.isValid()) { Throwable cause = sobj.getException(); Logger.warn(cause, "error load blob by key[%s]", key); } } return sobj; }
return sobj; if (!sobj.isValid()) { Throwable cause = sobj.getException(); Logger.warn(cause, "error load blob by key[%s]", key);