Project

General

Profile

« Previous | Next » 

Revision 99491025

Added by Andreas Müller over 15 years ago

View differences:

cdmlib-model/src/main/java/eu/etaxonomy/cdm/aspectj/PropertyChangeAspect.aj
41 41
				// Also get methods for booleans start with "is" or "has"
42 42
				Object oldValue = property.get(cb);
43 43
				proceed( cb );
44
				cb.firePropertyChange( propertyName, oldValue, property.get(cb));
44
				Object newValue = property.get(cb);
45
//				logger.error ("Prop: " + propertyName);
46
//				logger.warn("OLD:" + oldValue);
47
//				logger.warn("New:" + newValue);
48
				if (! isPersistentSet(newValue) && ! isPersistentSet(oldValue)  ){
49
					cb.firePropertyChange( propertyName, oldValue, newValue);
50
				}
45 51
			} catch (NoSuchMethodException e) {
46 52
				e.printStackTrace();
47 53
				proceed( cb );
......
57 63
			}
58 64
		}
59 65
	}
66
	
67
	private boolean isPersistentSet(Object value){
68
		if (value == null){
69
			//logger.debug("(null) is not PS");
70
			return false;
71
		}else if (value.getClass().getName().equals("PersistentSet")){
72
			//logger.warn(value.getClass() + " is PS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
73
			return true;
74
		}else{
75
			//logger.warn(value.getClass().getSimpleName() + " is is not PS");
76
			return false;
77
		}
78
	}
60 79

  
61 80

  
62 81
		/**

Also available in: Unified diff