01: /**********************************************************************
02: Copyright (c) 2002 Mike Martin (TJDO) and others. All rights reserved.
03: Licensed under the Apache License, Version 2.0 (the "License");
04: you may not use this file except in compliance with the License.
05: You may obtain a copy of the License at
06:
07: http://www.apache.org/licenses/LICENSE-2.0
08:
09: Unless required by applicable law or agreed to in writing, software
10: distributed under the License is distributed on an "AS IS" BASIS,
11: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12: See the License for the specific language governing permissions and
13: limitations under the License.
14:
15: Contributors:
16: 2003 Andy Jefferson - commented
17: 2007 Andy Jefferson - changed to extend JPOXUserException
18: ...
19: **********************************************************************/package org.jpox.sco.exceptions;
20:
21: import org.jpox.StateManager;
22: import org.jpox.exceptions.JPOXUserException;
23: import org.jpox.util.Localiser;
24: import org.jpox.util.StringUtils;
25:
26: /**
27: * A <tt>IncompatibleFieldTypeException</tt> is thrown if an incompatible field
28: * type is specified in the construction of a second-class object instance.
29: *
30: * @version $Revision: 1.4 $
31: */
32: public class IncompatibleFieldTypeException extends JPOXUserException {
33: private static final Localiser LOCALISER = Localiser
34: .getInstance("org.jpox.Localisation");
35:
36: /**
37: * Constructs an incompatible field type exception.
38: * @param ownerSM The StateManager of the object owning the SCO field.
39: * @param fieldName The name of the SCO field.
40: * @param requiredTypeName Name of required type of the field.
41: * @param requestedTypeName Name of requested type of the field.
42: */
43: public IncompatibleFieldTypeException(StateManager ownerSM,
44: String fieldName, String requiredTypeName,
45: String requestedTypeName) {
46: super (LOCALISER.msg("023000", ownerSM.getClassMetaData()
47: .getFullClassName()
48: + "." + fieldName, StringUtils.toJVMIDString(ownerSM
49: .getObject()), requiredTypeName, requestedTypeName));
50: }
51: }
|