I don't understand why you add this interface. I prefer less interface. Please tell me usable situation.