HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: /var/www/html/triad-infosec/wp-content/plugins/wordpress-seo/src/values/robots/user-agent.php
<?php

namespace Yoast\WP\SEO\Values\Robots;

/**
 * Class Directive
 */
class User_Agent {

	/**
	 * The user agent identifier.
	 *
	 * @var string
	 */
	private $user_agent;

	/**
	 * All directives that are allowed for this user agent.
	 *
	 * @var Directive
	 */
	private $allow_directive;

	/**
	 * All directives that are disallowed for this user agent.
	 *
	 * @var Directive
	 */
	private $disallow_directive;

	/**
	 * Constructor of the user agent value object.
	 *
	 * @param string $user_agent The user agent identifier.
	 */
	public function __construct( $user_agent ) {
		$this->user_agent         = $user_agent;
		$this->allow_directive    = new Directive();
		$this->disallow_directive = new Directive();
	}

	/**
	 * Gets the user agent identifier.
	 *
	 * @return string
	 */
	public function get_user_agent() {
		return $this->user_agent;
	}

	/**
	 * Adds a path to the directive object.
	 *
	 * @param string $path The path to add to the disallow directive.
	 *
	 * @return void
	 */
	public function add_disallow_directive( $path ) {
		$this->disallow_directive->add_path( $path );
	}

	/**
	 * Adds a path to the directive object.
	 *
	 * @param string $path The path to add to the allow directive.
	 *
	 * @return void
	 */
	public function add_allow_directive( $path ) {
		$this->allow_directive->add_path( $path );
	}

	/**
	 * Gets all disallow paths for this user agent.
	 *
	 * @return array
	 */
	public function get_disallow_paths() {
		return $this->disallow_directive->get_paths();
	}

	/**
	 * Gets all sallow paths for this user agent.
	 *
	 * @return array
	 */
	public function get_allow_paths() {
		return $this->allow_directive->get_paths();
	}
}