if ( collectionMetadata == null ) {
// Compute bi-directionality first
AssociationKey key = getCollectionMetadataKey();
if ( isBidirectional == Boolean.FALSE ){
//fake association to prevent unidirectional associations to keep record of the inverse side
collectionMetadata = new Association( new MapAssociationSnapshot( Collections.EMPTY_MAP ) );
}
else {
collectionMetadata = gridDialect.getAssociation( key, this.getAssociationContext() );
if (collectionMetadata == null) {
collectionMetadata = gridDialect.createAssociation( key );