import com.aol.acc.*; import java.util.*; import java.util.regex.*; import com.google.soap.search.*; import java.net.*; import java.io.*; import java.util.logging.*; import javax.naming.*; import javax.naming.directory.*; import java.sql.*; import oracle.jdbc.*; import java.math.*; public class BotTest implements AccEvents { AccSession session; Hashtable userMenu = new Hashtable(); Hashtable userDBStr = new Hashtable(); Hashtable userDBFldCnt = new Hashtable(); Hashtable userMYDBStr = new Hashtable(); Hashtable userMYDBFldCnt = new Hashtable(); String menu=""; String userSN=""; String dbstr=""; int checkMe=0; Connection con; String DBConnection = ""; private static Logger logger = Logger.getLogger("BotTest"); private static FileHandler fh; boolean running = true; String key = "buddybot (Key:aw1nzTxJ82WbF6w0)"; long start = new java.util.Date().getTime(); public static void main(String[] args) { try { fh = new FileHandler("BotTest.log"); } catch (IOException e) { e.printStackTrace(); } logger.addHandler(fh); logger.setLevel(Level.ALL); try { new BotTest(); } catch (AccException e) { System.out.println("Main AccException, hr: "+e.errorCode); e.printStackTrace(); } } public BotTest() throws AccException { // Create main session object session = new AccSession(); // Add event listener session.setEventListener(this); // set key AccClientInfo info = session.getClientInfo(); info.setDescription(key); // set screen name session.setIdentity(Env.screenname); // setup prefs so anyone can IM us, but not chats or DIMs session.setPrefsHook(new Prefs()); AccPreferences prefs = session.getPrefs(); prefs.setValue("aimcc.im.chat.permissions.buddies", AccPermissions.RejectAll); prefs.setValue("aimcc.im.chat.permissions.nonBuddies", AccPermissions.RejectAll); prefs.setValue("aimcc.im.direct.permissions.buddies", AccPermissions.RejectAll); prefs.setValue("aimcc.im.direct.permissions.nonBuddies", AccPermissions.RejectAll); prefs.setValue("aimcc.im.standard.permissions.buddies", AccPermissions.AcceptAll); prefs.setValue("aimcc.im.standard.permissions.nonBuddies", AccPermissions.AcceptAll); session.signOn(Env.password); //msg pump while( running ) { try { AccSession.pump(50); } catch (Exception e) { e.printStackTrace(); } try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } } info = null; session = null; prefs = null; System.gc(); System.runFinalization(); } public int ldapCheck(String sn) { System.out.println("ldapCheck sn = "+sn); Hashtable env = new Hashtable(5, 0.75f); String saveMe=""; String newSN=""; String ret=""; int x=0; StringTokenizer st = new StringTokenizer(sn); while(st.hasMoreTokens()) { newSN=newSN+st.nextToken(); } System.out.println("newSN = "+newSN); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, Env.ldapServer); env.put(Context.SECURITY_AUTHENTICATION,"simple"); env.put(Context.SECURITY_PRINCIPAL,Env.security_principal); env.put(Context.SECURITY_CREDENTIALS,Env.security_credentials); try { DirContext ctx = new InitialDirContext(env); String[] attrIDs = {Env.aimSNAttrib}; SearchControls constraints = new SearchControls(); constraints.setReturningAttributes(attrIDs); constraints.setSearchScope(SearchControls.SUBTREE_SCOPE); String filter=Env.aimSNAttrib+"="+newSN; //was uid changed to screenname for access System.out.println("filter="+filter); NamingEnumeration results = ctx.search(Env.baseDN, filter, constraints); while (results != null && results.hasMore() && x<1) { SearchResult si = (SearchResult)results.next(); x=x+1; Attributes attrs = si.getAttributes(); if (attrs == null) { System.out.println("No attributes"); } else { /* print each attribute */ for (NamingEnumeration ae = attrs.getAll(); ae.hasMoreElements();) { Attribute attr = (Attribute)ae.next(); String attrId = attr.getID(); /* print each value */ for (Enumeration vals = attr.getAll(); vals.hasMoreElements(); ret=vals.nextElement()+"
") ; } } } } catch (NamingException e) { System.err.println("Search example failed."+e.getMessage()); e.printStackTrace(); } return x; } public String ldapStatus() { Hashtable env = new Hashtable(5, 0.75f); String ret=""; String saveMe=""; int x=0; env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, Env.ldapServer); env.put(Context.SECURITY_AUTHENTICATION,"simple"); env.put(Context.SECURITY_PRINCIPAL,Env.security_principal); env.put(Context.SECURITY_CREDENTIALS,Env.security_credentials); try { DirContext ctx = new InitialDirContext(env); String[] attrIDs = {"version","threads","totalconnections","currentconnections"}; SearchControls constraints = new SearchControls(); constraints.setReturningAttributes(attrIDs); constraints.setSearchScope(SearchControls.SUBTREE_SCOPE); /* search for all entries with surname of Jensen */ String filter="objectclass=*"; NamingEnumeration results = ctx.search("cn=monitor", filter, constraints); if (results == null) { ret="Search failed"; } else { /* for each entry print out name + all attrs and values */ while (results != null && results.hasMore() && x<1) { SearchResult si = (SearchResult)results.next(); x=x+1; Attributes attrs = si.getAttributes(); if (attrs == null) { System.out.println("No attributes"); } else { /* print each attribute */ for (NamingEnumeration ae = attrs.getAll(); ae.hasMoreElements();) { Attribute attr = (Attribute)ae.next(); String attrId = attr.getID(); /* print each value */ for (Enumeration vals = attr.getAll(); vals.hasMoreElements(); ret=ret+"
"+attrId+":"+vals.nextElement()) ; } } } // end of while } // end of not search failed } catch (NamingException e) { System.err.println("Search example failed."); e.printStackTrace(); } return ret; } public String ldapSearch(String cn) { Hashtable env = new Hashtable(5, 0.75f); String ret=""; String saveMe=""; int x=0; env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, Env.ldapServer); env.put(Context.SECURITY_AUTHENTICATION,"simple"); env.put(Context.SECURITY_PRINCIPAL,Env.security_principal); env.put(Context.SECURITY_CREDENTIALS,Env.security_credentials); try { DirContext ctx = new InitialDirContext(env); String[] attrIDs = {Env.ldapField1,Env.ldapField2,Env.ldapField3,Env.ldapField4,Env.ldapField5,Env.ldapField6,Env.ldapField7,Env.ldapField8,Env.ldapField9,Env.ldapField10}; SearchControls constraints = new SearchControls(); constraints.setReturningAttributes(attrIDs); constraints.setSearchScope(SearchControls.SUBTREE_SCOPE); /* search for all entries with surname of Jensen */ String filter="cn="+cn+"*"; NamingEnumeration results = ctx.search(Env.baseDN, filter, constraints); //dc=domain,dc=com /* for each entry print out name + all attrs and values */ while (results != null && results.hasMore() && x<1) { SearchResult si = (SearchResult)results.next(); x=x+1; /* print its name */ ret=ret+("

Name: " + si.getName() + ",
"); //dc = domain, dc = com Attributes attrs = si.getAttributes(); if (attrs == null) { System.out.println("No attributes"); } else { /* print each attribute */ for (NamingEnumeration ae = attrs.getAll(); ae.hasMoreElements();) { Attribute attr = (Attribute)ae.next(); String attrId = attr.getID(); ret=ret+attrId+": "; /* print each value */ for (Enumeration vals = attr.getAll(); vals.hasMoreElements(); ret=ret+vals.nextElement()+"
") ; } } } } catch (NamingException e) { System.err.println("Search example failed."); e.printStackTrace(); } return ret; } public String getGoogle(String direct, String getWhat) { String clientKey = Env.googleClientKey; String directive = direct; String directiveArg = getWhat; String ret = ""; int i, j, requested; GoogleSearchResult result = null; GoogleSearchResultElement[] element = null; int numResults=10; String urls[]; String titles[]; int links[]; links = new int[numResults]; // Report the arguments received System.out.println("Parameters:"); System.out.println("Client key = " + clientKey); System.out.println("Directive = " + directive); System.out.println("Args = " + directiveArg); // Create a Google Search object, set our authorization key GoogleSearch s = new GoogleSearch(); s.setKey(clientKey); // Depending on user input, do search or cache query, then print out result try { if (directive.equalsIgnoreCase("search")) { s.setQueryString(directiveArg); urls = new String[numResults]; titles = new String[numResults]; j=0; i=0; requested=0; int numFetched=0; s.setStartResult(1); s.setMaxResults(10); result = s.doSearch(); GoogleSearchResultElement results[]=result.getResultElements(); for (j=0; j < results.length; j++) { urls[j]=results[j].getURL(); if (results[j].getTitle().equals("")) titles[j]=urls[j]; else titles[j]=results[j].getTitle(); } numFetched=numFetched+j; for (i=0; i"+titles[i]+"
"); ret = ret + urls[i] + "
"; } } else if (directive.equalsIgnoreCase("cached")) { // System.out.println("Cached page:"); // System.out.println("============"); byte [] cachedBytes = s.doGetCachedPage(directiveArg); // Note - this conversion to String should be done with reference // to the encoding of the cached page, but we don't do that here. String cachedString = new String(cachedBytes); System.out.println(cachedString); } else if (directive.equalsIgnoreCase("spell")) { // System.out.println("Spelling suggestion:"); String suggestion = s.doSpellingSuggestion(directiveArg); // System.out.println(suggestion); if (suggestion != null) ret = suggestion; else ret="No Suggestion"; } else { System.out.println("Wrong Usage"); } } catch (GoogleSearchFault f) { // System.out.println("The call to the Google Web APIs failed:"); // System.out.println(f.toString()); } return ret; } public String addMySQLDB(String fields) { // Load the MySQL JDBC driver String insertStr=""; String retStr=""; String _url="jdbc:mysql://"+Env.MySQLServer+":"+Env.MySQLPort+"/"+Env.MySQLDBName; System.out.println("using url:"+_url); String _user=Env.MySQLUser; System.out.println("using user:"+_user); String _pswd=Env.MySQLPassword; System.out.println("using pswd:"+_pswd); try { DriverManager.registerDriver((Driver) Class.forName ("com.mysql.jdbc.Driver").newInstance ()); Connection con = DriverManager.getConnection(_url,_user,_pswd); insertStr="insert into "+Env.MySQLTable+" values ("+fields+")"; PreparedStatement stmt = con.prepareStatement(insertStr); System.out.println("sql insert: "+insertStr); stmt.executeUpdate(); stmt.close(); con.close(); retStr="Database Insert Successful"; } catch(SQLException e) { retStr=("Error Connection: " + e.getMessage() + '\t'); } catch(Exception ex) { retStr=("Error Connection: " + ex.getMessage() + '\t'); } return retStr; } public String addDB(String fields) { // Load the Oracle JDBC driver String insertStr=""; String retStr=""; try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch(Exception e) { System.out.println( "Error DriverMgr: " + e + '\t' ); } try { Connection con = DriverManager.getConnection("jdbc:oracle:thin:"+Env.OracleUser+"/"+Env.OracleUserPassword+"@"+Env.OracleServer+":"+Env.OraclePort+":"+Env.OracleSid); Statement stmt = con.createStatement (); insertStr="insert into "+Env.OracleTable+" values ("+fields+")"; System.out.println("sql insert: "+insertStr); stmt.execute (insertStr); stmt.getResultSet(); stmt.close(); con.close(); retStr="Database Insert Successful"; } catch(SQLException e) { retStr=("Error Connection: " + e.getMessage() + '\t'); } catch(Exception ex) { retStr=("Error Connection: " + ex.getMessage() + '\t'); } return retStr; } public String searchMySQLDB(String input) { // Load the MySQL JDBC driver String selectStr=""; String retStr=""; String _url="jdbc:mysql://"+Env.MySQLServer+":"+Env.MySQLPort+"/"+Env.MySQLDBName; System.out.println("using url:"+_url); String _user=Env.MySQLUser; System.out.println("using user:"+_user); String _pswd=Env.MySQLPassword; System.out.println("using pswd:"+_pswd); try { try { DriverManager.registerDriver((Driver) Class.forName ("com.mysql.jdbc.Driver").newInstance ()); }catch(InstantiationException ie){ System.out.println(ie.getMessage()); }catch(ClassNotFoundException cnf){ System.out.println(cnf.getMessage()); }catch(IllegalAccessException iae){ System.out.println(iae.getMessage()); } System.out.println(Env.MySQLServer); System.out.println(Env.MySQLPort); System.out.println(Env.MySQLDBName); System.out.println(Env.MySQLUser); System.out.println(Env.MySQLPassword); Connection con = DriverManager.getConnection(_url,_user,_pswd); Statement stmt = con.createStatement (); System.out.println("Search Input = "+input); selectStr="select "; if(Env.MySQLField1.length()>0) selectStr=selectStr+Env.MySQLField1; if(Env.MySQLField2.length()>0) selectStr=selectStr+","+Env.MySQLField2; if(Env.MySQLField3.length()>0) selectStr=selectStr+","+Env.MySQLField3; if(Env.MySQLField4.length()>0) selectStr=selectStr+","+Env.MySQLField4; if(Env.MySQLField5.length()>0) selectStr=selectStr+","+Env.MySQLField5; if(Env.MySQLField6.length()>0) selectStr=selectStr+","+Env.MySQLField6; if(Env.MySQLField7.length()>0) selectStr=selectStr+","+Env.MySQLField7; if(Env.MySQLField8.length()>0) selectStr=selectStr+","+Env.MySQLField8; if(Env.MySQLField9.length()>0) selectStr=selectStr+","+Env.MySQLField9; if(Env.MySQLField10.length()>0) selectStr=selectStr+","+Env.MySQLField10; selectStr=selectStr+" from "+Env.MySQLTable+" where upper("+Env.MySQLSearchField+") like upper('%"+input+"%')"; System.out.println("Select String = "+selectStr); ResultSet rset = stmt.executeQuery (selectStr); while (rset.next ()) { if(Env.MySQLField1.length()>0) retStr="
"+Env.MySQLField1+": "+rset.getString(Env.MySQLField1); if(Env.MySQLField2.length()>0) retStr=retStr+"
"+Env.MySQLField2+": "+rset.getString(Env.MySQLField2); if(Env.MySQLField3.length()>0) retStr=retStr+"
"+Env.MySQLField3+": "+rset.getString(Env.MySQLField3); if(Env.MySQLField4.length()>0) retStr=retStr+"
"+Env.MySQLField4+": "+rset.getString(Env.MySQLField4); if(Env.MySQLField5.length()>0) retStr=retStr+"
"+Env.MySQLField5+": "+rset.getString(Env.MySQLField5); if(Env.MySQLField6.length()>0) retStr=retStr+"
"+Env.MySQLField6+": "+rset.getString(Env.MySQLField6); if(Env.MySQLField7.length()>0) retStr=retStr+"
"+Env.MySQLField7+": "+rset.getString(Env.MySQLField7); if(Env.MySQLField8.length()>0) retStr=retStr+"
"+Env.MySQLField8+": "+rset.getString(Env.MySQLField8); if(Env.MySQLField9.length()>0) retStr=retStr+"
"+Env.MySQLField9+": "+rset.getString(Env.MySQLField9); if(Env.MySQLField10.length()>0) retStr=retStr+"
"+Env.MySQLField10+": "+rset.getString(Env.MySQLField10); retStr=retStr+"
"; } stmt.close(); con.close(); } catch(SQLException e) { System.out.println( "Error Connection: " + e + '\t' ); } System.out.println("retStr = "+retStr); System.out.println("Leaving searchMySQLDB"); return retStr; } public String searchDB(String input) { // Load the Oracle JDBC driver String selectStr=""; String retStr=""; try { Class.forName("oracle.jdbc.driver.OracleDriver"); } catch(Exception e) { System.out.println( "Error DriverMgr: " + e + '\t' ); } try { Connection con = DriverManager.getConnection("jdbc:oracle:thin:"+Env.OracleUser+"/"+Env.OracleUserPassword+"@"+Env.OracleServer+":"+Env.OraclePort+":"+Env.OracleSid); Statement stmt = con.createStatement (); System.out.println("Search Input = "+input); selectStr="select "; if(Env.OracleField1.length()>0) selectStr=selectStr+Env.OracleField1; if(Env.OracleField2.length()>0) selectStr=selectStr+","+Env.OracleField2; if(Env.OracleField3.length()>0) selectStr=selectStr+","+Env.OracleField3; if(Env.OracleField4.length()>0) selectStr=selectStr+","+Env.OracleField4; if(Env.OracleField5.length()>0) selectStr=selectStr+","+Env.OracleField5; if(Env.OracleField6.length()>0) selectStr=selectStr+","+Env.OracleField6; if(Env.OracleField7.length()>0) selectStr=selectStr+","+Env.OracleField7; if(Env.OracleField8.length()>0) selectStr=selectStr+","+Env.OracleField8; if(Env.OracleField9.length()>0) selectStr=selectStr+","+Env.OracleField9; if(Env.OracleField10.length()>0) selectStr=selectStr+","+Env.OracleField10; selectStr=selectStr+" from "+Env.OracleTable+" where upper("+Env.OracleSearchField+") like upper('%"+input+"%')"; System.out.println("Select String = "+selectStr); ResultSet rset = stmt.executeQuery (selectStr); while (rset.next ()) { if(Env.OracleField1.length()>0) retStr="
"+Env.OracleField1+": "+rset.getString(Env.OracleField1); if(Env.OracleField2.length()>0) retStr=retStr+"
"+Env.OracleField2+": "+rset.getString(Env.OracleField2); if(Env.OracleField3.length()>0) retStr=retStr+"
"+Env.OracleField3+": "+rset.getString(Env.OracleField3); if(Env.OracleField4.length()>0) retStr=retStr+"
"+Env.OracleField4+": "+rset.getString(Env.OracleField4); if(Env.OracleField5.length()>0) retStr=retStr+"
"+Env.OracleField5+": "+rset.getString(Env.OracleField5); if(Env.OracleField6.length()>0) retStr=retStr+"
"+Env.OracleField6+": "+rset.getString(Env.OracleField6); if(Env.OracleField7.length()>0) retStr=retStr+"
"+Env.OracleField7+": "+rset.getString(Env.OracleField7); if(Env.OracleField8.length()>0) retStr=retStr+"
"+Env.OracleField8+": "+rset.getString(Env.OracleField8); if(Env.OracleField9.length()>0) retStr=retStr+"
"+Env.OracleField9+": "+rset.getString(Env.OracleField9); if(Env.OracleField10.length()>0) retStr=retStr+"
"+Env.OracleField10+": "+rset.getString(Env.OracleField10); retStr=retStr+"
"; } stmt.close(); con.close(); } catch(SQLException e) { System.out.println( "Error Connection: " + e + '\t' ); } System.out.println("retStr = "+retStr); System.out.println("Leaving searchDB"); return retStr; } public String executeMenu(String authreq, String who, String menuItem,String directive,String param) { String ret=""; if(ldapCheck(who)!=0) { if(directive.equals("googleSearch")) ret=getGoogle("search",param); else if (directive.equals("googleSpell")) ret=getGoogle("spell",param); else ret="menu not found"; return ret; } else return Env.authFailMessage; } public String executeMenu(String authreq, String who, String menuItem,String param) { String ret=""; if(ldapCheck(who)!=0) { if(menuItem.equals("ldapSearch")) ret=ldapSearch(param); else if(menuItem.equals("searchDB")) ret=searchDB(param); else ret="menu not found"; return ret; } else return Env.authFailMessage; } public String executeMenu(String authreq, String who, String menuItem) { String ret=""; if(ldapCheck(who)!=0) { if(menuItem.equals("ldapStatus")) ret=ldapStatus(); else ret="menu not found"; return ret; } else return Env.authFailMessage; } public String mainMenu(String from, java.util.Date time, String menu) { String ret=""; if(Env.menuWelcome.equals("true")) ret="
Welcome "+from+" :-)"; if(Env.menuTime.equals("true")) ret=ret+"

It's "+time; ret=ret+menu; return ret; } public void OnImReceived(AccSession session, AccImSession imSession, AccParticipant participant, AccIm im) { try { String richText = im.getConvertedText("application/xhtml+xml"); String msg = im.getConvertedText("text/plain"); String user = participant.getName(); logger.info(user+"|"+msg); String errors = ""; int process=1; if(Env.mainAuth.equals("true")) { process=0; if(ldapCheck(user)==0) { try { logger.info("Not Authorized:"+user); richText=Env.NotAuthorizedMsg; } catch (Exception e) { logger.log(Level.WARNING,"Failed:",e); } } else process=1; } // end mainAuth=true if(process==1) { java.util.GregorianCalendar DT = new java.util.GregorianCalendar(); if(userMenu.containsKey(user)) System.out.println("key Value = " +(String)userMenu.get(user)); else userMenu.put(user,"0"); String dbName=""; String dbAddress=""; String dbCity=""; String dbSt=""; String dbPhone=""; String dbResults=""; StringTokenizer st = new StringTokenizer(stripHTML(msg)); StringTokenizer stdb = new StringTokenizer(stripHTML(msg),","); String msgArray[] = {"","","","","","","","","","","","","",""}; String searchStr=""; String dbStr=""; menu=(String)userMenu.get(user); int x=0; String spellResults=""; String searchResults=""; try { // MAIN MENU if (menu.equals("0")) { msgArray[0]=st.nextToken(); if(msgArray[0].equals("1")) { if(Env.menu1.length() == 0) richText=executeMenu(Env.auth1,user,Env.action1); else { if(Env.auth1.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action1); richText=Env.menu1; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action1); richText=Env.menu1; } } } else if(msgArray[0].equals("2")) { if(Env.menu2.length() == 0) richText=executeMenu(Env.auth2,user,Env.action2); else { if(Env.auth2.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action2); richText=Env.menu2; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action2); richText=Env.menu2; } } } else if(msgArray[0].equals("3")) { if(Env.menu3.length() == 0) richText=executeMenu(Env.auth3,user,Env.action3); else { if(Env.auth3.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action3); richText=Env.menu3; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action3); richText=Env.menu3; } } } else if(msgArray[0].equals("4")) { if(Env.menu4.length() == 0) richText=executeMenu(Env.auth4,user,Env.action4); else { if(Env.auth4.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action4); richText=Env.menu4; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action4); richText=Env.menu4; } } } else if(msgArray[0].equals("5")) { if(Env.menu5.length() == 0) richText=executeMenu(Env.auth5,user,Env.action5); else { if(Env.auth5.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action5); richText=Env.menu5; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action5); richText=Env.menu5; } } } else if(msgArray[0].equals("6")) { if(Env.menu6.length() == 0) richText=executeMenu(Env.auth6,user,Env.action6); else { if(Env.auth6.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action6); richText=Env.menu6; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action6); richText=Env.menu6; } } } else if(msgArray[0].equals("7")) { if(Env.menu7.length() == 0) richText=executeMenu(Env.auth7,user,Env.action7); else { if(Env.auth7.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action7); richText=Env.menu7; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action7); richText=Env.menu7; } } } else if(msgArray[0].equals("8")) { if(Env.menu8.length() == 0) richText=executeMenu(Env.auth8,user,Env.action8); else { if(Env.auth8.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action8); richText=Env.menu8; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action8); richText=Env.menu8; } } } else if(msgArray[0].equals("9")) { if(Env.menu9.length() == 0) richText=executeMenu(Env.auth9,user,Env.action9); else { if(Env.auth9.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action9); richText=Env.menu9; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action9); richText=Env.menu9; } } } else if(msgArray[0].equals("10")) { if(Env.menu10.length() == 0) richText=executeMenu(Env.auth10,user,Env.action10); else { if(Env.auth10.equals("true")) { if(ldapCheck(user)!=0) { userMenu.put(user,Env.action10); richText=Env.menu10; } else richText=Env.authFailMessage; } else { userMenu.put(user,Env.action10); richText=Env.menu10; } } } else richText=mainMenu(user,DT.getTime(),Env.menuMain); } // end of main menu // MYSQL DATABASE MENU if (menu.equals("searchMySQLDB")) { while(st.hasMoreTokens()) { msgArray[0]=st.nextToken(); } dbStr=msgArray[0]; while(st.hasMoreTokens()) { dbStr = dbStr + " " + st.nextToken(); } if(msgArray[0].equals("0")) { userMenu.put(user,"0"); richText=mainMenu(user,DT.getTime(),Env.menuMain); } else if(msgArray[0].equals("1")) { userMenu.put(user,"addMySQLDB"); userDBFldCnt.put(user,"1"); userDBStr.put(user,"start"); richText="
Enter "+Env.MySQLField1+": "; } else { dbResults=searchMySQLDB(stripHTML(msg)); if (dbResults.length()==0) richText="User Not Found"; else richText=dbResults; } } // end of db menu // DATABASE MENU if (menu.equals("searchDB")) { while(st.hasMoreTokens()) { msgArray[0]=st.nextToken(); } dbStr=msgArray[0]; while(st.hasMoreTokens()) { dbStr = dbStr + " " + st.nextToken(); } if(msgArray[0].equals("0")) { userMenu.put(user,"0"); richText=mainMenu(user,DT.getTime(),Env.menuMain); } else if(msgArray[0].equals("1")) { userMenu.put(user,"addDB"); userDBFldCnt.put(user,"1"); userDBStr.put(user,"start"); richText="
Enter "+Env.OracleField1+": "; } else { dbResults=searchDB(stripHTML(msg)); if (dbResults.length()==0) richText="User Not Found"; else richText=dbResults; } } // end of db menu // DATABASE ADD DB if (menu.equals("addMySQLDB")) { if(userDBFldCnt.get(user).equals("1")&& checkMe==0) { checkMe=1; dbstr="'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField2.length()>0) { richText="Enter "+Env.MySQLField2+": "; userDBFldCnt.put(user,"2"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("2")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField3.length()>0) { richText="Enter "+Env.MySQLField3+": "; userDBFldCnt.put(user,"3"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("3")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField4.length()>0) { richText="Enter "+Env.MySQLField4+": "; userDBFldCnt.put(user,"4"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("4")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField5.length()>0) { richText="Enter "+Env.MySQLField5+": "; userDBFldCnt.put(user,"5"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("5")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField6.length()>0) { richText="Enter "+Env.MySQLField6+": "; userDBFldCnt.put(user,"6"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("6")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField7.length()>0) { richText="Enter "+Env.MySQLField7+": "; userDBFldCnt.put(user,"7"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("7")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField8.length()>0) { richText="Enter "+Env.MySQLField8+": "; userDBFldCnt.put(user,"8"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("8")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField9.length()>0) { richText="Enter "+Env.MySQLField9+": "; userDBFldCnt.put(user,"9"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("9")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.MySQLField10.length()>0) { richText="Enter "+Env.MySQLField10+": "; userDBFldCnt.put(user,"10"); } else { dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("10")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); dbResults=addMySQLDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } checkMe=0; } // end of mysql db menu // DATABASE ADD DB if (menu.equals("addDB")) { if(userDBFldCnt.get(user).equals("1")&& checkMe==0) { checkMe=1; dbstr="'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField2.length()>0) { richText="Enter "+Env.OracleField2+": "; userDBFldCnt.put(user,"2"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("2")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField3.length()>0) { richText="Enter "+Env.OracleField3+": "; userDBFldCnt.put(user,"3"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("3")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField4.length()>0) { richText="Enter "+Env.OracleField4+": "; userDBFldCnt.put(user,"4"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("4")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField5.length()>0) { richText="Enter "+Env.OracleField5+": "; userDBFldCnt.put(user,"5"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("5")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField6.length()>0) { richText="Enter "+Env.OracleField6+": "; userDBFldCnt.put(user,"6"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("6")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField7.length()>0) { richText="Enter "+Env.OracleField7+": "; userDBFldCnt.put(user,"7"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("7")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField8.length()>0) { richText="Enter "+Env.OracleField8+": "; userDBFldCnt.put(user,"8"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("8")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField9.length()>0) { richText="Enter "+Env.OracleField9+": "; userDBFldCnt.put(user,"9"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("9")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); if(Env.OracleField10.length()>0) { richText="Enter "+Env.OracleField10+": "; userDBFldCnt.put(user,"10"); } else { dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } } if(userDBFldCnt.get(user).equals("10")&& checkMe==0) { checkMe=1; dbstr=(String)userDBStr.get(user); dbstr=dbstr+",'"+stripHTML(msg+"'"); userDBStr.put(user,dbstr); dbResults=addDB((String)userDBStr.get(user)); if (dbResults.equals(null)) richText="Database Add failed"; else richText=dbResults; userMenu.put(user,"0"); } checkMe=0; } // end of db menu // SPELL MENU if (menu.equals("googleSpell")) { while(st.hasMoreTokens()) { msgArray[0]=st.nextToken(); } if(msgArray[0].equals("0")) { userMenu.put(user,"0"); richText=mainMenu(user,DT.getTime(),Env.menuMain); } else { spellResults=getGoogle("spell",msgArray[0]); System.out.println("SpellResults="+spellResults+"-"); if (spellResults.equals(null)) richText="Word Not Found"; else richText=spellResults; } // not exit } // end of spell menu // LDAP MENU if (menu.equals("ldapSearch")) { while(st.hasMoreTokens()) { msgArray[0]=st.nextToken(); } searchStr=msgArray[0]; while(st.hasMoreTokens()) { searchStr = searchStr + st.nextToken() + " "; } if(msgArray[0].equals("0")) { userMenu.put(user,"0"); richText=mainMenu(user,DT.getTime(),Env.menuMain); } else { if(ldapCheck(user)!=0) { searchResults=ldapSearch(stripHTML(msg)); if (searchResults.length()==0) richText= "Name not found"; else richText=searchResults; } else richText=Env.authFailMessage; } // end of exit } // end of ldap menu // SEARCH MENU if (menu.equals("googleSearch")) { while(st.hasMoreTokens()) { msgArray[0]=st.nextToken(); } searchStr=msgArray[0]; while(st.hasMoreTokens()) { searchStr = searchStr + st.nextToken() + " "; } if(msgArray[0].equals("0")) { userMenu.put(user,"0"); richText=mainMenu(user,DT.getTime(),Env.menuMain); } else { searchResults=getGoogle("search",searchStr); if (searchResults !=null) richText=searchResults; else richText= "No Search Results"; } // end of exit } // end of search menu } //end of try catch (Exception e) { } } // end of process=1 if(running) { im.setText(richText + errors); imSession.sendIm(im); } } catch (AccException e) { System.out.println("Someone through an AccException with the HR: "+e.errorCode); e.printStackTrace(); } } public void OnStateChange(AccSession arg0, AccSessionState arg1, AccResult arg2) { System.out.println(arg1+""+arg2); if(arg1 == AccSessionState.Offline) { running = false; } } /** Unimplemented stubs **/ public void OnSessionChange(AccSession arg0, AccSessionProp arg1) { // TODO Auto-generated method stub } public void OnIdleStateChange(AccSession arg0, int arg1) { // TODO Auto-generated method stub } public void OnInstanceChange(AccSession arg0, AccInstance arg1, AccInstance arg2, AccInstanceProp arg3) { // TODO Auto-generated method stub } public void OnLookupUsersResult(AccSession arg0, String[] arg1, int arg2, AccResult arg3, AccUser[] arg4) { // TODO Auto-generated method stub } public void OnSearchDirectoryResult(AccSession arg0, int arg1, AccResult arg2, AccDirEntry arg3) { // TODO Auto-generated method stub } public void OnSendInviteMailResult(AccSession arg0, int arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnRequestServiceResult(AccSession arg0, int arg1, AccResult arg2, String arg3, int arg4, byte[] arg5) { // TODO Auto-generated method stub } public void OnConfirmAccountResult(AccSession arg0, int arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnReportUserResult(AccSession arg0, AccUser arg1, int arg2, AccResult arg3, int arg4, int arg5) { // TODO Auto-generated method stub } public void OnAlertReceived(AccSession arg0, AccAlert arg1) { // TODO Auto-generated method stub } public void OnPreferenceResult(AccSession arg0, String arg1, int arg2, String arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnPreferenceChange(AccSession arg0, String arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnPreferenceInvalid(AccSession arg0, String arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnPluginChange(AccSession arg0, AccPluginInfo arg1, AccPluginInfoProp arg2) { // TODO Auto-generated method stub } public void OnBartItemRequestPropertyResult(AccSession arg0, AccBartItem arg1, AccBartItemProp arg2, int arg3, AccResult arg4, AccVariant arg5) { // TODO Auto-generated method stub } public void OnUserRequestPropertyResult(AccSession arg0, AccUser arg1, AccUserProp arg2, int arg3, AccResult arg4, AccVariant arg5) { // TODO Auto-generated method stub } public void OnGroupAdded(AccSession arg0, AccGroup arg1, int arg2, AccResult arg3) { // TODO Auto-generated method stub } public void OnGroupRemoved(AccSession arg0, AccGroup arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnGroupMoved(AccSession arg0, AccGroup arg1, int arg2, int arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnBuddyAdded(AccSession arg0, AccGroup arg1, AccUser arg2, int arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnBuddyRemoved(AccSession arg0, AccGroup arg1, AccUser arg2, AccResult arg3) { // TODO Auto-generated method stub } public void OnBuddyMoved(AccSession arg0, AccUser arg1, AccGroup arg2, int arg3, AccGroup arg4, int arg5, AccResult arg6) { // TODO Auto-generated method stub } public void OnBuddyListChange(AccSession arg0, AccBuddyList arg1, AccBuddyListProp arg2) { // TODO Auto-generated method stub } public void OnGroupChange(AccSession arg0, AccGroup arg1, AccGroupProp arg2) { // TODO Auto-generated method stub } public void OnUserChange(AccSession arg0, AccUser arg1, AccUser arg2, AccUserProp arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnChangesBegin(AccSession arg0) { // TODO Auto-generated method stub } public void OnChangesEnd(AccSession arg0) { // TODO Auto-generated method stub } public void OnNewSecondarySession(AccSession arg0, AccSecondarySession arg1, int arg2) { // TODO Auto-generated method stub } public void OnSecondarySessionStateChange(AccSession arg0, AccSecondarySession arg1, AccSecondarySessionState arg2, AccResult arg3) { // TODO Auto-generated method stub } public void OnSecondarySessionChange(AccSession arg0, AccSecondarySession arg1, int arg2) { // TODO Auto-generated method stub } public void OnParticipantJoined(AccSession arg0, AccSecondarySession arg1, AccParticipant arg2) { // TODO Auto-generated method stub } public void OnParticipantChange(AccSession arg0, AccSecondarySession arg1, AccParticipant arg2, AccParticipant arg3, AccParticipantProp arg4) { // TODO Auto-generated method stub } public void OnParticipantLeft(AccSession arg0, AccSecondarySession arg1, AccParticipant arg2, AccResult arg3, String arg4, String arg5) { // TODO Auto-generated method stub } public void OnInviteResult(AccSession arg0, AccSecondarySession arg1, String arg2, int arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnEjectResult(AccSession arg0, AccSecondarySession arg1, String arg2, int arg3, AccResult arg4) { // TODO Auto-generated method stub } public void BeforeImSend(AccSession arg0, AccImSession arg1, AccParticipant arg2, AccIm arg3) { // TODO Auto-generated method stub } public void OnImSent(AccSession arg0, AccImSession arg1, AccParticipant arg2, AccIm arg3) { // TODO Auto-generated method stub } public void OnImSendResult(AccSession arg0, AccImSession arg1, AccParticipant arg2, AccIm arg3, AccResult arg4) { // TODO Auto-generated method stub } public void BeforeImReceived(AccSession arg0, AccImSession arg1, AccParticipant arg2, AccIm arg3) { // TODO Auto-generated method stub } public void OnInputStateChange(AccSession arg0, AccImSession arg1, String arg2, AccImInputState arg3) { // TODO Auto-generated method stub } public void OnEmbedDownloadComplete(AccSession arg0, AccImSession arg1, AccIm arg2) { // TODO Auto-generated method stub } public void OnEmbedUploadComplete(AccSession arg0, AccImSession arg1, AccIm arg2) { // TODO Auto-generated method stub } public void OnRateLimitStateChange(AccSession arg0, AccImSession arg1, AccRateState arg2) { // TODO Auto-generated method stub } public void OnNewFileXfer(AccSession arg0, AccFileXferSession arg1, AccFileXfer arg2) { // TODO Auto-generated method stub } public void OnFileXferProgress(AccSession arg0, AccFileXferSession arg1, AccFileXfer arg2) { // TODO Auto-generated method stub } public void OnFileXferCollision(AccSession arg0, AccFileXferSession arg1, AccFileXfer arg2) { // TODO Auto-generated method stub } public void OnFileXferComplete(AccSession arg0, AccFileXferSession arg1, AccFileXfer arg2, AccResult arg3) { // TODO Auto-generated method stub } public void OnFileXferSessionComplete(AccSession arg0, AccFileXferSession arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnFileSharingRequestListingResult(AccSession arg0, AccFileSharingSession arg1, AccFileSharingItem arg2, int arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnFileSharingRequestXferResult(AccSession arg0, AccFileSharingSession arg1, AccFileXferSession arg2, int arg3, AccFileXfer arg4) { // TODO Auto-generated method stub } public void OnAvStreamStateChange(AccSession arg0, AccAvSession arg1, String arg2, AccAvStreamType arg3, AccSecondarySessionState arg4, AccResult arg5) { // TODO Auto-generated method stub } public void OnAudioLevelChange(AccSession arg0, AccAvSession arg1, String arg2, int arg3) { // TODO Auto-generated method stub } public void OnSoundEffectReceived(AccSession arg0, AccAvSession arg1, String arg2, String arg3) { // TODO Auto-generated method stub } public void OnCustomDataReceived(AccSession arg0, AccCustomSession arg1, AccParticipant arg2, AccIm arg3) { // TODO Auto-generated method stub } public void OnCustomSendResult(AccSession arg0, AccCustomSession arg1, AccParticipant arg2, AccIm arg3, AccResult arg4) { // TODO Auto-generated method stub } public void OnEmbedUploadProgress(AccSession arg0, AccImSession arg1, AccIm arg2, String arg3, AccStream arg4) { // TODO Auto-generated method stub } public void OnEmbedDownloadProgress(AccSession arg0, AccImSession arg1, AccIm arg2, String arg3, AccStream arg4) { // TODO Auto-generated method stub } public void OnDeleteStoredImsResult(AccSession arg0, int arg1, AccResult arg2) { // TODO Auto-generated method stub } public void OnDeliverStoredImsResult(AccSession arg0,int arg1,AccResult arg2) { // TODO Auto-generated method stub } public void OnRequestSummariesResult(AccSession arg0,int arg1, AccResult arg2,AccVariant arg3) { // TODO Auto-generated method stub } public void OnAvManagerChange(AccSession arg0, AccAvManager arg1, AccAvManagerProp arg2, AccResult arg3) { // TODO Auto-generated method stub } public void OnLocalImReceived(AccSession arg0, AccImSession arg1, AccIm arg2) { // TODO Auto-generated method stub } private String stripHTML(String input) { StringBuffer output = new StringBuffer(); boolean inHTML=false; for(int i = 0; i < input.length(); i++) { char c = input.charAt(i); if(c=='<') { inHTML=true; continue; } if(c=='>') { inHTML=false; continue; } if(!inHTML) output.append(c); } return output.toString(); } /** Unimplemented stubs **/ public void OnPluginUninstall(AccSession arg0, AccPluginInfo arg1) { // TODO Auto-generated method stub } }