protected override void finish()
        {
            if (!(getCommandErrorJSONKey().Equals("HomeAutomationCommandError")))
            {
                throw new Exception("The key field has a value other than `HomeAutomationCommandError'.");
            }
            HomeAutomationCommandErrorJSON result = new HomeAutomationCommandErrorJSON();

            Debug.Assert(result != null);
            finish(result);
            handle_result(result);
        }
 protected override void handle_result(HomeAutomationCommandErrorJSON result)
 {
     top.value.Add(result);
 }
        protected override void handle_result(HomeAutomationCommandErrorJSON result)
        {
//@@@            Debug.Assert(!have_value);
            have_value = true;
            value      = result;
        }
 protected abstract void handle_result(HomeAutomationCommandErrorJSON new_result);
 protected void finish(HomeAutomationCommandErrorJSON result)
 {
     base.finish(result);
 }