def create_databases(databases)
(raise CloudDB::Exception::Syntax, "Must provide at least one database in the array") if (!databases.is_a?(Array) || databases.size < 1)
body = Hash.new
body[:databases] = Array.new
for database in databases
new_database = Hash.new
new_database[:name] = database[:name] or raise CloudDB::Exception::MissingArgument, "Must provide a name for each database"
new_database[:character_set] = database[:character_set] || 'utf8'
new_database[:collate] = database[:collate] || 'utf8_general_ci'
(raise CloudDB::Exception::Syntax, "Database names must be 64 characters or less") if database[:name].size > 64
body[:databases] << new_database
end
response = @connection.dbreq("POST", @dbmgmthost, "#{@dbmgmtpath}/instances/#{CloudDB.escape(@id.to_s)}/databases", @dbmgmtport, @dbmgmtscheme, {}, body.to_json)
CloudDB::Exception.raise_exception(response) unless response.code.to_s.match(/^20.$/)
true
end