Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [%ZAPM] >  [ext] >  [database]
Private  Storage   

abstract class %ZAPM.ext.database

Utility for creating and deleting databases with one command Create DataBase and Namespace with CSP, REST application Forked from https://openexchange.intersystems.com/package/isc-generate-db Added resource and role creation for the database. (Many modules ZPM require MatchRoles=":{$dbrole}") Added deletion of DataBases, role resources and Namespace. Adding rest application is optional. example: write $System.Status.GetErrorText(##class(%ZAPM.ext.database).CreateDBNS("TESTDB2")) write $System.Status.GetErrorText(##class(%ZAPM.ext.database).DeleteDBNS("TESTDB2")) create db and namespace without resource and role write $System.Status.GetErrorText(##class(%ZPM.PackageManager.Developer.UnitTest.Utils).CreateNamespace("testdb14")) write $System.Status.GetErrorText(##class(%ZPM.PackageManager.Developer.UnitTest.Utils).DeleteNamespace("testdb14"))

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
4 19


Summary

Methods
CheckDatabaseDirExists CheckDatabaseExists CreateDBNS CreateResource
CreateRole DeleteDBNS DeleteResource DeleteRole
DismountDB DismountListDB GetDatabaseDirectory Init
Install SetReadOnly createRESTApp


Parameters

• parameter DATABASENAME;
• parameter LIBRARY;
• parameter SYSGLOBALS;
• parameter TEMPGLOBALS;

Methods

• classmethod CheckDatabaseDirExists(directory As %String) as %Status
Checks if database directory exist
• classmethod CheckDatabaseExists(directory As %String) as %Status
Checks if database directory exist
• classmethod CreateDBNS(pNamespace As %String, pCodeData As %Boolean = 0, pPathDataset As %String = "", pInterOperability As %Boolean = 1, pREST As %String = "") as %Status
write ##class(%ZAPM.ext.database).CreateDBNS("NEWNS")
• classmethod CreateResource(dbName As %String, Permiss As %String = "RW") as %Status
Create new Resource w $system.Status.GetErrorText(##class(%ZAPM.ext.database).CreateResource("DSW-DATA"))
• classmethod CreateRole(dbName As %String) as %Status
Create new Role w $system.Status.GetErrorText(##class(%ZAPM.ext.database).CreateRole("SWAGGERUI-CODE"))
• classmethod DeleteDBNS(pNamespace) as %Status
w $system.Status.GetErrorText(##class(%ZAPM.ext.database).DeleteDBNS("SWAGGERUI", 0))
• classmethod DeleteResource(dbName As %String) as %Status
Delete Resource w $system.Status.GetErrorText(##class(%ZAPM.ext.database).DeleteResource("DSWDATA"))
• classmethod DeleteRole(dbName As %String) as %Status
Delete Role w $system.Status.GetErrorText(##class(%ZAPM.ext.database).DeleteRole("DSWDATA"))
• classmethod DismountDB(Database) as %Status
write $System.Status.GetErrorText(##class(%ZAPM.ext.database).DismountDB("PROD"))
• classmethod DismountListDB(Database) as %Status
zn "app" w $System.Status.GetErrorText(##class(%ZAPM.ext.database).DismountListDB("DOJO"))
• classmethod GetDatabaseDirectory(pNamespace As %String) as %String
Get database directory
• classmethod Init() as %Status
• classmethod Install(pNamespace As %String, pCodeData As %Boolean = 1, pPathDataset As %String = "", pInterOperability As %Boolean = 0, pREST As %String = "") as %Status
• classmethod SetReadOnly(Database="irislib", readonly=1) as %Status
write $System.Status.GetErrorText(##class(%ZAPM.ext.database).SetReadOnly())
• classmethod createRESTApp(pNamespace As %String, DispatchClass="REST.Dispatch") as %Status
Create REST Application


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.