DataComponent and MessageComponent class added