1
/*___INFO__MARK_BEGIN__*/
2
/*************************************************************************
4
* The Contents of this file are made available subject to the terms of
5
* the Sun Industry Standards Source License Version 1.2
7
* Sun Microsystems Inc., March, 2001
10
* Sun Industry Standards Source License Version 1.2
11
* =================================================
12
* The contents of this file are subject to the Sun Industry Standards
13
* Source License Version 1.2 (the "License"); You may not use this file
14
* except in compliance with the License. You may obtain a copy of the
15
* License at http://gridengine.sunsource.net/Gridengine_SISSL_license.html
17
* Software provided under this License is provided on an "AS IS" basis,
18
* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
19
* WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
20
* MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
21
* See the License for the specific provisions governing your rights and
22
* obligations concerning the Software.
24
* The Initial Developer of the Original Code is: Sun Microsystems, Inc.
26
* Copyright: 2001 by Sun Microsystems, Inc.
28
* All Rights Reserved.
30
************************************************************************/
31
/*___INFO__MARK_END__*/
32
package com.sun.grid.jgdi.configuration.reflect;
34
import java.util.Collections;
35
import java.util.HashMap;
42
public class InvalidObjectException extends java.lang.Exception {
45
private Map<String, String> propertyErrorMap;
48
* Creates a new instance of <code>InvalidObjectException</code> without detail message.
50
public InvalidObjectException(Object obj) {
55
* Constructs an instance of <code>InvalidObjectException</code> with the specified detail message.
56
* @param msg the detail message.
58
public InvalidObjectException(Object obj, String msg) {
63
public void addPropertyError(String propertyName, String error) {
64
if (propertyErrorMap == null) {
65
propertyErrorMap = new HashMap<String, String>();
67
propertyErrorMap.put(propertyName, error);
70
public Set getInvalidProperties() {
71
if (propertyErrorMap == null) {
72
return Collections.EMPTY_SET;
74
return Collections.unmodifiableSet(propertyErrorMap.keySet());
78
public String getPropertyError(String propertyName) {
79
return propertyErrorMap.get(propertyName);
82
public String toString() {
83
StringBuilder ret = new StringBuilder();
84
ret.append(getMessage());
85
if (propertyErrorMap != null) {
88
for (Map.Entry<String, String> entry: propertyErrorMap.entrySet()) {
89
ret.append(entry.getKey());
91
ret.append(entry.getValue());
100
return ret.toString();