1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.directory.api.ldap.codec.controls;
21
22 import org.apache.directory.api.asn1.DecoderException;
23 import org.apache.directory.api.asn1.util.Asn1Buffer;
24 import org.apache.directory.api.ldap.codec.api.AbstractControlFactory;
25 import org.apache.directory.api.ldap.codec.api.ControlFactory;
26 import org.apache.directory.api.ldap.codec.api.LdapApiService;
27 import org.apache.directory.api.ldap.model.message.Control;
28 import org.apache.directory.api.ldap.model.message.controls.OpaqueControl;
29
30
31
32
33
34
35
36 public class OpaqueControlFactory extends AbstractControlFactory<Control>
37 {
38
39
40
41
42
43
44 public OpaqueControlFactory( LdapApiService codec, String oid )
45 {
46 super( codec, oid );
47 }
48
49
50
51
52
53 @Override
54 public Control newControl()
55 {
56 return new OpaqueControl( getOid() );
57 }
58
59
60
61
62
63 @Override
64 public void encodeValue( Asn1Buffer buffer, Control control )
65 {
66 buffer.put( ( ( OpaqueControl ) control ).getEncodedValue() );
67 }
68
69
70
71
72
73 @Override
74 public void decodeValue( Control control, byte[] controlBytes ) throws DecoderException
75 {
76 ( ( OpaqueControl ) control ).setEncodedValue( controlBytes );
77 }
78 }