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 / PostgresSchemaState.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
PostgresSchemaState.php
59 lines
1 <?php
2
3 namespace IAWPSCOPED\Illuminate\Database\Schema;
4
5 use IAWPSCOPED\Illuminate\Database\Connection;
6 /** @internal */
7 class PostgresSchemaState 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 $commands = \IAWPSCOPED\collect([$this->baseDumpCommand() . ' --schema-only > ' . $path, $this->baseDumpCommand() . ' -t ' . $this->migrationTable . ' --data-only >> ' . $path]);
19 $commands->map(function ($command, $path) {
20 $this->makeProcess($command)->mustRun($this->output, \array_merge($this->baseVariables($this->connection->getConfig()), ['LARAVEL_LOAD_PATH' => $path]));
21 });
22 }
23 /**
24 * Load the given schema file into the database.
25 *
26 * @param string $path
27 * @return void
28 */
29 public function load($path)
30 {
31 $command = 'pg_restore --no-owner --no-acl --clean --if-exists --host="${:LARAVEL_LOAD_HOST}" --port="${:LARAVEL_LOAD_PORT}" --username="${:LARAVEL_LOAD_USER}" --dbname="${:LARAVEL_LOAD_DATABASE}" "${:LARAVEL_LOAD_PATH}"';
32 if (\str_ends_with($path, '.sql')) {
33 $command = 'psql --file="${:LARAVEL_LOAD_PATH}" --host="${:LARAVEL_LOAD_HOST}" --port="${:LARAVEL_LOAD_PORT}" --username="${:LARAVEL_LOAD_USER}" --dbname="${:LARAVEL_LOAD_DATABASE}"';
34 }
35 $process = $this->makeProcess($command);
36 $process->mustRun(null, \array_merge($this->baseVariables($this->connection->getConfig()), ['LARAVEL_LOAD_PATH' => $path]));
37 }
38 /**
39 * Get the base dump command arguments for PostgreSQL as a string.
40 *
41 * @return string
42 */
43 protected function baseDumpCommand()
44 {
45 return 'pg_dump --no-owner --no-acl --host="${:LARAVEL_LOAD_HOST}" --port="${:LARAVEL_LOAD_PORT}" --username="${:LARAVEL_LOAD_USER}" --dbname="${:LARAVEL_LOAD_DATABASE}"';
46 }
47 /**
48 * Get the base variables for a dump / load command.
49 *
50 * @param array $config
51 * @return array
52 */
53 protected function baseVariables(array $config)
54 {
55 $config['host'] ??= '';
56 return ['LARAVEL_LOAD_HOST' => \is_array($config['host']) ? $config['host'][0] : $config['host'], 'LARAVEL_LOAD_PORT' => $config['port'], 'LARAVEL_LOAD_USER' => $config['username'], 'PGPASSWORD' => $config['password'], 'LARAVEL_LOAD_DATABASE' => $config['database']];
57 }
58 }
59