Changes to diffraction classes to use DiffractionMetadata over adapter