001    /*******************************************************************************
002     * Copyright (C) 2009-2011 FuseSource Corp.
003     * Copyright (c) 2004, 2008 IBM Corporation and others.
004     *
005     * All rights reserved. This program and the accompanying materials
006     * are made available under the terms of the Eclipse Public License v1.0
007     * which accompanies this distribution, and is available at
008     * http://www.eclipse.org/legal/epl-v10.html
009     *
010     *******************************************************************************/
011    package org.fusesource.hawtjni.generator.model;
012    
013    import java.util.List;
014    
015    import org.fusesource.hawtjni.runtime.ClassFlag;
016    
017    /**
018     * 
019     * @author <a href="http://hiramchirino.com">Hiram Chirino</a>
020     */
021    public interface JNIClass {
022    
023        public boolean getFlag(ClassFlag flag);
024    
025        public String getName();
026        public String getSimpleName();
027        public String getNativeName();
028    
029        public JNIClass getSuperclass();
030        public List<JNIField> getDeclaredFields();
031        public List<JNIMethod> getDeclaredMethods();
032        public List<JNIMethod> getNativeMethods();
033        
034    
035        public boolean getGenerate();
036        public String getConditional();
037    }