code: public AssociationKey getAssociationKey() {
  		if ( associationKey == null ) {
  			final Object[] columnValues = getKeyColumnValues();
  
  			EntityKey ownerEntityKey;
  			if ( key != null ) {
  				ownerEntityKey = EntityKeyBuilder.fromPersister(
  						(OgmEntityPersister) getHostingEntityPersister(),
  						(Serializable) key,
  						session );
  			}
  			else {
  				ownerEntityKey  = new EntityKey(
  						( (OgmEntityPersister) getHostingEntityPersister() ).getEntityKeyMetadata(),
  						columnValues
  				);
  			}
  
  			associationKey = new AssociationKey( associationKeyMetadata, columnValues, ownerEntityKey );
  		}
  
  		return associationKey;
  	}
docs: action methods