com.maxifier.mxcache.impl.caches.def.LongInlineCacheImpl Maven / Gradle / Ivy
/*
* Copyright (c) 2008-2014 Maxifier Ltd. All Rights Reserved.
*/
package com.maxifier.mxcache.impl.caches.def;
import com.maxifier.mxcache.caches.*;
import com.maxifier.mxcache.impl.MutableStatistics;
import com.maxifier.mxcache.impl.caches.abs.*;
/**
* THIS IS GENERATED CLASS! DON'T EDIT IT MANUALLY!
*
* GENERATED FROM PInlineCacheImpl.template
*
* @author Andrey Yakoushin ([email protected])
* @author Alexander Kochurov ([email protected])
*/
public class LongInlineCacheImpl extends AbstractLongCache {
private volatile boolean set;
private long value;
public LongInlineCacheImpl(Object owner, LongCalculatable calculable, MutableStatistics statistics) {
super(owner, calculable, statistics);
}
@Override
public boolean isCalculated() {
return set;
}
@Override
public long load() {
return value;
}
@Override
public void save(long v) {
set = true;
value = v;
}
@Override
public void clear() {
set = false;
}
@Override
public int size() {
return set ? 1 : 0;
}
}