code: @Override
    public <T> long persistObject(String name, T bean) throws CpoException {
      return getCurrentResource().persistObject(name, bean);
    }
docs: Persists the Object into the datasource. The CpoAdapter will check to see if this object exists in the datasource.
  If it exists, the object is updated in the datasource If the object does not exist, then it is created in the
  datasource. This method stores the object in the datasource.
  <p>
  <pre>Example:
  <code>
  <p>
  class SomeObject so = new SomeObject();
  class CpoAdapter cpo = null;
  <p>
  try {
  cpo = new JdbcCpoAdapter(new JdbcDataSourceInfo(driver, url, user, password,1,1,false));
  } catch (CpoException ce) {
  // Handle the error
  cpo = null;
  }
  <p>
  if (cpo!=null) {
  so.setId(1);
  so.setName("SomeName");
  try{
  cpo.persistObject("persistSomeObject",so);
  } catch (CpoException ce) {
  // Handle the error
  }
  }
  </code>
  </pre>
  
  @param name The name which identifies which EXISTS, INSERT, and UPDATE Function Groups to execute to persist the
  object.
  @param bean  This is a bean that has been defined within the metadata of the datasource. If the class is not
  defined an exception will be thrown.
  @return A count of the number of objects persisted
  @throws CpoException Thrown if there are errors accessing the datasource
  @see #existsObject
  @see #insertObject
  @see #updateObject