@Override public void call(RegionObserver observer) throws IOException { observer.preDelete(this, delete, edit, durability); } });
@Override public void preDelete(ObserverContext<RegionCoprocessorEnvironment> c, Delete delete, WALEdit edit, Durability durability) throws IOException { delegate.preDelete(c, delete, edit, durability); }
@Override public void preDelete(ObserverContext<RegionCoprocessorEnvironment> c, Delete delete, WALEdit edit, Durability durability) throws IOException { delegate.preDelete(c, delete, edit, durability); }
@Override public void preDelete(ObserverContext<RegionCoprocessorEnvironment> c, Delete delete, WALEdit edit, Durability durability) throws IOException { delegate.preDelete(c, delete, edit, durability); }
@Override public void call(RegionObserver oserver, ObserverContext<RegionCoprocessorEnvironment> ctx) throws IOException { oserver.preDelete(ctx, delete, edit, durability); } });
@Override public void preDelete(ObserverContext<RegionCoprocessorEnvironment> c, Delete delete, WALEdit edit, Durability durability) throws IOException { if(LOG.isDebugEnabled()) { LOG.debug("==> HBaseAtlasCoprocessor.preDelete()"); } try { activatePluginClassLoader(); implRegionObserver.preDelete(c, delete, edit, durability); } finally { deactivatePluginClassLoader(); } if(LOG.isDebugEnabled()) { LOG.debug("<== HBaseAtlasCoprocessor.preDelete()"); } }
/** * @param delete The Delete object * @param edit The WALEdit object. * @param writeToWAL true if the change should be written to the WAL * @return true if default processing should be bypassed * @exception IOException Exception */ public boolean preDelete(Delete delete, WALEdit edit, final boolean writeToWAL) throws IOException { boolean bypass = false; ObserverContext<RegionCoprocessorEnvironment> ctx = null; for (RegionEnvironment env: coprocessors) { if (env.getInstance() instanceof RegionObserver) { ctx = ObserverContext.createAndPrepare(env, ctx); try { ((RegionObserver)env.getInstance()).preDelete(ctx, delete, edit, writeToWAL); } catch (Throwable e) { handleCoprocessorThrowable(env, e); } bypass |= ctx.shouldBypass(); if (ctx.shouldComplete()) { break; } } } return bypass; }