25 changed files with 260 additions and 23 deletions
@ -1,4 +1,5 @@ |
|||||||
package ru.simsonic.rscPermissions.Backends; |
package ru.simsonic.rscPermissions.Engine.Backends; |
||||||
|
|
||||||
import java.sql.ResultSet; |
import java.sql.ResultSet; |
||||||
import java.sql.SQLException; |
import java.sql.SQLException; |
||||||
import java.util.ArrayList; |
import java.util.ArrayList; |
@ -1,4 +1,5 @@ |
|||||||
package ru.simsonic.rscPermissions.Backends; |
package ru.simsonic.rscPermissions.Engine.Backends; |
||||||
|
|
||||||
import com.google.gson.Gson; |
import com.google.gson.Gson; |
||||||
import com.google.gson.stream.JsonReader; |
import com.google.gson.stream.JsonReader; |
||||||
import com.google.gson.stream.JsonWriter; |
import com.google.gson.stream.JsonWriter; |
@ -1,4 +1,5 @@ |
|||||||
package ru.simsonic.rscPermissions.Backends; |
package ru.simsonic.rscPermissions.Engine.Backends; |
||||||
|
|
||||||
import java.util.ArrayList; |
import java.util.ArrayList; |
||||||
import java.util.Date; |
import java.util.Date; |
||||||
import ru.simsonic.rscPermissions.API.Destination; |
import ru.simsonic.rscPermissions.API.Destination; |
@ -0,0 +1,28 @@ |
|||||||
|
package ru.simsonic.rscPermissions.Sponge.Commands; |
||||||
|
|
||||||
|
import org.spongepowered.api.text.Texts; |
||||||
|
import org.spongepowered.api.util.command.CommandException; |
||||||
|
import org.spongepowered.api.util.command.CommandResult; |
||||||
|
import org.spongepowered.api.util.command.CommandSource; |
||||||
|
import org.spongepowered.api.util.command.args.CommandContext; |
||||||
|
import org.spongepowered.api.util.command.spec.CommandExecutor; |
||||||
|
import org.spongepowered.api.util.command.spec.CommandSpec; |
||||||
|
|
||||||
|
public class SpongeCommands implements CommandExecutor |
||||||
|
{ |
||||||
|
private final CommandSpec commandHub = CommandSpec.builder() |
||||||
|
.setDescription(Texts.of("Hello World Command")) |
||||||
|
.setPermission("myplugin.command.helloworld") |
||||||
|
.setExecutor(this) |
||||||
|
.build(); |
||||||
|
public SpongeCommands() |
||||||
|
{ |
||||||
|
// game.getCommandDispatcher().register(plugin, commandHub, "helloworld", "hello", "test");
|
||||||
|
} |
||||||
|
@Override |
||||||
|
public CommandResult execute(CommandSource src, CommandContext context) throws CommandException |
||||||
|
{ |
||||||
|
src.sendMessage(Texts.of("Hello rscp's World!")); |
||||||
|
return CommandResult.success(); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,6 @@ |
|||||||
|
package ru.simsonic.rscPermissions.Sponge; |
||||||
|
|
||||||
|
public class SpongeEventListener |
||||||
|
{ |
||||||
|
|
||||||
|
} |
@ -0,0 +1,50 @@ |
|||||||
|
package ru.simsonic.rscPermissions.Sponge; |
||||||
|
|
||||||
|
import java.util.Map; |
||||||
|
import org.slf4j.Logger; |
||||||
|
import org.spongepowered.api.service.permission.PermissionService; |
||||||
|
import org.spongepowered.api.service.permission.SubjectCollection; |
||||||
|
import org.spongepowered.api.service.permission.SubjectData; |
||||||
|
import org.spongepowered.api.service.permission.context.ContextCalculator; |
||||||
|
import ru.simsonic.rscPermissions.SpongePluginMain; |
||||||
|
|
||||||
|
public class SpongePermissionManager implements PermissionService |
||||||
|
{ |
||||||
|
private final SpongePluginMain rscp; |
||||||
|
private final Logger logger; |
||||||
|
public SpongePermissionManager(SpongePluginMain plugin) |
||||||
|
{ |
||||||
|
this.rscp = plugin; |
||||||
|
this.logger = rscp.getLogger(); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public SubjectCollection getUserSubjects() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public SubjectCollection getGroupSubjects() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public SubjectData getDefaultData() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public SubjectCollection getSubjects(String identifier) |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public Map<String, SubjectCollection> getKnownSubjects() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public void registerContextCalculator(ContextCalculator calculator) |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,96 @@ |
|||||||
|
package ru.simsonic.rscPermissions.Sponge; |
||||||
|
|
||||||
|
import java.util.Map; |
||||||
|
import ru.simsonic.rscPermissions.API.Settings; |
||||||
|
import ru.simsonic.rscPermissions.API.TranslationProvider; |
||||||
|
import ru.simsonic.rscPermissions.SpongePluginMain; |
||||||
|
import ru.simsonic.rscUtilityLibrary.ConnectionMySQL.ConnectionParams; |
||||||
|
|
||||||
|
public class SpongePluginConfiguration implements Settings |
||||||
|
{ |
||||||
|
private final SpongePluginMain rscp; |
||||||
|
public SpongePluginConfiguration(SpongePluginMain plugin) |
||||||
|
{ |
||||||
|
this.rscp = plugin; |
||||||
|
} |
||||||
|
@Override |
||||||
|
public void onLoad() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public void readSettings() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public String getDefaultGroup() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isDefaultForever() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isAsteriskOP() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isInMaintenance() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public String getMaintenanceMode() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public void setMaintenanceMode(String mode) |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isUseResidence() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isUseWorldGuard() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public long getRegionFinderGranularity() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public int getAutoReloadDelayTicks() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public boolean isUseMetrics() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public Map<String, Integer> getSlotLimits() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public TranslationProvider getTranslationProvider() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
@Override |
||||||
|
public ConnectionParams getConnectionParams() |
||||||
|
{ |
||||||
|
throw new UnsupportedOperationException("Not supported yet."); |
||||||
|
} |
||||||
|
} |
@ -1,27 +1,69 @@ |
|||||||
package ru.simsonic.rscPermissions; |
package ru.simsonic.rscPermissions; |
||||||
|
|
||||||
|
import com.google.inject.Inject; |
||||||
|
import java.io.File; |
||||||
|
import org.slf4j.Logger; |
||||||
|
import org.spongepowered.api.Game; |
||||||
|
import org.spongepowered.api.event.Subscribe; |
||||||
import org.spongepowered.api.event.state.ServerAboutToStartEvent; |
import org.spongepowered.api.event.state.ServerAboutToStartEvent; |
||||||
import org.spongepowered.api.event.state.ServerStartedEvent; |
import org.spongepowered.api.event.state.ServerStartedEvent; |
||||||
import org.spongepowered.api.event.state.ServerStartingEvent; |
import org.spongepowered.api.event.state.ServerStartingEvent; |
||||||
import org.spongepowered.api.event.state.ServerStoppedEvent; |
import org.spongepowered.api.event.state.ServerStoppedEvent; |
||||||
import org.spongepowered.api.event.state.ServerStoppingEvent; |
import org.spongepowered.api.event.state.ServerStoppingEvent; |
||||||
import org.spongepowered.api.plugin.Plugin; |
import org.spongepowered.api.plugin.Plugin; |
||||||
|
import ru.simsonic.rscPermissions.API.Settings; |
||||||
|
import ru.simsonic.rscPermissions.Engine.Backends.BackendDatabase; |
||||||
|
import ru.simsonic.rscPermissions.Engine.Backends.BackendJson; |
||||||
|
import ru.simsonic.rscPermissions.Engine.InternalCache; |
||||||
|
import ru.simsonic.rscPermissions.Sponge.SpongePermissionManager; |
||||||
|
import ru.simsonic.rscPermissions.Sponge.SpongePluginConfiguration; |
||||||
|
|
||||||
|
// Documentation for Sponge: https://docs.spongepowered.org/en/index.html
|
||||||
|
|
||||||
@Plugin(id = "rscPermissions", name = "rscPermissions", version = "0.9b") |
@Plugin(id = "rscPermissions", name = "rscPermissions", version = "0.9.16b") |
||||||
public class SpongePluginMain |
public class SpongePluginMain |
||||||
{ |
{ |
||||||
|
private final Logger logger; |
||||||
|
private final Settings settings = new SpongePluginConfiguration(this); |
||||||
|
private final SpongePermissionManager permissionManager = new SpongePermissionManager(this); |
||||||
|
public final BackendJson localStorage = new BackendJson(new File("")); |
||||||
|
public final BackendDatabase connection = new BackendDatabase(null); |
||||||
|
public final InternalCache internalCache = new InternalCache(); |
||||||
|
@Inject |
||||||
|
private Game game; |
||||||
|
@Inject |
||||||
|
public SpongePluginMain(Logger logger) |
||||||
|
{ |
||||||
|
this.logger = logger; |
||||||
|
logger.info("API VERSION IS " + game.getApiVersion()); |
||||||
|
} |
||||||
|
public Logger getLogger() |
||||||
|
{ |
||||||
|
return logger; |
||||||
|
} |
||||||
|
@Subscribe |
||||||
public void onServerStart(ServerAboutToStartEvent event) |
public void onServerStart(ServerAboutToStartEvent event) |
||||||
{ |
{ |
||||||
|
logger.info("onServerStart"); |
||||||
} |
} |
||||||
|
@Subscribe |
||||||
public void onServerStarting(ServerStartingEvent event) |
public void onServerStarting(ServerStartingEvent event) |
||||||
{ |
{ |
||||||
|
logger.info("onServerStarting"); |
||||||
} |
} |
||||||
|
@Subscribe |
||||||
public void onServerStarted(ServerStartedEvent event) |
public void onServerStarted(ServerStartedEvent event) |
||||||
{ |
{ |
||||||
|
logger.info("onServerStarted"); |
||||||
} |
} |
||||||
|
@Subscribe |
||||||
public void onServerStopping(ServerStoppingEvent event) |
public void onServerStopping(ServerStoppingEvent event) |
||||||
{ |
{ |
||||||
|
logger.info("onServerStopping"); |
||||||
} |
} |
||||||
|
@Subscribe |
||||||
public void onServerStopped(ServerStoppedEvent event) |
public void onServerStopped(ServerStoppedEvent event) |
||||||
{ |
{ |
||||||
|
logger.info("onServerStopped"); |
||||||
} |
} |
||||||
} |
} |
||||||
|
Loading…
Reference in new issue