package language;
public class Context {
public static void main(String[] argList) {
new C().run();
}
}
class C {
static int MAX = 2;
int i;
C() {
i = 1;
}
public void run() {
try {
more();
} catch (MoreError e) {
// log but continue
System.out.println(e.getMessage());
}
}
private void more() {
i++;
if (i >= MAX) {
i = 0;
throw new MoreError();
}
}
static class MoreError extends Error {
MoreError() {
super("was too much!");
}
}
}
/** @author Erik Hilsdale, Wes Isberg */
aspect A {
// START-SAMPLE language-fieldSetContext Check input and result for a field set.
/**
* Check input and result for a field set.
*/
void around(int input, C targ) : set(int C.i)
&& args(input) && target(targ) {
String m = "setting C.i=" + targ.i + " to " + input;
System.out.println(m);
proceed(input, targ);
if (targ.i != input) {
throw new Error("expected " + input);
}
}
// END-SAMPLE language-fieldSetContext
// START-SAMPLE language-handlerContext Log exception being handled
/**
* Log exception being handled
*/
before (C.MoreError e) : handler(C.MoreError)
&& args(e) && within(C) {
System.out.println("handling " + e);
}
// END-SAMPLE language-handlerContext
// See Initialization.java for constructor call,
// constructor execution, and {pre}-initialization
}ars'>Temp_ChangeBars
Apache XML Graphics FOP: https://github.com/apache/xmlgraphics-fop
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *//* $Id$ */packageorg.apache.fop.fo.properties;importorg.apache.fop.datatypes.Length;importorg.apache.fop.fo.Constants;importorg.apache.fop.fo.PropertyList;importorg.apache.fop.fo.expr.PropertyException;/** * Store all common relative position properties. * See Sec 7.12 of the XSL-FO Standard. * Public "structure" allows direct member access. */publicclassCommonRelativePosition{/** * The "relative-position" property. */publicintrelativePosition;/** * The "top" property. */publicLengthtop;/** * The "right" property. */publicLengthright;/** * The "bottom" property. */publicLengthbottom;/** * The "left" property. */publicLengthleft;/** * Create a CommonRelativePosition object. * @param pList The PropertyList with propery values. */publicCommonRelativePosition(PropertyListpList)throwsPropertyException{relativePosition=pList.get(Constants.PR_RELATIVE_POSITION).getEnum();top=pList.get(Constants.PR_TOP).getLength();bottom=pList.get(Constants.PR_BOTTOM).getLength();left=pList.get(Constants.PR_LEFT).getLength();right=pList.get(Constants.PR_RIGHT).getLength();}}