Component(s)
receiver/pulsar
Describe the issue you're reporting
The pulsarreceiver has a set of options you can pass to the NewFactory() function. This is a deviation of the API we want to have for components, which has no options for the factory.
Instead of using this approach, the component should use a component.ID reference to set marshaler and unmarshaler and refer to an encoding extension. See https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/awss3receiver/config.go#L34C2-L34C11 for inspiration.