Use builder pattern to improve usability of client API ------------------------------------------------------
Key: HBASE-2051 URL: https://issues.apache.org/jira/browse/HBASE-2051 Project: Hadoop HBase Issue Type: Improvement Reporter: Andrew Purtell Fix For: 0.21.0 >From Paul Smith up on hbase-user@: {quote} I think a good collection of useful builders and utilities that handle the 80% case will help HBase gain much more traction. As an person starting with HBase, there are a lot of concepts to get, Bytes definitely get in the way of seeing the real underlying patterns. I'm a total believer in understanding the internals to get the best out of a product, but that often comes after experimentation, and these high-level libraries grease the wheels for faster 'grok'ing the concepts. Thinking out loud here, but something like this may be useful: {code} PutBuilder builder = new PutBuilder(hTable); // first Row builder.withRowKey(1stRowKey).withColumnFamily("foo") .put("columnA", valueA) .put("columnB",valueB); // secondRow builder.withRowKey(2ndRowKey).withColumnFamily("eek") .put("columnC", valueC) .put("columnD",valueD); .. builder.putAll(); {code} {quote} Perhaps we could use the Builder pattern to achieve simplification (e.g. HBASE-1990) and API support for multicalls (HBASE-1986, HBASE-1845) at the same time. Method variants should accept byte[] or String for keys or values, and lists. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.