当前位置: 首页>>代码示例>>Java>>正文


Java Routine类代码示例

本文整理汇总了Java中org.hsqldb.Routine的典型用法代码示例。如果您正苦于以下问题:Java Routine类的具体用法?Java Routine怎么用?Java Routine使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Routine类属于org.hsqldb包,在下文中一共展示了Routine类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: checkAccess

import org.hsqldb.Routine; //导入依赖的package包/类
public void checkAccess(SchemaObject object) {

        if (isFullyAccessibleByRole(object.getName())) {
            return;
        }

        HsqlName name = object.getName();

        if (object instanceof Routine) {
            name = ((Routine) object).getSpecificName();
        }

        Right right = (Right) fullRightsMap.get(name);

        if (right != null && !right.isEmpty()) {
            return;
        }

        throw Error.error(ErrorCode.X_42501, object.getName().name);
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:21,代码来源:Grantee.java

示例2: grant

import org.hsqldb.Routine; //导入依赖的package包/类
/**
 * Grants the rights represented by the rights argument on
 * the database object identified by the dbobject argument
 * to the Grantee object identified by name argument.<p>
 *
 *  Note: For the dbobject argument, Java Class objects are identified
 *  using a String object whose value is the fully qualified name
 *  of the Class, while Table and other objects are
 *  identified by an HsqlName object.  A Table
 *  object identifier must be precisely the one obtained by calling
 *  table.getName(); if a different HsqlName
 *  object with an identical name attribute is specified, then
 *  rights checks and tests will fail, since the HsqlName
 *  class implements its {@link HsqlName#hashCode hashCode} and
 *  {@link HsqlName#equals equals} methods based on pure object
 *  identity, rather than on attribute values. <p>
 */
public void grant(OrderedHashSet granteeList, SchemaObject dbObject,
                  Right right, Grantee grantor, boolean withGrantOption) {

    if (dbObject instanceof RoutineSchema) {
        SchemaObject[] routines =
            ((RoutineSchema) dbObject).getSpecificRoutines();

        grant(granteeList, routines, right, grantor, withGrantOption);

        return;
    }

    HsqlName name = dbObject.getName();

    if (dbObject instanceof Routine) {
        name = ((Routine) dbObject).getSpecificName();
    }

    if (!grantor.isGrantable(dbObject, right)) {
        throw Error.error(ErrorCode.X_0L000,
                          grantor.getName().getNameString());
    }

    if (grantor.isAdmin()) {
        grantor = dbObject.getOwner();
    }

    checkGranteeList(granteeList);

    for (int i = 0; i < granteeList.size(); i++) {
        Grantee grantee = get((String) granteeList.get(i));

        grantee.grant(name, right, grantor, withGrantOption);

        if (grantee.isRole) {
            updateAllRights(grantee);
        }
    }
}
 
开发者ID:Julien35,项目名称:dev-courses,代码行数:57,代码来源:GranteeManager.java

示例3: setPasswordCheckFunction

import org.hsqldb.Routine; //导入依赖的package包/类
public void setPasswordCheckFunction(Routine function) {
    pwCheckFunction = function;
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:4,代码来源:UserManager.java

示例4: setExtAuthenticationFunction

import org.hsqldb.Routine; //导入依赖的package包/类
public void setExtAuthenticationFunction(Routine function) {
    extAuthenticationFunction = function;
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:4,代码来源:UserManager.java

示例5: revoke

import org.hsqldb.Routine; //导入依赖的package包/类
/**
 * Revokes the specified rights on the specified database object. <p>
 *
 * If, after removing the specified rights, no rights remain on the
 * database object, then the key/value pair for that object is removed
 * from the rights map
 */
void revoke(SchemaObject object, Right right, Grantee grantor,
            boolean grantOption) {

    HsqlName name = object.getName();

    if (object instanceof Routine) {
        name = ((Routine) object).getSpecificName();
    }

    Iterator it       = directRightsMap.get(name);
    Right    existing = null;

    while (it.hasNext()) {
        existing = (Right) it.next();

        if (existing.grantor == grantor) {
            break;
        }
    }

    if (existing == null) {
        return;
    }

    if (existing.grantableRights != null) {
        existing.grantableRights.remove(object, right);
    }

    if (grantOption) {
        return;
    }

    if (right.isFull) {
        directRightsMap.remove(name, existing);
        grantor.grantedRightsMap.remove(name, existing);
        updateAllRights();

        return;
    }

    existing.remove(object, right);

    if (existing.isEmpty()) {
        directRightsMap.remove(name, existing);
        grantor.grantedRightsMap.remove(name, existing);
    }

    updateAllRights();
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:57,代码来源:Grantee.java

示例6: getAllGrantedPrivileges

import org.hsqldb.Routine; //导入依赖的package包/类
public OrderedHashSet getAllGrantedPrivileges(SchemaObject object) {

        HsqlName name = object.getName();

        if (object instanceof Routine) {
            name = ((Routine) object).getSpecificName();
        }

        Iterator rights = grantedRightsMap.get(name);

        if (rights.hasNext()) {
            OrderedHashSet set = new OrderedHashSet();

            while (rights.hasNext()) {
                set.add(rights.next());
            }

            return set;
        }

        return Right.emptySet;
    }
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:23,代码来源:Grantee.java

示例7: grant

import org.hsqldb.Routine; //导入依赖的package包/类
/**
 * Grants the rights represented by the rights argument on
 * the database object identified by the dbobject argument
 * to the Grantee object identified by name argument.<p>
 *
 *  Note: For the dbobject argument, Java Class objects are identified
 *  using a String object whose value is the fully qualified name
 *  of the Class, while Table and other objects are
 *  identified by an HsqlName object.  A Table
 *  object identifier must be precisely the one obtained by calling
 *  table.getName(); if a different HsqlName
 *  object with an identical name attribute is specified, then
 *  rights checks and tests will fail, since the HsqlName
 *  class implements its {@link HsqlName#hashCode hashCode} and
 *  {@link HsqlName#equals equals} methods based on pure object
 *  identity, rather than on attribute values. <p>
 */
public void grant(Session session, OrderedHashSet granteeList,
                  SchemaObject dbObject, Right right, Grantee grantor,
                  boolean withGrantOption) {

    if (dbObject instanceof RoutineSchema) {
        SchemaObject[] routines =
            ((RoutineSchema) dbObject).getSpecificRoutines();

        grant(session, granteeList, routines, right, grantor,
              withGrantOption);

        return;
    }

    HsqlName name = dbObject.getName();

    if (dbObject instanceof Routine) {
        name = ((Routine) dbObject).getSpecificName();
    }

    if (!grantor.isAccessible(dbObject)) {
        throw Error.error(ErrorCode.X_0L000,
                          grantor.getName().getNameString());
    }

    if (!grantor.isGrantable(dbObject, right)) {
        session.addWarning(Error.error(ErrorCode.W_01007,
                                       grantor.getName().getNameString()));

        return;
    }

    if (grantor.isAdmin()) {
        grantor = dbObject.getOwner();
    }

    checkGranteeList(granteeList);

    for (int i = 0; i < granteeList.size(); i++) {
        Grantee grantee = get((String) granteeList.get(i));

        grantee.grant(name, right, grantor, withGrantOption);

        if (grantee.isRole) {
            updateAllRights(grantee);
        }
    }
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:66,代码来源:GranteeManager.java

示例8: ROUTINE_JAR_USAGE

import org.hsqldb.Routine; //导入依赖的package包/类
Table ROUTINE_JAR_USAGE() {

        Table t = sysTables[ROUTINE_JAR_USAGE];

        if (t == null) {
            t = createBlankTable(sysTableHsqlNames[ROUTINE_JAR_USAGE]);

            addColumn(t, "SPECIFIC_CATALOG", SQL_IDENTIFIER);
            addColumn(t, "SPECIFIC_SCHEMA", SQL_IDENTIFIER);
            addColumn(t, "SPECIFIC_NAME", SQL_IDENTIFIER);
            addColumn(t, "JAR_CATALOG", SQL_IDENTIFIER);
            addColumn(t, "JAR_SCHEMA", SQL_IDENTIFIER);
            addColumn(t, "JAR_NAME", SQL_IDENTIFIER);

            HsqlName name = HsqlNameManager.newInfoSchemaObjectName(
                sysTableHsqlNames[ROUTINE_JAR_USAGE].name, false,
                SchemaObject.INDEX);

            t.createPrimaryKey(name, new int[] {
                0, 1, 2, 3, 4, 5
            }, false);

            return t;
        }

        // column number mappings
        final int specific_catalog = 0;
        final int specific_schema  = 1;
        final int specific_name    = 2;
        final int jar_catalog      = 3;
        final int jar_schema       = 4;
        final int jar_name         = 5;

        //
        Iterator        it;
        Object[]        row;
        PersistentStore store = database.persistentStoreCollection.getStore(t);

        it = database.schemaManager.databaseObjectIterator(
            SchemaObject.ROUTINE);

        while (it.hasNext()) {
            RoutineSchema routine = (RoutineSchema) it.next();

            if (!session.getGrantee().isAccessible(routine)) {
                continue;
            }

            Routine[] specifics = routine.getSpecificRoutines();

            for (int m = 0; m < specifics.length; m++) {
                if (specifics[m].getLanguage() != Routine.LANGUAGE_JAVA) {
                    continue;
                }

                row                   = t.getEmptyRowData();
                row[specific_catalog] = database.getCatalogName().name;
                row[specific_schema]  = routine.getSchemaName().name;
                row[specific_name]    = routine.getName().name;
                row[jar_catalog]      = database.getCatalogName().name;
                row[jar_schema] =
                    database.schemaManager.getSQLJSchemaHsqlName();
                row[jar_name] = "CLASSPATH";

                t.insertSys(store, row);
            }
        }

        return t;
    }
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:71,代码来源:DatabaseInformationFull.java

示例9: ROUTINE_SEQUENCE_USAGE

import org.hsqldb.Routine; //导入依赖的package包/类
Table ROUTINE_SEQUENCE_USAGE() {

        Table t = sysTables[ROUTINE_SEQUENCE_USAGE];

        if (t == null) {
            t = createBlankTable(sysTableHsqlNames[ROUTINE_SEQUENCE_USAGE]);

            addColumn(t, "SPECIFIC_CATALOG", SQL_IDENTIFIER);
            addColumn(t, "SPECIFIC_SCHEMA", SQL_IDENTIFIER);
            addColumn(t, "SPECIFIC_NAME", SQL_IDENTIFIER);
            addColumn(t, "SEQUENCE_CATALOG", SQL_IDENTIFIER);
            addColumn(t, "SEQUENCE_SCHEMA", SQL_IDENTIFIER);
            addColumn(t, "SEQUENCE_NAME", SQL_IDENTIFIER);

            HsqlName name = HsqlNameManager.newInfoSchemaObjectName(
                sysTableHsqlNames[ROUTINE_SEQUENCE_USAGE].name, false,
                SchemaObject.INDEX);

            t.createPrimaryKey(name, new int[] {
                0, 1, 2, 3, 4, 5
            }, false);

            return t;
        }

        // column number mappings
        final int specific_catalog = 0;
        final int specific_schema  = 1;
        final int specific_name    = 2;
        final int sequence_catalog = 3;
        final int sequence_schema  = 4;
        final int sequence_name    = 5;

        //
        PersistentStore store = database.persistentStoreCollection.getStore(t);
        Iterator        it;
        Object[]        row;

        it = database.schemaManager.databaseObjectIterator(
            SchemaObject.ROUTINE);

        while (it.hasNext()) {
            RoutineSchema routine = (RoutineSchema) it.next();

            if (!session.getGrantee().isAccessible(routine)) {
                continue;
            }

            Routine[] specifics = routine.getSpecificRoutines();

            for (int m = 0; m < specifics.length; m++) {
                OrderedHashSet set = specifics[m].getReferences();

                for (int i = 0; i < set.size(); i++) {
                    HsqlName refName = (HsqlName) set.get(i);

                    if (refName.type != SchemaObject.SEQUENCE) {
                        continue;
                    }

                    if (!session.getGrantee().isAccessible(refName)) {
                        continue;
                    }

                    row                   = t.getEmptyRowData();
                    row[specific_catalog] = database.getCatalogName().name;
                    row[specific_schema]  = specifics[m].getSchemaName().name;
                    row[specific_name]    = specifics[m].getName().name;
                    row[sequence_catalog] = database.getCatalogName().name;
                    row[sequence_schema]  = refName.schema.name;
                    row[sequence_name]    = refName.name;

                    try {
                        t.insertSys(store, row);
                    } catch (HsqlException e) {}
                }
            }
        }

        return t;
    }
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:82,代码来源:DatabaseInformationFull.java

示例10: revoke

import org.hsqldb.Routine; //导入依赖的package包/类
/**
 * Revokes the specified rights on the specified database object. <p>
 *
 * If, after removing the specified rights, no rights remain on the
 * database object, then the key/value pair for that object is removed
 * from the rights map
 */
void revoke(SchemaObject object, Right right, Grantee grantor,
            boolean grantOption) {

    HsqlName name = object.getName();

    if (object instanceof Routine) {
        name = ((Routine) object).getSpecificName();
    }

    Iterator it       = directRightsMap.get(name);
    Right    existing = null;

    while (it.hasNext()) {
        existing = (Right) it.next();

        if (existing.grantor == grantor) {
            break;
        }
    }

    if (existing == null) {
        return;
    }

    if (existing.grantableRights != null) {
        existing.grantableRights.remove(object, right);
    }

    if (grantOption) {
        return;
    }

    if (right.isFull) {
        directRightsMap.remove(name, existing);
        ((Grantee) grantor).grantedRightsMap.remove(name, existing);
        updateAllRights();

        return;
    }

    existing.remove(object, right);

    if (existing.isEmpty()) {
        directRightsMap.remove(name, existing);
        ((Grantee) grantor).grantedRightsMap.remove(name, existing);
    }

    updateAllRights();
}
 
开发者ID:Julien35,项目名称:dev-courses,代码行数:57,代码来源:Grantee.java

示例11: revoke

import org.hsqldb.Routine; //导入依赖的package包/类
/**
 * Revokes the specified rights on the specified database object. <p>
 *
 * If, after removing the specified rights, no rights remain on the
 * database object, then the key/value pair for that object is removed
 * from the rights map
 */
void revoke(SchemaObject object, Right right, Grantee grantor,
            boolean grantOption) {

    HsqlName name = object.getName();

    if (object instanceof Routine) {
        name = ((Routine) object).getSpecificName();
    }

    Iterator it       = directRightsMap.get(name);
    Right    existing = null;

    while (it.hasNext()) {
        existing = (Right) it.next();

        if (existing.grantor == grantor) {
            break;
        }
    }

    if (existing == null) {
        return;
    }

    if (existing.grantableRights != null) {
        existing.grantableRights.remove(object, right);
    }

    if (grantOption) {
        return;
    }

    if (right.isFull) {
        directRightsMap.remove(name, existing);
        ((Grantee) grantor).grantedRightsMap.remove(name, existing);
        updateAllRights();

        return;
    }

    existing.remove(object, right);

    if (existing.isEmpty()) {
        directRightsMap.remove(name, existing);
        ((Grantee) grantor).grantedRightsMap.remove(name, existing);
    }

    updateAllRights();

    return;
}
 
开发者ID:RabadanLab,项目名称:Pegasus,代码行数:59,代码来源:Grantee.java


注:本文中的org.hsqldb.Routine类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。