PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.2.0
Independent Analytics – WordPress Analytics Plugin v2.2.0
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / vendor / illuminate / database / Schema / SqliteSchemaState.php
independent-analytics / vendor / illuminate / database / Schema Last commit date
Grammars 2 years ago Blueprint.php 2 years ago Builder.php 2 years ago ColumnDefinition.php 2 years ago ForeignIdColumnDefinition.php 2 years ago ForeignKeyDefinition.php 2 years ago MySqlBuilder.php 2 years ago MySqlSchemaState.php 2 years ago PostgresBuilder.php 2 years ago PostgresSchemaState.php 2 years ago SQLiteBuilder.php 2 years ago SchemaState.php 2 years ago SqlServerBuilder.php 2 years ago SqliteSchemaState.php 2 years ago
SqliteSchemaState.php
70 lines
1 <?php
2
3 namespace IAWP_SCOPED\Illuminate\Database\Schema;
4
5 use IAWP_SCOPED\Illuminate\Database\Connection;
6 /** @internal */
7 class SqliteSchemaState extends SchemaState
8 {
9 /**
10 * Dump the database's schema into a file.
11 *
12 * @param \Illuminate\Database\Connection $connection
13 * @param string $path
14 * @return void
15 */
16 public function dump(Connection $connection, $path)
17 {
18 with($process = $this->makeProcess($this->baseCommand() . ' .schema'))->setTimeout(null)->mustRun(null, \array_merge($this->baseVariables($this->connection->getConfig()), []));
19 $migrations = \IAWP_SCOPED\collect(\preg_split("/\r\n|\n|\r/", $process->getOutput()))->filter(function ($line) {
20 return \stripos($line, 'sqlite_sequence') === \false && \strlen($line) > 0;
21 })->all();
22 $this->files->put($path, \implode(\PHP_EOL, $migrations) . \PHP_EOL);
23 $this->appendMigrationData($path);
24 }
25 /**
26 * Append the migration data to the schema dump.
27 *
28 * @param string $path
29 * @return void
30 */
31 protected function appendMigrationData(string $path)
32 {
33 with($process = $this->makeProcess($this->baseCommand() . ' ".dump \'' . $this->migrationTable . '\'"'))->mustRun(null, \array_merge($this->baseVariables($this->connection->getConfig()), []));
34 $migrations = \IAWP_SCOPED\collect(\preg_split("/\r\n|\n|\r/", $process->getOutput()))->filter(function ($line) {
35 return \preg_match('/^\\s*(--|INSERT\\s)/iu', $line) === 1 && \strlen($line) > 0;
36 })->all();
37 $this->files->append($path, \implode(\PHP_EOL, $migrations) . \PHP_EOL);
38 }
39 /**
40 * Load the given schema file into the database.
41 *
42 * @param string $path
43 * @return void
44 */
45 public function load($path)
46 {
47 $process = $this->makeProcess($this->baseCommand() . ' < "${:LARAVEL_LOAD_PATH}"');
48 $process->mustRun(null, \array_merge($this->baseVariables($this->connection->getConfig()), ['LARAVEL_LOAD_PATH' => $path]));
49 }
50 /**
51 * Get the base sqlite command arguments as a string.
52 *
53 * @return string
54 */
55 protected function baseCommand()
56 {
57 return 'sqlite3 "${:LARAVEL_LOAD_DATABASE}"';
58 }
59 /**
60 * Get the base variables for a dump / load command.
61 *
62 * @param array $config
63 * @return array
64 */
65 protected function baseVariables(array $config)
66 {
67 return ['LARAVEL_LOAD_DATABASE' => $config['database']];
68 }
69 }
70