75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
# File 'lib/jdbc.rb', line 75
def create_classes classes , &b
consts = allocate_classes_in_ruby( classes , &b )
all_classes = consts.is_a?( Array) ? consts.flatten : [consts]
get_database_classes(requery: true)
selected_classes = all_classes.map do | this_class |
this_class unless get_database_classes(requery: false).include?( this_class.ref_name ) rescue nil
end.compact.uniq
command= selected_classes.map do | database_class |
next if database_class.ref_name.blank?
c = if database_class.superclass == ActiveOrient::Model || database_class.superclass.ref_name.blank?
puts "CREATE CLASS #{database_class.ref_name} "
OClassImpl.create @db, database_class.ref_name
else
puts "CREATE CLASS #{database_class.ref_name} EXTENDS #{database_class.superclass.ref_name}"
OClassImpl.create @db, superClass: database_class.ref_name
end
end
get_database_classes requery: true
consts.shift if block_given? && consts.is_a?( Array)
if classes.is_a? Hash
consts = Hash[ consts ]
consts.each_key{ |x| consts[x].delete_if{|y| y == x} if consts[x].is_a? Array }
end
consts
end
|