code: @Override
  	public CPOption fetchByPrimaryKey(Serializable primaryKey) {
  		Serializable serializable = entityCache.getResult(CPOptionModelImpl.ENTITY_CACHE_ENABLED,
  				CPOptionImpl.class, primaryKey);
  
  		if (serializable == nullModel) {
  			return null;
  		}
  
  		CPOption cpOption = (CPOption)serializable;
  
  		if (cpOption == null) {
  			Session session = null;
  
  			try {
  				session = openSession();
  
  				cpOption = (CPOption)session.get(CPOptionImpl.class, primaryKey);
  
  				if (cpOption != null) {
  					cacheResult(cpOption);
  				}
  				else {
  					entityCache.putResult(CPOptionModelImpl.ENTITY_CACHE_ENABLED,
  						CPOptionImpl.class, primaryKey, nullModel);
  				}
  			}
  			catch (Exception e) {
  				entityCache.removeResult(CPOptionModelImpl.ENTITY_CACHE_ENABLED,
  					CPOptionImpl.class, primaryKey);
  
  				throw processException(e);
  			}
  			finally {
  				closeSession(session);
  			}
  		}
  
  		return cpOption;
  	}
docs: Returns the cp option with the primary key or returns <code>null</code> if it could not be found.
  
  @param primaryKey the primary key of the cp option
  @return the cp option, or <code>null</code> if a cp option with the primary key could not be found