Merge
This commit is contained in:
commit
e2c0f714d5
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -258,6 +258,19 @@ public class UnionGen implements com.sun.tools.corba.se.idl.UnionGen, JavaGenera
|
||||
{
|
||||
Vector labels = vectorizeLabels (u.branches (), true);
|
||||
|
||||
if (Util.javaName(utype).equals ("boolean")) {
|
||||
stream.println( "" ) ;
|
||||
stream.println( " private void verifyDefault (boolean discriminator)" ) ;
|
||||
stream.println( " {" ) ;
|
||||
if (labels.contains ("true"))
|
||||
stream.println (" if ( discriminator )");
|
||||
else
|
||||
stream.println (" if ( !discriminator )");
|
||||
stream.println( " throw new org.omg.CORBA.BAD_OPERATION();" ) ;
|
||||
stream.println( " }" ) ;
|
||||
return;
|
||||
}
|
||||
|
||||
stream.println( "" ) ;
|
||||
stream.println( " private void verifyDefault( " + Util.javaName(utype) +
|
||||
" value )" ) ;
|
||||
@ -763,7 +776,7 @@ public class UnionGen implements com.sun.tools.corba.se.idl.UnionGen, JavaGenera
|
||||
stream.println (indent + "if (" + disName + ')');
|
||||
|
||||
if (firstBranch == null)
|
||||
stream.println (indent + " throw new org.omg.CORBA.BAD_OPERATION ();");
|
||||
stream.println (indent + " value._default(" + disName + ");");
|
||||
else {
|
||||
stream.println (indent + '{');
|
||||
index = readBranch (index, indent + " ", firstBranch.typedef.name (),
|
||||
@ -774,7 +787,7 @@ public class UnionGen implements com.sun.tools.corba.se.idl.UnionGen, JavaGenera
|
||||
stream.println (indent + "else");
|
||||
|
||||
if (secondBranch == null)
|
||||
stream.println (indent + " throw new org.omg.CORBA.BAD_OPERATION ();");
|
||||
stream.println (indent + " value._default(" + disName + ");");
|
||||
else {
|
||||
stream.println (indent + '{');
|
||||
index = readBranch (index, indent + " ", secondBranch.typedef.name (),
|
||||
@ -924,23 +937,25 @@ public class UnionGen implements com.sun.tools.corba.se.idl.UnionGen, JavaGenera
|
||||
firstBranch = secondBranch;
|
||||
secondBranch = tmp;
|
||||
}
|
||||
stream.println (indent + "if (" + disName + ')');
|
||||
if (firstBranch == null)
|
||||
stream.println (indent + " throw new org.omg.CORBA.BAD_OPERATION ();");
|
||||
else
|
||||
{
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, firstBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
}
|
||||
stream.println (indent + "else");
|
||||
if (secondBranch == null)
|
||||
stream.println (indent + " throw new org.omg.CORBA.BAD_OPERATION ();");
|
||||
else
|
||||
{
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, secondBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
if (firstBranch != null && secondBranch != null) {
|
||||
stream.println (indent + "if (" + disName + ')');
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, firstBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
stream.println (indent + "else");
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, secondBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
} else if (firstBranch != null) {
|
||||
stream.println (indent + "if (" + disName + ')');
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, firstBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
} else {
|
||||
stream.println (indent + "if (!" + disName + ')');
|
||||
stream.println (indent + '{');
|
||||
index = writeBranch (index, indent + " ", name, secondBranch.typedef, stream);
|
||||
stream.println (indent + '}');
|
||||
}
|
||||
}
|
||||
return index;
|
||||
|
Loading…
x
Reference in New Issue
Block a user