[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-24 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/zookeeper/pull/102


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89356303
  
--- Diff: src/java/main/org/apache/zookeeper/cli/DeleteCommand.java ---
@@ -56,14 +56,7 @@ public CliCommand parse(String[] cmdArgs) throws 
CliParseException {
 }
 
 private void retainCompatibility(String[] cmdArgs) throws 
CliParseException {
-// delete path [version]
 if (args.length > 2) {
-// rewrite to option
-String [] newCmd = new String[4];
--- End diff --

These are dead code. newCmd was declared but not used so it's better to 
remove them. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89355986
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -403,168 +410,165 @@ public void genJavaCode(File outputDirectory) 
throws IOException {
 } else if (!pkgdir.isDirectory()) {
 throw new IOException(pkgpath + " is not a directory.");
 }
-File jfile = new File(pkgdir, getName()+".java");
-FileWriter jj = new FileWriter(jfile);
-jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
-jj.write("/**\n");
-jj.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
-jj.write("* distributed with this work for additional 
information\n");
-jj.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-jj.write("* to you under the Apache License, Version 2.0 (the\n");
-jj.write("* \"License\"); you may not use this file except in 
compliance\n");
-jj.write("* with the License.  You may obtain a copy of the 
License at\n");
-jj.write("*\n");
-jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-jj.write("*\n");
-jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
-jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-jj.write("* See the License for the specific language governing 
permissions and\n");
-jj.write("* limitations under the License.\n");
-jj.write("*/\n");
-jj.write("\n");
-jj.write("package "+getJavaPackage()+";\n\n");
-jj.write("import org.apache.jute.*;\n");
-jj.write("public class "+getName()+" implements Record {\n");
-for (Iterator i = mFields.iterator(); i.hasNext();) {
-JField jf = i.next();
-jj.write(jf.genJavaDecl());
-}
-jj.write("  public "+getName()+"() {\n");
-jj.write("  }\n");
+try (FileWriter jj = new FileWriter(new File(pkgdir, 
getName()+".java"))) {
+jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
+jj.write("/**\n");
+jj.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+jj.write("* distributed with this work for additional 
information\n");
+jj.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+jj.write("* to you under the Apache License, Version 2.0 
(the\n");
+jj.write("* \"License\"); you may not use this file except in 
compliance\n");
+jj.write("* with the License.  You may obtain a copy of the 
License at\n");
+jj.write("*\n");
+jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+jj.write("*\n");
+jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+jj.write("* See the License for the specific language 
governing permissions and\n");
+jj.write("* limitations under the License.\n");
+jj.write("*/\n");
+jj.write("\n");
+jj.write("package " + getJavaPackage() + ";\n\n");
+jj.write("import org.apache.jute.*;\n");
+jj.write("public class " + getName() + " implements Record 
{\n");
+for (Iterator i = mFields.iterator(); i.hasNext(); ) {
+JField jf = i.next();
+jj.write(jf.genJavaDecl());
+}
+jj.write("  public " + getName() + "() {\n");
+jj.write("  }\n");
 
-jj.write("  public "+getName()+"(\n");
-int fIdx = 0;
-int fLen = mFields.size();
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-jj.write(jf.genJavaConstructorParam(jf.getName()));
-jj.write((fLen-1 == fIdx)?"":",\n");
-}
-jj.write(") {\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89356018
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -576,174 +580,174 @@ public void genCsharpCode(File outputDirectory) 
throws IOException {
 } else if (!outputDirectory.isDirectory()) {
 throw new IOException(outputDirectory + " is not a 
directory.");
 }
-File csharpFile = new File(outputDirectory, getName()+".cs");
-FileWriter cs = new FileWriter(csharpFile);
-cs.write("// File generated by hadoop record compiler. Do not 
edit.\n");
-cs.write("/**\n");
-cs.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-cs.write("* or more contributor license agreements.  See the 
NOTICE file\n");
-cs.write("* distributed with this work for additional 
information\n");
-cs.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-cs.write("* to you under the Apache License, Version 2.0 (the\n");
-cs.write("* \"License\"); you may not use this file except in 
compliance\n");
-cs.write("* with the License.  You may obtain a copy of the 
License at\n");
-cs.write("*\n");
-cs.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-cs.write("*\n");
-cs.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-cs.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
-cs.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-cs.write("* See the License for the specific language governing 
permissions and\n");
-cs.write("* limitations under the License.\n");
-cs.write("*/\n");
-cs.write("\n");
-cs.write("using System;\n");
-cs.write("using Org.Apache.Jute;\n");
-cs.write("\n");
-cs.write("namespace "+getCsharpNameSpace()+"\n");
-cs.write("{\n");
-
-String className = getCsharpName();
-cs.write("public class "+className+" : IRecord, IComparable \n");
-cs.write("{\n");
-cs.write("  public "+ className +"() {\n");
-cs.write("  }\n");
-
-cs.write("  public "+className+"(\n");
-int fIdx = 0;
-int fLen = mFields.size();
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpConstructorParam(jf.getCsharpName()));
-cs.write((fLen-1 == fIdx)?"":",\n");
-}
-cs.write(") {\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpConstructorSet(jf.getCsharpName()));
-}
-cs.write("  }\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpGetSet(fIdx));
+
+try (FileWriter cs = new FileWriter(new File(outputDirectory, 
getName() + ".cs"));) {
+cs.write("// File generated by hadoop record compiler. Do not 
edit.\n");
+cs.write("/**\n");
+cs.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+cs.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+cs.write("* distributed with this work for additional 
information\n");
+cs.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+cs.write("* to you under the Apache License, Version 2.0 
(the\n");
+cs.write("* \"License\"); you may not use this file except in 
compliance\n");
+cs.write("* with the License.  You may obtain a copy of the 
License at\n");
+cs.write("*\n");
+cs.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+cs.write("*\n");
+cs.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+cs.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+cs.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+cs.write("* See the License for the specific language 
governing permissions and\n");
+cs.write("* limitations under the License.\n");
+cs.write("*/\n");
 cs.write("\n");
-}
-cs.write("  public void Serialize(IOutputArchive a_, String ta

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89287398
  
--- Diff: src/java/test/config/findbugsExcludeFile.xml ---
@@ -144,4 +144,10 @@
 
   
 
+  

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89264869
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -403,168 +410,165 @@ public void genJavaCode(File outputDirectory) 
throws IOException {
 } else if (!pkgdir.isDirectory()) {
 throw new IOException(pkgpath + " is not a directory.");
 }
-File jfile = new File(pkgdir, getName()+".java");
-FileWriter jj = new FileWriter(jfile);
-jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
-jj.write("/**\n");
-jj.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
-jj.write("* distributed with this work for additional 
information\n");
-jj.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-jj.write("* to you under the Apache License, Version 2.0 (the\n");
-jj.write("* \"License\"); you may not use this file except in 
compliance\n");
-jj.write("* with the License.  You may obtain a copy of the 
License at\n");
-jj.write("*\n");
-jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-jj.write("*\n");
-jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
-jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-jj.write("* See the License for the specific language governing 
permissions and\n");
-jj.write("* limitations under the License.\n");
-jj.write("*/\n");
-jj.write("\n");
-jj.write("package "+getJavaPackage()+";\n\n");
-jj.write("import org.apache.jute.*;\n");
-jj.write("public class "+getName()+" implements Record {\n");
-for (Iterator i = mFields.iterator(); i.hasNext();) {
-JField jf = i.next();
-jj.write(jf.genJavaDecl());
-}
-jj.write("  public "+getName()+"() {\n");
-jj.write("  }\n");
+try (FileWriter jj = new FileWriter(new File(pkgdir, 
getName()+".java"))) {
+jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
+jj.write("/**\n");
+jj.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+jj.write("* distributed with this work for additional 
information\n");
+jj.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+jj.write("* to you under the Apache License, Version 2.0 
(the\n");
+jj.write("* \"License\"); you may not use this file except in 
compliance\n");
+jj.write("* with the License.  You may obtain a copy of the 
License at\n");
+jj.write("*\n");
+jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+jj.write("*\n");
+jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+jj.write("* See the License for the specific language 
governing permissions and\n");
+jj.write("* limitations under the License.\n");
+jj.write("*/\n");
+jj.write("\n");
+jj.write("package " + getJavaPackage() + ";\n\n");
+jj.write("import org.apache.jute.*;\n");
+jj.write("public class " + getName() + " implements Record 
{\n");
+for (Iterator i = mFields.iterator(); i.hasNext(); ) {
+JField jf = i.next();
+jj.write(jf.genJavaDecl());
+}
+jj.write("  public " + getName() + "() {\n");
+jj.write("  }\n");
 
-jj.write("  public "+getName()+"(\n");
-int fIdx = 0;
-int fLen = mFields.size();
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-jj.write(jf.genJavaConstructorParam(jf.getName()));
-jj.write((fLen-1 == fIdx)?"":",\n");
-}
-jj.write(") {\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
- 

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89264584
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -403,168 +410,165 @@ public void genJavaCode(File outputDirectory) 
throws IOException {
 } else if (!pkgdir.isDirectory()) {
 throw new IOException(pkgpath + " is not a directory.");
 }
-File jfile = new File(pkgdir, getName()+".java");
-FileWriter jj = new FileWriter(jfile);
-jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
-jj.write("/**\n");
-jj.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
-jj.write("* distributed with this work for additional 
information\n");
-jj.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-jj.write("* to you under the Apache License, Version 2.0 (the\n");
-jj.write("* \"License\"); you may not use this file except in 
compliance\n");
-jj.write("* with the License.  You may obtain a copy of the 
License at\n");
-jj.write("*\n");
-jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-jj.write("*\n");
-jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
-jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-jj.write("* See the License for the specific language governing 
permissions and\n");
-jj.write("* limitations under the License.\n");
-jj.write("*/\n");
-jj.write("\n");
-jj.write("package "+getJavaPackage()+";\n\n");
-jj.write("import org.apache.jute.*;\n");
-jj.write("public class "+getName()+" implements Record {\n");
-for (Iterator i = mFields.iterator(); i.hasNext();) {
-JField jf = i.next();
-jj.write(jf.genJavaDecl());
-}
-jj.write("  public "+getName()+"() {\n");
-jj.write("  }\n");
+try (FileWriter jj = new FileWriter(new File(pkgdir, 
getName()+".java"))) {
+jj.write("// File generated by hadoop record compiler. Do not 
edit.\n");
+jj.write("/**\n");
+jj.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+jj.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+jj.write("* distributed with this work for additional 
information\n");
+jj.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+jj.write("* to you under the Apache License, Version 2.0 
(the\n");
+jj.write("* \"License\"); you may not use this file except in 
compliance\n");
+jj.write("* with the License.  You may obtain a copy of the 
License at\n");
+jj.write("*\n");
+jj.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+jj.write("*\n");
+jj.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+jj.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+jj.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+jj.write("* See the License for the specific language 
governing permissions and\n");
+jj.write("* limitations under the License.\n");
+jj.write("*/\n");
+jj.write("\n");
+jj.write("package " + getJavaPackage() + ";\n\n");
+jj.write("import org.apache.jute.*;\n");
+jj.write("public class " + getName() + " implements Record 
{\n");
+for (Iterator i = mFields.iterator(); i.hasNext(); ) {
+JField jf = i.next();
+jj.write(jf.genJavaDecl());
+}
+jj.write("  public " + getName() + "() {\n");
+jj.write("  }\n");
 
-jj.write("  public "+getName()+"(\n");
-int fIdx = 0;
-int fLen = mFields.size();
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-jj.write(jf.genJavaConstructorParam(jf.getName()));
-jj.write((fLen-1 == fIdx)?"":",\n");
-}
-jj.write(") {\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
- 

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89283922
  
--- Diff: 
src/java/main/org/apache/zookeeper/server/command/FourLetterCommands.java ---
@@ -151,9 +153,13 @@
  */
 public final static int telnetCloseCmd = 0xfff4fffd;
 
-public final static HashMap cmd2String =
+final static HashMap cmd2String =
--- End diff --

If we can remove this `public`, then I think we should. Also agree with the 
consistent `Map` declaration comment.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89283699
  
--- Diff: src/java/main/org/apache/zookeeper/cli/DeleteCommand.java ---
@@ -56,14 +56,7 @@ public CliCommand parse(String[] cmdArgs) throws 
CliParseException {
 }
 
 private void retainCompatibility(String[] cmdArgs) throws 
CliParseException {
-// delete path [version]
 if (args.length > 2) {
-// rewrite to option
-String [] newCmd = new String[4];
--- End diff --

Why are we removing this rewrite?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89284431
  
--- Diff: src/java/test/config/findbugsExcludeFile.xml ---
@@ -144,4 +144,10 @@
 
   
 
+  

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-23 Thread fpj
Github user fpj commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r89285632
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -576,174 +580,174 @@ public void genCsharpCode(File outputDirectory) 
throws IOException {
 } else if (!outputDirectory.isDirectory()) {
 throw new IOException(outputDirectory + " is not a 
directory.");
 }
-File csharpFile = new File(outputDirectory, getName()+".cs");
-FileWriter cs = new FileWriter(csharpFile);
-cs.write("// File generated by hadoop record compiler. Do not 
edit.\n");
-cs.write("/**\n");
-cs.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-cs.write("* or more contributor license agreements.  See the 
NOTICE file\n");
-cs.write("* distributed with this work for additional 
information\n");
-cs.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-cs.write("* to you under the Apache License, Version 2.0 (the\n");
-cs.write("* \"License\"); you may not use this file except in 
compliance\n");
-cs.write("* with the License.  You may obtain a copy of the 
License at\n");
-cs.write("*\n");
-cs.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-cs.write("*\n");
-cs.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-cs.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
-cs.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-cs.write("* See the License for the specific language governing 
permissions and\n");
-cs.write("* limitations under the License.\n");
-cs.write("*/\n");
-cs.write("\n");
-cs.write("using System;\n");
-cs.write("using Org.Apache.Jute;\n");
-cs.write("\n");
-cs.write("namespace "+getCsharpNameSpace()+"\n");
-cs.write("{\n");
-
-String className = getCsharpName();
-cs.write("public class "+className+" : IRecord, IComparable \n");
-cs.write("{\n");
-cs.write("  public "+ className +"() {\n");
-cs.write("  }\n");
-
-cs.write("  public "+className+"(\n");
-int fIdx = 0;
-int fLen = mFields.size();
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpConstructorParam(jf.getCsharpName()));
-cs.write((fLen-1 == fIdx)?"":",\n");
-}
-cs.write(") {\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpConstructorSet(jf.getCsharpName()));
-}
-cs.write("  }\n");
-fIdx = 0;
-for (Iterator i = mFields.iterator(); i.hasNext(); fIdx++) 
{
-JField jf = i.next();
-cs.write(jf.genCsharpGetSet(fIdx));
+
+try (FileWriter cs = new FileWriter(new File(outputDirectory, 
getName() + ".cs"));) {
+cs.write("// File generated by hadoop record compiler. Do not 
edit.\n");
+cs.write("/**\n");
+cs.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+cs.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+cs.write("* distributed with this work for additional 
information\n");
+cs.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+cs.write("* to you under the Apache License, Version 2.0 
(the\n");
+cs.write("* \"License\"); you may not use this file except in 
compliance\n");
+cs.write("* with the License.  You may obtain a copy of the 
License at\n");
+cs.write("*\n");
+cs.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+cs.write("*\n");
+cs.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+cs.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+cs.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+cs.write("* See the License for the specific language 
governing permissions and\n");
+cs.write("* limitations under the License.\n");
+cs.write("*/\n");
 cs.write("\n");
-}
-cs.write("  public void Serialize(IOutputArchive a_, String tag

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-15 Thread hanm
GitHub user hanm reopened a pull request:

https://github.com/apache/zookeeper/pull/102

ZOOKEEPER-2628: Fix findbug warnings.

This PR fixed 19 find bug warnings except this one, which might require 
interface change that potentially could break client side apps.

Malicious code vulnerability Warnings
org.apache.zookeeper.ZooDefs$Ids.OPEN_ACL_UNSAFE is a mutable collection
Bug type MS_MUTABLE_COLLECTION (click for details) 
In class org.apache.zookeeper.ZooDefs$Ids
Field org.apache.zookeeper.ZooDefs$Ids.OPEN_ACL_UNSAFE
At ZooDefs.java:[line 116]

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/hanm/zookeeper ZOOKEEPER-2628

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/zookeeper/pull/102.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #102


commit fbb0957167f42ba64ab3eab15fae4b8dce9b0f4b
Author: Michael Han 
Date:   2016-11-15T23:09:02Z

ZOOKEEPER-2628: Fix findbug warnings.




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-15 Thread hanm
Github user hanm closed the pull request at:

https://github.com/apache/zookeeper/pull/102


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-10 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87466839
  
--- Diff: src/java/main/org/apache/zookeeper/server/DataTree.java ---
@@ -1293,13 +1293,12 @@ public synchronized WatchesSummary 
getWatchesSummary() {
  * @param pwriter the output to write to
  */
 public void dumpEphemerals(PrintWriter pwriter) {
-Set keys = ephemerals.keySet();
 pwriter.println("Sessions with Ephemerals ("
-+ keys.size() + "):");
-for (long k : keys) {
-pwriter.print("0x" + Long.toHexString(k));
++ ephemerals.keySet().size() + "):");
+for (Entry> entry : ephemerals.entrySet()) {
+pwriter.print("0x" + Long.toHexString(entry.getKey()));
 pwriter.println(":");
-HashSet tmp = ephemerals.get(k);
+HashSet tmp = entry.getValue();
--- End diff --

Ya @lvfangmin, one of my favourite books on Java, and was the reference to 
my comment above. Thanks pointing out. :smiley:

Agree with @hanm, better to create a separate issue for dealing with this 
legacy technical debt. :+1: 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-09 Thread lvfangmin
Github user lvfangmin commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87264725
  
--- Diff: src/java/main/org/apache/zookeeper/server/DataTree.java ---
@@ -1293,13 +1293,12 @@ public synchronized WatchesSummary 
getWatchesSummary() {
  * @param pwriter the output to write to
  */
 public void dumpEphemerals(PrintWriter pwriter) {
-Set keys = ephemerals.keySet();
 pwriter.println("Sessions with Ephemerals ("
-+ keys.size() + "):");
-for (long k : keys) {
-pwriter.print("0x" + Long.toHexString(k));
++ ephemerals.keySet().size() + "):");
+for (Entry> entry : ephemerals.entrySet()) {
+pwriter.print("0x" + Long.toHexString(entry.getKey()));
 pwriter.println(":");
-HashSet tmp = ephemerals.get(k);
+HashSet tmp = entry.getValue();
--- End diff --

Usually, prefer to use the interface if we only use the methods defined in 
the interface, which makes it flexible (or less change needed) in case we want 
to use another Set implementation. 

There is a best practice defined in Effective Java 2nd Edition, Item 52: 
Refer to objects by their interfaces:
If appropriate interface types exist, then parameters, return values, and 
fields should all be declared using interface types. If you get into the habit 
of using interface types, your program will be much more flexible. It is 
entirely appropriate to refer to an object by a class if no appropriate 
interface exists.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-09 Thread lvfangmin
Github user lvfangmin commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87265113
  
--- Diff: 
src/java/main/org/apache/zookeeper/server/command/FourLetterCommands.java ---
@@ -151,9 +153,13 @@
  */
 public final static int telnetCloseCmd = 0xfff4fffd;
 
-public final static HashMap cmd2String =
+final static HashMap cmd2String =
--- End diff --

Same here, we can also define this as Map to keep consistent with the 
others.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-08 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87027302
  
--- Diff: 
src/java/main/org/apache/zookeeper/server/quorum/flexible/QuorumHierarchical.java
 ---
@@ -344,9 +345,10 @@ public boolean containsQuorum(Set set){
  * Check if all groups have majority
  */
 int majGroupCounter = 0;
-for(long gid : expansion.keySet()) {
-LOG.debug("Group info: " + expansion.get(gid) + ", " + gid + 
", " + groupWeight.get(gid));
-if(expansion.get(gid) > (groupWeight.get(gid) / 2) )
+for (Entry entry : expansion.entrySet()) {
+Long gid = entry.getKey();
+LOG.debug("Group info: " + entry.getValue() + ", " + gid + ", 
" + groupWeight.get(gid));
+if(entry.getValue() > (groupWeight.get(gid) / 2) )
--- End diff --

nit: add space after the `if` and remove space before the last parenthesis.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-08 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87028116
  
--- Diff: src/java/main/org/apache/zookeeper/server/DataTree.java ---
@@ -1293,13 +1293,12 @@ public synchronized WatchesSummary 
getWatchesSummary() {
  * @param pwriter the output to write to
  */
 public void dumpEphemerals(PrintWriter pwriter) {
-Set keys = ephemerals.keySet();
 pwriter.println("Sessions with Ephemerals ("
-+ keys.size() + "):");
-for (long k : keys) {
-pwriter.print("0x" + Long.toHexString(k));
++ ephemerals.keySet().size() + "):");
+for (Entry> entry : ephemerals.entrySet()) {
+pwriter.print("0x" + Long.toHexString(entry.getKey()));
 pwriter.println(":");
-HashSet tmp = ephemerals.get(k);
+HashSet tmp = entry.getValue();
--- End diff --

Could we define `tmp` as `Set` instead of `HashSet`?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-08 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87038798
  
--- Diff: src/java/main/org/apache/jute/compiler/JRecord.java ---
@@ -141,109 +141,128 @@ public String genCsharpWriteWrapper(String fname, 
String tag) {
 
 static HashMap vectorStructs = new HashMap();
 public void genCCode(FileWriter h, FileWriter c) throws IOException {
-for (JField f : mFields) {
-if (f.getType() instanceof JVector) {
-JVector jv = (JVector)f.getType();
-JType jvType = jv.getElementType();
-String struct_name = JVector.extractVectorName(jvType);
-if (vectorStructs.get(struct_name) == null) {
-vectorStructs.put(struct_name, struct_name);
-h.write("struct " + struct_name + " {\nint32_t 
count;\n" + jv.getElementType().genCDecl("*data") + "\n};\n");
-h.write("int serialize_" + struct_name + "(struct 
oarchive *out, const char *tag, struct " + struct_name + " *v);\n");
-h.write("int deserialize_" + struct_name + "(struct 
iarchive *in, const char *tag, struct " + struct_name + " *v);\n");
-h.write("int allocate_" + struct_name + "(struct " + 
struct_name + " *v, int32_t len);\n");
-h.write("int deallocate_" + struct_name + "(struct " + 
struct_name + " *v);\n");
-c.write("int allocate_" + struct_name + "(struct " + 
struct_name + " *v, int32_t len) {\n");
-c.write("if (!len) {\n");
-c.write("v->count = 0;\n");
-c.write("v->data = 0;\n");
-c.write("} else {\n");
-c.write("v->count = len;\n");
-c.write("v->data = calloc(sizeof(*v->data), 
len);\n");
-c.write("}\n");
-c.write("return 0;\n");
-c.write("}\n");
-c.write("int deallocate_" + struct_name + "(struct " + 
struct_name + " *v) {\n");
-c.write("if (v->data) {\n");
-c.write("int32_t i;\n");
-c.write("for(i=0;icount; i++) {\n");
-c.write("
deallocate_"+JRecord.extractMethodSuffix(jvType)+"(&v->data[i]);\n");
-c.write("}\n");
-c.write("free(v->data);\n");
-c.write("v->data = 0;\n");
-c.write("}\n");
-c.write("return 0;\n");
-c.write("}\n");
-c.write("int serialize_" + struct_name + "(struct 
oarchive *out, const char *tag, struct " + struct_name + " *v)\n");
-c.write("{\n");
-c.write("int32_t count = v->count;\n");
-c.write("int rc = 0;\n");
-c.write("int32_t i;\n");
-c.write("rc = out->start_vector(out, tag, 
&count);\n");
-c.write("for(i=0;icount;i++) {\n");
-genSerialize(c, jvType, "data", "data[i]");
-c.write("}\n");
-c.write("rc = rc ? rc : out->end_vector(out, 
tag);\n");
-c.write("return rc;\n");
-c.write("}\n");
-c.write("int deserialize_" + struct_name + "(struct 
iarchive *in, const char *tag, struct " + struct_name + " *v)\n");
-c.write("{\n");
-c.write("int rc = 0;\n");
-c.write("int32_t i;\n");
-c.write("rc = in->start_vector(in, tag, 
&v->count);\n");
-c.write("v->data = calloc(v->count, 
sizeof(*v->data));\n");
-c.write("for(i=0;icount;i++) {\n");
-genDeserialize(c, jvType, "value", "data[i]");
-c.write("}\n");
-c.write("rc = in->end_vector(in, tag);\n");
-c.write("return rc;\n");
-c.write("}\n");
-
+try {
+for (JField f : mFields) {
+if (f.getType() instanceof JVector) {
+JVector jv = (JVector) f.getType();
+JType jvType = jv.getElementType();
+String struct_name = JVector.extractVectorName(jvType);
+if (vectorStructs.get(struct_name) == null) {
+vectorStructs.put(struct_name, struct_name);
+   

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-08 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87027160
  
--- Diff: 
src/java/main/org/apache/zookeeper/server/quorum/flexible/QuorumHierarchical.java
 ---
@@ -344,9 +345,10 @@ public boolean containsQuorum(Set set){
  * Check if all groups have majority
  */
 int majGroupCounter = 0;
-for(long gid : expansion.keySet()) {
-LOG.debug("Group info: " + expansion.get(gid) + ", " + gid + 
", " + groupWeight.get(gid));
-if(expansion.get(gid) > (groupWeight.get(gid) / 2) )
+for (Entry entry : expansion.entrySet()) {
+Long gid = entry.getKey();
+LOG.debug("Group info: " + entry.getValue() + ", " + gid + ", 
" + groupWeight.get(gid));
--- End diff --

We could use modern LOG printing here: 

``
LOG.debug("Group info: {}, {}, {}", entry.getValue(), gid, 
groupWeight.get(gid));
``


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-08 Thread eribeiro
Github user eribeiro commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r87026194
  
--- Diff: src/java/main/org/apache/zookeeper/version/util/VerGen.java ---
@@ -50,10 +50,8 @@ public static void generateFile(File outputDir, Version 
version, int rev, String
 System.out.println(path + " is not a directory.");
 System.exit(1);
 }
-File file = new File(pkgdir, TYPE_NAME + ".java");
-FileWriter w = null;
-try {
-w = new FileWriter(file);
+
+try (FileWriter w = new FileWriter(new File(pkgdir, TYPE_NAME + 
".java"));) {
--- End diff --

nit: spurious ";"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86905174
  
--- Diff: src/java/main/org/apache/zookeeper/version/util/VerGen.java ---
@@ -93,6 +93,14 @@ public static void generateFile(File outputDir, Version 
version, int rev, String
 } catch (IOException e) {
 System.out.println("Unable to generate version.Info file: "
 + e.getMessage());
+if (w != null) {
--- End diff --

Findbug complains here because we use System.exit in catch block - in that 
case it is not guaranteed that the finally block will be executed.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86905102
  
--- Diff: src/java/main/org/apache/jute/compiler/CGenerator.java ---
@@ -61,70 +61,88 @@ void genCode() throws IOException {
 + outputDirectory);
 }
 }
-FileWriter c = new FileWriter(new File(outputDirectory, 
mName+".c"));
-FileWriter h = new FileWriter(new File(outputDirectory, 
mName+".h"));
 
-h.write("/**\n");
-h.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-h.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-h.write("* distributed with this work for additional 
information\n");
-h.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-h.write("* to you under the Apache License, Version 2.0 (the\n");
-h.write("* \"License\"); you may not use this file except in 
compliance\n");
-h.write("* with the License.  You may obtain a copy of the License 
at\n");
-h.write("*\n");
-h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-h.write("*\n");
-h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-h.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-h.write("* See the License for the specific language governing 
permissions and\n");
-h.write("* limitations under the License.\n");
-h.write("*/\n");
-h.write("\n");
+FileWriter c = null, h = null;
+try {
+c = new FileWriter(new File(outputDirectory, mName + ".c"));
+h = new FileWriter(new File(outputDirectory, mName + ".h"));
 
-c.write("/**\n");
-c.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-c.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-c.write("* distributed with this work for additional 
information\n");
-c.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-c.write("* to you under the Apache License, Version 2.0 (the\n");
-c.write("* \"License\"); you may not use this file except in 
compliance\n");
-c.write("* with the License.  You may obtain a copy of the License 
at\n");
-c.write("*\n");
-c.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-c.write("*\n");
-c.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-c.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-c.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-c.write("* See the License for the specific language governing 
permissions and\n");
-c.write("* limitations under the License.\n");
-c.write("*/\n");
-c.write("\n");
+h.write("/**\n");
+h.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+h.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+h.write("* distributed with this work for additional 
information\n");
+h.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+h.write("* to you under the Apache License, Version 2.0 
(the\n");
+h.write("* \"License\"); you may not use this file except in 
compliance\n");
+h.write("* with the License.  You may obtain a copy of the 
License at\n");
+h.write("*\n");
+h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+h.write("*\n");
+h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+h.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+h.write("* See the License for the specific language governing 
permissions and\n");
+h.write("* limitations under the License.\n");
+h.write("*/\n");
+h.write("\n");
 
-h.write("#ifndef __"+mName.toUpperCase().replace('.','_')+"__\n");
-h.write("#define __"+mName.toUpperCase().replace('.','_')+"__\n");
+c.write("/**\n");
+c.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+ 

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread breed
Github user breed commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86903124
  
--- Diff: src/java/main/org/apache/zookeeper/version/util/VerGen.java ---
@@ -93,6 +93,14 @@ public static void generateFile(File outputDir, Version 
version, int rev, String
 } catch (IOException e) {
 System.out.println("Unable to generate version.Info file: "
 + e.getMessage());
+if (w != null) {
--- End diff --

wow this is a weird one... we have it in the finally... try with resources 
would make this a bit nicer too...


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread breed
Github user breed commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86902626
  
--- Diff: src/java/main/org/apache/zookeeper/cli/DeleteCommand.java ---
@@ -59,11 +59,6 @@ private void retainCompatibility(String[] cmdArgs) 
throws CliParseException {
 // delete path [version]
 if (args.length > 2) {
 // rewrite to option
--- End diff --

you can remove the comment too :)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---


[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread breed
Github user breed commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86902396
  
--- Diff: src/java/main/org/apache/jute/compiler/CGenerator.java ---
@@ -61,70 +61,88 @@ void genCode() throws IOException {
 + outputDirectory);
 }
 }
-FileWriter c = new FileWriter(new File(outputDirectory, 
mName+".c"));
-FileWriter h = new FileWriter(new File(outputDirectory, 
mName+".h"));
 
-h.write("/**\n");
-h.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-h.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-h.write("* distributed with this work for additional 
information\n");
-h.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-h.write("* to you under the Apache License, Version 2.0 (the\n");
-h.write("* \"License\"); you may not use this file except in 
compliance\n");
-h.write("* with the License.  You may obtain a copy of the License 
at\n");
-h.write("*\n");
-h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-h.write("*\n");
-h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-h.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-h.write("* See the License for the specific language governing 
permissions and\n");
-h.write("* limitations under the License.\n");
-h.write("*/\n");
-h.write("\n");
+FileWriter c = null, h = null;
+try {
+c = new FileWriter(new File(outputDirectory, mName + ".c"));
+h = new FileWriter(new File(outputDirectory, mName + ".h"));
 
-c.write("/**\n");
-c.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-c.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-c.write("* distributed with this work for additional 
information\n");
-c.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-c.write("* to you under the Apache License, Version 2.0 (the\n");
-c.write("* \"License\"); you may not use this file except in 
compliance\n");
-c.write("* with the License.  You may obtain a copy of the License 
at\n");
-c.write("*\n");
-c.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-c.write("*\n");
-c.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-c.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-c.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-c.write("* See the License for the specific language governing 
permissions and\n");
-c.write("* limitations under the License.\n");
-c.write("*/\n");
-c.write("\n");
+h.write("/**\n");
+h.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+h.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+h.write("* distributed with this work for additional 
information\n");
+h.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+h.write("* to you under the Apache License, Version 2.0 
(the\n");
+h.write("* \"License\"); you may not use this file except in 
compliance\n");
+h.write("* with the License.  You may obtain a copy of the 
License at\n");
+h.write("*\n");
+h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+h.write("*\n");
+h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+h.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+h.write("* See the License for the specific language governing 
permissions and\n");
+h.write("* limitations under the License.\n");
+h.write("*/\n");
+h.write("\n");
 
-h.write("#ifndef __"+mName.toUpperCase().replace('.','_')+"__\n");
-h.write("#define __"+mName.toUpperCase().replace('.','_')+"__\n");
+c.write("/**\n");
+c.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread hanm
Github user hanm commented on a diff in the pull request:

https://github.com/apache/zookeeper/pull/102#discussion_r86885871
  
--- Diff: src/java/main/org/apache/jute/compiler/CGenerator.java ---
@@ -61,70 +61,88 @@ void genCode() throws IOException {
 + outputDirectory);
 }
 }
-FileWriter c = new FileWriter(new File(outputDirectory, 
mName+".c"));
-FileWriter h = new FileWriter(new File(outputDirectory, 
mName+".h"));
 
-h.write("/**\n");
-h.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-h.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-h.write("* distributed with this work for additional 
information\n");
-h.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-h.write("* to you under the Apache License, Version 2.0 (the\n");
-h.write("* \"License\"); you may not use this file except in 
compliance\n");
-h.write("* with the License.  You may obtain a copy of the License 
at\n");
-h.write("*\n");
-h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-h.write("*\n");
-h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-h.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-h.write("* See the License for the specific language governing 
permissions and\n");
-h.write("* limitations under the License.\n");
-h.write("*/\n");
-h.write("\n");
+FileWriter c = null, h = null;
+try {
+c = new FileWriter(new File(outputDirectory, mName + ".c"));
+h = new FileWriter(new File(outputDirectory, mName + ".h"));
 
-c.write("/**\n");
-c.write("* Licensed to the Apache Software Foundation (ASF) under 
one\n");
-c.write("* or more contributor license agreements.  See the NOTICE 
file\n");
-c.write("* distributed with this work for additional 
information\n");
-c.write("* regarding copyright ownership.  The ASF licenses this 
file\n");
-c.write("* to you under the Apache License, Version 2.0 (the\n");
-c.write("* \"License\"); you may not use this file except in 
compliance\n");
-c.write("* with the License.  You may obtain a copy of the License 
at\n");
-c.write("*\n");
-c.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
-c.write("*\n");
-c.write("* Unless required by applicable law or agreed to in 
writing, software\n");
-c.write("* distributed under the License is distributed on an \"AS 
IS\" BASIS,\n");
-c.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.\n");
-c.write("* See the License for the specific language governing 
permissions and\n");
-c.write("* limitations under the License.\n");
-c.write("*/\n");
-c.write("\n");
+h.write("/**\n");
+h.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+h.write("* or more contributor license agreements.  See the 
NOTICE file\n");
+h.write("* distributed with this work for additional 
information\n");
+h.write("* regarding copyright ownership.  The ASF licenses 
this file\n");
+h.write("* to you under the Apache License, Version 2.0 
(the\n");
+h.write("* \"License\"); you may not use this file except in 
compliance\n");
+h.write("* with the License.  You may obtain a copy of the 
License at\n");
+h.write("*\n");
+h.write("* http://www.apache.org/licenses/LICENSE-2.0\n";);
+h.write("*\n");
+h.write("* Unless required by applicable law or agreed to in 
writing, software\n");
+h.write("* distributed under the License is distributed on an 
\"AS IS\" BASIS,\n");
+h.write("* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
either express or implied.\n");
+h.write("* See the License for the specific language governing 
permissions and\n");
+h.write("* limitations under the License.\n");
+h.write("*/\n");
+h.write("\n");
 
-h.write("#ifndef __"+mName.toUpperCase().replace('.','_')+"__\n");
-h.write("#define __"+mName.toUpperCase().replace('.','_')+"__\n");
+c.write("/**\n");
+c.write("* Licensed to the Apache Software Foundation (ASF) 
under one\n");
+ 

[GitHub] zookeeper pull request #102: ZOOKEEPER-2628: Fix findbug warnings.

2016-11-07 Thread hanm
GitHub user hanm opened a pull request:

https://github.com/apache/zookeeper/pull/102

ZOOKEEPER-2628: Fix findbug warnings.

This PR fixed 19 find bug warnings except this one, which might require 
interface change that potentially could break client side apps.

Malicious code vulnerability Warnings
org.apache.zookeeper.ZooDefs$Ids.OPEN_ACL_UNSAFE is a mutable collection
Bug type MS_MUTABLE_COLLECTION (click for details) 
In class org.apache.zookeeper.ZooDefs$Ids
Field org.apache.zookeeper.ZooDefs$Ids.OPEN_ACL_UNSAFE
At ZooDefs.java:[line 116]

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/hanm/zookeeper ZOOKEEPER-2628

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/zookeeper/pull/102.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #102


commit d6e059ef11dea0de725b7bebd14e7bba626bdf53
Author: Michael Han 
Date:   2016-11-07T22:09:10Z

ZOOKEEPER-2628: Fix findbug warnings.




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---