import java.util.List;
import java.util.Map;
public class SSDStore {
private Capacity capacity;
private SiteA siteA; // この参照は不要になる可能性がある
private SiteWrapper siteWrapper;
private ItemsByCapacity itemsByCapacity;
private Price price;
private ItemsByPrice itemsByPrice;
public SSDStore() {
this.capacity = new Capacity();
this.siteA = new SiteA();
this.siteWrapper = new SiteWrapper();
this.siteWrapper.addSite(this.siteA); // SiteA オブジェクトを追加
this.itemsByCapacity = new ItemsByCapacity(capacity, siteWrapper);
this.price = new Price();
this.itemsByPrice = new ItemsByPrice(price, siteWrapper);
}
public int getCapacity() {
return capacity.getValue();
}
public void setCapacity(int cur_capacity) {
this.capacity.setCapacity(cur_capacity);
}
// SiteA の直接的な参照は不要になったので、このメソッドは削除するか、変更するかも検討する
public List<Map<String, Object>> getSiteA() {
return siteA.getValue();
}
public void addProductToSiteA(int capacity, int price) {
List<SiteA> siteAList = this.siteWrapper.getSites();
if (!siteAList.isEmpty()) {
siteAList.get(0).addProductToSiteA(capacity, price); // 最初の SiteA オブジェクトに製品を追加
}
}
public List<Map<String, Object>> getItemsByCapacity() {
return itemsByCapacity.getValue();
}
public int getPrice() {
return price.getValue();
}
public void setPrice(int cur_price) {
this.price.setPrice(cur_price);
}
public List<Map<String, Object>> getItemsByPrice() {
return itemsByPrice.getValue();
}
}