1 22 23 24 package com.mchange.v2.c3p0.impl; 25 26 import com.mchange.v2.coalesce.*; 27 28 public final class IdentityTokenizedCoalesceChecker implements CoalesceChecker 29 { 30 public static IdentityTokenizedCoalesceChecker INSTANCE = new IdentityTokenizedCoalesceChecker(); 31 32 public boolean checkCoalesce( Object a, Object b ) 33 { 34 IdentityTokenized aa = (IdentityTokenized) a; 35 IdentityTokenized bb = (IdentityTokenized) b; 36 37 String ta = aa.getIdentityToken(); 38 String tb = bb.getIdentityToken(); 39 40 if (ta == null || tb == null) 41 throw new NullPointerException ( "[c3p0 bug] An IdentityTokenized object has no identity token set?!?! " + (ta == null ? ta : tb) ); 42 else 43 return ta.equals(tb); 44 } 45 46 public int coalesceHash( Object a ) 47 { 48 String t = ((IdentityTokenized) a).getIdentityToken(); 49 return (t != null ? t.hashCode() : 0); 50 } 51 52 private IdentityTokenizedCoalesceChecker() 53 {} 54 } 55 | Popular Tags |