PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.2
Independent Analytics – WordPress Analytics Plugin v2.15.2
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 / Console / DumpCommand.php
independent-analytics / vendor / illuminate / database / Console Last commit date
Factories 2 weeks ago Migrations 2 weeks ago Seeds 2 weeks ago DatabaseInspectionCommand.php 2 weeks ago DbCommand.php 2 weeks ago DumpCommand.php 2 weeks ago MonitorCommand.php 2 weeks ago PruneCommand.php 2 weeks ago ShowCommand.php 2 weeks ago TableCommand.php 2 weeks ago WipeCommand.php 2 weeks ago
DumpCommand.php
85 lines
1 <?php
2
3 namespace IAWPSCOPED\Illuminate\Database\Console;
4
5 use IAWPSCOPED\Illuminate\Console\Command;
6 use IAWPSCOPED\Illuminate\Contracts\Events\Dispatcher;
7 use IAWPSCOPED\Illuminate\Database\Connection;
8 use IAWPSCOPED\Illuminate\Database\ConnectionResolverInterface;
9 use IAWPSCOPED\Illuminate\Database\Events\SchemaDumped;
10 use IAWPSCOPED\Illuminate\Filesystem\Filesystem;
11 use IAWPSCOPED\Illuminate\Support\Facades\Config;
12 use IAWPSCOPED\Symfony\Component\Console\Attribute\AsCommand;
13 /** @internal */
14 #[AsCommand(name: 'schema:dump')]
15 class DumpCommand extends Command
16 {
17 /**
18 * The console command name.
19 *
20 * @var string
21 */
22 protected $signature = 'schema:dump
23 {--database= : The database connection to use}
24 {--path= : The path where the schema dump file should be stored}
25 {--prune : Delete all existing migration files}';
26 /**
27 * The name of the console command.
28 *
29 * This name is used to identify the command during lazy loading.
30 *
31 * @var string|null
32 *
33 * @deprecated
34 */
35 protected static $defaultName = 'schema:dump';
36 /**
37 * The console command description.
38 *
39 * @var string
40 */
41 protected $description = 'Dump the given database schema';
42 /**
43 * Execute the console command.
44 *
45 * @param \Illuminate\Database\ConnectionResolverInterface $connections
46 * @param \Illuminate\Contracts\Events\Dispatcher $dispatcher
47 * @return int
48 */
49 public function handle(ConnectionResolverInterface $connections, Dispatcher $dispatcher)
50 {
51 $connection = $connections->connection($database = $this->input->getOption('database'));
52 $this->schemaState($connection)->dump($connection, $path = $this->path($connection));
53 $dispatcher->dispatch(new SchemaDumped($connection, $path));
54 $info = 'Database schema dumped';
55 if ($this->option('prune')) {
56 (new Filesystem())->deleteDirectory(database_path('migrations'), $preserve = \false);
57 $info .= ' and pruned';
58 }
59 $this->components->info($info . ' successfully.');
60 }
61 /**
62 * Create a schema state instance for the given connection.
63 *
64 * @param \Illuminate\Database\Connection $connection
65 * @return mixed
66 */
67 protected function schemaState(Connection $connection)
68 {
69 return $connection->getSchemaState()->withMigrationTable($connection->getTablePrefix() . Config::get('database.migrations', 'migrations'))->handleOutputUsing(function ($type, $buffer) {
70 $this->output->write($buffer);
71 });
72 }
73 /**
74 * Get the path that the dump should be written to.
75 *
76 * @param \Illuminate\Database\Connection $connection
77 */
78 protected function path(Connection $connection)
79 {
80 return \IAWPSCOPED\tap($this->option('path') ?: database_path('schema/' . $connection->getName() . '-schema.sql'), function ($path) {
81 (new Filesystem())->ensureDirectoryExists(\dirname($path));
82 });
83 }
84 }
85