404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@18.218.31.91: ~ $
<?php

declare(strict_types=1);

/*
 * Copyright (c) Ne-Lexa
 *
 * For the full copyright and license information, please view
 * the LICENSE file that was distributed with this source code.
 *
 * @see https://github.com/Ne-Lexa/google-play-scraper
 */

namespace Nelexa\GPlay\Model;

use Nelexa\GPlay\GPlayApps;
use Nelexa\GPlay\Model\Builder\DeveloperBuilder;

/**
 * Contains data on the application developer in the Google Play store.
 *
 * @see GPlayApps::getDeveloperInfo() Returns information about the
 *     developer: name, icon, cover, description and website address.
 * @see GPlayApps::getDeveloperInfoForLocales() Returns information
 *     about the developer for the locale array.
 * @see GPlayApps::getAppInfo() Returns detailed information about the
 *     Android application from the Google Play store.
 * @see GPlayApps::getAppsInfo() Returns detailed information about
 *     many android packages.
 * @see GPlayApps::getAppInLocales() Returns detailed information
 *     about an application from the Google Play store for an array of locales.
 * @see GPlayApps::getAppInfoForAvailableLocales() Returns detailed
 *     information about the application in all available locales.
 */
class Developer implements \JsonSerializable
{
    use JsonSerializableTrait;

    /** @var string Developer id */
    private $id;

    /** @var string url Developer page url in Google Play store */
    private $url;

    /** @var string Developer name */
    private $name;

    /** @var string|null Description of the developer */
    private $description;

    /** @var string|null Developer website */
    private $website;

    /** @var GoogleImage|null Developer icon */
    private $icon;

    /** @var GoogleImage|null Developer cover */
    private $cover;

    /** @var string|null Developer email */
    private $email;

    /** @var string|null Developer address */
    private $address;

    /**
     * Creates an object with information about the developer of Google Play.
     *
     * @param DeveloperBuilder $builder developer builder
     *
     * @internal
     */
    public function __construct(DeveloperBuilder $builder)
    {
        $this->id = $builder->getId();
        $this->url = $builder->getUrl();
        $this->name = $builder->getName();
        $this->description = $builder->getDescription();
        $this->website = $builder->getWebsite();
        $this->icon = $builder->getIcon();
        $this->cover = $builder->getCover();
        $this->email = $builder->getEmail();
        $this->address = $builder->getAddress();

        if (empty($this->id)) {
            throw new \InvalidArgumentException(
                'Developer id cannot be null or empty. '
                . 'Solution: $developerBuilder->setId(...);'
            );
        }

        if (empty($this->url)) {
            throw new \InvalidArgumentException(
                'Developer url cannot be null or empty. '
                . 'Solution: $developerBuilder->setUrl(...);'
            );
        }

        if (empty($this->name)) {
            throw new \InvalidArgumentException(
                'Developer name cannot be null or empty. '
                . 'Solution: $developerBuilder->setName(...);'
            );
        }
    }

    /**
     * Returns developer id.
     *
     * @return string developer id
     */
    public function getId(): string
    {
        return $this->id;
    }

    /**
     * Returns the URL of the developer’s page in Google Play.
     *
     * @return string developer page url
     */
    public function getUrl(): string
    {
        return $this->url;
    }

    /**
     * Returns the name of the developer.
     *
     * @return string Developer name
     */
    public function getName(): string
    {
        return $this->name;
    }

    /**
     * Returns a description of the developer.
     *
     * @return string|null description of the developer or `null`
     */
    public function getDescription(): ?string
    {
        return $this->description;
    }

    /**
     * Returns the developer's website.
     *
     * @return string|null developer website or `null`
     */
    public function getWebsite(): ?string
    {
        return $this->website;
    }

    /**
     * Returns the developer icon.
     *
     * @return GoogleImage|null developer icon or `null`
     */
    public function getIcon(): ?GoogleImage
    {
        return $this->icon;
    }

    /**
     * Returns the developer cover.
     *
     * @return GoogleImage|null developer cover or `null`
     */
    public function getCover(): ?GoogleImage
    {
        return $this->cover;
    }

    /**
     * Returns developer email.
     *
     * @return string|null developer email or `null`
     */
    public function getEmail(): ?string
    {
        return $this->email;
    }

    /**
     * Returns the address of the developer.
     *
     * @return string|null developer address or `null`
     */
    public function getAddress(): ?string
    {
        return $this->address;
    }

    /**
     * Creates a new developer builder.
     *
     * @return DeveloperBuilder developer builder
     *
     * @internal
     */
    public static function newBuilder(): DeveloperBuilder
    {
        return new DeveloperBuilder();
    }

    /**
     * Checks for equality of developer.
     *
     * @param Developer $otherDeveloper developer with which is compared
     *
     * @return bool `true` if the contents of the objects being changed are the same
     *              and `false` if the objects contain different data
     *
     * @internal
     */
    public function equals(self $otherDeveloper): bool
    {
        if ($this->id !== $otherDeveloper->id) {
            return false;
        }

        if ($this->name !== $otherDeveloper->name) {
            return false;
        }

        if ($this->description !== $otherDeveloper->description) {
            return false;
        }

        if ($this->icon !== null && $otherDeveloper->icon !== null) {
            if ($this->icon->getOriginalSizeUrl() !== $otherDeveloper->icon->getOriginalSizeUrl()) {
                return false;
            }
        } elseif ($this->icon !== $otherDeveloper->icon) {
            return false;
        }

        if (
            $this->cover !== null
            && $otherDeveloper->cover !== null
            && $this->cover->getOriginalSizeUrl() !== $otherDeveloper->cover->getOriginalSizeUrl()
        ) {
            return false;
        }

        return $this->cover === $otherDeveloper->cover;
    }

    /**
     * Returns class properties as an array.
     *
     * @return array class properties as an array
     */
    public function asArray(): array
    {
        return [
            'id' => $this->id,
            'url' => $this->url,
            'name' => $this->name,
            'description' => $this->description,
            'website' => $this->website,
            'icon' => $this->icon !== null ? $this->icon->getUrl() : null,
            'cover' => $this->cover !== null ? $this->cover->getUrl() : null,
            'email' => $this->email,
            'address' => $this->address,
        ];
    }
}

Filemanager

Name Type Size Permission Actions
Builder Folder 0755
App.php File 7.76 KB 0644
AppId.php File 3.71 KB 0644
AppInfo.php File 14.86 KB 0644
Category.php File 2.64 KB 0644
ClusterPage.php File 1.37 KB 0644
Developer.php File 7.02 KB 0644
GoogleImage.php File 24.22 KB 0644
HistogramRating.php File 3.23 KB 0644
ImageInfo.php File 3.26 KB 0644
JsonSerializableTrait.php File 1.14 KB 0644
Permission.php File 1.63 KB 0644
ReplyReview.php File 1.83 KB 0644
Review.php File 4.98 KB 0644
Video.php File 2.32 KB 0644