class ConnectorHandler extends BaseHandler implements Getter<Connector>, Updater<Connector>, Deleter<Connector> {

    @POST
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes(MediaType.APPLICATION_JSON)
    @Path("/{id}/verifier")
    public List<Verifier.Result> verifyConnectionParameters(@NotNull @PathParam("id") final String connectorId, final Map<String, String> props) {
        final Connector connector = get(connectorId);
        Map<String, String> verifierProperties = new HashMap<>();
        verifierProperties.putAll(connector.getConfiguredProperties());
        // User properties will override configured properties with same name
        verifierProperties.putAll(props);
        return verifier.verify(connectorId, encryptionComponent.decrypt(verifierProperties));
    }

    @SuppressWarnings("PMD.ExcessiveParameterList") @Autowired public  ConnectorHandler(final DataManager dataMgr, final Verifier verifier, final Credentials credentials, final Inspectors inspectors,
                            final ClientSideState state, final EncryptionComponent encryptionComponent, final ApplicationContext applicationContext,
                            final IconDao iconDao, final FileDataManager extensionDataManager, final MetadataConfigurationProperties config);
    @SuppressWarnings("PMD.ExcessiveParameterList")  ConnectorHandler(final DataManager dataMgr, final Verifier verifier, final Credentials credentials, final Inspectors inspectors,
                            final ClientSideState state, final EncryptionComponent encryptionComponent, final ApplicationContext applicationContext,
                            final IconDao iconDao, final FileDataManager extensionDataManager, final ConnectorPropertiesHandler propertiesHandler);

}