KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > idaremedia > antx > condition > LocalPropertyExaminer


1 /**
2  * $Id: LocalPropertyExaminer.java 180 2007-03-15 12:56:38Z ssmc $
3  * Copyright 2004 iDare Media, Inc. All rights reserved.
4  *
5  * Originally written by iDare Media, Inc. for release into the public domain. This
6  * library, source form and binary form, is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public License (LGPL) as published
8  * by the Free Software Foundation; either version 2.1 of the License, or (at your option)
9  * any later version.<p>
10  *
11  * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
12  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13  * See the GNU LGPL for more details.<p>
14  *
15  * You should have received a copy of the GNU Lesser General Public License along with this
16  * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite
17  * 330, Boston, MA 02111-1307 USA. The GNU LGPL can be found online at
18  * http://www.fsf.org/copyleft/lesser.html<p>
19  *
20  * This product has been influenced by several projects within the open-source community.
21  * The JWare developers wish to acknowledge the open-source community's support. For more
22  * information regarding the open-source products used within JWare, please visit the
23  * JWare website.
24  *----------------------------------------------------------------------------------------*
25  * WEBSITE- http://www.jware.info EMAIL- inquiries@jware.info
26  *----------------------------------------------------------------------------------------*
27  **/

28
29 package com.idaremedia.antx.condition;
30
31 import org.apache.tools.ant.Project;
32
33 import com.idaremedia.antx.FlexString;
34 import com.idaremedia.antx.helpers.NameValuePair;
35 import com.idaremedia.antx.ownhelpers.PropertyExaminer;
36 import com.idaremedia.antx.ownhelpers.UnresolvedProperty;
37
38 /**
39  * A utility singleton that examines flexvalue properties to unresolved bits.
40  *
41  * @since JWare/AntX 0.4
42  * @author ssmc, &copy;2004 <a HREF="http://www.jware.info">iDare&nbsp;Media,&nbsp;Inc.</a>
43  * @version 0.5
44  * @.safety multiple
45  * @.group impl,helper
46  **/

47
48 final class LocalPropertyExaminer
49 {
50     /**
51      * Worker bee.
52      **/

53     private static final PropertyExaminer EXAMINER
54         = new PropertyExaminer();
55     static {
56         EXAMINER.setCheckBrokenSubstitution();
57     }
58
59
60     /**
61      * Verify a property definition's current value.
62      **/

63     static boolean verifyProperty(Project P, FlexString propertydef) {
64         String JavaDoc name = propertydef.sourceString(P);
65         String JavaDoc value = propertydef.targetString(P,name);
66         boolean ok = value!=null && value!=UnresolvedProperty.VALUE;
67         if (ok) {
68             NameValuePair nvp= new NameValuePair();
69             nvp.setName(name);
70             nvp.setValue(value);
71             ok = EXAMINER.verifiedPropertyValue(nvp,P)!=null;
72         }
73         return ok;
74     }
75
76
77     /**
78      * Verify a project property's current value.
79      **/

80     static boolean verifyProperty(Project P, String JavaDoc property) {
81         String JavaDoc value = P.getProperty(property);
82         boolean ok = value!=null;
83         if (ok) {
84             NameValuePair nvp= new NameValuePair();
85             nvp.setName(property);
86             nvp.setValue(value);
87             ok = EXAMINER.verifiedPropertyValue(nvp,P)!=null;
88         }
89         return ok;
90     }
91
92
93     /**
94      * Verify an in-place "literal" value.
95      **/

96     static boolean verifyLiteral(Project P, String JavaDoc literal) {
97         return EXAMINER.verifiedLiteral(literal,P);
98     }
99
100
101     /**
102      * Verify an in-place "literal" definition.
103      **/

104     static boolean verifyLiteral(Project P, FlexString literaldef) {
105         return EXAMINER.verifiedLiteral(literaldef.sourceString(P),P);
106     }
107
108
109     /**
110      * Prevented.
111      **/

112     private LocalPropertyExaminer()
113     {
114     }
115 }
116
117 /* end-of-LocalPropertyExaminer.java */
118
Popular Tags