1: function apm_upgrade_version(
2: v_version_id in integer,
3: v_new_version_name in varchar,
4: v_new_version_url in varchar
5: )
6: return integer
7: is
8: a_version_id integer;
9: begin
10: select apm_package_version_id_seq.nextval into a_version_id from dual;
11:
12: insert into apm_package_versions(version_id, package_id, package_name, version_name,
13: version_url, summary, description_format, description,
14: distribution, release_date, vendor, vendor_url, package_group)
15: select a_version_id, package_id, package_name, v_new_version_name,
16: v_new_version_url, summary, description_format, description, distribution,
17: release_date, vendor, vendor_url, package_group
18: from apm_package_versions
19: where version_id = v_version_id;
20:
21: insert into apm_package_dependencies(dependency_id, version_id, dependency_type, service_url, service_version)
22: select apm_package_dependency_id_seq.nextval, a_version_id, dependency_type, service_url, service_version
23: from apm_package_dependencies
24: where version_id = v_version_id;
25:
26: insert into apm_package_files(file_id, version_id, path, file_type)
27: select apm_package_file_id_seq.nextval, a_version_id, path, file_type
28: from apm_package_files
29: where version_id = v_version_id;
30:
31: insert into apm_package_owners(version_id, owner_url, owner_name, sort_key)
32: select a_version_id, owner_url, owner_name, sort_key
33: from apm_package_owners
34: where version_id = v_version_id;
35:
36: return a_version_id;
37: end;
|