code: private static byte[] getByteNameWithCaching(String entityName) {
      byte[] name = cachedByteClassNames.get(entityName);
      if (name == null) {
        name = prepareCachedNameBytes(entityName);
        // if the cache max capacity is not exceeded, cache the name
        if (cachedByteClassNames.size() < CACHE_MAX_SIZE) {
          cachedByteClassNames.put(entityName, name);
        }
      }
      // this should never be null
      return name;
    }
docs: Retrieve byte[] for given name. This should be done only for
  class and method names. the return value represents length and
  name as a byte array. If the name is not present, cache it, if
  the map max capacity is not exceeded.