pushed the abstract adapter to maven module