1 /*
2 * Copyright 2003 - 2013 The eFaps Team
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 * Revision: $Rev$
17 * Last Changed: $Date$
18 * Last Changed By: $Author$
19 */
20
21
22 package org.efaps.db.search;
23
24 import org.efaps.db.AbstractObjectQuery;
25 import org.efaps.db.wrapper.SQLPart;
26 import org.efaps.db.wrapper.SQLSelect;
27 import org.efaps.util.EFapsException;
28
29
30 /**
31 * TODO comment!
32 *
33 * @author The eFaps Team
34 * @version $Id$
35 */
36 public class QOrderAsc
37 extends AbstractQPart
38 {
39 /**
40 * The attribute used for this order element.
41 */
42 private final QAttribute attribute;
43
44 /**
45 * @param _attribute QAttribute
46 */
47 public QOrderAsc(final QAttribute _attribute)
48 {
49 this.attribute = _attribute;
50 }
51
52 /**
53 * {@inheritDoc}
54 */
55 @Override
56 public AbstractQPart appendSQL(final SQLSelect _sql)
57 throws EFapsException
58 {
59 getAttribute().appendSQL(_sql);
60 _sql.addPart(SQLPart.ASC);
61 return this;
62 }
63
64 /**
65 * {@inheritDoc}
66 */
67 @Override
68 public AbstractQPart prepare(final AbstractObjectQuery<?> _query,
69 final AbstractQPart _part)
70 throws EFapsException
71 {
72 getAttribute().prepare(_query, this);
73 return this;
74 }
75
76 /**
77 * Getter method for the instance variable {@link #attribute}.
78 *
79 * @return value of instance variable {@link #attribute}
80 */
81 public QAttribute getAttribute()
82 {
83 return this.attribute;
84 }
85 }