2021-03-10 09:12:21 +01:00
<!DOCTYPE HTML>
2019-08-05 11:13:19 +02:00
<!-- NewPage -->
2021-03-10 09:12:21 +01:00
< html lang = "en" >
2019-08-05 11:13:19 +02:00
< head >
2021-07-24 13:27:37 +02:00
<!-- Generated by javadoc (16) -->
2021-06-12 09:24:49 +02:00
< title > Database (Plan 5.4-SNAPSHOT API)< / title >
2021-07-24 13:27:37 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
2021-03-10 09:12:21 +01:00
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
2021-07-24 13:27:37 +02:00
< meta name = "description" content = "declaration: package: com.djrapitops.plan.storage.database, interface: Database" >
< meta name = "generator" content = "javadoc/ClassWriterImpl" >
2019-10-05 10:27:37 +02:00
< link rel = "stylesheet" type = "text/css" href = "../../../../../stylesheet.css" title = "Style" >
2021-07-24 13:27:37 +02:00
< link rel = "stylesheet" type = "text/css" href = "../../../../../script-dir/jquery-ui.min.css" title = "Style" >
< link rel = "stylesheet" type = "text/css" href = "../../../../../jquery-ui.overrides.css" title = "Style" >
2019-10-05 10:27:37 +02:00
< script type = "text/javascript" src = "../../../../../script.js" > < / script >
2021-07-24 13:27:37 +02:00
< script type = "text/javascript" src = "../../../../../script-dir/jquery-3.5.1.min.js" > < / script >
< script type = "text/javascript" src = "../../../../../script-dir/jquery-ui.min.js" > < / script >
2019-08-05 11:13:19 +02:00
< / head >
2021-07-24 13:27:37 +02:00
< body class = "class-declaration-page" >
< script type = "text/javascript" > v a r e v e n R o w C o l o r = " e v e n - r o w - c o l o r " ;
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
2021-03-10 09:12:21 +01:00
var pathtoroot = "../../../../../";
loadScripts(document, 'script');< / script >
2019-08-05 11:13:19 +02:00
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
2021-07-24 13:27:37 +02:00
< div class = "flex-box" >
< header role = "banner" class = "flex-header" >
2021-03-10 09:12:21 +01:00
< nav role = "navigation" >
2019-08-05 11:13:19 +02:00
<!-- ========= START OF TOP NAVBAR ======= -->
2021-07-24 13:27:37 +02:00
< div class = "top-nav" id = "navbar.top" >
< div class = "skip-nav" > < a href = "#skip.navbar.top" title = "Skip navigation links" > Skip navigation links< / a > < / div >
< ul id = "navbar.top.firstrow" class = "nav-list" title = "Navigation" >
2021-03-10 09:12:21 +01:00
< li > < a href = "../../../../../index.html" > Overview< / a > < / li >
2019-08-05 11:13:19 +02:00
< li > < a href = "package-summary.html" > Package< / a > < / li >
2021-07-24 13:27:37 +02:00
< li class = "nav-bar-cell1-rev" > Class< / li >
2019-08-05 11:13:19 +02:00
< li > < a href = "package-tree.html" > Tree< / a > < / li >
2019-10-05 10:27:37 +02:00
< li > < a href = "../../../../../deprecated-list.html" > Deprecated< / a > < / li >
< li > < a href = "../../../../../index-all.html" > Index< / a > < / li >
< li > < a href = "../../../../../help-doc.html" > Help< / a > < / li >
2019-08-05 11:13:19 +02:00
< / ul >
< / div >
2021-07-24 13:27:37 +02:00
< div class = "sub-nav" >
2019-08-05 11:13:19 +02:00
< div >
2021-07-24 13:27:37 +02:00
< ul class = "sub-nav-list" >
2019-08-05 11:13:19 +02:00
< li > Summary: < / li >
< li > < a href = "#nested.class.summary" > Nested< / a > | < / li >
< li > Field | < / li >
< li > Constr | < / li >
< li > < a href = "#method.summary" > Method< / a > < / li >
< / ul >
2021-07-24 13:27:37 +02:00
< ul class = "sub-nav-list" >
2019-08-05 11:13:19 +02:00
< li > Detail: < / li >
< li > Field | < / li >
< li > Constr | < / li >
< li > < a href = "#method.detail" > Method< / a > < / li >
< / ul >
< / div >
2021-07-24 13:27:37 +02:00
< div class = "nav-list-search" > < label for = "search" > SEARCH:< / label >
< input type = "text" id = "search" value = "search" disabled = "disabled" >
< input type = "reset" id = "reset" value = "reset" disabled = "disabled" >
2021-03-10 09:12:21 +01:00
< / div >
2021-07-24 13:27:37 +02:00
< / div >
<!-- ========= END OF TOP NAVBAR ========= -->
< span class = "skip-nav" id = "skip.navbar.top" >
<!-- -->
< / span > < / nav >
2021-03-10 09:12:21 +01:00
< / header >
2021-07-24 13:27:37 +02:00
< div class = "flex-content" >
2021-03-10 09:12:21 +01:00
< main role = "main" >
2021-07-24 13:27:37 +02:00
<!-- ======== START OF CLASS DATA ======== -->
2019-08-05 11:13:19 +02:00
< div class = "header" >
2021-07-24 13:27:37 +02:00
< div class = "sub-title" > < span class = "package-label-in-type" > Package< / span > < a href = "package-summary.html" > com.djrapitops.plan.storage.database< / a > < / div >
< h1 title = "Interface Database" class = "title" > Interface Database< / h1 >
2019-08-05 11:13:19 +02:00
< / div >
2021-07-24 13:27:37 +02:00
< section class = "description" >
< dl class = "notes" >
2019-08-05 11:13:19 +02:00
< dt > All Known Implementing Classes:< / dt >
2021-06-12 09:24:49 +02:00
< dd > < code > < a href = "AbstractDatabase.html" title = "class in com.djrapitops.plan.storage.database" > AbstractDatabase< / a > < / code > , < code > < a href = "MySQLDB.html" title = "class in com.djrapitops.plan.storage.database" > MySQLDB< / a > < / code > , < code > < a href = "SQLDB.html" title = "class in com.djrapitops.plan.storage.database" > SQLDB< / a > < / code > , < code > < a href = "SQLiteDB.html" title = "class in com.djrapitops.plan.storage.database" > SQLiteDB< / a > < / code > < / dd >
2019-08-05 11:13:19 +02:00
< / dl >
< hr >
2021-07-24 13:27:37 +02:00
< div class = "type-signature" > < span class = "modifiers" > public interface < / span > < span class = "element-name type-name-label" > Database< / span > < / div >
2019-08-05 11:13:19 +02:00
< div class = "block" > Interface for interacting with a Plan SQL database.< / div >
2021-07-24 13:27:37 +02:00
< / section >
< section class = "summary" >
< ul class = "summary-list" >
2019-08-05 11:13:19 +02:00
<!-- ======== NESTED CLASS SUMMARY ======== -->
2021-07-24 13:27:37 +02:00
< li >
< section class = "nested-class-summary" id = "nested.class.summary" >
< h2 > Nested Class Summary< / h2 >
< div class = "caption" > < span > Nested Classes< / span > < / div >
< div class = "summary-table three-column-summary" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Interface< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color" > < code > static class < / code > < / div >
< div class = "col-second even-row-color" > < code > < span class = "member-name-link" > < a href = "Database.State.html" title = "enum class in com.djrapitops.plan.storage.database" > Database.State< / a > < / span > < / code > < / div >
< div class = "col-last even-row-color" >
2019-10-05 10:27:37 +02:00
< div class = "block" > Possible State changes:
CLOSED to PATCHING (Database init),
PATCHING to OPEN (Database initialized),
OPEN to CLOSING (Database closing),
CLOSING to CLOSED (Database closed),
PATCHING to CLOSED (Database closed prematurely)< / div >
2021-07-24 13:27:37 +02:00
< / div >
< / div >
2021-03-10 09:12:21 +01:00
< / section >
2021-07-24 13:27:37 +02:00
< / li >
2019-08-05 11:13:19 +02:00
<!-- ========== METHOD SUMMARY =========== -->
2021-07-24 13:27:37 +02:00
< li >
< section class = "method-summary" id = "method.summary" >
< h2 > Method Summary< / h2 >
< div id = "method-summary-table" >
< div class = "table-tabs" role = "tablist" aria-orientation = "horizontal" > < button id = "method-summary-table-tab0" role = "tab" aria-selected = "true" aria-controls = "method-summary-table.tabpanel" tabindex = "0" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table', 3)" class = "active-table-tab" > All Methods< / button > < button id = "method-summary-table-tab2" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab2', 3)" class = "table-tab" > Instance Methods< / button > < button id = "method-summary-table-tab3" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab3', 3)" class = "table-tab" > Abstract Methods< / button > < button id = "method-summary-table-tab5" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab5', 3)" class = "table-tab" > Default Methods< / button > < / div >
< div id = "method-summary-table.tabpanel" role = "tabpanel" >
< div class = "summary-table three-column-summary" aria-labelledby = "method-summary-table-tab0" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Method< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > void< / code > < / div >
< div class = "col-second even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#close()" > close< / a > < / span > ()< / code > < / div >
< div class = "col-last even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < / div >
2022-04-11 18:14:24 +02:00
< div class = "col-first odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < a href = "https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/concurrent/CompletableFuture.html" title = "class or interface in java.util.concurrent" class = "external-link" > CompletableFuture< / a > < ?> < / code > < / div >
2021-07-24 13:27:37 +02:00
< div class = "col-second odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#executeTransaction(com.djrapitops.plan.storage.database.transactions.Transaction)" > executeTransaction< / a > < / span > ​ (< a href = "transactions/Transaction.html" title = "class in com.djrapitops.plan.storage.database.transactions" > Transaction< / a > transaction)< / code > < / div >
< div class = "col-last odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" >
2019-08-05 11:13:19 +02:00
< div class = "block" > Execute an SQL Transaction.< / div >
2021-07-24 13:27:37 +02:00
< / div >
< div class = "col-first even-row-color method-summary-table-tab2 method-summary-table-tab5 method-summary-table" > < code > default < a href = "sql/building/Sql.html" title = "class in com.djrapitops.plan.storage.database.sql.building" > Sql< / a > < / code > < / div >
< div class = "col-second even-row-color method-summary-table-tab2 method-summary-table-tab5 method-summary-table" > < code > < span class = "member-name-link" > < a href = "#getSql()" > getSql< / a > < / span > ()< / code > < / div >
< div class = "col-last even-row-color method-summary-table-tab2 method-summary-table-tab5 method-summary-table" > < / div >
< div class = "col-first odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < a href = "Database.State.html" title = "enum class in com.djrapitops.plan.storage.database" > Database.State< / a > < / code > < / div >
< div class = "col-second odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#getState()" > getState< / a > < / span > ()< / code > < / div >
< div class = "col-last odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < / div >
< div class = "col-first even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < a href = "DBType.html" title = "enum class in com.djrapitops.plan.storage.database" > DBType< / a > < / code > < / div >
< div class = "col-second even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#getType()" > getType< / a > < / span > ()< / code > < / div >
< div class = "col-last even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" >
2019-08-05 11:13:19 +02:00
< div class = "block" > Used to get the < code > DBType< / code > of the Database< / div >
2021-07-24 13:27:37 +02:00
< / div >
< div class = "col-first odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > void< / code > < / div >
< div class = "col-second odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#init()" > init< / a > < / span > ()< / code > < / div >
< div class = "col-last odd-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" >
2019-08-05 11:13:19 +02:00
< div class = "block" > Initializes the Database.< / div >
2021-07-24 13:27:37 +02:00
< / div >
< div class = "col-first even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < T> T< / code > < / div >
< div class = "col-second even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" > < code > < span class = "member-name-link" > < a href = "#query(com.djrapitops.plan.storage.database.queries.Query)" > query< / a > < / span > ​ (< a href = "queries/Query.html" title = "interface in com.djrapitops.plan.storage.database.queries" > Query< / a > < T> query)< / code > < / div >
< div class = "col-last even-row-color method-summary-table-tab2 method-summary-table method-summary-table-tab3" >
2019-08-05 11:13:19 +02:00
< div class = "block" > Execute an SQL Query statement to get a result.< / div >
2021-07-24 13:27:37 +02:00
< / div >
< / div >
< / div >
< / div >
2021-03-10 09:12:21 +01:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
< / ul >
2021-07-24 13:27:37 +02:00
< / section >
< section class = "details" >
< ul class = "details-list" >
2019-08-05 11:13:19 +02:00
<!-- ============ METHOD DETAIL ========== -->
2021-07-24 13:27:37 +02:00
< li >
< section class = "method-details" id = "method.detail" >
< h2 > Method Details< / h2 >
< ul class = "member-list" >
< li >
< section class = "detail" id = "init()" >
< h3 > init< / h3 >
< div class = "member-signature" > < span class = "return-type" > void< / span > < span class = "element-name" > init< / span > ()< / div >
2019-08-05 11:13:19 +02:00
< div class = "block" > Initializes the Database.
< p >
Queries can be performed after this request has completed all required transactions for the database operations.< / div >
2021-07-24 13:27:37 +02:00
< dl class = "notes" >
< dt > Throws:< / dt >
2021-03-10 09:12:21 +01:00
< dd > < code > < a href = "../../exceptions/database/DBInitException.html" title = "class in com.djrapitops.plan.exceptions.database" > DBInitException< / a > < / code > - if Database fails to initiate.< / dd >
2019-08-05 11:13:19 +02:00
< / dl >
2021-07-24 13:27:37 +02:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "close()" >
< h3 > close< / h3 >
< div class = "member-signature" > < span class = "return-type" > void< / span > < span class = "element-name" > close< / span > ()< / div >
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "query(com.djrapitops.plan.storage.database.queries.Query)" >
< h3 > query< / h3 >
< div class = "member-signature" > < span class = "type-parameters" > < T> < / span > < span class = "return-type" > T< / span > < span class = "element-name" > query< / span > ​ < span class = "parameters" > (< a href = "queries/Query.html" title = "interface in com.djrapitops.plan.storage.database.queries" > Query< / a > < T> query)< / span > < / div >
2019-08-05 11:13:19 +02:00
< div class = "block" > Execute an SQL Query statement to get a result.
< p >
This method should only be called from an asynchronous thread.< / div >
2021-07-24 13:27:37 +02:00
< dl class = "notes" >
< dt > Type Parameters:< / dt >
2019-08-05 11:13:19 +02:00
< dd > < code > T< / code > - Type of the object to be returned.< / dd >
2021-07-24 13:27:37 +02:00
< dt > Parameters:< / dt >
2019-08-05 11:13:19 +02:00
< dd > < code > query< / code > - QueryStatement to execute.< / dd >
2021-07-24 13:27:37 +02:00
< dt > Returns:< / dt >
2019-08-05 11:13:19 +02:00
< dd > Result of the query.< / dd >
< / dl >
2021-07-24 13:27:37 +02:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "executeTransaction(com.djrapitops.plan.storage.database.transactions.Transaction)" >
< h3 > executeTransaction< / h3 >
2022-04-11 18:14:24 +02:00
< div class = "member-signature" > < span class = "return-type" > < a href = "https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/concurrent/CompletableFuture.html" title = "class or interface in java.util.concurrent" class = "external-link" > CompletableFuture< / a > < ?> < / span > < span class = "element-name" > executeTransaction< / span > ​ < span class = "parameters" > (< a href = "transactions/Transaction.html" title = "class in com.djrapitops.plan.storage.database.transactions" > Transaction< / a > transaction)< / span > < / div >
2019-08-05 11:13:19 +02:00
< div class = "block" > Execute an SQL Transaction.< / div >
2021-07-24 13:27:37 +02:00
< dl class = "notes" >
< dt > Parameters:< / dt >
2019-08-05 11:13:19 +02:00
< dd > < code > transaction< / code > - Transaction to execute.< / dd >
2021-07-24 13:27:37 +02:00
< dt > Returns:< / dt >
2019-08-05 11:13:19 +02:00
< dd > Future that is finished when the transaction has been executed.< / dd >
< / dl >
2021-07-24 13:27:37 +02:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "getType()" >
< h3 > getType< / h3 >
< div class = "member-signature" > < span class = "return-type" > < a href = "DBType.html" title = "enum class in com.djrapitops.plan.storage.database" > DBType< / a > < / span > < span class = "element-name" > getType< / span > ()< / div >
2019-08-05 11:13:19 +02:00
< div class = "block" > Used to get the < code > DBType< / code > of the Database< / div >
2021-07-24 13:27:37 +02:00
< dl class = "notes" >
< dt > Returns:< / dt >
2019-08-05 11:13:19 +02:00
< dd > the < code > DBType< / code > < / dd >
2021-07-24 13:27:37 +02:00
< dt > See Also:< / dt >
< dd > < a href = "DBType.html" title = "enum class in com.djrapitops.plan.storage.database" > < code > DBType< / code > < / a > < / dd >
2019-08-05 11:13:19 +02:00
< / dl >
2021-07-24 13:27:37 +02:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "getSql()" >
< h3 > getSql< / h3 >
< div class = "member-signature" > < span class = "modifiers" > default< / span > < span class = "return-type" > < a href = "sql/building/Sql.html" title = "class in com.djrapitops.plan.storage.database.sql.building" > Sql< / a > < / span > < span class = "element-name" > getSql< / span > ()< / div >
< / section >
2019-08-05 11:13:19 +02:00
< / li >
2021-07-24 13:27:37 +02:00
< li >
< section class = "detail" id = "getState()" >
< h3 > getState< / h3 >
< div class = "member-signature" > < span class = "return-type" > < a href = "Database.State.html" title = "enum class in com.djrapitops.plan.storage.database" > Database.State< / a > < / span > < span class = "element-name" > getState< / span > ()< / div >
< / section >
2019-08-05 11:13:19 +02:00
< / li >
< / ul >
2021-03-10 09:12:21 +01:00
< / section >
2019-08-05 11:13:19 +02:00
< / li >
< / ul >
2021-07-24 13:27:37 +02:00
< / section >
2019-08-05 11:13:19 +02:00
<!-- ========= END OF CLASS DATA ========= -->
2021-07-24 13:27:37 +02:00
< / main >
2019-08-05 11:13:19 +02:00
< / div >
< / div >
< / body >
< / html >