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 / PostgresSchemaState.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
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