package com.hwlcn.ldap.ldap.sdk.migrate.ldapjdk; import java.io.Serializable; import com.hwlcn.ldap.ldap.sdk.Control; import com.hwlcn.ldap.ldap.sdk.LDAPResult; import com.hwlcn.core.annotation.Extensible; import com.hwlcn.core.annotation.NotMutable; import com.hwlcn.core.annotation.ThreadSafety; import com.hwlcn.ldap.util.ThreadSafetyLevel; @Extensible() @NotMutable() @ThreadSafety(level=ThreadSafetyLevel.COMPLETELY_THREADSAFE) public class LDAPResponse implements Serializable { private static final long serialVersionUID = -8401666939604882177L; private final LDAPResult ldapResult; public LDAPResponse(final LDAPResult ldapResult) { this.ldapResult = ldapResult; } public int getMessageID() { return ldapResult.getMessageID(); } public int getResultCode() { return ldapResult.getResultCode().intValue(); } public String getErrorMessage() { return ldapResult.getDiagnosticMessage(); } public String getMatchedDN() { return ldapResult.getMatchedDN(); } public String[] getReferrals() { final String[] referrals = ldapResult.getReferralURLs(); if (referrals.length == 0) { return null; } else { return referrals; } } public LDAPControl[] getControls() { final Control[] controls = ldapResult.getResponseControls(); if (controls.length == 0) { return null; } return LDAPControl.toLDAPControls(controls); } public final LDAPResult toLDAPResult() { return ldapResult; } @Override() public String toString() { return ldapResult.toString(); } }