View Javadoc
1   /*
2    *   Licensed to the Apache Software Foundation (ASF) under one
3    *   or more contributor license agreements.  See the NOTICE file
4    *   distributed with this work for additional information
5    *   regarding copyright ownership.  The ASF licenses this file
6    *   to you under the Apache License, Version 2.0 (the
7    *   "License"); you may not use this file except in compliance
8    *   with the License.  You may obtain a copy of the License at
9    *
10   *     http://www.apache.org/licenses/LICENSE-2.0
11   *
12   *   Unless required by applicable law or agreed to in writing,
13   *   software distributed under the License is distributed on an
14   *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   *   KIND, either express or implied.  See the License for the
16   *   specific language governing permissions and limitations
17   *   under the License.
18   *
19   */
20  package org.apache.directory.api.ldap.model.message.controls;
21  
22  
23  import java.util.ArrayList;
24  import java.util.List;
25  
26  
27  /**
28   * Implementation of SortRequestControl.
29   *
30   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
31   */
32  public class SortRequestControlImpl extends AbstractControl implements SortRequest
33  {
34      /**
35       * the list of sort keys
36       */
37      private List<SortKey> sortKeys;
38  
39  
40      /**
41       * Creates a new SortRequestControlImpl instance
42       */
43      public SortRequestControlImpl()
44      {
45          super( OID );
46      }
47  
48  
49      /**
50       * @return the sortKeys
51       */
52      @Override
53      public List<SortKey> getSortKeys()
54      {
55          return sortKeys;
56      }
57  
58  
59      /**
60       * @param sortKeys the sortKeys to set
61       */
62      @Override
63      public void setSortKeys( List<SortKey> sortKeys )
64      {
65          this.sortKeys = sortKeys;
66      }
67  
68  
69      /**
70       * {@inheritDoc}
71       */
72      @Override
73      public void addSortKey( SortKey skey )
74      {
75          if ( sortKeys == null )
76          {
77              sortKeys = new ArrayList<>();
78          }
79  
80          sortKeys.add( skey );
81      }
82  
83  
84      /**
85       * {@inheritDoc}
86       */
87      @Override
88      public String toString()
89      {
90          return "SortRequestControlImpl [sortKeys=" + sortKeys + "]";
91      }
92  }