Annotation String length enforcement:

- Description is 150 characters max, truncated
- Others are 50 characters max, truncated
- StringProvider value is 50 characters max, truncated
This commit is contained in:
Rsl1122 2019-03-18 20:07:17 +02:00
parent 405d4f643b
commit a8450f51b8
5 changed files with 16 additions and 9 deletions

View File

@ -22,6 +22,7 @@ import com.djrapitops.plan.db.sql.parsing.Sql;
import com.djrapitops.plan.extension.icon.Color;
import com.djrapitops.plan.extension.icon.Family;
import com.djrapitops.plan.extension.icon.Icon;
import org.apache.commons.lang3.StringUtils;
import java.sql.PreparedStatement;
import java.sql.SQLException;
@ -53,7 +54,7 @@ public class ExtensionIconTable {
}
public static void set3IconValuesToStatement(PreparedStatement statement, int parameterIndex, Icon icon) throws SQLException {
statement.setString(parameterIndex, icon.getName());
statement.setString(parameterIndex, StringUtils.truncate(icon.getName(), 50));
statement.setString(parameterIndex + 1, icon.getFamily().name());
statement.setString(parameterIndex + 2, icon.getColor().name());
}

View File

@ -21,6 +21,7 @@ import com.djrapitops.plan.extension.icon.Color;
import com.djrapitops.plan.extension.icon.Family;
import com.djrapitops.plan.extension.icon.Icon;
import com.djrapitops.plugin.utilities.ArrayUtil;
import org.apache.commons.lang3.StringUtils;
import java.util.Arrays;
import java.util.Optional;
@ -46,7 +47,7 @@ public class PluginTab {
}
public String getTabName() {
return tabName;
return StringUtils.truncate(tabName, 50);
}
public Icon getTabIcon() {

View File

@ -17,6 +17,7 @@
package com.djrapitops.plan.extension.implementation;
import com.djrapitops.plan.extension.icon.Icon;
import org.apache.commons.lang3.StringUtils;
import java.util.Optional;
@ -50,19 +51,19 @@ public class ProviderInformation {
}
public String getPluginName() {
return pluginName;
return StringUtils.truncate(pluginName, 50);
}
public String getName() {
return name;
return StringUtils.truncate(name, 50);
}
public String getText() {
return text;
return StringUtils.truncate(text, 50);
}
public Optional<String> getDescription() {
return description == null || description.isEmpty() ? Optional.empty() : Optional.of(description);
return description == null || description.isEmpty() ? Optional.empty() : Optional.of(StringUtils.truncate(description, 150));
}
public Icon getIcon() {
@ -74,10 +75,10 @@ public class ProviderInformation {
}
public Optional<String> getTab() {
return tab == null || tab.isEmpty() ? Optional.empty() : Optional.of(tab);
return tab == null || tab.isEmpty() ? Optional.empty() : Optional.of(StringUtils.truncate(tab, 50));
}
public Optional<String> getCondition() {
return condition == null || condition.isEmpty() ? Optional.empty() : Optional.of(condition);
return condition == null || condition.isEmpty() ? Optional.empty() : Optional.of(StringUtils.truncate(condition, 50));
}
}

View File

@ -19,6 +19,7 @@ package com.djrapitops.plan.extension.implementation.providers;
import com.djrapitops.plan.extension.annotation.BooleanProvider;
import com.djrapitops.plan.extension.icon.Icon;
import com.djrapitops.plan.extension.implementation.ProviderInformation;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Method;
import java.util.Optional;
@ -62,6 +63,6 @@ public class BooleanDataProvider extends DataProvider<Boolean> {
}
public Optional<String> getProvidedCondition() {
return providedCondition == null || providedCondition.isEmpty() ? Optional.empty() : Optional.of(providedCondition);
return providedCondition == null || providedCondition.isEmpty() ? Optional.empty() : Optional.of(StringUtils.truncate(providedCondition, 50));
}
}

View File

@ -26,6 +26,7 @@ import com.djrapitops.plan.extension.implementation.storage.transactions.StoreIc
import com.djrapitops.plan.extension.implementation.storage.transactions.providers.StoreStringProviderTransaction;
import com.djrapitops.plan.extension.implementation.storage.transactions.results.StorePlayerStringResultTransaction;
import com.djrapitops.plugin.logging.console.PluginLogger;
import org.apache.commons.lang3.StringUtils;
import java.util.Optional;
import java.util.Set;
@ -78,6 +79,8 @@ class StringProviderValueGatherer {
continue;
}
result = StringUtils.truncate(result, 50);
database.executeTransaction(new StoreIconTransaction(stringProvider.getProviderInformation().getIcon()));
database.executeTransaction(new StoreStringProviderTransaction(stringProvider, StringDataProvider.isPlayerName(stringProvider), serverUUID));
database.executeTransaction(new StorePlayerStringResultTransaction(pluginName, serverUUID, method.getMethodName(), playerUUID, result));