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

package com.hypixel.hytale.builtin.path.commands;

import java.util.stream.Stream;
import java.util.function.Consumer;
import java.util.Objects;
import com.hypixel.hytale.server.core.Message;
import java.util.function.Function;
import java.util.Comparator;
import com.hypixel.hytale.server.core.universe.world.path.WorldPath;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.component.Store;
import com.hypixel.hytale.server.core.universe.world.World;
import javax.annotation.Nonnull;
import com.hypixel.hytale.server.core.command.system.CommandContext;
import com.hypixel.hytale.server.core.command.system.basecommands.AbstractWorldCommand;

public class WorldPathListCommand extends AbstractWorldCommand
{
    public WorldPathListCommand() {
        super("list", "server.commands.worldpath.list.desc");
    }
    
    @Override
    protected void execute(@Nonnull final CommandContext context, @Nonnull final World world, @Nonnull final Store<EntityStore> store) {
        final Stream<Object> map = world.getWorldPathConfig().getPaths().values().stream().sorted(Comparator.comparing((Function<? super WorldPath, ? extends Comparable>)WorldPath::getName)).map((Function<? super WorldPath, ?>)WorldPath::getName).map((Function<? super Object, ?>)Message::raw);
        Objects.requireNonNull(context);
        map.forEach((Consumer<? super Object>)context::sendMessage);
    }
}
