# packeta/trunk/src/Packetery/Module/WpdbAdapterFactory.php

Packeta, version trunk. 37 lines.

- Page: https://pluginprobe.com/plugins/packeta/trunk/code/src/Packetery/Module/WpdbAdapterFactory.php
- Raw: https://pluginprobe.com/plugins/packeta/trunk/raw/src/Packetery/Module/WpdbAdapterFactory.php
- Modified: 2025-11-07T08:59:28+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/packeta/trunk/code/src/Packetery/Module/WpdbAdapterFactory.php#L10-L20`.

```php
<?php

declare( strict_types=1 );

namespace Packetery\Module;

use Packetery\Module\Framework\WcAdapter;

class WpdbAdapterFactory {

	/**
	 * @var WcAdapter
	 */
	private $wcAdapter;

	public function __construct( WcAdapter $wcAdapter ) {
		$this->wcAdapter = $wcAdapter;
	}

	public function create(): WpdbAdapter {
		global $wpdb;

		$instance                                  = new WpdbAdapter( $wpdb, $this->wcAdapter );
		$instance->packeteryCarrier                = sprintf( '%scarrier', $instance->getPacketeryPrefix() );
		$instance->packeteryOrder                  = sprintf( '%sorder', $instance->getPacketeryPrefix() );
		$instance->packeteryLog                    = sprintf( '%slog', $instance->getPacketeryPrefix() );
		$instance->packeteryCustomsDeclaration     = sprintf( '%scustoms_declaration', $instance->getPacketeryPrefix() );
		$instance->packeteryCustomsDeclarationItem = sprintf( '%scustoms_declaration_item', $instance->getPacketeryPrefix() );
		$instance->wcOrders                        = sprintf( '%swc_orders', $wpdb->prefix );
		$instance->posts                           = $wpdb->posts;
		$instance->options                         = $wpdb->options;
		$instance->postmeta                        = $wpdb->postmeta;

		return $instance;
	}
}

```
