On 3/28/10 2:11 PM, Matt Doran wrote:
On 28/03/2010 11:05 PM, Matt Doran wrote:
On 28/03/2010 5:55 PM, Matt Doran wrote:
Hi there,

I've been working through implementing a custom partition. I have a peculiar requirement to know the details of the network connection where the request has come from when I'm processing the partition requests (i.e. in my custom partition implementation).

I can't see anything obvious that might give me access to this information. Is this possible?

If I wanted to add this info (even as a thread local), is there a hook point that I could use to collect/save this information?



I found the "getClientAddress()" method available on the session. e.g. in the following code fragment.

        public ClonedServerEntry lookup(LookupOperationContext ctx) {

            if (logger.isDebugEnabled()) {
                logger.debug("lookup(dn=" + ctx.getDn() + "), attrs: "
   + ctx.getAttrsId()
+ " addr: " + ctx.getSession().getClientAddress());
            }


However it always seems to be null even when making requests to the server over the network. Any ideas?


I just did some digging ..... and I found it. Looks like it's not implemented on DefaultCoreSession ...

        /* (non-Javadoc)
         * @see
   org.apache.directory.server.core.CoreSession#getClientAddress()
         */
        public SocketAddress getClientAddress()
        {
            // TODO Auto-generated method stub
            return null;
        }


Hmmm. :(

Any ideas how I might be able to get the client network address?
Actually, we don't store networ information at the LDAP level. May be we are wrong and we should do it.

Can you fill a JIRA asking for those informations to be added into the Ldap session ?


--
Regards,
Cordialement,
Emmanuel Lécharny
www.nextury.com


Reply via email to