PROCEDURE install_batch_filters (
  status)

" This procedure installs the Batch Output Filters Command Library.
" Only those filters that the site does not already have installed will be
" included.  The $device_attributes function will always be replaced.

  VAR
    bof_command_library: file = $system.batch_device_support.standard_filters.command_library
    bof_command_library_temp: file = $system.batch_device_support.standard_filters.command_library_temp
    bof_command_library_temp_new: file = $system.batch_device_support.standard_filters.command_library_temp_new
    ignore_status: status
    local_status: status
  VAREND

install_block: ..
  BLOCK

    $system.put_line l=' Installing '//$string(bof_command_library) o=$job_log

    execute_task l=$system.ocu.bound_product sp=ocp$_create_object_library lmo=none lm=$null tel=error
      add_modules l=bof_command_library_temp status=local_status
      EXIT install_block WHEN NOT local_status.normal
      combine_modules l=bof_command_library status=ignore_status
      combine_module l=bof_command_library_temp m=$device_attributes status=local_status
      EXIT install_block WHEN NOT local_status.normal
      generate_library l=bof_command_library_temp_new status=local_status
      EXIT install_block WHEN NOT local_status.normal
    QUIT

    install_file f=bof_command_library_temp_new t=bof_command_library am=(read execute) ra=(3 6 6) ..
          status=local_status
    EXIT install_block WHEN NOT local_status.normal

    TASK r=3
      $system.delete_file f=bof_command_library_temp_new status=local_status
      EXIT install_block WHEN NOT local_status.normal
    TASKEND

  BLOCKEND install_block

  EXIT procedure WITH local_status WHEN NOT local_status.normal

PROCEND install_batch_filters
