diff src/luan/modules/mail/SmtpCon.java @ 1267:9fa8b8389578

add LuanTable.luan; support metatable __gc(); add luan.sql;
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 12 Nov 2018 02:10:41 -0700
parents 23e8f93055a4
children cc3dabc05f72
line wrap: on
line diff
--- a/src/luan/modules/mail/SmtpCon.java	Sun Sep 30 19:10:48 2018 -0600
+++ b/src/luan/modules/mail/SmtpCon.java	Mon Nov 12 02:10:41 2018 -0700
@@ -24,8 +24,8 @@
 public final class SmtpCon {
 	private final Session session;
 
-	public SmtpCon(LuanState luan,LuanTable paramsTbl) throws LuanException {
-		Map<Object,Object> params = new HashMap<Object,Object>(paramsTbl.asMap(luan));
+	public SmtpCon(LuanTable paramsTbl) throws LuanException {
+		Map<Object,Object> params = new HashMap<Object,Object>(paramsTbl.asMap());
 		Properties props = new Properties(System.getProperties());
 
 		String host = getString(params,"host");
@@ -71,7 +71,7 @@
 			throw new LuanException( "unrecognized parameters: "+params );
 	}
 
-	private String getString(Map<Object,Object> params,String key) throws LuanException {
+	private static String getString(Map<Object,Object> params,String key) throws LuanException {
 		Object val = params.remove(key);
 		if( val!=null && !(val instanceof String) )
 			throw new LuanException( "parameter '"+key+"' must be a string" );
@@ -79,9 +79,9 @@
 	}
 
 
-	public void send(LuanState luan,LuanTable mailTbl) throws LuanException {
+	public void send(LuanTable mailTbl) throws LuanException {
 		try {
-			Map<Object,Object> mailParams = new HashMap<Object,Object>(mailTbl.asMap(luan));
+			Map<Object,Object> mailParams = new HashMap<Object,Object>(mailTbl.asMap());
 			MimeMessage msg = new MimeMessage(session);
 
 			String from = getString(mailParams,"from");
@@ -113,7 +113,7 @@
 					bodyPart.setText((String)body);
 				} else if( body instanceof LuanTable ) {
 					LuanTable bodyTbl = (LuanTable)body;
-					Map<Object,Object> map = new HashMap<Object,Object>(bodyTbl.asMap(luan));
+					Map<Object,Object> map = new HashMap<Object,Object>(bodyTbl.asMap());
 					MimeMultipart mp = new MimeMultipart("alternative");
 					String text = (String)map.remove("text");
 					if( text != null ) {
@@ -146,7 +146,7 @@
 				for( Object attachment : attachmentsTbl.asList() ) {
 					if( !(attachment instanceof LuanTable) )
 						throw new LuanException( "each attachment must be a table" );
-					Map<Object,Object> attachmentMap = new HashMap<Object,Object>(((LuanTable)attachment).asMap(luan));
+					Map<Object,Object> attachmentMap = new HashMap<Object,Object>(((LuanTable)attachment).asMap());
 					Object obj;
 
 					obj = attachmentMap.remove("filename");