All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.zkoss.bind.annotation.ImmutableFields Maven / Gradle / Ivy

There is a newer version: 10.0.0-jakarta
Show newest version
/* ImmutableFields.java

	Purpose:
		
	Description:
		
	History:
		11:13 AM 1/5/16, Created by jumperchen

Copyright (C) 2016 Potix Corporation. All Rights Reserved.
*/
package org.zkoss.bind.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Marker annotation to indicate all of the fields returned from the given class
 * are immutable (no setter). Unlike {@link Immutable}, this annotation can be made as a proxy
 * object for Form Binding, but not for all its fields.
 * 
* For example, *
 * public class VM {
 *	{@literal @}ImmutableFields
 * 	public Foo getFoo() {} // this Foo can make as a proxy, but not for its getDate() method.
 * }
 *
 * public class Foo {
 *	public Date getDate() {} // this date object cannot make as a proxy.
 * }
 * 
* @author jumperchen * @since 8.0.1 */ @Target(value = { ElementType.TYPE, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) @Inherited public @interface ImmutableFields { }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy