sprite manager: use constructor injection
Also make cache private
This commit is contained in:
@@ -26,12 +26,12 @@ package net.runelite.client.game;
|
|||||||
|
|
||||||
import com.google.common.cache.Cache;
|
import com.google.common.cache.Cache;
|
||||||
import com.google.common.cache.CacheBuilder;
|
import com.google.common.cache.CacheBuilder;
|
||||||
import com.google.inject.Inject;
|
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
import javax.inject.Inject;
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
import javax.swing.ImageIcon;
|
import javax.swing.ImageIcon;
|
||||||
import javax.swing.JButton;
|
import javax.swing.JButton;
|
||||||
@@ -48,20 +48,23 @@ import net.runelite.client.util.ImageUtil;
|
|||||||
@Singleton
|
@Singleton
|
||||||
public class SpriteManager
|
public class SpriteManager
|
||||||
{
|
{
|
||||||
@Inject
|
private final Client client;
|
||||||
private Client client;
|
private final ClientThread clientThread;
|
||||||
|
private final InfoBoxManager infoBoxManager;
|
||||||
|
|
||||||
@Inject
|
private final Cache<Long, BufferedImage> cache = CacheBuilder.newBuilder()
|
||||||
private ClientThread clientThread;
|
|
||||||
|
|
||||||
@Inject
|
|
||||||
private InfoBoxManager infoBoxManager;
|
|
||||||
|
|
||||||
public Cache<Long, BufferedImage> cache = CacheBuilder.newBuilder()
|
|
||||||
.maximumSize(128L)
|
.maximumSize(128L)
|
||||||
.expireAfterAccess(1, TimeUnit.HOURS)
|
.expireAfterAccess(1, TimeUnit.HOURS)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private SpriteManager(Client client, ClientThread clientThread, InfoBoxManager infoBoxManager)
|
||||||
|
{
|
||||||
|
this.client = client;
|
||||||
|
this.clientThread = clientThread;
|
||||||
|
this.infoBoxManager = infoBoxManager;
|
||||||
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BufferedImage getSprite(int archive, int file)
|
public BufferedImage getSprite(int archive, int file)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user