001    
002    /*
003     *  Licensed to the Apache Software Foundation (ASF) under one
004     *  or more contributor license agreements.  See the NOTICE file
005     *  distributed with this work for additional information
006     *  regarding copyright ownership.  The ASF licenses this file
007     *  to you under the Apache License, Version 2.0 (the
008     *  "License"); you may not use this file except in compliance
009     *  with the License.  You may obtain a copy of the License at
010     *  
011     *    http://www.apache.org/licenses/LICENSE-2.0
012     *  
013     *  Unless required by applicable law or agreed to in writing,
014     *  software distributed under the License is distributed on an
015     *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
016     *  KIND, either express or implied.  See the License for the
017     *  specific language governing permissions and limitations
018     *  under the License. 
019     *  
020     */
021    package org.apache.directory.server.schema.bootstrap;
022    
023    
024    import java.util.ArrayList;
025    import javax.naming.NamingException;
026    
027    import org.apache.directory.server.schema.registries.Registries;
028    import org.apache.directory.shared.ldap.schema.UsageEnum;
029    
030    
031    /**
032     * A producer of schema attributeType definations for the krb5kdc schema.  This
033     * code has been automatically generated using schema files in the OpenLDAP
034     * format along with the directory plugin for maven.  This has been done
035     * to facilitate Eve<->OpenLDAP schema interoperability.
036     *
037     * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
038     */
039    public class Krb5kdcAttributeTypeProducer extends AbstractBootstrapProducer
040    {
041    
042        public Krb5kdcAttributeTypeProducer()
043        {
044            super( ProducerTypeEnum.ATTRIBUTE_TYPE_PRODUCER );
045        }
046    
047    
048        // ------------------------------------------------------------------------
049        // BootstrapProducer Methods
050        // ------------------------------------------------------------------------
051    
052    
053        /**
054         * @see BootstrapProducer#produce( Registries, ProducerCallback )
055         */
056        public void produce( Registries registries, ProducerCallback cb )
057            throws NamingException
058        {
059            ArrayList<String> names = new ArrayList<String>();
060            BootstrapAttributeType attributeType;
061    
062    
063            // --------------------------------------------------------------------
064            // AttributeType 1.3.6.1.4.1.5322.10.1.1 
065            // --------------------------------------------------------------------
066    
067            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.1", registries );
068            attributeType.setDescription( "The unparsed Kerberos principal name" );
069            attributeType.setCanUserModify( ! false );
070            attributeType.setSingleValue( true );
071            attributeType.setCollective( false );
072            attributeType.setObsolete( false );
073            attributeType.setLength( 0 );
074            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
075            attributeType.setEqualityId( "caseExactIA5Match" );
076            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
077    
078            names.clear();
079            names.add( "krb5PrincipalName" );
080            attributeType.setNames( names.toArray( EMPTY ) );
081            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.1", attributeType );
082    
083            // --------------------------------------------------------------------
084            // AttributeType 1.3.6.1.4.1.5322.10.1.2 
085            // --------------------------------------------------------------------
086    
087            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.2", registries );
088            attributeType.setCanUserModify( ! false );
089            attributeType.setSingleValue( true );
090            attributeType.setCollective( false );
091            attributeType.setObsolete( false );
092            attributeType.setLength( 0 );
093            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
094            attributeType.setEqualityId( "integerMatch" );
095            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
096    
097            names.clear();
098            names.add( "krb5KeyVersionNumber" );
099            attributeType.setNames( names.toArray( EMPTY ) );
100            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.2", attributeType );
101    
102            // --------------------------------------------------------------------
103            // AttributeType 1.3.6.1.4.1.5322.10.1.3 
104            // --------------------------------------------------------------------
105    
106            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.3", registries );
107            attributeType.setCanUserModify( ! false );
108            attributeType.setSingleValue( true );
109            attributeType.setCollective( false );
110            attributeType.setObsolete( false );
111            attributeType.setLength( 0 );
112            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
113            attributeType.setEqualityId( "integerMatch" );
114            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
115    
116            names.clear();
117            names.add( "krb5MaxLife" );
118            attributeType.setNames( names.toArray( EMPTY ) );
119            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.3", attributeType );
120    
121            // --------------------------------------------------------------------
122            // AttributeType 1.3.6.1.4.1.5322.10.1.4 
123            // --------------------------------------------------------------------
124    
125            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.4", registries );
126            attributeType.setCanUserModify( ! false );
127            attributeType.setSingleValue( true );
128            attributeType.setCollective( false );
129            attributeType.setObsolete( false );
130            attributeType.setLength( 0 );
131            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
132            attributeType.setEqualityId( "integerMatch" );
133            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
134    
135            names.clear();
136            names.add( "krb5MaxRenew" );
137            attributeType.setNames( names.toArray( EMPTY ) );
138            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.4", attributeType );
139    
140            // --------------------------------------------------------------------
141            // AttributeType 1.3.6.1.4.1.5322.10.1.5 
142            // --------------------------------------------------------------------
143    
144            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.5", registries );
145            attributeType.setCanUserModify( ! false );
146            attributeType.setSingleValue( true );
147            attributeType.setCollective( false );
148            attributeType.setObsolete( false );
149            attributeType.setLength( 0 );
150            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
151            attributeType.setEqualityId( "integerMatch" );
152            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
153    
154            names.clear();
155            names.add( "krb5KDCFlags" );
156            attributeType.setNames( names.toArray( EMPTY ) );
157            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.5", attributeType );
158    
159            // --------------------------------------------------------------------
160            // AttributeType 1.3.6.1.4.1.5322.10.1.6 
161            // --------------------------------------------------------------------
162    
163            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.6", registries );
164            attributeType.setCanUserModify( ! false );
165            attributeType.setSingleValue( false );
166            attributeType.setCollective( false );
167            attributeType.setObsolete( false );
168            attributeType.setLength( 0 );
169            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
170            attributeType.setEqualityId( "integerMatch" );
171            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.27" );
172    
173            names.clear();
174            names.add( "krb5EncryptionType" );
175            attributeType.setNames( names.toArray( EMPTY ) );
176            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.6", attributeType );
177    
178            // --------------------------------------------------------------------
179            // AttributeType 1.3.6.1.4.1.5322.10.1.7 
180            // --------------------------------------------------------------------
181    
182            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.7", registries );
183            attributeType.setCanUserModify( ! false );
184            attributeType.setSingleValue( true );
185            attributeType.setCollective( false );
186            attributeType.setObsolete( false );
187            attributeType.setLength( 0 );
188            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
189            attributeType.setEqualityId( "generalizedTimeMatch" );
190            attributeType.setOrderingId( "generalizedTimeOrderingMatch" );
191            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.24" );
192    
193            names.clear();
194            names.add( "krb5ValidStart" );
195            attributeType.setNames( names.toArray( EMPTY ) );
196            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.7", attributeType );
197    
198            // --------------------------------------------------------------------
199            // AttributeType 1.3.6.1.4.1.5322.10.1.8 
200            // --------------------------------------------------------------------
201    
202            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.8", registries );
203            attributeType.setCanUserModify( ! false );
204            attributeType.setSingleValue( true );
205            attributeType.setCollective( false );
206            attributeType.setObsolete( false );
207            attributeType.setLength( 0 );
208            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
209            attributeType.setEqualityId( "generalizedTimeMatch" );
210            attributeType.setOrderingId( "generalizedTimeOrderingMatch" );
211            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.24" );
212    
213            names.clear();
214            names.add( "krb5ValidEnd" );
215            attributeType.setNames( names.toArray( EMPTY ) );
216            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.8", attributeType );
217    
218            // --------------------------------------------------------------------
219            // AttributeType 1.3.6.1.4.1.5322.10.1.9 
220            // --------------------------------------------------------------------
221    
222            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.9", registries );
223            attributeType.setCanUserModify( ! false );
224            attributeType.setSingleValue( true );
225            attributeType.setCollective( false );
226            attributeType.setObsolete( false );
227            attributeType.setLength( 0 );
228            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
229            attributeType.setEqualityId( "generalizedTimeMatch" );
230            attributeType.setOrderingId( "generalizedTimeOrderingMatch" );
231            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.24" );
232    
233            names.clear();
234            names.add( "krb5PasswordEnd" );
235            attributeType.setNames( names.toArray( EMPTY ) );
236            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.9", attributeType );
237    
238            // --------------------------------------------------------------------
239            // AttributeType 1.3.6.1.4.1.5322.10.1.10 
240            // --------------------------------------------------------------------
241    
242            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.10", registries );
243            attributeType.setDescription( "Encoded ASN1 Key as an octet string" );
244            attributeType.setCanUserModify( ! false );
245            attributeType.setSingleValue( false );
246            attributeType.setCollective( false );
247            attributeType.setObsolete( false );
248            attributeType.setLength( 0 );
249            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
250            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.5" );
251    
252            names.clear();
253            names.add( "krb5Key" );
254            attributeType.setNames( names.toArray( EMPTY ) );
255            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.10", attributeType );
256    
257            // --------------------------------------------------------------------
258            // AttributeType 1.3.6.1.4.1.5322.10.1.11 
259            // --------------------------------------------------------------------
260    
261            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.11", registries );
262            attributeType.setDescription( "Distinguished name of krb5Realm entry" );
263            attributeType.setCanUserModify( ! false );
264            attributeType.setSingleValue( false );
265            attributeType.setCollective( false );
266            attributeType.setObsolete( false );
267            attributeType.setLength( 0 );
268            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
269            attributeType.setSuperiorId( "distinguishedName" );
270    
271            names.clear();
272            names.add( "krb5PrincipalRealm" );
273            attributeType.setNames( names.toArray( EMPTY ) );
274            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.11", attributeType );
275    
276            // --------------------------------------------------------------------
277            // AttributeType 1.3.6.1.4.1.5322.10.1.12 
278            // --------------------------------------------------------------------
279    
280            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.12", registries );
281            attributeType.setCanUserModify( ! false );
282            attributeType.setSingleValue( false );
283            attributeType.setCollective( false );
284            attributeType.setObsolete( false );
285            attributeType.setLength( 0 );
286            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
287            attributeType.setEqualityId( "caseExactIA5Match" );
288            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.26" );
289    
290            names.clear();
291            names.add( "krb5RealmName" );
292            attributeType.setNames( names.toArray( EMPTY ) );
293            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.12", attributeType );
294    
295            // --------------------------------------------------------------------
296            // AttributeType 1.3.6.1.4.1.5322.10.1.13 
297            // --------------------------------------------------------------------
298    
299            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.13", registries );
300            attributeType.setCanUserModify( ! false );
301            attributeType.setSingleValue( true );
302            attributeType.setCollective( false );
303            attributeType.setObsolete( false );
304            attributeType.setLength( 0 );
305            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
306            attributeType.setEqualityId( "booleanMatch" );
307            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.7" );
308    
309            names.clear();
310            names.add( "krb5AccountDisabled" );
311            attributeType.setNames( names.toArray( EMPTY ) );
312            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.13", attributeType );
313    
314            // --------------------------------------------------------------------
315            // AttributeType 1.3.6.1.4.1.5322.10.1.14 
316            // --------------------------------------------------------------------
317    
318            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.14", registries );
319            attributeType.setCanUserModify( ! false );
320            attributeType.setSingleValue( true );
321            attributeType.setCollective( false );
322            attributeType.setObsolete( false );
323            attributeType.setLength( 0 );
324            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
325            attributeType.setEqualityId( "booleanMatch" );
326            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.7" );
327    
328            names.clear();
329            names.add( "krb5AccountLockedOut" );
330            attributeType.setNames( names.toArray( EMPTY ) );
331            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.14", attributeType );
332    
333            // --------------------------------------------------------------------
334            // AttributeType 1.3.6.1.4.1.5322.10.1.15 
335            // --------------------------------------------------------------------
336    
337            attributeType = newAttributeType( "1.3.6.1.4.1.5322.10.1.15", registries );
338            attributeType.setCanUserModify( ! false );
339            attributeType.setSingleValue( true );
340            attributeType.setCollective( false );
341            attributeType.setObsolete( false );
342            attributeType.setLength( 0 );
343            attributeType.setUsage( UsageEnum.getUsage( "USER_APPLICATIONS" ) );
344            attributeType.setEqualityId( "generalizedTimeMatch" );
345            attributeType.setSyntaxId( "1.3.6.1.4.1.1466.115.121.1.24" );
346    
347            names.clear();
348            names.add( "krb5AccountExpirationTime" );
349            attributeType.setNames( names.toArray( EMPTY ) );
350            cb.schemaObjectProduced( this, "1.3.6.1.4.1.5322.10.1.15", attributeType );
351        }
352    }