Subversion Repository Public Repository

litesoft

Diff Revisions 2 vs 21 for /trunk/Java/core/Server/src/org/litesoft/orsup/nonpublic/PersistentObjectImpl.java

Diff revisions: vs.
  @@ -112,6 +112,7 @@
112 112 return getFinder().getSequenceSource();
113 113 }
114 114
115 + @Override
115 116 public SymmetricEncryptorManager getEncryptorManager()
116 117 {
117 118 return getFinder().getEncryptorManager();
  @@ -126,32 +127,38 @@
126 127 /**
127 128 * @return the Finder associated with this PO, either the Transaction of the NonTransactionalFinder
128 129 */
130 + @Override
129 131 public final Finder getFinder()
130 132 {
131 133 Transaction transaction = getTransaction();
132 134 return (transaction != null) ? transaction : getNonTransactionalFinder();
133 135 }
134 136
137 + @Override
135 138 public final NonTransactionalFinder<?> getNonTransactionalFinder()
136 139 {
137 140 return mNonTransactionalFinder;
138 141 }
139 142
143 + @Override
140 144 public final Transaction getTransaction()
141 145 {
142 146 return mTransaction;
143 147 }
144 148
149 + @Override
145 150 public String getObjectName()
146 151 {
147 152 return getMetaDataForPO().getIdentifierName();
148 153 }
149 154
155 + @Override
150 156 public String getRegisteredName()
151 157 {
152 158 return getClass().getName();
153 159 }
154 160
161 + @Override
155 162 public final boolean isImmortal()
156 163 {
157 164 MetaDataForPO md = getMetaDataForPO();
  @@ -169,6 +176,7 @@
169 176 }
170 177 }
171 178
179 + @Override
172 180 public final boolean isUpdatable()
173 181 {
174 182 MetaDataForPO md = getMetaDataForPO();
  @@ -185,6 +193,7 @@
185 193 return true;
186 194 }
187 195
196 + @Override
188 197 public void requestDelete()
189 198 {
190 199 verifyMutability();
  @@ -234,36 +243,43 @@
234 243 pAcdToPO.clrValueOnPO( this );
235 244 }
236 245
246 + @Override
237 247 public final boolean isDeleteRequested()
238 248 {
239 249 return mDeleteRequested;
240 250 }
241 251
252 + @Override
242 253 public final boolean isNew()
243 254 {
244 255 return mNew;
245 256 }
246 257
258 + @Override
247 259 public final boolean isAnyAttributeChanged()
248 260 {
249 261 return mChangeTracker.hasChanges();
250 262 }
251 263
264 + @Override
252 265 public boolean isAttributeChanged( String pAttributeName )
253 266 {
254 267 return isAttributeChanged( getAccessorSCDoptional( pAttributeName ) );
255 268 }
256 269
270 + @Override
257 271 public boolean isAttributeChanged( AttributeAccessorSCD pAttributeAccessorSCD )
258 272 {
259 273 return (pAttributeAccessorSCD != null) && mChangeTracker.hasChangeFor( pAttributeAccessorSCD.getName() );
260 274 }
261 275
276 + @Override
262 277 public String[] getChangedAttributeNames()
263 278 {
264 279 return mChangeTracker.getChangedAttributeNames();
265 280 }
266 281
282 + @Override
267 283 public Object getOriginalValueFor( String pAttributeName )
268 284 {
269 285 AttributeAccessorSCD<T> zSCD = getAccessorSCDoptional( pAttributeName );
  @@ -279,16 +295,19 @@
279 295 return getAttributeValue( pAttributeName );
280 296 }
281 297
298 + @Override
282 299 public final boolean willTossFromTransactionCommit()
283 300 {
284 301 return (isNew() && isDeleteRequested()) || !isDirty();
285 302 }
286 303
304 + @Override
287 305 public final boolean isDirty()
288 306 {
289 307 return isDeleteRequested() || isNew() || mForcedUpdate || isAnyAttributeChanged();
290 308 }
291 309
310 + @Override
292 311 public void forceUpdate()
293 312 {
294 313 verifyMutability();
  @@ -320,17 +339,20 @@
320 339 }
321 340 }
322 341
342 + @Override
323 343 public void forceChangeNotification()
324 344 {
325 345 verifyMutability();
326 346 mForcedChangeNotification = true;
327 347 }
328 348
349 + @Override
329 350 public boolean isForcedChangeNotification()
330 351 {
331 352 return mForcedChangeNotification;
332 353 }
333 354
355 + @Override
334 356 public Object getAttributeValue( String pAttributeName )
335 357 throws NoSuchElementException
336 358 {
  @@ -338,6 +360,7 @@
338 360 return getAccessorSCDrequired( pAttributeName ).getValueOnPO( (T) this );
339 361 }
340 362
363 + @Override
341 364 public void setAttributeValue( String pAttributeName, Object pValue )
342 365 throws NoSuchElementException, AttributeIllegalArgumentException
343 366 {
  @@ -352,6 +375,7 @@
352 375 }
353 376 }
354 377
378 + @Override
355 379 public void addToAttributeSet( String pAttributeName, PersistentObject<?> pPOtoAdd )
356 380 throws NoSuchElementException, AttributeIllegalArgumentException
357 381 {
  @@ -369,6 +393,7 @@
369 393 }
370 394 }
371 395
396 + @Override
372 397 public void removeFromAttributeSet( String pAttributeName, PersistentObject<?> pPOtoRemove )
373 398 throws NoSuchElementException, AttributeIllegalArgumentException
374 399 {
  @@ -397,11 +422,13 @@
397 422 throw new NoSuchElementException( "'" + pAttributeName + "' Not a 'Set' on PO type: " + getMetaDataForPO().getIdentifierName() );
398 423 }
399 424
425 + @Override
400 426 public final ObjectHandle getObjectHandle()
401 427 {
402 428 return new ObjectHandle( getPersistentObjectURL(), getDisplayValue() );
403 429 }
404 430
431 + @Override
405 432 public final PersistentObjectURL getPersistentObjectURL()
406 433 {
407 434 return new PersistentObjectURL( getRegisteredName(), getPersistentObjectUniqueKey() );
  @@ -409,6 +436,7 @@
409 436
410 437 private PersistentObjectUniqueKey mKey = null;
411 438
439 + @Override
412 440 public final PersistentObjectUniqueKey getPersistentObjectUniqueKey()
413 441 {
414 442 if ( (mKey == null) && (null == (mKey = createPersistentObjectUniqueKey())) )
  @@ -458,6 +486,7 @@
458 486 /**
459 487 * @return non-Transactional copy of the latest version of this PO, or Null if the PO is in a Transaction and isNew() OR has been deleted
460 488 */
489 + @Override
461 490 public final T refreshNonTransactionally()
462 491 {
463 492 return getNonTransactionalFinder().refresh( this );
  @@ -472,6 +501,7 @@
472 501 *
473 502 * @throws UnsupportedOperationException - if the PO is already in the Transaction
474 503 */
504 + @Override
475 505 public final T refreshInto( Transaction pTransaction )
476 506 throws UnsupportedOperationException
477 507 {
  @@ -482,6 +512,7 @@
482 512 /**
483 513 * @return this if it is already in the Transaction, or a COPY of this in the specified Transaction
484 514 */
515 + @Override
485 516 public final T copyInto( Transaction pTransaction )
486 517 throws UnsupportedOperationException
487 518 {
  @@ -519,6 +550,7 @@
519 550 return null;
520 551 }
521 552
553 + @Override
522 554 public String getDisplayValue()
523 555 {
524 556 String format = Utils.deNull( getMetaDataForPO().getDisplayValueFormat() ).trim();
  @@ -558,6 +590,7 @@
558 590 return sb.append( format.substring( from ) ).toString();
559 591 }
560 592
593 + @Override
561 594 public Object toSqlValueForEquals()
562 595 {
563 596 PersistentObjectUniqueKey key = getPersistentObjectUniqueKey();
  @@ -578,16 +611,19 @@
578 611 return (this == pThem) || ((pThem != null) && this.getPersistentObjectURL().equals( pThem.getPersistentObjectURL() ));
579 612 }
580 613
614 + @Override
581 615 public final boolean equals( Object o )
582 616 {
583 617 return (this == o) || ((o instanceof PersistentObject) && equals( (PersistentObject) o ));
584 618 }
585 619
620 + @Override
586 621 public final int hashCode()
587 622 {
588 623 return getPersistentObjectURL().hashCode();
589 624 }
590 625
626 + @Override
591 627 public final String toString()
592 628 {
593 629 return getDisplayValue();
  @@ -804,6 +840,7 @@
804 840 new ToOneChangeEntry( pNewThem, pNewKey ) );
805 841 }
806 842
843 + @Override
807 844 public final void verifyMutability( SupplimentedSCD pSupplimentedSCD, Object pOldValue, Object pNewValue )
808 845 throws UnsupportedOperationException
809 846 {
  @@ -938,6 +975,7 @@
938 975 mChangeNumber++;
939 976 }
940 977
978 + @Override
941 979 public final int getChangeNumber()
942 980 {
943 981 return mChangeNumber;
  @@ -1024,16 +1062,19 @@
1024 1062 throw new IllegalStateException( "Transaction(" + mTransaction + "), does NOT implement: TransactionBackdoor" );
1025 1063 }
1026 1064
1065 + @Override
1027 1066 public MetaDataForPO getMetaDataForPO()
1028 1067 {
1029 1068 return mMetaDataForPO;
1030 1069 }
1031 1070
1071 + @Override
1032 1072 public Object LL_getDynamicValue( String pName )
1033 1073 {
1034 1074 return (mDynamicValueMap != null) ? mDynamicValueMap.get( pName ) : null;
1035 1075 }
1036 1076
1077 + @Override
1037 1078 public void LL_setDynamicValue( String pName, Object pValue )
1038 1079 {
1039 1080 if ( mDynamicValueMap == null )
  @@ -1054,11 +1095,13 @@
1054 1095 {
1055 1096 public static final LazyLoadedsTracker INSTANCE = new LazyLoadedsTrackerNull();
1056 1097
1098 + @Override
1057 1099 public LazyLoadedsTracker record( String pAttributeName, AbstractLazyLoadTo pLazyLoadTo )
1058 1100 {
1059 1101 return new LazyLoadedsTrackerImpl().record( pAttributeName, pLazyLoadTo );
1060 1102 }
1061 1103
1104 + @Override
1062 1105 public LazyLoadedsTracker clear()
1063 1106 {
1064 1107 return this;
  @@ -1069,12 +1112,14 @@
1069 1112 {
1070 1113 private Map<String, AbstractLazyLoadTo> mLazyLoadeds = new HashMap<String, AbstractLazyLoadTo>();
1071 1114
1115 + @Override
1072 1116 public LazyLoadedsTracker record( String pAttributeName, AbstractLazyLoadTo pLazyLoadTo )
1073 1117 {
1074 1118 mLazyLoadeds.put( pAttributeName, pLazyLoadTo );
1075 1119 return this;
1076 1120 }
1077 1121
1122 + @Override
1078 1123 public LazyLoadedsTracker clear()
1079 1124 {
1080 1125 mLazyLoadeds.clear();
  @@ -1112,31 +1157,37 @@
1112 1157 return INSTANCE;
1113 1158 }
1114 1159
1160 + @Override
1115 1161 public OriginalValueChangeTracker<T> clear()
1116 1162 {
1117 1163 return this;
1118 1164 }
1119 1165
1166 + @Override
1120 1167 public boolean hasChanges()
1121 1168 {
1122 1169 return false;
1123 1170 }
1124 1171
1172 + @Override
1125 1173 public boolean hasChangeFor( String pAttributeName )
1126 1174 {
1127 1175 return false;
1128 1176 }
1129 1177
1178 + @Override
1130 1179 public Object getOriginalValueFor( String pAttributeName )
1131 1180 {
1132 1181 return null;
1133 1182 }
1134 1183
1184 + @Override
1135 1185 public Object getOriginalValueControlObjectFor( String pAttributeName )
1136 1186 {
1137 1187 return null;
1138 1188 }
1139 1189
1190 + @Override
1140 1191 public String[] getChangedAttributeNames()
1141 1192 {
1142 1193 return Utils.EMPTY_STRING_ARRAY;
  @@ -1147,11 +1198,13 @@
1147 1198 return null;
1148 1199 }
1149 1200
1201 + @Override
1150 1202 public PersistentObjectImpl getTheChangedPo()
1151 1203 {
1152 1204 return null;
1153 1205 }
1154 1206
1207 + @Override
1155 1208 public OriginalValueChangeTracker<T> recordChange( T pThePo, String pAttributeName, Object pOldValue, Object pNewValue )
1156 1209 {
1157 1210 OriginalValueChangeTrackerImpl<T> tracker = new OriginalValueChangeTrackerImpl<T>( pThePo );
  @@ -1170,6 +1223,7 @@
1170 1223 mTheChangedPo = pTheChangedPo;
1171 1224 }
1172 1225
1226 + @Override
1173 1227 public OriginalValueChangeTracker<T> clear()
1174 1228 {
1175 1229 mAttributeNameToOriginalValues.clear();
  @@ -1177,27 +1231,32 @@
1177 1231 return OriginalValueChangeTrackerNull.getInstance();
1178 1232 }
1179 1233
1234 + @Override
1180 1235 public boolean hasChanges()
1181 1236 {
1182 1237 return !mAttributeNameToOriginalValues.isEmpty();
1183 1238 }
1184 1239
1240 + @Override
1185 1241 public boolean hasChangeFor( String pAttributeName )
1186 1242 {
1187 1243 return mAttributeNameToOriginalValues.containsKey( pAttributeName );
1188 1244 }
1189 1245
1246 + @Override
1190 1247 public Object getOriginalValueFor( String pAttributeName )
1191 1248 {
1192 1249 Object rv = getOriginalValueControlObjectFor( pAttributeName );
1193 1250 return (rv instanceof ToOneChangeEntry) ? ((ToOneChangeEntry) rv).getPO() : rv;
1194 1251 }
1195 1252
1253 + @Override
1196 1254 public Object getOriginalValueControlObjectFor( String pAttributeName )
1197 1255 {
1198 1256 return mAttributeNameToOriginalValues.get( pAttributeName );
1199 1257 }
1200 1258
1259 + @Override
1201 1260 public String[] getChangedAttributeNames()
1202 1261 {
1203 1262 return mAttributeNameToOriginalValues.isEmpty() ? //
  @@ -1213,6 +1272,7 @@
1213 1272 *
1214 1273 * @return
1215 1274 */
1275 + @Override
1216 1276 public OriginalValueChangeTracker<T> recordChange( T pThePo, String pAttributeName, Object pOldValue, Object pNewValue )
1217 1277 {
1218 1278 if ( !mAttributeNameToOriginalValues.containsKey( pAttributeName ) ) // No Original
  @@ -1230,6 +1290,7 @@
1230 1290 return this;
1231 1291 }
1232 1292
1293 + @Override
1233 1294 public T getTheChangedPo()
1234 1295 {
1235 1296 return mTheChangedPo;
  @@ -1252,11 +1313,13 @@
1252 1313 return mPO;
1253 1314 }
1254 1315
1316 + @Override
1255 1317 public String toString()
1256 1318 {
1257 1319 return (mPO != null) ? mPO.getDisplayValue() : "";
1258 1320 }
1259 1321
1322 + @Override
1260 1323 public boolean equals( Object o )
1261 1324 {
1262 1325 if ( this == o )
  @@ -1273,6 +1336,7 @@
1273 1336 Utils.areNonArraysEqual( this.mPO, them.mPO );
1274 1337 }
1275 1338
1339 + @Override
1276 1340 public int hashCode()
1277 1341 {
1278 1342 int result;
  @@ -1363,11 +1427,13 @@
1363 1427 }
1364 1428 }
1365 1429
1430 + @Override
1366 1431 public int compareTo( PersistentObject pOther )
1367 1432 {
1368 1433 return getPersistentObjectURL().compareTo( pOther.getPersistentObjectURL() );
1369 1434 }
1370 1435
1436 + @Override
1371 1437 public Action makeStateChangeAction()
1372 1438 {
1373 1439 if ( isDeleteRequested() )
  @@ -1397,6 +1463,7 @@
1397 1463 return null;
1398 1464 }
1399 1465
1466 + @Override
1400 1467 public void rehydationComplete()
1401 1468 {
1402 1469 }