1 package org.apache.ojb.broker.accesslayer;
2
3 /* Copyright 2003-2005 The Apache Software Foundation
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 import java.util.HashMap;
19 import java.util.Map;
20
21 import org.apache.ojb.broker.PersistenceBroker;
22 import org.apache.ojb.broker.metadata.CollectionDescriptor;
23 import org.apache.ojb.broker.query.Query;
24 import org.apache.ojb.broker.query.QueryByCriteria;
25
26 /**
27 * Default Implementation of QueryCustomizer.
28 *
29 * @author <a href="mailto:jbraeuchi@hotmail.com">Jakob Braeuchi</a>
30 * @version $Id: QueryCustomizerDefaultImpl.java,v 1.1 2007-08-24 22:17:30 ewestfal Exp $
31 */
32 public class QueryCustomizerDefaultImpl implements QueryCustomizer
33 {
34
35 private Map m_attributeList = null;
36
37 /**
38 * Default Constructor
39 */
40 public QueryCustomizerDefaultImpl()
41 {
42 super();
43 }
44
45 /**
46 * Default implementation returns unmodified original Query
47 *
48 * @see org.apache.ojb.broker.accesslayer.QueryCustomizer#customizeQuery
49 */
50 public Query customizeQuery(Object anObject, PersistenceBroker aBroker, CollectionDescriptor aCod, QueryByCriteria aQuery)
51 {
52 return aQuery;
53 }
54
55
56 /**
57 * @see org.apache.ojb.broker.metadata.AttributeContainer#addAttribute(String, String)
58 */
59 public void addAttribute(String attributeName, String attributeValue)
60 {
61 if (attributeName==null)
62 {
63 return;
64 }
65 if (m_attributeList==null)
66 {
67 m_attributeList=new HashMap();
68 }
69 m_attributeList.put(attributeName,attributeValue);
70 }
71
72 /* (non-Javadoc)
73 * @see org.apache.ojb.broker.metadata.AttributeContainer#getAttribute(java.lang.String, java.lang.String)
74 */
75 public String getAttribute(String attributeName, String defaultValue)
76 {
77 String result = defaultValue;
78 if (m_attributeList!=null)
79 {
80 result = (String)m_attributeList.get(attributeName);
81 if (result==null)
82 {
83 result = defaultValue;
84 }
85 }
86 return result;
87 }
88
89 /* (non-Javadoc)
90 * @see org.apache.ojb.broker.metadata.AttributeContainer#getAttribute(java.lang.String)
91 */
92 public String getAttribute(String attributeName)
93 {
94 return this.getAttribute(attributeName,null);
95 }
96
97 }