@VisibleForTesting
  static ModificationTimeProvider createModificationTimeProvider(String modificationTime)
      throws InvalidFilesModificationTimeException {
    try {
      switch (modificationTime) {
        case "EPOCH_PLUS_SECOND":
          Instant epochPlusSecond = Instant.ofEpochSecond(1);
          return (ignored1, ignored2) -> epochPlusSecond;

        default:
          Instant timestamp =
              DateTimeFormatter.ISO_DATE_TIME.parse(modificationTime, Instant::from);
          return (ignored1, ignored2) -> timestamp;
      }

    } catch (DateTimeParseException ex) {
      throw new InvalidFilesModificationTimeException(modificationTime, modificationTime, ex);
    }
  }
Creates a modification time provider based on the config value. The value can be:

<ol>
  <li>{@code EPOCH_PLUS_SECOND} to create a provider which trims file modification time to
      EPOCH + 1 second
  <li>date in ISO 8601 format
</ol>

@param modificationTime modification time config value
@return corresponding modification time provider
@throws InvalidFilesModificationTimeException if the config value is not in ISO 8601 format
jib-plugins-common/src/main/java/com/google/cloud/tools/jib/plugins/common/PluginConfigurationProcessor.java