[
  {
    "extension": "revapi.java",
    "configuration": {
      "filter": {
        "classes": {
          "exclude": [
            "org\\.apache\\.logging\\.log4j\\.util\\.Activator",
            "org\\.apache\\.logging\\.log4j\\.util\\.LoaderUtil",
            "org\\.apache\\.logging\\.log4j\\.util\\.PrivateSecurityManagerStackTraceUtil",
            "org\\.apache\\.logging\\.log4j\\.util\\.PropertiesUtil",
            "org\\.apache\\.logging\\.log4j\\.util\\.ProviderUtil",
            "org\\.apache\\.logging\\.log4j\\.util\\.StackLocatorUtil"
          ]
        }
      }
    }
  },
  {
    "extension": "revapi.ignore",
    "configuration": [
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.Logger::entry()",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.Logger::entry(java.lang.Object[])",
        "justification": "Removed deprectated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.Logger::exit()",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method <R> R org.apache.logging.log4j.Logger::exit(R)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method org.apache.logging.log4j.Marker org.apache.logging.log4j.MarkerManager::getMarker(java.lang.String, java.lang.String)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method org.apache.logging.log4j.Marker org.apache.logging.log4j.MarkerManager::getMarker(java.lang.String, org.apache.logging.log4j.Marker)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.message.ParameterizedMessage::<init>(java.lang.String, java.lang.String[], java.lang.Throwable)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method org.apache.logging.log4j.message.EntryMessage org.apache.logging.log4j.spi.AbstractLogger::enter(java.lang.String, java.lang.String, org.apache.logging.log4j.util.MessageSupplier[])",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method org.apache.logging.log4j.message.EntryMessage org.apache.logging.log4j.spi.AbstractLogger::enter(java.lang.String, org.apache.logging.log4j.util.MessageSupplier)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.spi.AbstractLogger::entry()",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.spi.AbstractLogger::entry(java.lang.Object[])",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.spi.AbstractLogger::exit()",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method <R> R org.apache.logging.log4j.spi.AbstractLogger::exit(R)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.class.removed",
        "old": "class org.apache.logging.log4j.spi.LoggerContextKey",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.class.removed",
        "old": "class org.apache.logging.log4j.util.ProcessIdUtil",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method void org.apache.logging.log4j.util.ProviderUtil::loadProviders(java.util.Enumeration<java.net.URL>, java.lang.ClassLoader)",
        "justification": "Removed deprecated method"
      },
      {
        "code": "java.method.removed",
        "old": "method org.apache.logging.log4j.util.StackLocator.PrivateSecurityManager org.apache.logging.log4j.util.StackLocator::getSecurityManager()",
        "justification": "Internal inner class moved to its own class so it can be shared with Java 9"
      },
      {
        "code": "java.method.nowStatic",
        "old": "method java.lang.String org.apache.logging.log4j.util.Strings::toRootUpperCase(java.lang.String)",
        "new": "method java.lang.String org.apache.logging.log4j.util.Strings::toRootUpperCase(java.lang.String)",
        "justification": "Method was inaccessible"
      }
    ]
  }
]
