/**
  * {@inheritdoc}
  *
  * Override RestfulEntityBase::createEntity() to test if meter already exists,
  * to allow update existing nodes in stead of creating a copy.
  */
 public function createEntity()
 {
     $query = new EntityFieldQuery();
     $result = $query->entityCondition('entity_type', 'node')->propertyCondition('type', 'iec_meter')->fieldCondition('field_contract_id', 'value', $this->request['contract'])->fieldCondition('field_meter_code', 'value', $this->request['meter_code'])->fieldCondition('field_meter_serial', 'value', $this->request['meter_serial'])->range(0, 1)->execute();
     if (!empty($result['node'])) {
         // Node exists, update it.
         $id = key($result['node']);
         return parent::updateEntity($id);
     }
     // New node.
     return parent::createEntity();
 }