refactored methods in AbstractCommand to implement ICommandOwner