new OneToManyAssociationField('productReviews', ProductReviewDefinition::
class, 'product_id'
))->
addFlags(new ApiAware(),
new CascadeDelete(false
)),
(new OneToManyAssociationField('mainCategories', MainCategoryDefinition::
class, 'product_id'
))->
addFlags(new ApiAware(),
new CascadeDelete()),
(new OneToManyAssociationField('seoUrls', SeoUrlDefinition::
class, 'foreign_key'
))->
addFlags(new ApiAware()),
(new OneToManyAssociationField('orderLineItems', OrderLineItemDefinition::
class, 'product_id'
))->
addFlags(new SetNullOnDelete()),
(new OneToManyAssociationField('wishlists', CustomerWishlistProductDefinition::
class, 'product_id'
))->
addFlags(new CascadeDelete()),
(new ManyToManyAssociationField('options', PropertyGroupOptionDefinition::
class, ProductOptionDefinition::
class, 'product_id', 'property_group_option_id'
))->
addFlags(new ApiAware(),
new CascadeDelete()),
(new ManyToManyAssociationField('properties', PropertyGroupOptionDefinition::
class, ProductPropertyDefinition::
class, 'product_id', 'property_group_option_id'
))->
addFlags(new ApiAware(),
new CascadeDelete(),
new Inherited()),
(new ManyToManyAssociationField('categories', CategoryDefinition::
class, ProductCategoryDefinition::
class, 'product_id', 'category_id'
))->
addFlags(new ApiAware(),
new CascadeDelete(),
new Inherited(),
new SearchRanking(SearchRanking::ASSOCIATION_SEARCH_RANKING
)),
(new ManyToManyAssociationField('streams', ProductStreamDefinition::
class, ProductStreamMappingDefinition::
class, 'product_id', 'product_stream_id'
))->
addFlags(new ApiAware(),
new CascadeDelete()),
(new ManyToManyAssociationField('categoriesRo', CategoryDefinition::
class, ProductCategoryTreeDefinition::
class, 'product_id', 'category_id'
))->
addFlags(new ApiAware(),
new CascadeDelete(false
),
new WriteProtected()),
(new ManyToManyAssociationField('tags', TagDefinition::
class, ProductTagDefinition::
class, 'product_id', 'tag_id'
))->
addFlags(new CascadeDelete(),
new Inherited(),
new SearchRanking(SearchRanking::ASSOCIATION_SEARCH_RANKING
)),
(