1 55 package org.lateralnz.panther.util; 56 57 import java.util.LinkedList ; 58 import java.util.NoSuchElementException ; 59 60 import org.lateralnz.common.util.Constants; 61 62 68 public final class EJBRef implements Constants { 69 70 private static ThreadLocal EJB_NAME = new ThreadLocal () { 71 protected synchronized Object initialValue() { 72 return new LinkedList (); 73 } 74 }; 75 76 79 public static final void pushEJBName(String name) { 80 LinkedList ll = (LinkedList )EJB_NAME.get(); 81 ll.add(name); 82 } 83 84 87 public static final String getEJBName() { 88 try { 89 return (String )((LinkedList )EJB_NAME.get()).getLast(); 90 } 91 catch (NoSuchElementException nsee) { 92 return EMPTY; 93 } 94 } 95 96 99 public static final String popEJBName() { 100 LinkedList ll = (LinkedList )EJB_NAME.get(); 101 try { 102 return (String )ll.removeLast(); 103 } 104 catch (NoSuchElementException nsee) { 105 return EMPTY; 106 } 107 } 108 } | Popular Tags |