Ether Framework
Unified API docs for Ether modules
Loading...
Searching...
No Matches
package-info.java
Go to the documentation of this file.
1/*-
2 * #%L
3 * ether-database-sqlite
4 * %%
5 * Copyright (C) 2025 - 2026 Raúl Eduardo González Argote
6 * %%
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23 * THE SOFTWARE.
24 * #L%
25 */
26
27/**
28 * SQLite configuration and PRAGMA utilities.
29 * <p>
30 * This package provides classes for configuring SQLite database connections,
31 * including Write-Ahead Logging (WAL) support, synchronous modes, and other
32 * SQLite-specific optimizations.
33 *
34 * <h2>Key Classes</h2>
35 * <ul>
36 * <li>{@link dev.rafex.ether.database.sqlite.config.SQLiteConfig} - Configuration builder</li>
37 * <li>{@link dev.rafex.ether.database.sqlite.config.JournalMode} - Journal mode enum</li>
38 * <li>{@link dev.rafex.ether.database.sqlite.config.SynchronousMode} - Synchronous mode enum</li>
39 * <li>{@link dev.rafex.ether.database.sqlite.config.SQLitePragmas} - PRAGMA application utility</li>
40 * </ul>
41 *
42 * <h2>Usage Example</h2>
43 * <pre>{@code
44 * SQLiteConfig config = SQLiteConfig.builder()
45 * .journalMode(JournalMode.WAL)
46 * .synchronousMode(SynchronousMode.NORMAL)
47 * .foreignKeys(true)
48 * .busyTimeout(5000)
49 * .build();
50 *
51 * try (Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db")) {
52 * SQLitePragmas.apply(conn, config);
53 * // Use connection...
54 * }
55 * }</pre>
56 *
57 * @see <a href="https://www.sqlite.org/pragma.html">SQLite PRAGMA Documentation</a>
58 */
59package dev.rafex.ether.database.sqlite.config;