Rem
Rem $Header: ordim/admin/imchkdep.sql /main/1 2010/05/25 15:41:04 smavris Exp $
Rem
Rem imchkdep.sql
Rem
Rem Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 
Rem
Rem    NAME
Rem      imchkdep.sql - Check Oracle Multimedia dependencies
Rem
Rem    DESCRIPTION
Rem      This script checks that Oracle Multimedia's installation
Rem      dependencies are valid.  If requested, Oracle Multimedia
Rem      is checked for validity also (for upgrade, reload, patch,
Rem      and CPU. This script will not fail the upgrade, install, etc,
Rem      it will only output messages to aid in diagnosing potential
Rem      problems.
Rem
Rem    Rum this script like this to check Oracle Multimedia validity:
Rem      imchkdep 1 LOADING LOADED
Rem    Run this script like this to skip checking of Oracle Multimedia 
Rem    validity:
Rem      imchkdep 0 LOADING LOADED
Rem      
Rem    NOTES
Rem      You must connect as SYSDBA prior to running this script
Rem
Rem    MODIFIED   (MM/DD/YY)
Rem    smavris     05/20/10 - Created
Rem

SET NUMWIDTH 10
SET LINESIZE 80
SET TRIMSPOOL ON
SET TAB OFF
SET PAGESIZE 100


WHENEVER SQLERROR CONTINUE;

define check_ordmm = &1
define valid_status1 = &2
define valid_status2 = &3


REM 
REM Oracle Multimedia depends on JAVAVM functionality for metadata extraction
REM and image processing.  Make sure JAVAVM is installed and valid.
REM

begin
  IF dbms_registry.is_valid('JAVAVM',dbms_registry.release_version) != 1 THEN
    raise_application_error(-20000, 
      'JServer JAVA Virtual Machine component not valid. '||
      'JServer JAVA Virtual Machine must be installed and valid prior to Oracle Multimedia install, upgrade, downgrade, or patch.');
  END IF;
end;
/

REM 
REM Oracle Multimedia depends on XDB functionality for DICOM medical 
REM imaging.  Make sure XDB is installed and valid.
REM 

begin
  IF dbms_registry.is_valid('XDB',dbms_registry.release_version) != 1 THEN
    raise_application_error(-20000, 
      'Oracle XML Database component not valid. '||
      'Oracle XML Database must be installed and valid prior to Oracle Multimedia install, upgrade, downgrade, or patch.');
  END IF;
end;
/

REM 
REM Oracle Multimedia depends on XDK functionality for Audio/Video.
REM Make sure XDK is installed and valid.
REM 

begin
  IF dbms_registry.is_valid('XML',dbms_registry.release_version) != 1 THEN
    raise_application_error(-20000, 
      'Oracle XDK component not valid. '||
      'Oracle XDK must be installed and valid prior to Oracle Multimedia install, upgrade, downgrade, or patch.');
  END IF;
end;
/

REM 
REM If requested, make sure Oracle Multimedia is valid to begin with.
REM 

declare
  ordim_status varchar2(20);
begin
  IF &check_ordmm = 1 THEN
    ordim_status := sys.dbms_registry.status('ORDIM');
    IF ordim_status NOT IN ('VALID', '&valid_status1', '&valid_status2')  THEN
      raise_application_error(-20000, 
        'Oracle ORDIM component in registry is status: ' || 
        ordim_status || '. ' ||
        'Oracle ORDIM must be installed and valid prior to Oracle Multimedia upgrade, downgrade, or patch.');
    END IF;
  END IF;
end;
/