original_string: public function getMetadata($subject, string $key, $metadataSubject = null, string $name = null): ?string
      {
          return $this
              ->workflowRegistry
              ->get($subject, $name)
              ->getMetadataStore()
              ->getMetadata($key, $metadataSubject)
          ;
      }
code: public function getMetadata($subject, string $key, $metadataSubject = null, string $name = null): ?string
      {
          return $this
              ->workflowRegistry
              ->get($subject, $name)
              ->getMetadataStore()
              ->getMetadata($key, $metadataSubject)
          ;
      }
code_tokens: public function getMetadata ( $ subject , string $ key , $ metadataSubject = null , string $ name = null ) : ? string { return $ this -> workflowRegistry -> get ( $ subject , $ name ) -> getMetadataStore ( ) -> getMetadata ( $ key , $ metadataSubject ) ; }
docstring: Returns the metadata for a specific subject.
  
  @param object                 $subject         A subject
  @param string|Transition|null $metadataSubject Use null to get workflow metadata
  Use a string (the place name) to get place metadata
  Use a Transition instance to get transition metadata
docstring_tokens: Returns the metadata for a specific subject .