1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.directory.server.ldap.handlers.request;
21
22
23 import org.apache.directory.api.ldap.model.message.LdapResult;
24 import org.apache.directory.api.ldap.model.message.ModifyRequest;
25 import org.apache.directory.api.ldap.model.message.ModifyResponse;
26 import org.apache.directory.api.ldap.model.message.ResultCodeEnum;
27 import org.apache.directory.server.core.api.CoreSession;
28 import org.apache.directory.server.ldap.LdapSession;
29 import org.apache.directory.server.ldap.handlers.LdapRequestHandler;
30
31 import org.slf4j.Logger;
32 import org.slf4j.LoggerFactory;
33
34
35
36
37
38
39
40 public class ModifyRequestHandler extends LdapRequestHandler<ModifyRequest>
41 {
42 private static final Logger LOG = LoggerFactory.getLogger( ModifyRequestHandler.class );
43
44
45
46
47
48 public void handle( LdapSession session, ModifyRequest modifyRequest )
49 {
50 LOG.debug( "Handling request : {}", modifyRequest );
51
52 ModifyResponse modifyResponse = ( ModifyResponse ) modifyRequest.getResultResponse();
53
54 LdapResult result = modifyResponse.getLdapResult();
55
56 try
57 {
58
59 CoreSession coreSession = session.getCoreSession();
60 coreSession.modify( modifyRequest );
61
62
63 result.setResultCode( ResultCodeEnum.SUCCESS );
64
65
66 session.getIoSession().write( modifyResponse );
67 }
68 catch ( Exception e )
69 {
70 handleException( session, modifyRequest, modifyResponse, e );
71 }
72 }
73 }