public static void checkMethodIsPublicStatic()

in TransformCore/src/main/java/com/facebook/ads/injkit/ReflectUtils.java [40:72]


  public static void checkMethodIsPublicStatic(Class<?> cls, String name, Class<?>... params)
      throws InvalidAnnotationProcessorConfigurationException {
    StringBuilder paramsStr = new StringBuilder();
    for (Class<?> param : params) {
      if (paramsStr.length() > 0) {
        paramsStr.append(", ");
      }

      paramsStr.append(param.getName());
    }

    try {
      Method handleThrowable = cls.getDeclaredMethod(name, params);
      if (!Modifier.isStatic(handleThrowable.getModifiers())
          || !Modifier.isPublic(handleThrowable.getModifiers())) {
        throw new InvalidAnnotationProcessorConfigurationException(
            String.format(
                Locale.US,
                "Method void %s(%s) of class '%s' is not public static",
                name,
                paramsStr.toString(),
                cls.getName()));
      }
    } catch (NoSuchMethodException e) {
      throw new InvalidAnnotationProcessorConfigurationException(
          String.format(
              Locale.US,
              "Class '%s' does not have method 'void %s(%s)'",
              cls.getName(),
              name,
              paramsStr.toString()));
    }
  }