protected function _buildNewPackage($package_name)
    {
        $package = isset($this->assets_db[$package_name]) ? $this->assets_db[$package_name] : null;
        if (!empty($package)) {
            $cls_name = Config::get('assets-package-class');
            if (@class_exists($cls_name)) {
                $interfaces = class_implements($cls_name);
                $config_interface = Config::getInternal('assets-package-interface');
                if (in_array($config_interface, $interfaces)) {
                    $package_object = $cls_name::createFromAssetsLoader($this);
                    $package_object->loadFromArray($package);
                    return $package_object;
                } else {
                    throw new \DomainException(
                        sprintf('Package class "%s" must implement interface "%s"!',
                            $cls_name, $config_interface)
                    );
                }
            } else {
                throw new \DomainException(
                    sprintf('Package class "%s" not found!', $cls_name)
                );
            }
        } else {
            throw new \InvalidArgumentException(
                sprintf('Unknown package "%s"!', $package_name)
            );
        }
        return null;
    }
protected function _buildNewPackage($package_name)
    {
        $package = isset($this->assets_db[$package_name]) ? $this->assets_db[$package_name] : null;
        if (!empty($package)) {
            $cls_name = Config::get('assets-package-class');
            if (@class_exists($cls_name)) {
                $interfaces = class_implements($cls_name);
                $config_interface = Config::getInternal('assets-package-interface');
                if (in_array($config_interface, $interfaces)) {
                    $package_object = $cls_name::createFromAssetsLoader($this);
                    $package_object->loadFromArray($package);
                    return $package_object;
                } else {
                    throw new \DomainException(
                        sprintf('Package class "%s" must implement interface "%s"!',
                            $cls_name, $config_interface)
                    );
                }
            } else {
                throw new \DomainException(
                    sprintf('Package class "%s" not found!', $cls_name)
                );
            }
        } else {
            throw new \InvalidArgumentException(
                sprintf('Unknown package "%s"!', $package_name)
            );
        }
        return null;
    }
protected function _buildNewPackage ( $ package_name ) { $ package = isset ( $ this -> assets_db [ $ package_name ] ) ? $ this -> assets_db [ $ package_name ] : null ; if ( ! empty ( $ package ) ) { $ cls_name = Config :: get ( 'assets-package-class' ) ; if ( @ class_exists ( $ cls_name ) ) { $ interfaces = class_implements ( $ cls_name ) ; $ config_interface = Config :: getInternal ( 'assets-package-interface' ) ; if ( in_array ( $ config_interface , $ interfaces ) ) { $ package_object = $ cls_name :: createFromAssetsLoader ( $ this ) ; $ package_object -> loadFromArray ( $ package ) ; return $ package_object ; } else { throw new \ DomainException ( sprintf ( 'Package class "%s" must implement interface "%s"!' , $ cls_name , $ config_interface ) ) ; } } else { throw new \ DomainException ( sprintf ( 'Package class "%s" not found!' , $ cls_name ) ) ; } } else { throw new \ InvalidArgumentException ( sprintf ( 'Unknown package "%s"!' , $ package_name ) ) ; } return null ; }
Build a new package instance

@param   string $package_name
@return  \AssetsManager\Package\AssetsPackage
@throws  \DomainException if the package class can't be found or doesn't implement required interface
@throws  \InvalidArgumentException if the package can't be found
Build a new package instance