http-api: modify ItemPrice to contain id/name instead of Item

This commit is contained in:
Adam
2018-10-07 12:08:13 -04:00
parent 7223d3436d
commit 7adca5bda2
4 changed files with 10 additions and 16 deletions

View File

@@ -30,7 +30,8 @@ import lombok.Data;
@Data
public class ItemPrice
{
private Item item;
private int id;
private String name;
private int price;
private Instant time;
}

View File

@@ -28,7 +28,6 @@ import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import java.time.Duration;
import java.time.Instant;
import java.util.Arrays;
import java.util.List;
@@ -50,7 +49,6 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/item")
public class ItemController
{
private static final Duration CACHE_DUATION = Duration.ofMinutes(30);
private static final String RUNELITE_CACHE = "RuneLite-Cache";
private static final int MAX_BATCH_LOOKUP = 1024;
@@ -70,12 +68,9 @@ public class ItemController
memorizedPrices = Suppliers.memoizeWithExpiration(() -> itemService.fetchPrices().stream()
.map(priceEntry ->
{
Item item = new Item();
item.setId(priceEntry.getItem()); // fake item
item.setName(priceEntry.getName());
ItemPrice itemPrice = new ItemPrice();
itemPrice.setItem(item);
itemPrice.setId(priceEntry.getItem());
itemPrice.setName(priceEntry.getName());
itemPrice.setPrice(priceEntry.getPrice());
itemPrice.setTime(priceEntry.getTime());
return itemPrice;
@@ -174,7 +169,8 @@ public class ItemController
}
ItemPrice itemPrice = new ItemPrice();
itemPrice.setItem(item.toItem());
itemPrice.setId(item.getId());
itemPrice.setName(item.getName());
itemPrice.setPrice(priceEntry.getPrice());
itemPrice.setTime(priceEntry.getTime());
@@ -210,12 +206,9 @@ public class ItemController
return prices.stream()
.map(priceEntry ->
{
Item item = new Item();
item.setId(priceEntry.getItem()); // fake item
item.setName(priceEntry.getName());
ItemPrice itemPrice = new ItemPrice();
itemPrice.setItem(item);
itemPrice.setId(priceEntry.getItem());
itemPrice.setName(priceEntry.getName());
itemPrice.setPrice(priceEntry.getPrice());
itemPrice.setTime(priceEntry.getTime());
return itemPrice;

View File

@@ -30,7 +30,7 @@ import net.runelite.http.api.item.Item;
import net.runelite.http.api.item.ItemType;
@Data
public class ItemEntry
class ItemEntry
{
private int id;
private String name;

View File

@@ -152,7 +152,7 @@ public class ItemManager
ImmutableMap.Builder<Integer, ItemPrice> map = ImmutableMap.builderWithExpectedSize(prices.length);
for (ItemPrice price : prices)
{
map.put(price.getItem().getId(), price);
map.put(price.getId(), price);
}
itemPrices = map.build();
}