1 8 9 package test.javax.management; 10 11 import java.util.Arrays ; 12 import java.util.Set ; 13 import javax.management.MBeanServer ; 14 import javax.management.MBeanServerFactory ; 15 import javax.management.ObjectInstance ; 16 import javax.management.ObjectName ; 17 import javax.management.Query ; 18 import javax.management.ValueExp ; 19 20 import junit.framework.TestCase; 21 import test.javax.management.support.QuerySupport; 22 23 28 public class QueryTest extends TestCase 29 { 30 public QueryTest(String name) 31 { 32 super(name); 33 } 34 35 public void testQueryEmpty() throws Exception  36 { 37 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 38 39 int count = server.getMBeanCount().intValue(); 40 QuerySupport.Test bean1 = new QuerySupport.Test(null, null, null); 41 server.registerMBean(bean1, new ObjectName ("Query:name=bean1")); 42 QuerySupport.Test bean2 = new QuerySupport.Test(null, null, null); 43 server.registerMBean(bean2, new ObjectName ("Query:name=bean2")); 44 QuerySupport.Test bean3 = new QuerySupport.Test(null, null, null); 45 server.registerMBean(bean3, new ObjectName ("Query:name=bean3")); 46 Set result = server.queryMBeans(null, null); 47 assertNotNull(result); 48 assertEquals(count + 3, result.size()); 49 result = server.queryNames(null, null); 50 assertEquals(count + 3, result.size()); 51 assertNotNull(result); 52 assertTrue(result.contains(new ObjectName ("Query:name=bean1"))); 53 assertTrue(result.contains(new ObjectName ("Query:name=bean2"))); 54 assertTrue(result.contains(new ObjectName ("Query:name=bean3"))); 55 } 56 57 public void testStringMatch() throws Exception  58 { 59 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 60 61 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 62 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 63 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 64 65 QuerySupport.Test a = new QuerySupport.Test("trial", null, null); 66 QuerySupport.Test b = new QuerySupport.Test("arial", null, null); 67 QuerySupport.Test c = new QuerySupport.Test("trial2", null, null); 68 server.registerMBean(a, name1); 69 server.registerMBean(b, name2); 70 server.registerMBean(c, name3); 71 Set result = 72 server.queryMBeans(null, 73 Query.match(Query.attr("Str"), Query.value("*rial"))); 74 assertEquals(2, result.size()); 75 result = 76 server.queryMBeans(null, 77 Query.match(Query.attr("Str"), Query.value("[at]rial"))); 78 assertEquals(1, result.size()); 79 result = 80 server.queryMBeans(null, 81 Query.match(Query.attr("Str"), Query.value("[a-z]rial"))); 82 assertEquals(2, result.size()); 83 result = 84 server.queryMBeans(null, 85 Query.match(Query.attr("Str"), Query.value("[b-z]rial?"))); 86 assertEquals(1, result.size()); 87 } 88 89 public void testArray() throws Exception  90 { 91 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 92 93 QuerySupport.Test bean1 = 94 new QuerySupport.Test("a", new Integer (0), null); 95 server.registerMBean(bean1, new ObjectName ("Query:name=bean1")); 96 QuerySupport.Test bean2 = 97 new QuerySupport.Test("b", new Integer (1), null); 98 server.registerMBean(bean2, new ObjectName ("Query:name=bean2")); 99 QuerySupport.Test bean3 = 100 new QuerySupport.Test("c", new Integer (2), null); 101 server.registerMBean(bean3, new ObjectName ("Query:name=bean3")); 102 Set result = 103 server.queryMBeans(null, 104 Query.in(Query.attr("Number"), 105 new ValueExp []{Query.value(0), Query.value(1)})); 106 assertEquals(2, result.size()); 107 result = 108 server.queryMBeans(null, 109 Query.in(Query.attr("Str"), 110 new ValueExp []{Query.value("a"), Query.value("d")})); 111 assertEquals(1, result.size()); 112 } 113 114 public void testFinalSubString() throws Exception  115 { 116 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 117 118 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 119 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 120 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 121 122 QuerySupport.Test a = new QuerySupport.Test("trial", null, null); 123 QuerySupport.Test b = new QuerySupport.Test("arial", null, null); 124 QuerySupport.Test c = new QuerySupport.Test("tria2l", null, null); 125 server.registerMBean(a, name1); 126 server.registerMBean(b, name2); 127 server.registerMBean(c, name3); 128 Set result = 129 server.queryMBeans(null, 130 Query.finalSubString(Query.attr("Str"), Query.value("l"))); 131 assertEquals(3, result.size()); 132 result = 133 server.queryMBeans(null, 134 Query.finalSubString(Query.attr("Str"), Query.value("rial"))); 135 assertEquals(2, result.size()); 136 result = 137 server.queryMBeans(null, 138 Query.finalSubString(Query.attr("Str"), 139 Query.value("nothing"))); 140 assertEquals(0, result.size()); 141 } 142 143 public void testInitialString() throws Exception  144 { 145 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 146 147 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 148 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 149 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 150 151 QuerySupport.Test a = new QuerySupport.Test("trial", null, null); 152 QuerySupport.Test b = new QuerySupport.Test("arial", null, null); 153 QuerySupport.Test c = new QuerySupport.Test("trial2", null, null); 154 server.registerMBean(a, name1); 155 server.registerMBean(b, name2); 156 server.registerMBean(c, name3); 157 Set result = 158 server.queryMBeans(null, 159 Query.initialSubString(Query.attr("Str"), Query.value("t"))); 160 assertEquals(2, result.size()); 161 result = 162 server.queryMBeans(null, 163 Query.initialSubString(Query.attr("Str"), Query.value("tr"))); 164 assertEquals(2, result.size()); 165 result = 166 server.queryMBeans(null, 167 Query.initialSubString(Query.attr("Str"), Query.value("tri"))); 168 assertEquals(2, result.size()); 169 result = 170 server.queryMBeans(null, 171 Query.initialSubString(Query.attr("Str"), 172 Query.value("nothing"))); 173 assertEquals(0, result.size()); 174 } 175 176 public void testMathOperations() throws Exception  177 { 178 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 179 180 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 181 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 182 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 183 184 QuerySupport.Test a = new QuerySupport.Test(null, new Integer (1), null); 185 QuerySupport.Test b = new QuerySupport.Test(null, new Integer (2), null); 186 QuerySupport.Test c = new QuerySupport.Test(null, new Integer (3), null); 187 server.registerMBean(a, name1); 188 server.registerMBean(b, name2); 189 server.registerMBean(c, name3); 190 Set result = 191 server.queryMBeans(null, 192 Query.eq(Query.value(3), 193 Query.plus(Query.attr("Number"), Query.value(1)))); 194 assertEquals(1, result.size()); 195 result = 196 server.queryMBeans(null, 197 Query.eq(Query.value(0), 198 Query.minus(Query.attr("Number"), Query.value(2)))); 199 assertEquals(1, result.size()); 200 result = 201 server.queryMBeans(null, 202 Query.eq(Query.value(0), 203 Query.times(Query.attr("Number"), Query.value(0)))); 204 assertEquals(3, result.size()); 205 result = 206 server.queryMBeans(null, 207 Query.eq(Query.value(1), 208 Query.div(Query.attr("Number"), Query.value(3)))); 209 assertEquals(1, result.size()); 210 } 211 212 public void testAttribute() throws Exception  213 { 214 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 215 216 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 217 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 218 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 219 220 QuerySupport.Test a = new QuerySupport.Test(null, new Integer (1), null); 221 QuerySupport.Test b = new QuerySupport.Test(null, new Integer (2), null); 222 QuerySupport.Test c = new QuerySupport.Test(null, new Integer (2), null); 223 server.registerMBean(a, name1); 224 server.registerMBean(b, name2); 225 server.registerMBean(c, name3); 226 Set result = 227 server.queryMBeans(null, 228 Query.eq(Query.value(2), Query.attr("Number"))); 229 assertEquals(2, result.size()); 230 result = 231 server.queryMBeans(null, 232 Query.eq(Query.classattr(), 233 Query.value("test.javax.management.support.QuerySupport$Test"))); 234 assertEquals(3, result.size()); 235 } 236 237 public void testBetween() throws Exception  238 { 239 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 240 241 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 242 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 243 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 244 245 QuerySupport.Test a = new QuerySupport.Test("a", new Integer (1), null); 246 QuerySupport.Test b = new QuerySupport.Test("b", new Integer (2), null); 247 QuerySupport.Test c = new QuerySupport.Test("c", new Integer (5), null); 248 server.registerMBean(a, name1); 249 server.registerMBean(b, name2); 250 server.registerMBean(c, name3); 251 Set result = 252 server.queryMBeans(null, 253 Query.between(Query.attr("Number"), 254 Query.value(2), 255 Query.value(3))); 256 assertEquals(1, result.size()); 257 result = 258 server.queryMBeans(null, 259 Query.between(Query.attr("Number"), 260 Query.value(1), 261 Query.value(3))); 262 assertEquals(2, result.size()); 263 result = 264 server.queryMBeans(null, 265 Query.between(Query.attr("Number"), 266 Query.value(1), 267 Query.value(5))); 268 assertEquals(3, result.size()); 269 283 } 284 285 public void testRelation() throws Exception  286 { 287 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 288 289 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 290 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 291 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 292 ObjectName name4 = new ObjectName ("BigNumber:name=test4"); 293 ObjectName name5 = new ObjectName ("BigNumber:name=test5"); 294 ObjectName name6 = new ObjectName ("LittleNumber:name=test6"); 295 296 QuerySupport.Test a = new QuerySupport.Test("a", new Integer (1), null); 297 QuerySupport.Test b = new QuerySupport.Test("b", new Integer (2), null); 298 QuerySupport.Test c = new QuerySupport.Test("c", new Integer (5), null); 299 QuerySupport.Test d = 300 new QuerySupport.Test("d", new Integer (112), null); 301 QuerySupport.DynamicTest e = 302 new QuerySupport.DynamicTest("e", 119L, null); 303 QuerySupport.DynamicTest f = 304 new QuerySupport.DynamicTest("f", 8L, null); 305 306 server.registerMBean(a, name1); 307 server.registerMBean(b, name2); 308 server.registerMBean(c, name3); 309 server.registerMBean(d, name4); 310 server.registerMBean(e, name5); 311 server.registerMBean(f, name6); 312 313 Set result = 314 server.queryMBeans(null, 315 Query.lt(Query.attr("Number"), Query.value(3))); 316 assertEquals(2, result.size()); 317 result = 318 server.queryMBeans(null, 319 Query.leq(Query.attr("Number"), Query.value(5))); 320 assertEquals(3, result.size()); 321 result = 322 server.queryMBeans(new ObjectName ("StringMatch:*"), 323 Query.eq(Query.attr("Str"), Query.value("a"))); 324 assertEquals(1, result.size()); 325 result = 326 server.queryMBeans(new ObjectName ("StringMatch:*"), 327 Query.gt(Query.attr("Number"), Query.value(2))); 328 assertEquals(1, result.size()); 329 result = 330 server.queryMBeans(null, 331 Query.gt(Query.attr("Boolean"), Query.value(2))); 332 assertEquals(0, result.size()); 333 result = 334 server.queryMBeans(new ObjectName ("StringMatch:*"), 335 Query.geq(Query.attr("Number"), Query.value(2))); 336 assertEquals(2, result.size()); 337 result = 338 server.queryMBeans(new ObjectName ("StringMatch:*"), 339 Query.geq(Query.attr("Str"), Query.value("a"))); 340 assertEquals(3, result.size()); 341 result = 342 server.queryMBeans(null, 343 Query.gt(Query.attr("Number"), Query.value(2))); 344 assertEquals(4, result.size()); 345 result = 346 server.queryMBeans(new ObjectName ("*Number:*"), 347 Query.gt(Query.attr("Number"), Query.value(100))); 348 assertEquals(2, result.size()); 349 } 350 351 public void testAnyString() throws Exception  352 { 353 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 354 355 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 356 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 357 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 358 359 QuerySupport.Test a = new QuerySupport.Test("trial", null, null); 360 QuerySupport.Test b = new QuerySupport.Test("arial", null, null); 361 QuerySupport.Test c = new QuerySupport.Test("trial2", null, null); 362 server.registerMBean(a, name1); 363 server.registerMBean(b, name2); 364 server.registerMBean(c, name3); 365 Set result = 366 server.queryMBeans(null, 367 Query.anySubString(Query.attr("Str"), Query.value("trial"))); 368 assertEquals(2, result.size()); 369 result = 370 server.queryMBeans(null, 371 Query.anySubString(Query.attr("Str"), Query.value("rial"))); 372 assertEquals(3, result.size()); 373 result = 374 server.queryMBeans(null, 375 Query.anySubString(Query.attr("Str"), Query.value("tri"))); 376 assertEquals(2, result.size()); 377 result = 378 server.queryMBeans(null, 379 Query.anySubString(Query.attr("Str"), Query.value("ri"))); 380 assertEquals(3, result.size()); 381 result = 382 server.queryMBeans(null, 383 Query.anySubString(Query.attr("Str"), Query.value("no"))); 384 assertEquals(0, result.size()); 385 } 386 387 public void testNotOperation() throws Exception  388 { 389 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 390 391 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 392 393 QuerySupport.Test a = new QuerySupport.Test(null, null, Boolean.TRUE); 394 server.registerMBean(a, name1); 395 Set result = 396 server.queryMBeans(null, 397 Query.not(Query.eq(Query.value(false), Query.attr("Boolean")))); 398 assertEquals(1, result.size()); 399 } 400 401 public void testLogical() throws Exception  402 { 403 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 404 405 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 406 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 407 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 408 409 QuerySupport.Test a = 410 new QuerySupport.Test("a", new Integer (1), Boolean.TRUE); 411 QuerySupport.Test b = 412 new QuerySupport.Test("b", new Integer (2), Boolean.FALSE); 413 QuerySupport.Test c = 414 new QuerySupport.Test("c", new Integer (5), Boolean.TRUE); 415 server.registerMBean(a, name1); 416 server.registerMBean(b, name2); 417 server.registerMBean(c, name3); 418 Set result = 419 server.queryMBeans(null, 420 Query.and(Query.eq(Query.attr("Boolean"), Query.value(true)), 421 Query.lt(Query.attr("Number"), Query.value(3)))); 422 assertEquals(1, result.size()); 423 result = 424 server.queryMBeans(null, 425 Query.or(Query.eq(Query.attr("Boolean"), Query.value(true)), 426 Query.eq(Query.attr("Str"), Query.value("a")))); 427 assertEquals(2, result.size()); 428 result = 429 server.queryMBeans(null, 430 Query.or(Query.eq(Query.attr("Boolean"), Query.value(true)), 431 Query.geq(Query.attr("Str"), Query.value("a")))); 432 assertEquals(3, result.size()); 433 } 434 435 public void testQualifiedAttributeName() throws Exception  436 { 437 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 438 439 ObjectName name1 = new ObjectName ("StringMatch:name=test1"); 440 ObjectName name2 = new ObjectName ("StringMatch:name=test2"); 441 ObjectName name3 = new ObjectName ("StringMatch:name=test3"); 442 443 QuerySupport.Test a = 444 new QuerySupport.Test("a", new Integer (1), Boolean.TRUE); 445 QuerySupport.Test b = 446 new QuerySupport.Test("b", new Integer (2), Boolean.FALSE); 447 QuerySupport.Test c = 448 new QuerySupport.Test("c", new Integer (5), Boolean.TRUE); 449 server.registerMBean(a, name1); 450 server.registerMBean(b, name2); 451 server.registerMBean(c, name3); 452 Set result = 453 server.queryMBeans(null, 454 Query.eq(Query.attr("test.javax.management.support.QuerySupport$Test", 455 "Number"), 456 Query.value(2))); 457 assertEquals(1, result.size()); 458 result = 459 server.queryMBeans(null, 460 Query.eq(Query.attr("test.javax.management.support.QuerySupport.Test2", 461 "Number"), 462 Query.value(2))); 463 assertEquals(0, result.size()); 464 } 465 466 public void testQueryScope() throws Exception  467 { 468 MBeanServer server = MBeanServerFactory.newMBeanServer("query"); 469 470 ObjectName name1 = new ObjectName ("Scope:name0=test0"); 471 ObjectName name2 = new ObjectName ("Scope2:name0=test0"); 472 ObjectName name3 = new ObjectName ("Scope:name1=test1"); 473 ObjectName name4 = new ObjectName ("Scope:name1=test1,name2=test2"); 474 ObjectName name5 = 475 new ObjectName ("Scope:name0=test0,name1=test1,name2=test2"); 476 477 QuerySupport.Test a = 478 new QuerySupport.Test("a", new Integer (1), Boolean.TRUE); 479 QuerySupport.Test b = 480 new QuerySupport.Test("b", new Integer (2), Boolean.TRUE); 481 QuerySupport.Test c = 482 new QuerySupport.Test("c", new Integer (3), Boolean.TRUE); 483 QuerySupport.Test d = 484 new QuerySupport.Test("d", new Integer (4), Boolean.TRUE); 485 QuerySupport.Test e = 486 new QuerySupport.Test("e", new Integer (5), Boolean.TRUE); 487 server.registerMBean(a, name1); 488 server.registerMBean(b, name2); 489 server.registerMBean(c, name3); 490 server.registerMBean(d, name4); 491 server.registerMBean(e, name5); 492 493 ObjectName scope = new ObjectName ("*:*"); 494 495 int count = server.getMBeanCount().intValue(); 496 Set result = server.queryMBeans(scope, null); 497 assertEquals(count, result.size()); 498 499 scope = new ObjectName ("*:name0=test0"); 500 result = server.queryMBeans(scope, null); 501 assertEquals(2, result.size()); 502 503 scope = new ObjectName ("*:name0=test0,*"); 504 result = server.queryMBeans(scope, null); 505 assertEquals(3, result.size()); 506 507 scope = new ObjectName ("*:name1=test1"); 508 result = server.queryMBeans(scope, null); 509 assertEquals(1, result.size()); 510 511 scope = new ObjectName ("*:*,name1=test1"); 512 result = server.queryMBeans(scope, null); 513 assertEquals(3, result.size()); 514 515 scope = new ObjectName ("*:name1=test1,*"); 516 result = server.queryMBeans(scope, null); 517 assertEquals(3, result.size()); 518 519 scope = new ObjectName ("*:name2=test2"); 520 result = server.queryMBeans(scope, null); 521 assertEquals(0, result.size()); 522 523 scope = new ObjectName ("*:name2=test2,*"); 524 result = server.queryMBeans(scope, null); 525 assertEquals(2, result.size()); 526 527 scope = new ObjectName ("*:name0=test0,name2=test2"); 528 result = server.queryMBeans(scope, null); 529 assertEquals(0, result.size()); 530 531 scope = new ObjectName ("*:name0=test0,name2=test2,*"); 532 result = server.queryMBeans(scope, null); 533 assertEquals(1, result.size()); 534 535 ObjectName [] xpnames = new ObjectName []{name1, name2}; 536 scope = new ObjectName ("S*:name0=test0"); 537 result = server.queryNames(scope, null); 538 assertTrue(Arrays.asList(xpnames).containsAll(result)); 539 ObjectInstance [] xpinstances = 540 new ObjectInstance []{ 541 new ObjectInstance (name1, QuerySupport.Test.class.getName()), 542 new ObjectInstance (name2, QuerySupport.Test.class.getName())}; 543 result = server.queryMBeans(scope, null); 544 assertTrue(Arrays.asList(xpinstances).containsAll(result) 545 && result.size() == xpinstances.length); 546 assertEquals(2, result.size()); 547 548 scope = new ObjectName ("S*:*"); 549 xpnames = new ObjectName []{name1, name2, name3, name4, name5}; 550 result = server.queryNames(scope, null); 551 assertTrue(Arrays.asList(xpnames).containsAll(result) 552 && result.size() == xpnames.length); 553 result = server.queryMBeans(scope, null); 554 xpinstances = 555 new ObjectInstance []{ 556 new ObjectInstance (name1, QuerySupport.Test.class.getName()), 557 new ObjectInstance (name2, QuerySupport.Test.class.getName()), 558 new ObjectInstance (name3, QuerySupport.Test.class.getName()), 559 new ObjectInstance (name4, QuerySupport.Test.class.getName()), 560 new ObjectInstance (name5, QuerySupport.Test.class.getName())}; 561 assertTrue(Arrays.asList(xpinstances).containsAll(result) 562 && result.size() == xpinstances.length); 563 assertEquals(5, result.size()); 564 565 scope = new ObjectName ("Scope?:*"); 566 xpnames = new ObjectName []{name2}; 567 result = server.queryNames(scope, null); 568 assertTrue(Arrays.asList(xpnames).containsAll(result) 569 && result.size() == xpnames.length); 570 result = server.queryMBeans(scope, null); 571 xpinstances = 572 new ObjectInstance []{ 573 new ObjectInstance (name2, QuerySupport.Test.class.getName())}; 574 assertTrue(Arrays.asList(xpinstances).containsAll(result) 575 && result.size() == xpinstances.length); 576 assertEquals(1, result.size()); 577 578 scope = new ObjectName ("S?o?e?:*"); 579 xpnames = new ObjectName []{name2}; 580 result = server.queryNames(scope, null); 581 assertTrue(Arrays.asList(xpnames).containsAll(result) 582 && result.size() == xpnames.length); 583 result = server.queryMBeans(scope, null); 584 xpinstances = 585 new ObjectInstance []{ 586 new ObjectInstance (name2, QuerySupport.Test.class.getName())}; 587 assertTrue(Arrays.asList(xpinstances).containsAll(result) 588 && result.size() == xpinstances.length); 589 assertEquals(1, result.size()); 590 591 scope = new ObjectName ("?c*e?:*"); 592 xpnames = new ObjectName []{name2}; 593 result = server.queryNames(scope, null); 594 assertTrue(Arrays.asList(xpnames).containsAll(result) 595 && result.size() == xpnames.length); 596 result = server.queryMBeans(scope, null); 597 xpinstances = 598 new ObjectInstance []{ 599 new ObjectInstance (name2, QuerySupport.Test.class.getName())}; 600 assertTrue(Arrays.asList(xpinstances).containsAll(result) 601 && result.size() == xpinstances.length); 602 assertEquals(1, result.size()); 603 } 604 605 public void testExceptionPropagation() throws Exception  606 { 607 MBeanServer server = MBeanServerFactory.createMBeanServer(); 608 ObjectName objname = 609 new ObjectName ("querytest:name=testExceptionPropagation"); 610 QuerySupport.DynamicTest mbean = 611 new QuerySupport.DynamicTest("xyzzy", 42L, Boolean.TRUE); 612 server.registerMBean(mbean, objname); 613 Set result = 614 server.queryNames(null, 615 Query.match(Query.attr("Str"), Query.value("x*y"))); 616 assertEquals(0, result.size()); 617 result = 618 server.queryMBeans(new ObjectName ("query*:*"), 619 Query.match(Query.attr("Str"), Query.value("x*y"))); 620 assertEquals(0, result.size()); 621 } 622 } 623 | Popular Tags |