// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.blackboard.view;

import javax.annotation.Nonnull;
import java.util.function.Consumer;
import com.hypixel.hytale.math.vector.Vector3d;
import com.hypixel.hytale.component.ComponentAccessor;
import com.hypixel.hytale.server.npc.blackboard.Blackboard;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.component.Ref;

public class SingletonBlackboardViewManager<View extends IBlackboardView<View>> implements IBlackboardViewManager<View>
{
    private final View view;
    
    public SingletonBlackboardViewManager(final View view) {
        this.view = view;
    }
    
    @Override
    public View get(final Ref<EntityStore> ref, final Blackboard blackboard, final ComponentAccessor<EntityStore> componentAccessor) {
        return this.view;
    }
    
    @Override
    public View get(final Vector3d position, final Blackboard blackboard) {
        return this.view;
    }
    
    @Override
    public View get(final int chunkX, final int chunkZ, final Blackboard blackboard) {
        return this.view;
    }
    
    @Override
    public View get(final long index, final Blackboard blackboard) {
        return this.view;
    }
    
    @Override
    public View getIfExists(final long index) {
        return this.view;
    }
    
    @Override
    public void cleanup() {
        this.view.cleanup();
    }
    
    @Override
    public void onWorldRemoved() {
        this.view.onWorldRemoved();
    }
    
    @Override
    public void forEachView(@Nonnull final Consumer<View> consumer) {
        consumer.accept(this.view);
    }
    
    @Override
    public void clear() {
    }
}
