⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 methodnameupgradingclassbuilderdecorator.java

📁 Java的面向对象数据库系统的源代码
💻 JAVA
字号:
// You can redistribute this software and/or modify it under the terms of// the Ozone Library License version 1 published by ozone-db.org.//// The original code and portions created by SMB are// Copyright (C) 1997-@year@ by SMB GmbH. All rights reserved.//// $Id$package org.ozoneDB.tools.OPP.srcgen.builder;import org.ozoneDB.tools.OPP.srcgen.ClassBuilder;import org.ozoneDB.tools.OPP.srcgen.BuilderException;import org.ozoneDB.tools.OPP.message.MessageWriter;import org.ozoneDB.core.Lock;import java.util.regex.Pattern;import java.util.regex.Matcher;/** * User: Jocke * Date: 2004-jan-04 * Time: 14:21:57 */public class MethodNameUpgradingClassBuilderDecorator implements ClassBuilder {    private ClassBuilder classBuilder;    private MessageWriter msgWriter;    private Pattern updateMethodPattern;    public MethodNameUpgradingClassBuilderDecorator(ClassBuilder classBuilder, String updateMethodExpression) {        this.classBuilder = classBuilder;        this.updateMethodPattern = Pattern.compile(updateMethodExpression);    }    public void init(MessageWriter msgWriter) {        this.msgWriter = msgWriter;        classBuilder.init(msgWriter);    }    public void beginClass(int modifier, String fullName, String superClass, String interfaces[]) throws BuilderException {        classBuilder.beginClass(modifier, fullName, superClass, interfaces);    }    public void makeConstructor(int modifier, ClassBuilder.Parameter parameters[], String exceptions[]) throws BuilderException {        classBuilder.makeConstructor(modifier, parameters, exceptions);    }    public void makeMethod(int modifier, String name, ClassBuilder.Parameter parameters[], String returnType, String exceptions[], int lockLevel) throws BuilderException {        Matcher matcher = updateMethodPattern.matcher(name);        if (matcher.matches()) {            msgWriter.debug("method: " + name + " matches expression \"" + updateMethodPattern.pattern() + "\"");            if (lockLevel < Lock.LEVEL_WRITE) {                msgWriter.info("Upgrading method: " + name + " to lock level WRITE");                lockLevel = Lock.LEVEL_WRITE;            } else {                msgWriter.info("method: " + name + " is already defined as an update method, doing nothing!");            }        }        classBuilder.makeMethod(modifier, name, parameters, returnType, exceptions, lockLevel);    }    public void endClass() throws BuilderException {        classBuilder.endClass();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -