aboutsummaryrefslogtreecommitdiff
path: root/test/transform/resource/after-delombok/GetterLazy.java
blob: 1e30f94b44bb89c2bcb01ef00a0cd4151eb83677 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class GetterLazy {
	static class ValueType {
	}
	private final java.util.concurrent.atomic.AtomicReference<java.lang.Object> fieldName = new java.util.concurrent.atomic.AtomicReference<java.lang.Object>();
	@java.lang.SuppressWarnings({"all", "unchecked"})
	public ValueType getFieldName() {
		java.lang.Object value = this.fieldName.get();
		if (value == null) {
			synchronized (this.fieldName) {
				value = this.fieldName.get();
				if (value == null) {
					final ValueType actualValue = new ValueType();
					value = actualValue == null ? this.fieldName : actualValue;
					this.fieldName.set(value);
				}
			}
		}
		return (ValueType) (value == this.fieldName ? null : value);
	}
}