KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > javaguard > classfile > NameMapper


1 /**
2  * JavaGuard -- an obfuscation package for Java classfiles.
3  *
4  * Copyright (c) 1999 Mark Welsh (markw@retrologic.com)
5  * Copyright (c) 2002 Thorsten Heit (theit@gmx.de)
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20  *
21  * The author may be contacted at theit@gmx.de.
22  *
23  *
24  * $Id: NameMapper.java,v 1.3 2002/05/28 17:25:09 glurk Exp $
25  */

26 package net.sf.javaguard.classfile;
27
28
29 /** Interface to a class, method, field remapping table.
30  *
31  * @author <a HREF="mailto:theit@gmx.de">Thorsten Heit</a>
32  * @author <a HREF="mailto:markw@retrologic.com">Mark Welsh</a>
33  */

34 public interface NameMapper {
35   /** Return a list of attributes marked to keep.
36    * @return list of attributes to keep
37    */

38   public String JavaDoc[] getAttrsToKeep();
39   
40   
41   /** Mapping for fully qualified class name.
42    * @param className the fully qualified class name
43    * @return the mapped class name
44    */

45   public String JavaDoc mapClass(String JavaDoc className);
46   
47   
48   /** Mapping for method name, of fully qualified class.
49    * @param className the fully qualified class name
50    * @param methodName the method name
51    * @param descriptor the method descriptor
52    * @return the mapped method name; null if no mapping is found
53    */

54   public String JavaDoc mapMethod(String JavaDoc className, String JavaDoc methodName, String JavaDoc descriptor);
55   
56   
57   /** Mapping for field name, of fully qualified class.
58    * @param className the fully qualified class name
59    * @param fieldName the field name
60    * @return the mapped field name; null if no mapping is found
61    */

62   public String JavaDoc mapField(String JavaDoc className, String JavaDoc fieldName);
63   
64   
65   /** Mapping for descriptor of field or method.
66    * @param descriptor the descriptor of a field or method
67    * @return the mapped descriptor name
68    */

69   public String JavaDoc mapDescriptor(String JavaDoc descriptor);
70 }
71
Popular Tags