code: @Override
      public void update(Transaction xaction, T item, Map<String,Object> state) throws PersistenceException {     
          state.put("--key--", getPrimaryKey().getFields()[0]);
          xaction.execute(getUpdater(), state, writeDataSource);
      }
docs: Updates the specified object with the data provided in the specified state under
  the governance of the specified transaction.
  @param xaction the transaction governing this event
  @param item the item to be updated
  @param state the new state for the updated object
  @throws PersistenceException an error occurred talking to the data store, or
  updates are not supported