code: static void checkProperties(Map<String, Object> properties, String[] disallowedProperties) {
          if (properties == null || properties.isEmpty()) {
              return;
          }
  
          HashSet<String> disallowed = new HashSet<>(properties.keySet());
          disallowed.retainAll(Arrays.asList(disallowedProperties));
  
          if (!disallowed.isEmpty()) {
              throw new IllegalArgumentException("The following properties are reserved for this type of entity: "
                      + Arrays.asList(disallowedProperties));
          }
      }
docs: If the properties map contains a key from the disallowed properties, throw an exception.
  
  @param properties           the properties to check
  @param disallowedProperties the list of property names that cannot appear in the provided map
  @throws IllegalArgumentException if the map contains one or more disallowed keys