code: @Override
      public String getMethodNameForReference(final ForeignKey foreignKey) {
          this.wasUsedBefore = true;
          for (final NameProvider provider : providers) {
              final String name = provider.getMethodNameForReference(foreignKey);
              if (Objects.nonNull(name)) {
                  return name;
              }
          }
          return this.fallbackProvider.getMethodNameForReference(foreignKey);
      }
docs: {@inheritDoc}