1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
class MyActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
entryMap = new HashMap<String, SearchResultEntry>(0);
entries = new LinkedList<SearchResultEntry>();
mButtonConnect = (Button) findViewById(R.id.buttonConnect);
mButtonConnect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MyActivity.this.onCreate();
}
}
}
void onCreate()
{
Log.d(TAG, "onCreate");
/*SocketFactory socketFactory = null;
// Utilisation du ssl :
final SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager());
try {
socketFactory = sslUtil.createSSLSocketFactory();
} catch (Exception e) {
Log.d(TAG, "SSL erreur", e);
}*/
final LDAPConnectionOptions options = new LDAPConnectionOptions();
options.setAutoReconnect(true);
options.setConnectTimeoutMillis(30000);
options.setFollowReferrals(false);
options.setMaxMessageSize(1024*1024);
// Connection à l'annuaire LDAP
try {
LDAPConnection connection = new LDAPConnection(options,mHost,mPort, mBind, mPassword);
// Vérifie si la connexion est faite
if (connection.isConnected()) mEtatConnect.setText("Connecté à LDAP");
else mEtatConnect.setText("Erreur de connexion");
// Pour le test on lance une recherche sur l'annuaire
// Affiche la recherche dans une liste
try {
SearchResult searchResults = connection.search(mBase, SearchScope.SUB, mSearchFilter);
Log.i(TAG, searchResults.getEntryCount() + " entrées");
mEtatConnect.setText(searchResults.getEntryCount() + " entrées");
entryMap = new HashMap<String, SearchResultEntry>(entries.size());
final String[] entryStrings = new String[entries.size()];
for (int i = 0 ; i < entryStrings.length ; i++)
{
final SearchResultEntry e = entries.get(i);
entryMap.put(entryStrings[i], e);
}
Arrays.sort(entryStrings);
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, entryStrings);
mListeSearch.setAdapter(adapter);
Toast.makeText(ClientActivity.this, "Fin de la recherche", Toast.LENGTH_LONG).show();
} catch (LDAPSearchException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (LDAPException le) {
Log.d(TAG, "Connection LDAP", le);
Toast.makeText(ClientActivity.this, "Erreur lors de la connexion au serveur LDAP", Toast.LENGTH_LONG).show();
}
}
} |