Class McpTokenScopeDao
java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.common.dao.AbstractDaoConstant
ru.bitel.bgbilling.plugins.mcp.server.dao.McpTokenScopeDao
public class McpTokenScopeDao
extends ru.bitel.bgbilling.common.dao.AbstractDaoConstant
-
Field Summary
FieldsFields inherited from class ru.bitel.bgbilling.common.dao.AbstractDaoConstant
con, ERROR, fields, moduleId, SQL_ALL, SQL_AND, SQL_DELETE, SQL_DISTINCT, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_JOIN, SQL_LEFT_JOIN, SQL_LIMIT, SQL_NOT_IN, SQL_ON, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_VALUES, SQL_WHERE, tableName -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfindByTokenId(int tokenId) booleaninsertScope(int tokenId, String component, String toolName) Вставить один скоуп токена.voidreplaceScopes(int tokenId, List<McpScopeInfo> scopes) Полная замена скоупов токена для админки (план §10): сначала удалить все строки с этим token_id, затем вставить переданный список.Methods inherited from class ru.bitel.bgbilling.common.dao.AbstractDaoConstant
getPeriod, getPlaceholders, getSQLOrder, getSQLOrderFields, getTableName, psSetDate, psSetDateOrNull, psSetInt, psSetIntOrNull, psSetPeriod, psSetString, psSetStringOrNull, psSetTimestampOrNull, queryAndIn, setStatementParam, sqlDelete, sqlDeleteBatch, sqlInsert, sqlInsertBatch, sqlInsertGetId, sqlInsertGetLongId, sqlInsertOnDuplicateKeyUpdate, sqlInsertSelect, sqlInsertUpdateById, sqlSelectCountAsInt, sqlUpdate, sqlUpdateBatchMethods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
error, error, error, getLogger, logError, logError, warn
-
Field Details
-
TABLE_MCP_TOKEN_SCOPES
- See Also:
-
-
Constructor Details
-
McpTokenScopeDao
-
-
Method Details
-
insertScope
Вставить один скоуп токена.- Parameters:
tokenId- id токена из таблицы mcp_tokenscomponent- модуль (компонент), которому разрешён доступtoolName- имя инструмента; «*» — все инструменты компонента- Returns:
- true, если вставка прошла успешно; false — при ошибке. Исключение наружу не бросается — только логируется.
-
findByTokenId
-
replaceScopes
Полная замена скоупов токена для админки (план §10): сначала удалить все строки с этим token_id, затем вставить переданный список.В отличие от
insertScope(int, java.lang.String, java.lang.String), исключения не логируются, а пробрасываются наружу: тихий сбой посреди замены оставил бы токен без скоупов (или со старыми), и никто бы об этом не узнал. Транзакцию этот метод не открывает — удаление и вставка должны выполняться внутри транзакции вызывающего сервиса (tokenScopesSet делает setAutoCommit(false) вокруг этого вызова).- Parameters:
tokenId- id токена из таблицы mcp_tokensscopes- новый полный список скоупов; null или пустой список означает полное удаление скоупов (вставок не будет)- Throws:
SQLException- ошибка удаления или вставки — бросается вызывающему, откатившему текущую транзакцию
-