class ReferenceBuilder extends AbstractReferenceBuilder<ReferenceConfig, ReferenceBuilder<T>> {

    public ReferenceConfig<T> build() {
        ReferenceConfig<T> reference = new ReferenceConfig<>();
        super.build(reference);

        reference.setInterface(interfaceName);
        if (interfaceClass != null) {
            reference.setInterface(interfaceClass);
        }
        reference.setClient(client);
        reference.setUrl(url);
        reference.setMethods(methods);
        reference.setConsumer(consumer);
        reference.setProtocol(protocol);
        // @since 2.7.8
        reference.setServices(services);

        return reference;
    }

}