###############################################################################
# Copyright (c) 2003, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
#
# $Source: /cvsroot/webtools/jeetools.move/webtools.javaee.git/plugins/org.eclipse.jem/mofjava/javaadapters.properties,v $
# $Revision: 1.3 $  $Date: 2004/08/27 15:33:17 $
#

Failed_reflecting_values_ERROR_       = IWAV0002E Failed reflecting values.
Could_Not_Reflect_Methods_ERROR_      = IWAV0003E Could not reflect methods for {0} because one of the methods references a type that could not be loaded.  Exception: {1}
Could_Not_Reflect_Constructors_ERROR_ = IWAV0142E Could not reflect constructors for {0} because one of the methods references a type that could not be loaded.  Exception: {1}
Could_Not_Reflect_Fields_ERROR_       = IWAV0143E Could not reflect fields for {0} because one of the fields is a type that could not be loaded. Exception: {1}
Error_Looking_Up_Type_ERROR_          = IWAV0144E Error looking up type {0}.  Exception: {1}
Error_Introspecting_Flags_ERROR_      = IWAV0145E Error introspecting flags on {0}.  Exception: {1}
Error_Setting_GenFlag_ERROR_          = IWAV0153E Error setting the generated flag on {0}.  Exception: {1}
Java_Inh_Cycle_ERROR_                 = IWAV0154E Detected an inheritance cycle when {0} trys to extend {1}.



