# easy-invoice/2.3.7/includes/Providers/InvoiceItemServiceProvider.php

Easy Invoice – Invoice Generator, PDF Quotes &amp; Payments, version 2.3.7. 56 lines.

- Page: https://pluginprobe.com/plugins/easy-invoice/2.3.7/code/includes/Providers/InvoiceItemServiceProvider.php
- Raw: https://pluginprobe.com/plugins/easy-invoice/2.3.7/raw/includes/Providers/InvoiceItemServiceProvider.php
- Modified: 2025-08-14T09:51:16+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/easy-invoice/2.3.7/code/includes/Providers/InvoiceItemServiceProvider.php#L10-L20`.

```php
<?php
/**
 * Invoice Item Service Provider Class
 *
 * @package Easy_Invoice
 * @subpackage Providers
 */

namespace EasyInvoice\Providers;

use EasyInvoice\Interfaces\InvoiceItemRepositoryInterface;
use EasyInvoice\Repositories\InvoiceItemRepository;

/**
 * InvoiceItemServiceProvider Class
 * 
 * Handles registration of invoice item-related services.
 */
class InvoiceItemServiceProvider {
    /**
     * The repository instance
     *
     * @var InvoiceItemRepositoryInterface
     */
    protected static $repository = null;
    
    /**
     * Register invoice item services
     */
    public function register() {
        // Register invoice item repository
        $this->registerInvoiceItemRepository();
    }
    
    /**
     * Register invoice item repository
     */
    protected function registerInvoiceItemRepository() {
        // Create and store the repository instance
        self::$repository = new InvoiceItemRepository();
    }
    
    /**
     * Get the invoice item repository
     *
     * @return InvoiceItemRepositoryInterface The invoice item repository
     */
    public static function getInvoiceItemRepository() {
        // Create the repository if it doesn't exist
        if (self::$repository === null) {
            self::$repository = new InvoiceItemRepository();
        }
        
        return self::$repository;
    }
} 
```
