4 3c 3d 2ef cg hi j kl mn mo 2pq c r s 2t 2u vw 2x vy vz X{ Y| Y}~ Z X Y v   k m  W   m v()VCodeLineNumberTableLocalVariableTablethis,Lcom/amazon/photosharing/facade/TokenFacade; (Ljava/util/function/Supplier;)V p_emFactoryLjava/util/function/Supplier;LocalVariableTypeTable@Ljava/util/function/Supplier; SignatureC(Ljava/util/function/Supplier;)V storeToken'(Ljava/lang/String;Ljava/lang/String;)V p_usernameLjava/lang/String;p_tokentoken#Lcom/amazon/photosharing/dao/Token; StackMapTable findToken7(Ljava/lang/String;)Lcom/amazon/photosharing/dao/Token;tex%Ljavax/persistence/NoResultException;builder,Ljavax/persistence/criteria/CriteriaBuilder;criteria*Ljavax/persistence/criteria/CriteriaQuery; token_root!Ljavax/persistence/criteria/Root;OLjavax/persistence/criteria/CriteriaQuery;FLjavax/persistence/criteria/Root; validateToken(Ljava/lang/String;)ZtmpTokenisValidZusername SourceFileTokenFacade.java 45 4; java/lang/StringBuilder Stored token  for user   BC JK!com/amazon/photosharing/dao/Token 5  5 5 userName  #javax/persistence/NoResultException Token:  Username: 'Token is null, trying to get it from DB Tokens are the same [\Is token valid: Tokens not the same*com/amazon/photosharing/facade/TokenFacade+com/amazon/photosharing/iface/ServiceFacadejava/lang/String*javax/persistence/criteria/CriteriaBuilder(javax/persistence/criteria/CriteriaQueryjavax/persistence/criteria/Root_loggerLorg/slf4j/Logger;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;org/slf4j/Loggerinfo(Ljava/lang/String;)V*com/amazon/photosharing/utils/TokenStorage getInstance.()Lcom/amazon/photosharing/utils/TokenStorage; setUserNamesetTokenbeginTxem#()Ljavax/persistence/EntityManager;javax/persistence/EntityManagermerge&(Ljava/lang/Object;)Ljava/lang/Object;commitTxclosegetCriteriaBuilder.()Ljavax/persistence/criteria/CriteriaBuilder; createQuery=(Ljava/lang/Class;)Ljavax/persistence/criteria/CriteriaQuery;from4(Ljava/lang/Class;)Ljavax/persistence/criteria/Root;selectR(Ljavax/persistence/criteria/Selection;)Ljavax/persistence/criteria/CriteriaQuery;get5(Ljava/lang/String;)Ljavax/persistence/criteria/Path;equala(Ljavax/persistence/criteria/Expression;Ljava/lang/Object;)Ljavax/persistence/criteria/Predicate;whereS(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/CriteriaQuery;J(Ljavax/persistence/criteria/CriteriaQuery;)Ljavax/persistence/TypedQuery;javax/persistence/TypedQuerygetSingleResult()Ljava/lang/Object;,com/amazon/photosharing/utils/TokenGenerator0()Lcom/amazon/photosharing/utils/TokenGenerator;getUsernameFromToken&(Ljava/lang/String;)Ljava/lang/String;debuggetTokenequals(Ljava/lang/Object;)Z(Z)Ljava/lang/StringBuilder; removeTokenremove(Ljava/lang/Object;)V!234563*7 "#8 9:4;6P*+7 &'89:<=> <?@ABC6f*Y,+  +, *+ N-YN-+-,**-W**72 *%+--3/70?1D4I6M7X8\9e:8*f9:fDEfFE33GHIDJK6#X*M,N-:-W-,+W*- ::=ST!7& = >?@&A=CQDTEVF8HQLHVMNX9:XDE NOPEQR;ST>EQU;SVIT2WXYZ![\6"+#M*Y$+ %*Y&, % ,'N-.*(%*, : ,) )N-+*b*+%"-,6*Y-. %) ,/*, :**0**1 7fKM$N@PHRLSWT^UcVeXqYw\]^_abcefghlop8H^]H]HK^_9:FE`EHGEIeWWcab