(file) Return to ConfigExceptions.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Config

  1 karl  1.11 //%2006////////////////////////////////////////////////////////////////////////
  2 mike  1.2  //
  3 karl  1.9  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6 karl  1.8  // IBM Corp.; EMC Corporation, The Open Group.
  7 karl  1.9  // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9 karl  1.10 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 karl  1.11 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12            // EMC Corporation; Symantec Corporation; The Open Group.
 13 mike  1.2  //
 14            // Permission is hereby granted, free of charge, to any person obtaining a copy
 15            // of this software and associated documentation files (the "Software"), to
 16            // deal in the Software without restriction, including without limitation the
 17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18            // sell copies of the Software, and to permit persons to whom the Software is
 19            // furnished to do so, subject to the following conditions:
 20 kumpf 1.3  // 
 21 mike  1.2  // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29            //
 30            //==============================================================================
 31            //
 32            //%/////////////////////////////////////////////////////////////////////////////
 33            
 34            
 35            ////////////////////////////////////////////////////////////////////////////////
 36            //  This file contains the exception classes used in the configuration
 37            //  classes.
 38            ////////////////////////////////////////////////////////////////////////////////
 39            
 40            #ifndef Pegasus_ConfigExceptions_h
 41            #define Pegasus_ConfigExceptions_h
 42 mike  1.2  
 43            #include <Pegasus/Common/Exception.h>
 44            #include <Pegasus/Config/Linkage.h>
 45 kumpf 1.13 #include <Pegasus/Common/MessageLoader.h>
 46 mike  1.2  
 47            PEGASUS_NAMESPACE_BEGIN
 48            
 49            
 50 kumpf 1.13 /**
 51                MissingCommandLineOptionArgument Exception class
 52 mike  1.2  */
 53 mike  1.12 class PEGASUS_CONFIG_LINKAGE MissingCommandLineOptionArgument : public Exception
 54 mike  1.2  {
 55            public:
 56                MissingCommandLineOptionArgument(const String& optionName)
 57 kumpf 1.13         : Exception(MessageLoaderParms(
 58                          "Config.ConfigExceptions.MISSING_CMDLINE_OPTION",
 59                          "Missing command line option argument: $0",
 60                          optionName))
 61                {
 62                }
 63 mike  1.2  };
 64            
 65 kumpf 1.13 /**
 66                UnrecognizedCommandLineOption Exception class
 67 kumpf 1.4  */
 68 mike  1.12 class PEGASUS_CONFIG_LINKAGE UnrecognizedCommandLineOption : public Exception
 69 kumpf 1.4  {
 70            public:
 71                UnrecognizedCommandLineOption()
 72 kumpf 1.13         : Exception(MessageLoaderParms(
 73                          "Config.ConfigExceptions.UNRECOGNIZED_CMDLINE_OPTION",
 74                          "Unrecognized command line option. "))
 75                {
 76                }
 77 kumpf 1.4  };
 78            
 79 mike  1.2  
 80 kumpf 1.13 /**
 81                InvalidPropertyValue Exception class
 82 mike  1.2  */
 83 mike  1.12 class PEGASUS_CONFIG_LINKAGE InvalidPropertyValue : public Exception
 84 mike  1.2  {
 85            public:
 86                InvalidPropertyValue(const String& name, const String& value)
 87 kumpf 1.13         : Exception(MessageLoaderParms(
 88                          "Config.ConfigExceptions.INVALID_PROPERTY_VALUE",
 89                          "Invalid property value: $0=$1",
 90                          name,
 91                          value))
 92                {
 93                }
 94 mike  1.2  };
 95            
 96            
 97 kumpf 1.13 /**
 98                DuplicateOption Exception class
 99 mike  1.2  */
100 mike  1.12 class PEGASUS_CONFIG_LINKAGE DuplicateOption : public Exception
101 mike  1.2  {
102            public:
103                DuplicateOption(const String& name)
104 kumpf 1.13         : Exception(MessageLoaderParms(
105                          "Config.ConfigExceptions.DUPLICATE_OPTION",
106                          "Duplicate option: $0",
107                          name))
108                {
109                }
110 mike  1.2  };
111            
112            
113 kumpf 1.13 /**
114                ConfigFileSyntaxError Exception class
115 mike  1.2  */
116 mike  1.12 class PEGASUS_CONFIG_LINKAGE ConfigFileSyntaxError : public Exception
117 mike  1.2  {
118            public:
119                ConfigFileSyntaxError(const String& file, Uint32 line)
120                    : Exception(_formatMessage(file, line)) { }
121            
122                static String _formatMessage(const String& file, Uint32 line);
123            };
124            
125            
126 kumpf 1.13 /**
127                UnrecognizedConfigFileOption Exception class
128 mike  1.2  */
129 mike  1.12 class PEGASUS_CONFIG_LINKAGE UnrecognizedConfigFileOption : public Exception
130 mike  1.2  {
131            public:
132                UnrecognizedConfigFileOption(const String& name)
133 kumpf 1.13         : Exception(MessageLoaderParms(
134                          "Config.ConfigExceptions.UNRECOGNIZED_CONFIG_FILE_OPTION",
135                          "Unrecognized config file option: $0",
136                          name))
137                {
138                }
139 mike  1.2  };
140            
141            
142 kumpf 1.13 /**
143                MissingRequiredOptionValue Exception class
144 mike  1.2  */
145 mike  1.12 class PEGASUS_CONFIG_LINKAGE MissingRequiredOptionValue : public Exception
146 mike  1.2  {
147            public:
148                MissingRequiredOptionValue(const String& name)
149 kumpf 1.13         : Exception(MessageLoaderParms(
150                          "Config.ConfigExceptions.MISSING_REQUIRED_OPTION",
151                          "Missing required option value: $0",
152                          name))
153                {
154                }
155 mike  1.2  };
156            
157            
158 kumpf 1.13 /**
159                UnrecognizedConfigProperty Exception class
160 mike  1.2  */
161 mike  1.12 class PEGASUS_CONFIG_LINKAGE UnrecognizedConfigProperty : public Exception
162 mike  1.2  {
163            public:
164                UnrecognizedConfigProperty(const String& name)
165 kumpf 1.13         : Exception(MessageLoaderParms(
166                          "Config.ConfigExceptions.UNRECOGNIZED_CONFIG_PROPERTY",
167                          "Unrecognized config property: $0",
168                          name))
169                {
170                }
171 mike  1.2  };
172            
173 kumpf 1.13 /**
174                NonDynamicConfigProperty Exception class
175 mike  1.2  */
176 mike  1.12 class PEGASUS_CONFIG_LINKAGE NonDynamicConfigProperty : public Exception
177 mike  1.2  {
178            public:
179                NonDynamicConfigProperty(const String& name)
180 kumpf 1.13         : Exception(MessageLoaderParms(
181                          "Config.ConfigExceptions.NONDYNAMIC_CONFIG_PROPERTY",
182                          "NonDynamic config property: $0",
183                          name))
184                {
185                }
186 mike  1.2  };
187            
188            PEGASUS_NAMESPACE_END
189            
190            #endif /* Pegasus_ConfigExceptions_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2