code: @Override
      public String build() {
          ResourceType resourceType = null;
          if (metaData != null) {
              resourceType = metaData.getResourceType();
          }
          String id = resourceIdentifier.getIdentifier(resourceType);
          clear();
          return id;
      }
docs: When generation of file name is not overridden by {@link #withResourceIdentifier(ResourceIdentifier)}, by default, every
  file name will be of format: <br>
  <br>
  testMethodName_stage.screenshotType <br>
  <br>
  where stage is {@link When}.
  
  When you do not set meta data or name of test method is null or empty string, random {@link UUID} is generated instead of
  that. If {@link When} is not set, it is not included into file name generation. When you do not specify resource type,
  file name will be generated without file format suffix, excluding a dot as well.
  
  <br>
  After you get identifier, builder is cleared so every subsequent call of this method will return just UUID when there are
  not used 'when' methods.