List of usage examples for java.lang String isEmpty
public boolean isEmpty()
From source file:CTmousetrack.java
public static void main(String[] args) { String outLoc = new String("." + File.separator + "CTdata"); // Location of the base output data folder; only used when writing out CT data to a local folder String srcName = "CTmousetrack"; // name of the output CT source long blockPts = 10; // points per block flush long sampInterval = 10; // time between sampling updates, msec double trimTime = 0.0; // amount of data to keep (trim time), sec boolean debug = false; // turn on debug? // Specify the CT output connection CTWriteMode writeMode = CTWriteMode.LOCAL; // The selected mode for writing out CT data String serverHost = ""; // Server (FTP or HTTP/S) host:port String serverUser = ""; // Server (FTP or HTTPS) username String serverPassword = ""; // Server (FTP or HTTPS) password // For UDP output mode DatagramSocket udpServerSocket = null; InetAddress udpServerAddress = null; String udpHost = ""; int udpPort = -1; // Concatenate all of the CTWriteMode types String possibleWriteModes = ""; for (CTWriteMode wm : CTWriteMode.values()) { possibleWriteModes = possibleWriteModes + ", " + wm.name(); }/*w w w. j av a2 s . c om*/ // Remove ", " from start of string possibleWriteModes = possibleWriteModes.substring(2); // // Argument processing using Apache Commons CLI // // 1. Setup command line options Options options = new Options(); options.addOption("h", "help", false, "Print this message."); options.addOption(Option.builder("o").argName("base output dir").hasArg().desc( "Base output directory when writing data to local folder (i.e., this is the location of CTdata folder); default = \"" + outLoc + "\".") .build()); options.addOption(Option.builder("s").argName("source name").hasArg() .desc("Name of source to write data to; default = \"" + srcName + "\".").build()); options.addOption(Option.builder("b").argName("points per block").hasArg() .desc("Number of points per block; UDP output mode will use 1 point/block; default = " + Long.toString(blockPts) + ".") .build()); options.addOption(Option.builder("dt").argName("samp interval msec").hasArg() .desc("Sampling period in msec; default = " + Long.toString(sampInterval) + ".").build()); options.addOption(Option.builder("t").argName("trim time sec").hasArg().desc( "Trim (ring-buffer loop) time (sec); this is only used when writing data to local folder; specify 0 for indefinite; default = " + Double.toString(trimTime) + ".") .build()); options.addOption( Option.builder("w").argName("write mode").hasArg() .desc("Type of write connection; one of " + possibleWriteModes + "; all but UDP mode write out to CT; default = " + writeMode.name() + ".") .build()); options.addOption(Option.builder("host").argName("host[:port]").hasArg() .desc("Host:port when writing via FTP, HTTP, HTTPS, UDP.").build()); options.addOption(Option.builder("u").argName("username,password").hasArg() .desc("Comma-delimited username and password when writing to CT via FTP or HTTPS.").build()); options.addOption("x", "debug", false, "Enable CloudTurbine debug output."); // 2. Parse command line options CommandLineParser parser = new DefaultParser(); CommandLine line = null; try { line = parser.parse(options, args); } catch (ParseException exp) { // oops, something went wrong System.err.println("Command line argument parsing failed: " + exp.getMessage()); return; } // 3. Retrieve the command line values if (line.hasOption("help")) { // Display help message and quit HelpFormatter formatter = new HelpFormatter(); formatter.setWidth(120); formatter.printHelp("CTmousetrack", "", options, "NOTE: UDP output is a special non-CT output mode where single x,y points are sent via UDP to the specified host:port."); return; } outLoc = line.getOptionValue("o", outLoc); if (!outLoc.endsWith("\\") && !outLoc.endsWith("/")) { outLoc = outLoc + File.separator; } // Make sure the base output folder location ends in "CTdata" if (!outLoc.endsWith("CTdata\\") && !outLoc.endsWith("CTdata/")) { outLoc = outLoc + "CTdata" + File.separator; } srcName = line.getOptionValue("s", srcName); blockPts = Long.parseLong(line.getOptionValue("b", Long.toString(blockPts))); sampInterval = Long.parseLong(line.getOptionValue("dt", Long.toString(sampInterval))); trimTime = Double.parseDouble(line.getOptionValue("t", Double.toString(trimTime))); // Type of output connection String writeModeStr = line.getOptionValue("w", writeMode.name()); boolean bMatch = false; for (CTWriteMode wm : CTWriteMode.values()) { if (wm.name().toLowerCase().equals(writeModeStr.toLowerCase())) { writeMode = wm; bMatch = true; } } if (!bMatch) { System.err.println("Unrecognized write mode, \"" + writeModeStr + "\"; write mode must be one of " + possibleWriteModes); System.exit(0); } if (writeMode != CTWriteMode.LOCAL) { // User must have specified the host // If FTP or HTTPS, they may also specify username/password serverHost = line.getOptionValue("host", serverHost); if (serverHost.isEmpty()) { System.err.println( "When using write mode \"" + writeModeStr + "\", you must specify the server host."); System.exit(0); } if (writeMode == CTWriteMode.UDP) { // Force blockPts to be 1 blockPts = 1; // User must have specified both host and port int colonIdx = serverHost.indexOf(':'); if ((colonIdx == -1) || (colonIdx >= serverHost.length() - 1)) { System.err.println( "For UDP output mode, both the host and port (<host>:<port>)) must be specified."); System.exit(0); } udpHost = serverHost.substring(0, colonIdx); String udpPortStr = serverHost.substring(colonIdx + 1); try { udpPort = Integer.parseInt(udpPortStr); } catch (NumberFormatException nfe) { System.err.println("The UDP port must be a positive integer."); System.exit(0); } } if ((writeMode == CTWriteMode.FTP) || (writeMode == CTWriteMode.HTTPS)) { String userpassStr = line.getOptionValue("u", ""); if (!userpassStr.isEmpty()) { // This string should be comma-delimited username and password String[] userpassCSV = userpassStr.split(","); if (userpassCSV.length != 2) { System.err.println("When specifying a username and password for write mode \"" + writeModeStr + "\", separate the username and password by a comma."); System.exit(0); } serverUser = userpassCSV[0]; serverPassword = userpassCSV[1]; } } } debug = line.hasOption("debug"); System.err.println("CTmousetrack parameters:"); System.err.println("\toutput mode = " + writeMode.name()); if (writeMode == CTWriteMode.UDP) { System.err.println("\twrite to " + udpHost + ":" + udpPort); } else { System.err.println("\tsource = " + srcName); System.err.println("\ttrim time = " + trimTime + " sec"); } System.err.println("\tpoints per block = " + blockPts); System.err.println("\tsample interval = " + sampInterval + " msec"); try { // // Setup CTwriter or UDP output // CTwriter ctw = null; CTinfo.setDebug(debug); if (writeMode == CTWriteMode.LOCAL) { ctw = new CTwriter(outLoc + srcName, trimTime); System.err.println("\tdata will be written to local folder \"" + outLoc + "\""); } else if (writeMode == CTWriteMode.FTP) { CTftp ctftp = new CTftp(srcName); try { ctftp.login(serverHost, serverUser, serverPassword); } catch (Exception e) { throw new IOException( new String("Error logging into FTP server \"" + serverHost + "\":\n" + e.getMessage())); } ctw = ctftp; // upcast to CTWriter System.err.println("\tdata will be written to FTP server at " + serverHost); } else if (writeMode == CTWriteMode.HTTP) { // Don't send username/pw in HTTP mode since they will be unencrypted CThttp cthttp = new CThttp(srcName, "http://" + serverHost); ctw = cthttp; // upcast to CTWriter System.err.println("\tdata will be written to HTTP server at " + serverHost); } else if (writeMode == CTWriteMode.HTTPS) { CThttp cthttp = new CThttp(srcName, "https://" + serverHost); // Username/pw are optional for HTTPS mode; only use them if username is not empty if (!serverUser.isEmpty()) { try { cthttp.login(serverUser, serverPassword); } catch (Exception e) { throw new IOException(new String( "Error logging into HTTP server \"" + serverHost + "\":\n" + e.getMessage())); } } ctw = cthttp; // upcast to CTWriter System.err.println("\tdata will be written to HTTPS server at " + serverHost); } else if (writeMode == CTWriteMode.UDP) { try { udpServerSocket = new DatagramSocket(); } catch (SocketException se) { System.err.println("Error creating socket for UDP:\n" + se); System.exit(0); } try { udpServerAddress = InetAddress.getByName(udpHost); } catch (UnknownHostException uhe) { System.err.println("Error getting UDP server host address:\n" + uhe); System.exit(0); } } if (writeMode != CTWriteMode.UDP) { ctw.setBlockMode(blockPts > 1, blockPts > 1); ctw.autoFlush(0); // no autoflush ctw.autoSegment(1000); } // screen dims Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); double width = screenSize.getWidth(); double height = screenSize.getHeight(); // use Map for consolidated putData Map<String, Object> cmap = new LinkedHashMap<String, Object>(); // loop and write some output for (int i = 0; i < 1000000; i++) { // go until killed long currentTime = System.currentTimeMillis(); Point mousePos = MouseInfo.getPointerInfo().getLocation(); float x_pt = (float) (mousePos.getX() / width); // normalize float y_pt = (float) ((height - mousePos.getY()) / height); // flip Y (so bottom=0) if (writeMode != CTWriteMode.UDP) { // CT output mode ctw.setTime(currentTime); cmap.clear(); cmap.put("x", x_pt); cmap.put("y", y_pt); ctw.putData(cmap); if (((i + 1) % blockPts) == 0) { ctw.flush(); System.err.print("."); } } else { // UDP output mode // We force blockPts to be 1 for UDP output mode, i.e. we "flush" the data every time // Write the following data (21 bytes total): // header = "MOUSE", 5 bytes // current time, long, 8 bytes // 2 floats (x,y) 4 bytes each, 8 bytes int len = 21; ByteBuffer bb = ByteBuffer.allocate(len); String headerStr = "MOUSE"; bb.put(headerStr.getBytes("UTF-8")); bb.putLong(currentTime); bb.putFloat(x_pt); bb.putFloat(y_pt); // Might be able to use the following, but not sure: // byte[] sendData = bb.array(); byte[] sendData = new byte[len]; bb.position(0); bb.get(sendData, 0, len); DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, udpServerAddress, udpPort); try { udpServerSocket.send(sendPacket); } catch (IOException e) { System.err.println("Test server caught exception trying to send data to UDP client:\n" + e); } System.err.print("."); } try { Thread.sleep(sampInterval); } catch (Exception e) { } ; } if (writeMode != CTWriteMode.UDP) { ctw.flush(); // wrap up } } catch (Exception e) { System.err.println("CTmousetrack exception: " + e); e.printStackTrace(); } }
From source file:ca.uqac.info.trace.execution.BabelTrace.java
/** * Main program loop//from www .j a v a 2 s .c o m * @param args */ public static void main(String[] args) { String trace_type = "", tool_name = ""; String trace_in_filename = "", formula_in_filename = ""; String out_formula = "", out_trace = "", out_signature = "", output_dir = ""; File formula_in, trace_in; trace_in = null; Operator op = null; EventTrace trace = null; boolean run_tool = false, show_command = false; // Parse command line arguments Options options = setupOptions(); CommandLine c_line = setupCommandLine(args, options); assert c_line != null; if (c_line.hasOption("version")) { System.out.println("\nBabelTrace build " + BUILD_STRING); System.out.println("(C) 2012-2013 Sylvain Hall et al., Universit du Qubec Chicoutimi"); System.out.println("This program comes with ABSOLUTELY NO WARRANTY."); System.out.println("This is a free software, and you are welcome to redistribute it"); System.out.println("under certain conditions. See the file COPYING for details.\n"); System.exit(ERR_OK); } if (c_line.hasOption("h")) { showUsage(options); System.exit(ERR_OK); } if (c_line.hasOption("t")) trace_in_filename = c_line.getOptionValue("t"); else { showUsage(options); System.exit(ERR_ARGUMENTS); } if (c_line.hasOption("f")) formula_in_filename = c_line.getOptionValue("f"); else { showUsage(options); System.exit(ERR_ARGUMENTS); } if (c_line.hasOption("i")) trace_type = c_line.getOptionValue("i"); else { showUsage(options); System.exit(ERR_ARGUMENTS); } if (c_line.hasOption("c")) tool_name = c_line.getOptionValue("c"); else { showUsage(options); System.exit(ERR_ARGUMENTS); } if (c_line.hasOption("o")) output_dir = c_line.getOptionValue("o"); else { showUsage(options); System.exit(ERR_ARGUMENTS); } if (c_line.hasOption("b")) { run_tool = false; show_command = true; } if (c_line.hasOption("r")) { run_tool = true; show_command = false; } // Read input formula formula_in = new File(formula_in_filename); if (!formula_in.exists()) { System.err.println("Error reading " + formula_in_filename); System.exit(ERR_IO); } try { out_formula = ca.uqac.info.util.FileReadWrite.readFile(formula_in_filename); } catch (java.io.FileNotFoundException e) { System.err.println("File not found: " + formula_in_filename); System.exit(ERR_IO); } catch (java.io.IOException e) { System.err.println("IO Exception: " + formula_in_filename); e.printStackTrace(); System.exit(ERR_IO); } // Get trace file trace_in = new File(trace_in_filename); // Get execution Execution ex = getExecution(tool_name); // Get filenames for each part String base_filename = FileReadWrite.baseName(trace_in) + "." + FileReadWrite.baseName(formula_in); String trace_filename = output_dir + "/" + base_filename + "." + ex.getTraceExtension(); String formula_filename = output_dir + "/" + base_filename + "." + ex.getFormulaExtension(); String signature_filename = output_dir + "/" + base_filename + "." + ex.getSignatureExtension(); // Setup execution environment ex.setProperty(formula_filename); ex.setSignature(signature_filename); ex.setTrace(trace_filename); // Show command lines and leave if (show_command) { String[] cl = ex.getCommandLines(); for (String c : cl) { System.out.println(c); } System.exit(ERR_OK); } // Initialize the translator Translator tt = getTraceTranslator(tool_name); if (tt == null) { System.err.println("Error: unrecognized conversion format \"" + tool_name + "\""); System.exit(ERR_NO_SUCH_TOOL); } tt.setTrace(trace); // Parse the trace TraceReader t_read = getTraceReader(trace_type); try { trace = t_read.parseEventTrace(new FileInputStream(trace_in)); } catch (FileNotFoundException e) { e.printStackTrace(); System.exit(ERR_IO); } // Get the formula as an operator try { op = Operator.parseFromString(out_formula); } catch (ParseException e) { System.err.println("Error parsing the input formula"); System.exit(ERR_PARSE); } assert op != null; // Does the formula require flat messages and formulas? if (tt.requiresFlat()) { // Convert the first-order formula to a propositional one FlatTranslator pt = new FlatTranslator(); pt.setFormula(op); pt.setTrace(trace); // Flatten the trace String tr_trans = pt.translateTrace(); TraceReader xtr = new XmlTraceReader(); trace = xtr.parseEventTrace(new ByteArrayInputStream(tr_trans.getBytes())); // Flatten the formula String op_trans = pt.translateFormula(); try { op = Operator.parseFromString(op_trans); } catch (ParseException e) { System.err.println("Error parsing the formula once translated to propositional"); System.exit(ERR_PARSE); } } // Is the formula first-order while the tool requires propositional? if (tt.requiresPropositional() && FirstOrderDetector.isFirstOrder(op)) { // Convert the first-order formula to a propositional one PropositionalTranslator pt = new PropositionalTranslator(); pt.setFormula(op); pt.setTrace(trace); String op_trans = pt.translateFormula(); try { op = Operator.parseFromString(op_trans); } catch (ParseException e) { System.err.println("Error parsing the formula once translated to propositional"); System.exit(ERR_PARSE); } // We also convert equalities between constants produced by the translator // into Booleans ConstantConverter cc = new ConstantConverter(); op.accept(cc); op = cc.getFormula(); // And then propagate those constants UnitPropagator up = new UnitPropagator(); op.accept(up); op = up.getFormula(); } // Convert tt.setTrace(trace); tt.setFormula(op); tt.translateAll(); out_trace = tt.getTraceFile(); out_formula = tt.getFormulaFile(); out_signature = tt.getSignatureFile(); // Save conversions to files try { if (!out_trace.isEmpty()) { ca.uqac.info.util.FileReadWrite.writeToFile(trace_filename, out_trace); } if (!out_formula.isEmpty()) { ca.uqac.info.util.FileReadWrite.writeToFile(formula_filename, out_formula); } if (!out_signature.isEmpty()) { ca.uqac.info.util.FileReadWrite.writeToFile(signature_filename, out_signature); } } catch (java.io.IOException e) { System.err.println("Error writing to file"); System.err.println(e.getMessage()); System.exit(ERR_IO); } // Now that all conversions have been made, run the tool if (run_tool) { try { ex.run(); } catch (Execution.CommandLineException e) { System.err.println("Error running command"); System.exit(ERR_TOOL_EXECUTION); } // Print results ReturnVerdict ex_retval = ex.getReturnVerdict(); float ex_time = (float) ex.getTime() / (float) 1000000000; // We show seconds, not s float ex_memory = (float) ex.getMemory() / (float) 1024; // We show megabytes, not bytes System.out.printf("%s,%.2f,%.2f\n", ex_retval, ex_time, ex_memory); // If an error occurred, dump it if (ex_retval == ReturnVerdict.ERROR) { System.err.println("Error while executing " + tool_name); System.err.println("Command line(s):"); for (String cl : ex.getCommandLines()) { System.err.println(cl); } System.err.println("Below is the string returned by the tool\n"); System.err.println(ex.getErrorString()); System.exit(ERR_TOOL_EXECUTION); } } // Quit System.exit(ERR_OK); }
From source file:Main.java
public static boolean isValid(String s) { return (!s.isEmpty() && s.matches("[0-9]*\\.?[0-9]*")); }
From source file:Main.java
public static boolean isValidInt(String s) { return (!s.isEmpty() && s.matches("[0-9]*")); }
From source file:Main.java
public static String checkForEmptyAndBack(String string) { return (string.isEmpty() || string.equals("null")) ? "0" : string; }
From source file:Main.java
public static boolean checkData(String string) { return !string.isEmpty() && string.trim().length() != 0; }
From source file:Main.java
public static boolean hasWord(String text) { return !text.isEmpty(); //TODO Verify if is a word, aka contains white space. Or check online? Will be like this for now. //return isWord(getText(c)); }
From source file:Main.java
public static int getColorForName(String name) { if (name.isEmpty()) { return 0xFF202020; }/* www .java 2s. c o m*/ int colors[] = { 0xFFe91e63, 0xFF9c27b0, 0xFF673ab7, 0xFF3f51b5, 0xFF5677fc, 0xFF03a9f4, 0xFF00bcd4, 0xFF009688, 0xFFff5722, 0xFF795548, 0xFF607d8b }; return colors[(int) ((name.hashCode() & 0xffffffffl) % colors.length)]; }
From source file:Main.java
public static String firstCapitalize(String txt) { if (txt.isEmpty()) return ""; int length = txt.length(); String first = txt.substring(0, 1); first = first.toUpperCase();/*w w w . ja va2 s. com*/ String capitalize = first + txt.substring(1, length); return capitalize; }
From source file:Main.java
public static boolean is_null_or_empty(String str) { return str == null || str.isEmpty(); }