def to_h
case @delete_rule
when DELETE_RULE_NULLIFY then delete_rule = 'nullify'
when DELETE_RULE_CASCADE then delete_rule = 'cascade'
when DELETE_RULE_DENY then delete_rule = 'deny'
end
case @join_semantic
when INNER_JOIN then join_semantic = 'inner'
when FULL_OUTER_JOIN then join_semantic = 'full_outer'
when LEFT_OUTER_JOIN then join_semantic = 'left_outer'
when RIGHT_OUTER_JOIN then join_semantic = 'right_outer'
end
joins = []
@joins.each do |join|
joins << join.to_h
end
{
'name' => @name,
'destination' => @destination_entity.name,
'to_many' => @to_many,
'mandatory' => @mandatory,
'delete_rule' => delete_rule,
'join_semantic' => join_semantic,
'joins' => joins
}
end