code: protected void setProfileFactory(final Function<Object[], P> profileFactory) {
          CommonHelper.assertNotNull("profileFactory", profileFactory);
          this.newProfile = profileFactory;
      }
docs: Define the way to build the profile.
  
  @param profileFactory the way to build the profile