/* $Id$ */
/*============================================================================*
 |                 Copyright (c) 2016 Applaud Solutions UK Ltd                |
 |                             All rights reserved                            |
 *===========================================================================*/
 
SET VERIFY OFF
SET FEEDBACK OFF
SET SCAN OFF
WHENEVER OSERROR  EXIT FAILURE ROLLBACK
WHENEVER SQLERROR EXIT FAILURE ROLLBACK

DECLARE 

  e_dir_exists EXCEPTION;
  PRAGMA EXCEPTION_INIT(e_dir_exists, -31003);

  e_does_not_exists EXCEPTION;
  PRAGMA EXCEPTION_INIT(e_does_not_exists , -31001);

  result boolean;
  
BEGIN

  BEGIN

    result := DBMS_XDB.createfolder('/public/xxas/');
    result := DBMS_XDB.createfolder('/public/xxas/emp/');
    result := DBMS_XDB.createfolder('/public/xxas/emp/view/');

  EXCEPTION
    WHEN e_dir_exists THEN
      NULL;
  END;
  
  BEGIN

    DBMS_XDB.DeleteResource('/public/xxas/emp/view/rest_method.xml');

  EXCEPTION
    WHEN e_does_not_exists THEN
      NULL;
  END;
  
      result := DBMS_XDB.createresource('/public/xxas/emp/view/rest_method.xml',
'<View title="Rest method" defaultFormHandler="xxas_rest_method_pkg.xxas_rest_method_pkg.post_method_create" submitLabel="{message.XXAS_RB_COM_SAVE}">
  <CreateFields>
  <Hidden id="BIPUB_DD_APP"/>
  <TextInput id="METHOD_NAME" label="Method name" required="true"/>
  <TextInput id="DESCRIPTION" label="Description" />
  <TextInput id="METHOD" label="Method" required="true" />
  <TextInput id="PATH_TEMPLATE" label="Path"/>
  <TextInput id="PROVIDER_TYPE" label="Provider" required="true" />
  <Poplist id="ROOT_ELE" label="Remove root element" required="true" showAsBoolean="true" listProvider="LOOKUP_TYPE:YES_NO" positiveBooleanValue="Y" hideIf="(model.PROVIDER_TYPE.value != &apos;SQL&apos;)"/>
  <TextArea id="SQL" label="SQL" required="true" hideIf="(model.PROVIDER_TYPE.value != &apos;SQL&apos;)" />
  <TextArea id="PLSQL" label="PLSQL" required="true" hideIf="(model.PROVIDER_TYPE.value != &apos;PLSQL&apos;)" />
  <Combolist id="XMLDEF" label="XML Publisher Data Definition" longlist="true" enabled="false" listProvider="REST:rest-method/getddcode?q={searchText}" hideIf="(model.BIPUB_DD_APP.value != &apos;XXAS&apos;)"/>
  </CreateFields>
</View>' );
xxas_forms_pkg.update_forms_resource('/public/xxas/emp/view/rest_method.xml');
END;
/
COMMIT;
EXIT;