private void addSecureMethod(String name, List<ConfigAttribute> attr) {
    """
	Add configuration attributes for a secure method. Method names can end or start
	with <code>*</code> for matching multiple methods.
	
	@param name type and method name, separated by a dot
	@param attr the security attributes associated with the method
    """
		int lastDotIndex = name.lastIndexOf(".");

		if (lastDotIndex == -1) {
			throw new IllegalArgumentException("'" + name
					+ "' is not a valid method name: format is FQN.methodName");
		}

		String methodName = name.substring(lastDotIndex + 1);
		Assert.hasText(methodName, () -> "Method not found for '" + name + "'");

		String typeName = name.substring(0, lastDotIndex);
		Class<?> type = ClassUtils.resolveClassName(typeName, this.beanClassLoader);

		addSecureMethod(type, methodName, attr);
	}
private void addSecureMethod(String name, List<ConfigAttribute> attr) {
		int lastDotIndex = name.lastIndexOf(".");

		if (lastDotIndex == -1) {
			throw new IllegalArgumentException("'" + name
					+ "' is not a valid method name: format is FQN.methodName");
		}

		String methodName = name.substring(lastDotIndex + 1);
		Assert.hasText(methodName, () -> "Method not found for '" + name + "'");

		String typeName = name.substring(0, lastDotIndex);
		Class<?> type = ClassUtils.resolveClassName(typeName, this.beanClassLoader);

		addSecureMethod(type, methodName, attr);
	}
private void addSecureMethod ( String name , List < ConfigAttribute > attr ) { int lastDotIndex = name . lastIndexOf ( "." ) ; if ( lastDotIndex == - 1 ) { throw new IllegalArgumentException ( "'" + name + "' is not a valid method name: format is FQN.methodName" ) ; } String methodName = name . substring ( lastDotIndex + 1 ) ; Assert . hasText ( methodName , ( ) -> "Method not found for '" + name + "'" ) ; String typeName = name . substring ( 0 , lastDotIndex ) ; Class < ? > type = ClassUtils . resolveClassName ( typeName , this . beanClassLoader ) ; addSecureMethod ( type , methodName , attr ) ; }
Add configuration attributes for a secure method. Method names can end or start
with <code>*</code> for matching multiple methods.

@param name type and method name, separated by a dot
@param attr the security attributes associated with the method
Add configuration attributes for a secure method . Method names can end or start with <code > * < / code > for matching multiple methods .