You are here

class VarietyItems in Migrate Plus 8.5

Same name and namespace in other branches
  1. 8 migrate_example_advanced/migrate_example_advanced_setup/src/Plugin/rest/resource/VarietyItems.php \Drupal\migrate_example_advanced_setup\Plugin\rest\resource\VarietyItems
  2. 8.2 migrate_example_advanced/migrate_example_advanced_setup/src/Plugin/rest/resource/VarietyItems.php \Drupal\migrate_example_advanced_setup\Plugin\rest\resource\VarietyItems
  3. 8.3 migrate_example_advanced/migrate_example_advanced_setup/src/Plugin/rest/resource/VarietyItems.php \Drupal\migrate_example_advanced_setup\Plugin\rest\resource\VarietyItems
  4. 8.4 migrate_example_advanced/migrate_example_advanced_setup/src/Plugin/rest/resource/VarietyItems.php \Drupal\migrate_example_advanced_setup\Plugin\rest\resource\VarietyItems

Provides varieties as two endpoints, one for reds and one for whites.

Plugin annotation


@RestResource(
  id = "migrate_example_advanced_variety_items",
  label = @Translation("Advanced migration example - Variety data"),
  uri_paths = {
    "canonical" = "/migrate_example_advanced_variety_list/{variety}"
  }
)

Hierarchy

Expanded class hierarchy of VarietyItems

File

migrate_example_advanced/migrate_example_advanced_setup/src/Plugin/rest/resource/VarietyItems.php, line 19

Namespace

Drupal\migrate_example_advanced_setup\Plugin\rest\resource
View source
class VarietyItems extends ResourceBase {

  /**
   * Responds to GET requests.
   *
   * @param string $variety
   *   Machine name of the variety to retrieve.
   *
   * @return \Drupal\rest\ResourceResponse
   *   The response containing the requested variety data.
   */
  public function get($variety = NULL) {
    $varieties = [
      'retsina' => [
        'name' => 'Retsina',
        // The categoryid for 'white'.
        'parent' => 1,
        'details' => 'Greek',
      ],
      'trebbiano' => [
        'name' => 'Trebbiano',
        // The categoryid for 'white'.
        'parent' => 1,
        'details' => 'Italian',
      ],
      'valpolicella' => [
        'name' => 'Valpolicella',
        // The categoryid for 'red'.
        'parent' => 3,
        'details' => 'Italian Venoto region',
      ],
      'bardolino' => [
        'name' => 'Bardolino',
        // The categoryid for 'red'.
        'parent' => 3,
        'details' => 'Italian Venoto region',
      ],
    ];
    if (isset($varieties[$variety])) {
      $data = [
        'variety' => $varieties[$variety],
      ];
    }
    else {
      $data = [];
    }
    $response = new ResourceResponse($data, 200);
    return $response;
  }

  /**
   * {@inheritdoc}
   */
  public function permissions() {

    // Remove permissions so the resource is available to all.
    return [];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
ResourceBase::$logger protected property A logger instance.
ResourceBase::$serializerFormats protected property The available serialization formats.
ResourceBase::availableMethods public function Returns the available HTTP request methods on this plugin. Overrides ResourceInterface::availableMethods 1
ResourceBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create 3
ResourceBase::getBaseRoute protected function Gets the base route for a particular method. 2
ResourceBase::getBaseRouteRequirements protected function Gets the base route requirements for a particular method. 1
ResourceBase::requestMethods protected function Provides predefined HTTP request methods.
ResourceBase::routes public function Returns a collection of routes with URL path information for the resource. Overrides ResourceInterface::routes
ResourceBase::__construct public function Constructs a Drupal\rest\Plugin\ResourceBase object. Overrides PluginBase::__construct 3
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.
VarietyItems::get public function Responds to GET requests.
VarietyItems::permissions public function Implements ResourceInterface::permissions(). Overrides ResourceBase::permissions