code: protected ItemData getItemByIdentifier(String cid) throws RepositoryException, IllegalStateException
     {
        checkIfOpened();
        try
        {
           ResultSet item = findItemByIdentifier(cid);
           try
           {
              if (item.next())
              {
                 return itemData(null, item, item.getInt(COLUMN_CLASS), null);
              }
              return null;
           }
           finally
           {
              try
              {
                 item.close();
              }
              catch (SQLException e)
              {
                 LOG.error("Can't close the ResultSet: " + e.getMessage());
              }
           }
        }
        catch (SQLException e)
        {
           throw new RepositoryException("getItemData() error", e);
        }
        catch (IOException e)
        {
           throw new RepositoryException("getItemData() error", e);
        }
     }
docs: Get Item By Identifier.
  
  @param cid
  Item id (container internal)
  @return ItemData
  @throws RepositoryException
  Repository error
  @throws IllegalStateException
  if connection is closed