code: def post(method, hmc, uri, uri_parms, body, logon_required,
               wait_for_completion):
          
          assert wait_for_completion is True  # async not supported yet
          cpc_oid = uri_parms[0]
          try:
              cpc = hmc.cpcs.lookup_by_oid(cpc_oid)
          except KeyError:
              raise InvalidResourceError(method, uri)
          check_required_fields(method, uri, body, ['power-capping-state'])
  
          power_capping_state = body['power-capping-state']
          power_cap_current = body.get('power-cap-current', None)
  
          if power_capping_state not in ['disabled', 'enabled', 'custom']:
              raise BadRequestError(method, uri, reason=7,
                                    message="Invalid power-capping-state value: "
                                    "%r" % power_capping_state)
  
          if power_capping_state == 'enabled' and power_cap_current is None:
              raise BadRequestError(method, uri, reason=7,
                                    message="Power-cap-current must be provided "
                                    "when enabling power capping")
  
          cpc.properties['cpc-power-capping-state'] = power_capping_state
          cpc.properties['cpc-power-cap-current'] = power_cap_current
          cpc.properties['zcpc-power-capping-state'] = power_capping_state
          cpc.properties['zcpc-power-cap-current'] = power_cap_current
docs: Operation: Set CPC Power Capping (any CPC mode).