use of org.apache.directory.api.ldap.model.message.BindRequest in project directory-ldap-api by apache.
the class QuirkySchemaTest method createFakeConnection.
private LdapConnection createFakeConnection(final String schemaFileName) {
return new LdapConnection() {
@Override
public void unBind() throws LdapException {
}
@Override
public void setTimeOut(long timeOut) {
}
@Override
public void setSchemaManager(SchemaManager schemaManager) {
}
@Override
public void setBinaryAttributeDetector(BinaryAttributeDetector binaryAttributeDetecter) {
}
@Override
public SearchCursor search(SearchRequest searchRequest) throws LdapException {
return null;
}
@Override
public EntryCursor search(String baseDn, String filter, SearchScope scope, String... attributes) throws LdapException {
return null;
}
@Override
public EntryCursor search(Dn baseDn, String filter, SearchScope scope, String... attributes) throws LdapException {
return null;
}
@Override
public void rename(Dn entryDn, Rdn newRdn, boolean deleteOldRdn) throws LdapException {
}
@Override
public void rename(String entryDn, String newRdn, boolean deleteOldRdn) throws LdapException {
}
@Override
public void rename(Dn entryDn, Rdn newRdn) throws LdapException {
}
@Override
public void rename(String entryDn, String newRdn) throws LdapException {
}
@Override
public void moveAndRename(String entryDn, String newDn, boolean deleteOldRdn) throws LdapException {
}
@Override
public void moveAndRename(Dn entryDn, Dn newDn, boolean deleteOldRdn) throws LdapException {
}
@Override
public void moveAndRename(String entryDn, String newDn) throws LdapException {
}
@Override
public void moveAndRename(Dn entryDn, Dn newDn) throws LdapException {
}
@Override
public void move(Dn entryDn, Dn newSuperiorDn) throws LdapException {
}
@Override
public void move(String entryDn, String newSuperiorDn) throws LdapException {
}
@Override
public ModifyDnResponse modifyDn(ModifyDnRequest modDnRequest) throws LdapException {
return null;
}
@Override
public ModifyResponse modify(ModifyRequest modRequest) throws LdapException {
return null;
}
@Override
public void modify(Entry entry, ModificationOperation modOp) throws LdapException {
}
@Override
public void modify(String dn, Modification... modifications) throws LdapException {
}
@Override
public void modify(Dn dn, Modification... modifications) throws LdapException {
}
@Override
public Entry lookup(String dn, Control[] controls, String... attributes) throws LdapException {
return lookup(new Dn(dn));
}
@Override
public Entry lookup(String dn, String... attributes) throws LdapException {
return lookup(new Dn(dn));
}
@Override
public Entry lookup(Dn dn, Control[] controls, String... attributes) throws LdapException {
return lookup(dn);
}
@Override
public Entry lookup(Dn dn, String... attributes) throws LdapException {
return lookup(dn);
}
@Override
public Entry lookup(String dn) throws LdapException {
return lookup(new Dn(dn));
}
@Override
public Entry lookup(Dn dn) throws LdapException {
if (dn.isRootDse()) {
Entry entry = new DefaultEntry(dn);
entry.add(SchemaConstants.SUBSCHEMA_SUBENTRY_AT, SCHEMA_DN);
return entry;
} else if (dn.toString().equals(SCHEMA_DN)) {
Entry entry = loadSchemaEntry(schemaFileName);
return entry;
} else {
throw new UnsupportedOperationException("Unexpected DN " + dn);
}
}
@Override
public void loadSchemaRelaxed() throws LdapException {
}
@Override
public void loadSchema() throws LdapException {
}
@Override
public boolean isRequestCompleted(int messageId) {
return true;
}
@Override
public boolean isControlSupported(String controlOID) throws LdapException {
return true;
}
@Override
public boolean isConnected() {
return true;
}
@Override
public boolean isAuthenticated() {
return false;
}
@Override
public List<String> getSupportedControls() throws LdapException {
return null;
}
@Override
public SchemaManager getSchemaManager() {
return null;
}
@Override
public Entry getRootDse(String... attributes) throws LdapException {
return lookup(Dn.ROOT_DSE);
}
@Override
public Entry getRootDse() throws LdapException {
return lookup(Dn.ROOT_DSE);
}
@Override
public LdapApiService getCodecService() {
return null;
}
@Override
public BinaryAttributeDetector getBinaryAttributeDetector() {
return null;
}
@Override
public ExtendedResponse extended(ExtendedRequest extendedRequest) throws LdapException {
return null;
}
@Override
public ExtendedResponse extended(Oid oid, byte[] value) throws LdapException {
return null;
}
@Override
public ExtendedResponse extended(Oid oid) throws LdapException {
return null;
}
@Override
public ExtendedResponse extended(String oid, byte[] value) throws LdapException {
return null;
}
@Override
public ExtendedResponse extended(String oid) throws LdapException {
return null;
}
@Override
public boolean exists(Dn dn) throws LdapException {
return false;
}
@Override
public boolean exists(String dn) throws LdapException {
return false;
}
@Override
public boolean doesFutureExistFor(int messageId) {
return false;
}
@Override
public DeleteResponse delete(DeleteRequest deleteRequest) throws LdapException {
return null;
}
@Override
public void delete(Dn dn) throws LdapException {
}
@Override
public void delete(String dn) throws LdapException {
}
@Override
public boolean connect() throws LdapException {
return true;
}
@Override
public CompareResponse compare(CompareRequest compareRequest) throws LdapException {
return null;
}
@Override
public boolean compare(Dn dn, String attributeName, byte[] value) throws LdapException {
return false;
}
@Override
public boolean compare(Dn dn, String attributeName, String value) throws LdapException {
return false;
}
@Override
public boolean compare(String dn, String attributeName, byte[] value) throws LdapException {
return false;
}
@Override
public boolean compare(String dn, String attributeName, String value) throws LdapException {
return false;
}
@Override
public void close() throws IOException {
}
@Override
public BindResponse bind(BindRequest bindRequest) throws LdapException {
return null;
}
@Override
public void bind(Dn name, String credentials) throws LdapException {
}
@Override
public void bind(Dn name) throws LdapException {
}
@Override
public void bind(String name, String credentials) throws LdapException {
}
@Override
public void bind(String name) throws LdapException {
}
@Override
public void bind() throws LdapException {
}
@Override
public void anonymousBind() throws LdapException {
}
@Override
public AddResponse add(AddRequest addRequest) throws LdapException {
return null;
}
@Override
public void add(Entry entry) throws LdapException {
}
@Override
public void abandon(AbandonRequest abandonRequest) {
}
@Override
public void abandon(int messageId) {
}
@Override
public boolean compare(String dn, String attributeName, Value value) throws LdapException {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean compare(Dn dn, String attributeName, Value value) throws LdapException {
// TODO Auto-generated method stub
return false;
}
@Override
public BindResponse bind(SaslRequest saslRequest) throws LdapException {
// TODO Auto-generated method stub
return null;
}
};
}
use of org.apache.directory.api.ldap.model.message.BindRequest in project directory-ldap-api by apache.
the class ValidatingPoolableLdapConnectionFactoryTest method testPoolWithBind.
@Test
public void testPoolWithBind() {
PoolTester tester = new PoolTester();
// no bind
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind()
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
connection.bind();
verify(connection, times(1)).bind();
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// anonymousBind()
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
connection.anonymousBind();
verify(connection, times(1)).anonymousBind();
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind( String )
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
connection.bind("");
verify(connection, times(1)).bind("");
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// admin bind( String, String )
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
connection.bind(ADMIN_DN, ADMIN_CREDENTIALS);
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind( String, String )
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
connection.bind("", "");
verify(connection, times(1)).bind("", "");
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind( Dn )
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
Dn dn = new Dn();
connection.bind(dn);
verify(connection, times(1)).bind(dn);
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind( Dn, String )
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
Dn dn = new Dn();
connection.bind(dn, "");
verify(connection, times(1)).bind(dn, "");
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
// bind( BindRequest );
tester.execute(new WithConnection() {
@Override
public void execute(LdapConnection connection, Counts counts) throws LdapException {
BindRequest bindRequest = new BindRequestImpl();
connection.bind(bindRequest);
verify(connection, times(1)).bind(bindRequest);
verifyAdminBind(connection, times(counts.adminBindCount));
}
});
}
use of org.apache.directory.api.ldap.model.message.BindRequest in project directory-ldap-api by apache.
the class InitBindRequest method action.
/**
* {@inheritDoc}
*/
public void action(LdapMessageContainer<BindRequestDecorator> container) throws DecoderException {
// Create the BindRequest LdapMessage instance and store it in the container
BindRequest internalBindRequest = new BindRequestImpl();
internalBindRequest.setMessageId(container.getMessageId());
BindRequestDecorator bindRequest = new BindRequestDecorator(container.getLdapCodecService(), internalBindRequest);
container.setMessage(bindRequest);
// We will check that the request is not null
TLV tlv = container.getCurrentTLV();
if (tlv.getLength() == 0) {
String msg = I18n.err(I18n.ERR_04077);
LOG.error(msg);
// This will generate a PROTOCOL_ERROR
throw new DecoderException(msg);
}
}
use of org.apache.directory.api.ldap.model.message.BindRequest in project directory-ldap-api by apache.
the class StoreSaslMechanism method action.
/**
* {@inheritDoc}
*/
public void action(LdapMessageContainer<BindRequestDecorator> container) {
BindRequest bindRequestMessage = container.getMessage();
TLV tlv = container.getCurrentTLV();
// mechanism
if (tlv.getLength() == 0) {
bindRequestMessage.setSaslMechanism("");
} else {
bindRequestMessage.setSaslMechanism(Strings.utf8ToString(tlv.getValue().getData()));
}
// We can have an END transition
container.setGrammarEndAllowed(true);
if (IS_DEBUG) {
LOG.debug("The mechanism is : {}", bindRequestMessage.getSaslMechanism());
}
}
use of org.apache.directory.api.ldap.model.message.BindRequest in project directory-ldap-api by apache.
the class StoreSimpleAuth method action.
/**
* {@inheritDoc}
*/
public void action(LdapMessageContainer<BindRequestDecorator> container) throws DecoderException {
BindRequest bindRequestMessage = container.getMessage();
TLV tlv = container.getCurrentTLV();
// Allocate the Authentication Object
bindRequestMessage.setSimple(true);
// We have to handle the special case of a 0 length simple
if (tlv.getLength() == 0) {
bindRequestMessage.setCredentials(Strings.EMPTY_BYTES);
} else {
bindRequestMessage.setCredentials(tlv.getValue().getData());
}
// We can have an END transition
container.setGrammarEndAllowed(true);
if (IS_DEBUG) {
LOG.debug("The simple authentication is : {}", Strings.dumpBytes(bindRequestMessage.getCredentials()));
}
}
Aggregations