/** * @return Parent of the resource, if any. Throws IllegalStateException if it's the root-level resource. */ public IResource getParent() { switch (level) { case KEYSPACE: return root(); case FUNCTION: return keyspace(keyspace); } throw new IllegalStateException("Root-level resource can't have a parent"); }
/** * @return Parent of the resource, if any. Throws IllegalStateException if it's the root-level resource. */ public IResource getParent() { switch (level) { case KEYSPACE: return root(); case FUNCTION: return keyspace(keyspace); } throw new IllegalStateException("Root-level resource can't have a parent"); }
/** * @return Parent of the resource, if any. Throws IllegalStateException if it's the root-level resource. */ public IResource getParent() { switch (level) { case KEYSPACE: return root(); case FUNCTION: return keyspace(keyspace); } throw new IllegalStateException("Root-level resource can't have a parent"); }
/** * Parses a resource name into a FunctionResource instance. * * @param name Name of the function resource. * @return FunctionResource instance matching the name. */ public static FunctionResource fromName(String name) { String[] parts = StringUtils.split(name, '/'); if (!parts[0].equals(ROOT_NAME) || parts.length > 3) throw new IllegalArgumentException(String.format("%s is not a valid function resource name", name)); if (parts.length == 1) return root(); if (parts.length == 2) return keyspace(parts[1]); String[] nameAndArgs = StringUtils.split(parts[2], "[|]"); return function(parts[1], nameAndArgs[0], argsListFromString(nameAndArgs[1])); }
/** * Parses a resource name into a FunctionResource instance. * * @param name Name of the function resource. * @return FunctionResource instance matching the name. */ public static FunctionResource fromName(String name) { String[] parts = StringUtils.split(name, '/'); if (!parts[0].equals(ROOT_NAME) || parts.length > 3) throw new IllegalArgumentException(String.format("%s is not a valid function resource name", name)); if (parts.length == 1) return root(); if (parts.length == 2) return keyspace(parts[1]); String[] nameAndArgs = StringUtils.split(parts[2], "[|]"); return function(parts[1], nameAndArgs[0], argsListFromString(nameAndArgs[1])); }
/** * Parses a resource name into a FunctionResource instance. * * @param name Name of the function resource. * @return FunctionResource instance matching the name. */ public static FunctionResource fromName(String name) { String[] parts = StringUtils.split(name, '/'); if (!parts[0].equals(ROOT_NAME) || parts.length > 3) throw new IllegalArgumentException(String.format("%s is not a valid function resource name", name)); if (parts.length == 1) return root(); if (parts.length == 2) return keyspace(parts[1]); String[] nameAndArgs = StringUtils.split(parts[2], "[|]"); return function(parts[1], nameAndArgs[0], argsListFromString(nameAndArgs[1])); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); state.ensureHasPermission(Permission.EXECUTE, stateFunction); if (finalFunction != null) state.ensureHasPermission(Permission.EXECUTE, finalFunction); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); state.ensureHasPermission(Permission.EXECUTE, stateFunction); if (finalFunction != null) state.ensureHasPermission(Permission.EXECUTE, finalFunction); }
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException { if (Schema.instance.findFunction(functionName, argTypes).isPresent() && orReplace) state.ensureHasPermission(Permission.ALTER, FunctionResource.function(functionName.keyspace, functionName.name, argTypes)); else state.ensureHasPermission(Permission.CREATE, FunctionResource.keyspace(functionName.keyspace)); state.ensureHasPermission(Permission.EXECUTE, stateFunction); if (finalFunction != null) state.ensureHasPermission(Permission.EXECUTE, finalFunction); }
public void onDropKeyspace(String ksName) { DatabaseDescriptor.getAuthorizer().revokeAllOn(DataResource.keyspace(ksName)); DatabaseDescriptor.getAuthorizer().revokeAllOn(FunctionResource.keyspace(ksName)); }
public void onDropKeyspace(String ksName) { DatabaseDescriptor.getAuthorizer().revokeAllOn(DataResource.keyspace(ksName)); DatabaseDescriptor.getAuthorizer().revokeAllOn(FunctionResource.keyspace(ksName)); }
public void onDropKeyspace(String ksName) { DatabaseDescriptor.getAuthorizer().revokeAllOn(DataResource.keyspace(ksName)); DatabaseDescriptor.getAuthorizer().revokeAllOn(FunctionResource.keyspace(ksName)); }
protected void grantPermissionsToCreator(QueryState state) { try { RoleResource role = RoleResource.role(state.getClientState().getUser().getName()); DataResource keyspace = DataResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, keyspace.applicablePermissions(), keyspace, role); FunctionResource functions = FunctionResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, functions.applicablePermissions(), functions, role); } catch (RequestExecutionException e) { throw new RuntimeException(e); } } }
protected void grantPermissionsToCreator(QueryState state) { try { RoleResource role = RoleResource.role(state.getClientState().getUser().getName()); DataResource keyspace = DataResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, keyspace.applicablePermissions(), keyspace, role); FunctionResource functions = FunctionResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, functions.applicablePermissions(), functions, role); } catch (RequestExecutionException e) { throw new RuntimeException(e); } } }
state._fsp--; res = FunctionResource.keyspace(ks);
protected void grantPermissionsToCreator(QueryState state) { try { RoleResource role = RoleResource.role(state.getClientState().getUser().getName()); DataResource keyspace = DataResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, keyspace.applicablePermissions(), keyspace, role); FunctionResource functions = FunctionResource.keyspace(keyspace()); DatabaseDescriptor.getAuthorizer().grant(AuthenticatedUser.SYSTEM_USER, functions.applicablePermissions(), functions, role); } catch (RequestExecutionException e) { throw new RuntimeException(e); } } }
state._fsp--; res = FunctionResource.keyspace(ks);