<processor>
	<!-- Remove the scope validator from the identity.xml if it exists. Otherwise running the build several times
	   causes several scope validator elements to be added-->
	<remove>
		<name>//s:Server/s:OAuth/s:OAuthScopeValidator</name>
	</remove>
	<!-- Add the scope validator config element -->
	<add>
		<after>//s:Server/s:OAuth/s:OAuthCallbackHandlers</after>
		<value><![CDATA[<OAuthScopeValidator class="org.wso2.carbon.device.mgt.oauth.extensions.handlers.ScopeValidationHandler"/>]]></value>
	</add>
	<!-- Add the ntlm grant type validator config element -->
	<add>
		<after>//s:Server/s:OAuth/s:SupportedGrantTypes/s:SupportedGrantType[s:GrantTypeName='iwa:ntlm']/s:GrantTypeName</after>
		<value>
			<![CDATA[<GrantTypeValidatorImplClass>org.wso2.carbon.identity.oauth.common.NTLMAuthenticationValidator</GrantTypeValidatorImplClass>]]></value>
	</add>
	<add>
		<after>//s:Server/s:OAuth/s:SupportedGrantTypes/s:SupportedGrantType[s:GrantTypeName='iwa:ntlm']/s:GrantTypeName</after>
		<value>
			<![CDATA[<GrantTypeValidatorImplClass>org.wso2.carbon.identity.oauth.common.NTLMAuthenticationValidator</GrantTypeValidatorImplClass>]]></value>
	</add>
	<add>
		<after>//s:Server/s:OAuth/s:SupportedGrantTypes/s:SupportedGrantType[s:GrantTypeName='iwa:ntlm']</after>
		<value>
			<![CDATA[<SupportedGrantType>
		<GrantTypeName>urn:ietf:params:oauth:grant-type:jwt-bearer</GrantTypeName>
		<GrantTypeHandlerImplClass>org.wso2.carbon.device.mgt.oauth.extensions.handlers.grant.ExtendedJWTGrantHandler</GrantTypeHandlerImplClass>
		<GrantTypeValidatorImplClass>org.wso2.carbon.identity.oauth2.grant.jwt.JWTGrantValidator</GrantTypeValidatorImplClass>
	</SupportedGrantType>]]></value>
	</add>
</processor>