anchor.diff:  -behavior(chef_wm).
   -export([auth_info/2,
            init/1,
  +         init_resource_state/1,
            malformed_request_message/3,
            request_type/0,
            validate_request/3]).
  
positive.code: allowed_methods(Req, State) ->
      {['GET', 'PUT', 'DELETE'], Req, State}.
  
  validate_request('GET', Req, State) ->
      {Req, State#base_state{resource_state = #node_state{}}};
  validate_request('DELETE', Req, State) ->
      {Req, State#base_state{resource_state = #node_state{}}};
  validate_request('PUT', Req, State) ->
      Name = chef_wm_util:object_name(node, Req),
      Body = wrq:req_body(Req),
      {ok, Json} = chef_node:parse_check_binary_as_json_node(Body, {update, Name}),
      {Req, State#base_state{resource_state = #node_state{node_data = Json}}}.
  
  %% Memoize the container id so we don't hammer the database
  auth_info(Req, #base_state{chef_db_context = DbContext,
  
negative.code:             State1 = State#base_state{resource_state = NodeState1},
              {{object, AuthzId}, Req, State1}
      end.
  
  to_json(Req, #base_state{resource_state = NodeState} = State) ->
      #node_state{chef_node = Node} = NodeState,
  