=org/compiere/util/EMailjava/lang/Objectjava/io/SerializableserialVersionUIDJ ConstantValueVۙ@HTML_MAIL_MARKERLjava/lang/String;ContentType=text/html;EMAIL_SEND_MSG EmailSendMsgm_from%Ljavax/mail/internet/InternetAddress;m_toLjava/util/ArrayList; Signature;m_ccm_bcc m_replyTo m_subject m_messageText m_messageHTML m_smtpHost m_smtpPortI m_secureSmtpZm_acknowledgementReceipt m_attachments4Ljava/util/ArrayList;m_auth&Lorg/compiere/util/EMailAuthenticator;m_msgLcom/sun/mail/smtp/SMTPMessage;m_ctxLjava/util/Properties;m_valid m_sentMsgadditionalHeadersLjava/util/List;3Ljava/util/List;SENT_OK4OKlogLorg/compiere/util/CLogger;m_forceUseTenantSmtp()VCode <>=org/compiere/util/CLogger ?@ getCLogger.(Ljava/lang/Class;)Lorg/compiere/util/CLogger; B 56LineNumberTableLocalVariableTableg(Lorg/compiere/model/MClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V HJIorg/compiere/model/MClient KLgetCtx()Ljava/util/Properties; HN OP getSMTPHost()Ljava/lang/String; HR ST getSMTPPort()I HV WX isSecureSMTP()Z Z E[v(Ljava/util/Properties;Ljava/lang/String;IZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)VthisLorg/compiere/util/EMail;clientLorg/compiere/model/MClient;fromtosubjectmessageh(Lorg/compiere/model/MClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Vhtmls(Ljava/util/Properties;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)VctxsmtpHostt(Ljava/util/Properties;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V k E9 m '( o )* q -# s . ujava/util/ArrayList tk x /0 z 7# | }~ setSmtpHost(Ljava/lang/String;)V  ~setFrom org/compiere/util/DB X isConnectedMAIL_SEND_BCC_TO_ADDRESS Jorg/compiere/util/Env getAD_Client_ID(Ljava/util/Properties;)I org/compiere/model/MSysConfig getValue'(Ljava/lang/String;I)Ljava/lang/String; org/compiere/util/Util isEmpty(Ljava/lang/String;Z)Z  addBcc(Ljava/lang/String;)Z  addTo  +, java/lang/String Tlength.  ~ setSubject  setMessageHTML'(Ljava/lang/String;Ljava/lang/String;)V  ~setMessageText  isValid(Z)Z   setSmtpPort(I)V   setSecureSmtp(Z)VsmtpPort isSecureSmtpbccAddressForAllMails StackMapTablejava/util/Properties  "#  !setAcknoledgmentReceipt  $#arsend  (Z)Ljava/lang/String; java/lang/Exception PgetLocalizedMessagemsgeLjava/lang/Exception;sendEx Exceptions  getFrom'()Ljavax/mail/internet/InternetAddress; #javax/mail/internet/InternetAddress P getAddress org/compiere/model/MSMTP getE(Ljava/util/Properties;ILjava/lang/String;)Lorg/compiere/model/MSMTP; N R V PgetRequestUser PgetRequestUserPW  createAuthenticatorL(Ljava/lang/String;Ljava/lang/String;)Lorg/compiere/util/EMailAuthenticator; java/util/logging/Level FINELjava/util/logging/Level; <  isLoggable(Ljava/util/logging/Level;)Z  PtoString   makeConcatWithConstants8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; <  ~fine  INFO      valueOf&(Ljava/lang/Object;)Ljava/lang/String;    J(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; <  ~info"  #&(Ljava/lang/String;)Ljava/lang/String; % &'remove&(Ljava/lang/Object;)Ljava/lang/Object;) Invalid Data + ,-put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; k 021java/lang/System 3L getProperties 5 67putAll(Ljava/util/Map;)V9mail.store.protocol;smtp=mail.transport.protocol? mail.hostAmail.smtp.timeoutCMAIL_SMTP_TIMEOUT E FG getIntValue(Ljava/lang/String;II)I IKJjava/lang/Integer L(I)Ljava/lang/Integer;NMAIL_SMTP_CONNECTIONTIMEOUTPmail.smtp.connectiontimeoutRMAIL_SMTP_WRITETIMEOUTTmail.smtp.writetimeout VXWorg/compiere/util/CLogMgt YX isLevelFinest[ mail.debug]true _a`$org/compiere/util/EMailAuthenticator bXisOAuth2dsmtp.gmail.com f gequalsIgnoreCaseimail.smtp.authkmail.smtp.port m n(I)Ljava/lang/String;p587rmail.smtp.starttls.enabletmail.smtp.auth.mechanismsvXOAUTH2xmail.smtp.starttls.requiredzmail.smtp.auth.login.disable|mail.smtp.auth.plain.disable~mail.debug.auth _ getPasswordAuthentication%()Ljavax/mail/PasswordAuthentication; !javax/mail/PasswordAuthentication P getUserName  P getPassword _ E javax/mail/Session  getInstance,(Ljava/util/Properties;)Ljavax/mail/Session;  setDebug  WARNING java/lang/SecurityException < 5.(Ljava/util/logging/Level;Ljava/lang/String;)V  SEVERE" < 5C(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V com/sun/mail/smtp/SMTPMessage  E(Ljavax/mail/Session;)V  (Ljavax/mail/Address;)VMAIL_DONT_SEND_TO_ADDRESS  getBooleanValue(Ljava/lang/String;ZI)Z  getTos(()[Ljavax/mail/internet/InternetAddress;  javax/mail/Message$RecipientType TO"Ljavax/mail/Message$RecipientType;   setRecipient9(Ljavax/mail/Message$RecipientType;Ljavax/mail/Address;)V   setRecipients:(Ljavax/mail/Message$RecipientType;[Ljavax/mail/Address;)V  getCcs  CC  getBccs  BCC  javax/mail/Address   setReplyTo([Ljavax/mail/Address;)V  7(Ljavax/mail/Message$RecipientType;Ljava/lang/String;)V java/util/List add(Ljava/lang/Object;)Z OriginalTo  getCommaSeparatedString:([Ljavax/mail/internet/InternetAddress;)Ljava/lang/String;   setHeader java/util/Arrays asList%([Ljava/lang/Object;)Ljava/util/List;  addAll(Ljava/util/Collection;)Z  Tsize  toArray(([Ljava/lang/Object;)[Ljava/lang/Object;[Ljavax/mail/Address; OriginalCC OriginalBCCjava/util/Date k     setSentDate(Ljava/util/Date;)V Comments iDempiereMailDisposition-Notification-To  setReturnOption  iterator()Ljava/util/Iterator; java/util/Iterator next()Ljava/lang/Object; org/compiere/util/ValueNamePair " #PgetName % P ' (XhasNext * +9 setContent - .9 saveChanges 0 12 getTransport*(Ljava/lang/String;)Ljavax/mail/Transport; 465javax/mail/Transport 78connect:(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V 4: 79 <>=java/lang/Thread ?@ currentThread()Ljava/lang/Thread; <B CDgetContextClassLoader()Ljava/lang/ClassLoader; FHGjava/lang/Class IDgetClassLoader <K LMsetContextClassLoader(Ljava/lang/ClassLoader;)V O PQgetAllRecipients()[Ljavax/mail/Address; 4S TU sendMessage,(Ljavax/mail/Message;[Ljavax/mail/Address;)V W XP getMessageID" []\javax/mail/MessagingException ^9printStackTrace`java/lang/StringBuilderb(ME) _d E~fjavax/mail/SendFailedException eh iQgetInvalidAddressesk - Invalid: _m noappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;q _s nt-(Ljava/lang/Object;)Ljava/lang/StringBuilder; ev wQgetValidUnsentAddressesy - ValidUnsent: e{ |QgetValidSentAddresses~ - ValidSent: e getNextException()Ljava/lang/Exception; e(javax/mail/AuthenticationFailedException": Could not connect to SMTP host:  indexOf(Ljava/lang/String;)I  (I)I   substring(II)Ljava/lang/String;?? #AD_Client_ID  # getProperty  getClass()Ljava/lang/Class; F"MessagingException [ _ 4 9close  9 dumpMessagethrowExceptionLorg/compiere/model/MSMTP;propsmail_smtp_connectiontimeoutmail_smtp_writetimeoutsessionLjavax/mail/Session;isGmailseLjava/lang/SecurityException;tLjavax/mail/Transport;isDontSendToAddressrec&[Ljavax/mail/internet/InternetAddress; replyToListvnp!Lorg/compiere/util/ValueNamePair;tclLjava/lang/ClassLoader;meLjavax/mail/MessagingException;exsbLjava/lang/StringBuilder;printedsfex Ljavax/mail/SendFailedException;invalidi validUnsent validSentindexcc classNameLocalVariableTypeTable7Ljava/util/List;java/lang/ClassLoaderjava/lang/Throwable _k _,recsretValue getSentMsgisSentOK  equals  FINEST  getAllHeaderLines()Ljava/util/Enumeration; java/util/Enumeration  nextElement" < ~finest  XhasMoreElements Ljava/util/Enumeration;Ljava/util/Enumeration<*>;getMimeMessage#()Ljavax/mail/internet/MimeMessage; usernamepassword  createInternetAddress9(Ljava/lang/String;)Ljavax/mail/internet/InternetAddress;MAIL_SEND_BCC_TO_FROM newFrom  tnewToiagetTo t t (I)Ljava/lang/Object; tiasaddCc   newCc, *  split'(Ljava/lang/String;)[Ljava/lang/String;  P getMessage  " newBcc addresses[Ljava/lang/String; bccAddress% getReplyTo +   newSubject getSubject /  1 3 4endsWith" newMessagegetMessageCRLF 9 :; toCharArray()[C _= n>(C)Ljava/lang/StringBuilder;@ chars[CcCpreviousB H  "K M O �"R� T V X Z getMessageHTML addAttachment(Ljava/io/File;)V _ %ajavax/activation/FileDataSource `c E]fileLjava/io/File;addAttachments(Ljava/util/Collection;)V)(Ljava/util/Collection;)V jkjava/util/Collection jn java/io/File p \]filesLjava/util/Collection;f&Ljava/util/Collection;(Ljava/net/URI;)Vwjavax/activation/URLDataSource y{z java/net/URI |}toURL()Ljava/net/URL; v E(Ljava/net/URL;)Vjava/lang/RuntimeException  E(Ljava/lang/Throwable;)Vjava/net/MalformedURLExceptionurlLjava/net/URI; Ljava/net/MalformedURLException;)([BLjava/lang/String;Ljava/lang/String;)V%org/compiere/util/ByteArrayDataSource  E([BLjava/lang/String;)V  setName;(Ljava/lang/String;)Lorg/compiere/util/ByteArrayDataSource;  \ (Ljavax/activation/DataSource;)Vdata[Btypename byteArray'Lorg/compiere/util/ByteArrayDataSource; dataSourceLjavax/activation/DataSource;java/io/IOException org/compiere/util/Ini  getCharset()Ljava/nio/charset/Charset; java/nio/charset/Charset P iso-8859-1  -P   7P  setTextjavax/activation/DataHandler text/html  E9(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V  E  setDataHandler!(Ljavax/activation/DataHandler;)V" javax/mail/internet/MimeBodyPart k " !javax/mail/internet/MimeMultipartmixed drelated  +(Ljavax/mail/Multipart;)V javax/mail/Multipart  addBodyPart(Ljavax/mail/BodyPart;)V alternative m Xexists"javax/activation/DataSource" "  ~ setFileName"  contains(Ljava/lang/CharSequence;)Z"  ~ setContentIDinline  ~setDisposition  charSetNamehtmlPart"Ljavax/mail/internet/MimeBodyPart;planPartmainPartLjavax/mail/Multipart;viewContentPart viewBodyParttextAlternativePartalternativeBodyPart attachmentLjava/lang/Object;dsmbp_2 newSmtpHost getSmtpHost" <  ~warningNo To  '(ILjava/lang/String;)Ljava/lang/String;""recheckgetAttachments()[Ljava/lang/Object; t EMail[From:,To:   " ,Subject=$]validate ' E((Ljava/lang/String;Z)Vemailmain([Ljava/lang/String;)V .0/org/compiere/Adempiere 1startup 03 45outLjava/io/PrintStream;7,Parameters: smtpHost from to subject message 9;:java/io/PrintStream <~println>_Example: java org.compiere.util.EMail mail.acme.com joe@acme.com sue@acme.com HiThere CheersJoe 0@ Aexit C Ef E Pargs valueJ<L> N O lastIndexOf Q RPtrim T X V W~ setPersonalidxpersonalsetForTenantSmtpforceTenantSmtp SourceFile EMail.javaBootstrapMethods `ba$java/lang/invoke/StringConcatFactory  c(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;_f"sending email using from  using h ()  -> j (m_auth) l Auth= - nAuth=pSuccess - MessageID=r - Invalid Username/Password - t - AD_Client_ID=v- x Ignored - /z: | ~ (simple)  (multi)  - File does not exist: Attachement type unknown: Added Attachment  - cid:<>From is invalid=To() is invalid=SMTP Host is invalidSubject is invalid= InnerClasses%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookupjavax/mail/Message RecipientType1           !"#$#%&'()*+,-#. /012  3567#689:) ;ACDEF:| *+G+M+Q+U,-YC _`D>\]^_` a b c Ed: *+G+M+Q+U,-YC mnDH\]^_` a b c e#Ef:{ *+,-YC {|DH\]g,h ` a b c Ei: *+,-YC DR\]g,h ` a b c e#E[: *j*l*n*p*r*tYvw*y*,{*: :   * W*W*+  * *! * ***p**Cn #(-36<IRY`er{Dp \]g,h !#` a b c e# 6 *I :>*ȱC D\]#:>*ʱC D\]!:>*ͱC D\]#P:*L M,L+ C D*\]    IP:0*ѰCD \]:G*yk*d***޶M,J*,{*,*,*,,WAA*޶, A2A***A*l!*r$W**(r*r*W*rY.M,/4,8:*W,<:*W,>**W,@BN *DH*WM*D>,OH*WQ*D6,SH*WU,Z\*W6*l *l^6:*ce6*l,h\*W*ʞ,j*ʸl*W,jo*W*Ț,q\*WY,su*W,w\*W,y\*W,{\*W,}\*W*_Y*l*ll,:U~:A*l*r*r*W:A*l*r*r*W:*Yn*n*66*:  *n 2*n *:   *n *:   *n **nY*Sا: :  *n ܻtYv: * *ԹW*:  & *n*   W *n *:   *n* *:   *n* *nY*n *͙*n**n*w8*w:  : *n ! $ &*)*n,:/:*l'***l*l39;A: ;EJ*n*nNR: ; J ; JAA*nVY :Z: _Yac: 6  e e:  g:   4 . jlW6 pl 2rW  u:4. xlW6 pl2rW z:4. }lW6 pl2rW6   pl lW  *llW :   l lW ?  6     : :**: :  :   l lW pl ll lW [ [: :  7UA A * r*r*W :W::A*Եr*r*W:W::W:W:U**3r*r TWT)HH{~[{  &+.C$(08@Mo{ #%&'*+,-. 0%14283D4T5Y6f8l9w<z=>@CDEFHIKMOQRSTUV'WFYLZT[W\Y^]_``zabceghijklortwxy{ |}~(4:EQWbnu $/?EP`n{!)5EJRU]{~ "-4?HN_jmu$5NVc f k q #$& #$&   #$&(! &#+$/&2*8+<,B-D`#G\]G#$K;f,4!T!zb##Y=:r#w  0   )R C3 ' $#   !v!49K! 3!  6 F  3Qo:.j!  Z5224" - 2! 4 4?& 4 (4[[_4e  $ & )4[_474444L :B_YM+Y:66$2N,ڞ ,۶lW,-lW,C123"4*532=7D*B\]B:F__ _P:/*rC@D \]X:J*r3*rCID \]9:R*nA*nLA++LA*n+<?[C* QRUVW3V<X?Y@[Q]D R\] @    [:/*nCeD \]XP:x*n*nVLA+[CqrtvxD\] O[ :/+,A+, *l*_Y+,l*lC*D /\]/ /  :/*CD \]~:K+ *p*+5%*+WMA+,*p .1C.   (.12EJD K\]K 2 f:T+ + *pM+MNA+-*p**tYv*,WC: 057>IRD*T\]T @    :k!* * * L+CD!\] :w)* * * L*+W+C'D)\] :J+ +M+MNA+-**tYv*,WC2   +-4?HD*J\]J ;   :w)* * * L*+W+C   ' D)\] :f t+ ++M,Y:66L2N:-::A- *!*tYv!*!W+14C>  (+146!J"L$S%^&hr(D>t\]t# _$%(@& += 6P '''' '':w)*! *! *! L*!+W+C1234'5D)\] :4+ +M+MNA+-(*,C* ? @ ADEFH+I-K2LD*4\]4 %   ):/*԰CUD \]~:d+ + *p*+*C_ `bcD\],  -P:/**CkD \]~:6+ + *p%*+.*.02*Y.5.Ct uxy%z5|D6\]66  !7P:i*.*.8L_YM>A+46 +d6+4 ,  %,1?IQT[dD>i\]VABNG!%6CD1 E! F_( ~:6+ + *p%*+G*G02*YGIGC %5D6\]6e  !:Z*+*_YJcLlNl+PlQlSlN-Ul,l0lWlW-YlW*-GC>$*018<BIQYD*Z\]Zb Zc 1)[P:/*GCD \]\]:z(+*^*tYv^*^`Y+bWC 'D(\](defgh:1+ +i+lN-mM*,o-&C "'0D 1\]1qr"se 1qt j\u:8+*^*tYv^*^vY+x~W MY,*-C" *.7D 8\]8.  U \:pY+,-:*CD4\]  \:s!+*^*tYv^*^+WC     D!\]!+9[: L+ +L*n*+*^ *^ ^*G *G*n*+ *nYY*G+AA* MYN-*+ȻYM*G**G,YY*G+ʻYͷ:Yз:Y:ջY۷:,ջY:ղAA*, 6 $*^  : :  m6 m:  ޙ`Y b: aA  y y: vY x~: +   : A Y:  Y   AA   *G<*G &    է  Մ  *^ *nC>" 3"D#S%[&m%p()-.0123676:<=>?ACD!E(F/HNKTM_NbOjQqRySVWZ\]^_`cdghij+lHmYnaohpkqrKvxD\] x!iQ0! _ b q,de   g. 2mE?}~:d+ + *p*+C D\]  P:/*CD \]X:/*pCD \]:*p* ** A*  *M,A  >;,2,2,2 A,2 ,* *A* ** **A** Cf -?AFJSUZ`l{D*\]#FWA! # :O*^*^C D \] P:?_YcL+l*rl*r!l*l#lW+C &3:D?\] 4 %:#*&LA*+) C  !D#* K +,: A-W*2682=8?Y/*2*2*2*2*2BL+DWC"   ! ; @DAF%;*]!:V*wY,+GWC D \] H  :>Y*&L*I+*K!*IM=*PN-S+-U+C &07<!D*>* 4 &X!0 Y <Z:>*yC %&D\][#\]^dedgdidkdmdodqdsdudwdydydydydyd{d{d{d}ddddddddddddy