001/******************************************************************************* 002 * Copyright (C) 2009-2011 FuseSource Corp. 003 * 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 *******************************************************************************/ 009package org.fusesource.hawtjni.runtime; 010 011import java.lang.annotation.Retention; 012import java.lang.annotation.RetentionPolicy; 013import java.lang.annotation.Target; 014 015import static java.lang.annotation.ElementType.*; 016 017/** 018 * 019 * @author <a href="http://hiramchirino.com">Hiram Chirino</a> 020 */ 021@Target({METHOD}) 022@Retention(RetentionPolicy.RUNTIME) 023public @interface JniMethod { 024 025 String cast() default ""; 026// Pointer pointer() default Pointer.DETERMINE_FROM_CAST; 027 String accessor() default ""; 028 MethodFlag[] flags() default {}; 029 String copy() default ""; 030 String conditional() default ""; 031 032 JniArg[] callbackArgs() default {}; 033}