@Override public String toString() { return String.format( "[%s@%d::criticality=%s, cookie=%s, refreshDeletes=%s]", getClass().getName(), hashCode(), getCriticality(), LdapUtils.base64Encode(cookie), refreshDeletes); }
@Override public int hashCode() { return LdapUtils.computeHashCode(HASH_CODE_SEED, getOID(), getCriticality(), cookie, refreshDeletes); }
/** * Creates a new sync done control. * * @param value sync done cookie * @param refresh whether to refresh deletes * @param critical whether this control is critical */ public SyncDoneControl(final byte[] value, final boolean refresh, final boolean critical) { super(OID, critical); setCookie(value); setRefreshDeletes(refresh); }
/** * @param berValue to encode. * @param expected sync done control to test. * * @throws Exception On test failure. */ @Test(groups = {"control"}, dataProvider = "response") public void decode(final byte[] berValue, final SyncDoneControl expected) throws Exception { final SyncDoneControl actual = new SyncDoneControl(expected.getCriticality()); actual.decode(berValue); Assert.assertEquals(actual, expected); } }
"MDkENHJpZD0wMDAsY3NuPTIwMTIwNzAzMjA0ODAwLjYwOTcyMVojMDAwMDAwIzAw" + "MCMwMDAwMDABAf8="), new SyncDoneControl( new byte[] { (byte) 0x72, (byte) 0x69, (byte) 0x64, (byte) 0x3D, (byte) 0x30,
/** * Creates a new sync done control. * * @param value sync done cookie * @param critical whether this control is critical */ public SyncDoneControl(final byte[] value, final boolean critical) { super(OID, critical); setCookie(value); }
@Override public void handle(final DERParser parser, final ByteBuffer encoded) { getObject().setRefreshDeletes(BooleanType.decode(encoded)); } }
@Override public HandlerResult<Response<SearchResult>> handle( final Connection conn, final SearchRequest request, final Response<SearchResult> response) throws LdapException { try { logger.debug("received {}", response); search.shutdown(); final SyncReplItem item = new SyncReplItem(new SyncReplItem.Response(response)); if (item.getResponse().getSyncDoneControl() != null) { final byte[] cookie = item.getResponse().getSyncDoneControl().getCookie(); if (cookie != null) { manager.writeCookie(cookie); } } queue.put(item); } catch (Exception e) { logger.warn("Unable to enqueue response {}", response); } return new HandlerResult<>(response); } });
} else if (SyncDoneControl.OID.equals(responseControl.getOid())) { final SyncDoneValue c = (SyncDoneValue) responseControl; ctl = new SyncDoneControl(c.getCookie(), c.isRefreshDeletes(), c.isCritical()); } else if (EntryChangeNotificationControl.OID.equals(responseControl.getOid())) { final EntryChange c = (EntryChange) responseControl;
/** * Creates a new sync done control. * * @param value sync done cookie */ public SyncDoneControl(final byte[] value) { super(OID); setCookie(value); }
@Override public void handle(final DERParser parser, final ByteBuffer encoded) { getObject().setRefreshDeletes(BooleanType.decode(encoded)); } }
@Override public HandlerResult<Response<SearchResult>> handle( final Connection conn, final SearchRequest request, final Response<SearchResult> response) throws LdapException { try { logger.debug("received {}", response); search.shutdown(); final SyncReplItem item = new SyncReplItem(new SyncReplItem.Response(response)); if (item.getResponse().getSyncDoneControl() != null) { final byte[] cookie = item.getResponse().getSyncDoneControl().getCookie(); if (cookie != null) { manager.writeCookie(cookie); } } queue.put(item); } catch (Exception e) { logger.warn("Unable to enqueue response {}", response); } return new HandlerResult<>(response); } });
ctl = new SyncDoneControl(critical); ctl.decode(encoded); break;
@Override public String toString() { return String.format( "[%s@%d::criticality=%s, cookie=%s, refreshDeletes=%s]", getClass().getName(), hashCode(), getCriticality(), LdapUtils.base64Encode(cookie), refreshDeletes); }
@Override public int hashCode() { return LdapUtils.computeHashCode(HASH_CODE_SEED, getOID(), getCriticality(), cookie, refreshDeletes); }
/** * Creates a new sync done control. * * @param value sync done cookie * @param refresh whether to refresh deletes * @param critical whether this control is critical */ public SyncDoneControl(final byte[] value, final boolean refresh, final boolean critical) { super(OID, critical); setCookie(value); setRefreshDeletes(refresh); }
/** * Creates a new sync done control. * * @param value sync done cookie */ public SyncDoneControl(final byte[] value) { super(OID); setCookie(value); }
@Override public void handle(final DERParser parser, final ByteBuffer encoded) { getObject().setRefreshDeletes(BooleanType.decode(encoded)); } }
@Override public HandlerResult<Response<SearchResult>> handle( final Connection conn, final SearchRequest request, final Response<SearchResult> response) throws LdapException { try { logger.debug("received {}", response); search.shutdown(); final SyncReplItem item = new SyncReplItem(new SyncReplItem.Response(response)); if (item.getResponse().getSyncDoneControl() != null) { final byte[] cookie = item.getResponse().getSyncDoneControl().getCookie(); if (cookie != null) { manager.writeCookie(cookie); } } queue.put(item); } catch (Exception e) { logger.warn("Unable to enqueue response {}", response); } return new HandlerResult<>(response); } });
ctl = new SyncDoneControl(critical); ctl.decode(encoded); break;