PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.4
Independent Analytics – WordPress Analytics Plugin v2.15.4
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 3 weeks ago Blueprint.php 3 weeks ago Builder.php 3 weeks ago ColumnDefinition.php 3 weeks ago ForeignIdColumnDefinition.php 3 weeks ago ForeignKeyDefinition.php 3 weeks ago IndexDefinition.php 3 weeks ago MySqlBuilder.php 3 weeks ago MySqlSchemaState.php 3 weeks ago PostgresBuilder.php 3 weeks ago PostgresSchemaState.php 3 weeks ago SQLiteBuilder.php 3 weeks ago SchemaState.php 3 weeks ago SqlServerBuilder.php 3 weeks ago SqliteSchemaState.php 3 weeks ago
SqliteSchemaState.php
74 lines
1 <?php
2
3 namespace IAWPSCOPED\Illuminate\Database\Schema;
4
5 use IAWPSCOPED\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 = \IAWPSCOPED\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 = \IAWPSCOPED\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 if ($this->connection->getDatabaseName() === ':memory:') {
48 $this->connection->getPdo()->exec($this->files->get($path));
49 return;
50 }
51 $process = $this->makeProcess($this->baseCommand() . ' < "${:LARAVEL_LOAD_PATH}"');
52 $process->mustRun(null, \array_merge($this->baseVariables($this->connection->getConfig()), ['LARAVEL_LOAD_PATH' => $path]));
53 }
54 /**
55 * Get the base sqlite command arguments as a string.
56 *
57 * @return string
58 */
59 protected function baseCommand()
60 {
61 return 'sqlite3 "${:LARAVEL_LOAD_DATABASE}"';
62 }
63 /**
64 * Get the base variables for a dump / load command.
65 *
66 * @param array $config
67 * @return array
68 */
69 protected function baseVariables(array $config)
70 {
71 return ['LARAVEL_LOAD_DATABASE' => $config['database']];
72 }
73 }
74