activemq-protobuf/src/main/java/org/apache/activemq/protobuf/compiler/AltJavaGenerator.java [758:795]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        p("int rc="+hc+";");
        int counter=0;
        for (FieldDescriptor field : m.getFields().values()) {
        	counter++;
        	
            String uname = uCamel(field.getName());
            String getterMethod="get"+uname+"()";     
            String hasMethod = "has"+uname+"()";

            if( field.getRule() == FieldDescriptor.REPEATED_RULE ) {
                getterMethod = "get"+uname+"List()";
            }
            
            p("if ("+hasMethod+") {");
            indent();
            
            if( field.getRule() == FieldDescriptor.REPEATED_RULE ) {
                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+".hashCode() );");
            } else if( field.isInteger32Type() ) {
                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+" );");
            } else if( field.isInteger64Type() ) {
                p("rc ^= ( "+uname.hashCode()+"^(new Long("+getterMethod+")).hashCode() );");
            } else if( field.getType()==FieldDescriptor.DOUBLE_TYPE ) {
                p("rc ^= ( "+uname.hashCode()+"^(new Double("+getterMethod+")).hashCode() );");
            } else if( field.getType()==FieldDescriptor.FLOAT_TYPE ) {
                p("rc ^= ( "+uname.hashCode()+"^(new Double("+getterMethod+")).hashCode() );");
            } else if( field.getType()==FieldDescriptor.BOOL_TYPE ) {
                p("rc ^= ( "+uname.hashCode()+"^ ("+getterMethod+"? "+counter+":-"+counter+") );");
            } else {
                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+".hashCode() );");
            }
            unindent();
            p("}");
        }
        p("return rc;");
        unindent();
        p("}");
        p("");
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



activemq-protobuf/src/main/java/org/apache/activemq/protobuf/compiler/JavaGenerator.java [545:585]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            p("int rc="+hc+";");
	        int counter=0;
	        for (FieldDescriptor field : m.getFields().values()) {
	        	counter++;
	        	
	            String uname = uCamel(field.getName());
	            String getterMethod="get"+uname+"()";     
	            String hasMethod = "has"+uname+"()";
	
	            if( field.getRule() == FieldDescriptor.REPEATED_RULE ) {
	                getterMethod = "get"+uname+"List()";
	            }
	            
	            p("if ("+hasMethod+") {");
	            indent();
	            
	            if( field.getRule() == FieldDescriptor.REPEATED_RULE ) {
	                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+".hashCode() );");
	            } else if( field.isInteger32Type() ) {
	                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+" );");
	            } else if( field.isInteger64Type() ) {
	                p("rc ^= ( "+uname.hashCode()+"^(new Long("+getterMethod+")).hashCode() );");
	            } else if( field.getType()==FieldDescriptor.DOUBLE_TYPE ) {
	                p("rc ^= ( "+uname.hashCode()+"^(new Double("+getterMethod+")).hashCode() );");
	            } else if( field.getType()==FieldDescriptor.FLOAT_TYPE ) {
	                p("rc ^= ( "+uname.hashCode()+"^(new Double("+getterMethod+")).hashCode() );");
	            } else if( field.getType()==FieldDescriptor.BOOL_TYPE ) {
	                p("rc ^= ( "+uname.hashCode()+"^ ("+getterMethod+"? "+counter+":-"+counter+") );");
	            } else {
	                p("rc ^= ( "+uname.hashCode()+"^"+getterMethod+".hashCode() );");
	            }
	            
	            unindent();
	            p("}");
	            
	        }
	        p("return rc;");
        }
        unindent();
        p("}");
        p("");
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



