PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.5
Independent Analytics – WordPress Analytics Plugin v2.15.5
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 1 month ago Blueprint.php 1 month ago Builder.php 1 month ago ColumnDefinition.php 1 month ago ForeignIdColumnDefinition.php 1 month ago ForeignKeyDefinition.php 1 month ago IndexDefinition.php 1 month ago MySqlBuilder.php 1 month ago MySqlSchemaState.php 1 month ago PostgresBuilder.php 1 month ago PostgresSchemaState.php 1 month ago SQLiteBuilder.php 1 month ago SchemaState.php 1 month ago SqlServerBuilder.php 1 month ago SqliteSchemaState.php 1 month 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