You are here

public function ProductVariationLicensed::buildFieldDefinitions in Commerce License 8.2

Builds the field definitions.

THe provided field definitions will be created as configurable fields when the entity trait is installed for an entity type/bundle.

Return value

\Drupal\entity\BundleFieldDefinition[] An array of field definitions, keyed by field name.

Overrides EntityTraitBase::buildFieldDefinitions

File

src/Plugin/Commerce/EntityTrait/ProductVariationLicensed.php, line 26

Class

ProductVariationLicensed
Provides an entity trait for Commerce Product Variation entities.

Namespace

Drupal\commerce_license\Plugin\Commerce\EntityTrait

Code

public function buildFieldDefinitions() {

  // Builds the field definitions.
  $fields = [];
  $fields['license_type'] = BundleFieldDefinition::create('commerce_plugin_item:commerce_license_type')
    ->setLabel(t('License Type'))
    ->setCardinality(1)
    ->setRequired(TRUE)
    ->setDisplayOptions('form', [
    'type' => 'commerce_plugin_select',
    'weight' => 20,
  ]);
  $fields['license_expiration'] = BundleFieldDefinition::create('commerce_plugin_item:recurring_period')
    ->setLabel(t('License Expiration'))
    ->setCardinality(1)
    ->setRequired(TRUE)
    ->setDisplayOptions('form', [
    'type' => 'commerce_plugin_select',
    'weight' => 21,
  ]);
  return $fields;
}