--
-- apm_package_version__remove_interface/1
--
create or replace function apm_package_version__remove_interface(
  integer
) returns int4 as $$

declare
  remove_interface__interface_id           alias for $1;  
begin
    delete from apm_package_dependencies 
    where dependency_id = remove_interface__interface_id;

    return 0; 
end;$$ language plpgsql;


--
-- apm_package_version__remove_interface/3
--
create or replace function apm_package_version__remove_interface(
  character varying,
  character varying,
  integer
) returns int4 as $$

declare
  remove_interface__interface_uri          alias for $1;  
  remove_interface__interface_version      alias for $2;  
  remove_interface__version_id             alias for $3;  
  v_dep_id                           apm_package_dependencies.dependency_id%TYPE;
begin
      select dependency_id into v_dep_id from apm_package_dependencies
      where service_uri = remove_interface__interface_uri 
      and interface_version = remove_interface__interface_version;
      PERFORM apm_package_version__remove_interface(v_dep_id);

      return 0; 
end;$$ language plpgsql;