String getManifestAttribute(String name) {
    try {
      Manifest m = getManifest();
      if (m == null) {
        return "??";
      }

      Attributes attrs = m.getAttributes("beeline");
      if (attrs == null) {
        return "???";
      }

      String val = attrs.getValue(name);
      if (val == null || "".equals(val)) {
        return "????";
      }

      return val;
    } catch (Exception e) {
      e.printStackTrace(errorStream);
      return "?????";
    }
  }
A console SQL shell with command completion.
<p>
TODO:
<ul>
<li>User-friendly connection prompts</li>
<li>Page results</li>
<li>Handle binary data (blob fields)</li>
<li>Implement command aliases</li>
<li>Stored procedure execution</li>
<li>Binding parameters to prepared statements</li>
<li>Scripting language</li>
<li>XA transactions</li>
</ul>
beeline/src/java/org/apache/hive/beeline/BeeLine.java