001/* 002 * CDDL HEADER START 003 * 004 * The contents of this file are subject to the terms of the 005 * Common Development and Distribution License, Version 1.0 only 006 * (the "License"). You may not use this file except in compliance 007 * with the License. 008 * 009 * You can obtain a copy of the license at legal-notices/CDDLv1_0.txt 010 * or http://forgerock.org/license/CDDLv1.0.html. 011 * See the License for the specific language governing permissions 012 * and limitations under the License. 013 * 014 * When distributing Covered Code, include this CDDL HEADER in each 015 * file and include the License file at legal-notices/CDDLv1_0.txt. 016 * If applicable, add the following below this CDDL HEADER, with the 017 * fields enclosed by brackets "[]" replaced with your own identifying 018 * information: 019 * Portions Copyright [yyyy] [name of copyright owner] 020 * 021 * CDDL HEADER END 022 * 023 * 024 * Copyright 2008 Sun Microsystems, Inc. 025 */ 026package org.forgerock.opendj.server.config.meta; 027 028 029 030import java.util.Collection; 031import java.util.SortedSet; 032import org.forgerock.opendj.config.AdministratorAction; 033import org.forgerock.opendj.config.BooleanPropertyDefinition; 034import org.forgerock.opendj.config.client.ConcurrentModificationException; 035import org.forgerock.opendj.config.client.ManagedObject; 036import org.forgerock.opendj.config.client.MissingMandatoryPropertiesException; 037import org.forgerock.opendj.config.client.OperationRejectedException; 038import org.forgerock.opendj.config.DNPropertyDefinition; 039import org.forgerock.opendj.config.EnumPropertyDefinition; 040import org.forgerock.opendj.config.IntegerPropertyDefinition; 041import org.forgerock.opendj.config.IPAddressMaskPropertyDefinition; 042import org.forgerock.opendj.config.ManagedObjectAlreadyExistsException; 043import org.forgerock.opendj.config.ManagedObjectDefinition; 044import org.forgerock.opendj.config.PropertyOption; 045import org.forgerock.opendj.config.PropertyProvider; 046import org.forgerock.opendj.config.server.ConfigurationChangeListener; 047import org.forgerock.opendj.config.server.ServerManagedObject; 048import org.forgerock.opendj.config.StringPropertyDefinition; 049import org.forgerock.opendj.config.Tag; 050import org.forgerock.opendj.config.TopCfgDefn; 051import org.forgerock.opendj.config.UndefinedDefaultBehaviorProvider; 052import org.forgerock.opendj.ldap.AddressMask; 053import org.forgerock.opendj.ldap.DN; 054import org.forgerock.opendj.ldap.LdapException; 055import org.forgerock.opendj.server.config.client.AccessLogFilteringCriteriaCfgClient; 056import org.forgerock.opendj.server.config.server.AccessLogFilteringCriteriaCfg; 057 058 059 060/** 061 * An interface for querying the Access Log Filtering Criteria managed 062 * object definition meta information. 063 * <p> 064 * A set of rules which together determine whether a log record should 065 * be logged or not. 066 */ 067public final class AccessLogFilteringCriteriaCfgDefn extends ManagedObjectDefinition<AccessLogFilteringCriteriaCfgClient, AccessLogFilteringCriteriaCfg> { 068 069 /** The singleton configuration definition instance. */ 070 private static final AccessLogFilteringCriteriaCfgDefn INSTANCE = new AccessLogFilteringCriteriaCfgDefn(); 071 072 073 074 /** 075 * Defines the set of permissable values for the "log-record-type" property. 076 * <p> 077 * Filters log records based on their type. 078 */ 079 public static enum LogRecordType { 080 081 /** 082 * Abandon operations 083 */ 084 ABANDON("abandon"), 085 086 087 088 /** 089 * Add operations 090 */ 091 ADD("add"), 092 093 094 095 /** 096 * Bind operations 097 */ 098 BIND("bind"), 099 100 101 102 /** 103 * Compare operations 104 */ 105 COMPARE("compare"), 106 107 108 109 /** 110 * Client connections 111 */ 112 CONNECT("connect"), 113 114 115 116 /** 117 * Delete operations 118 */ 119 DELETE("delete"), 120 121 122 123 /** 124 * Client disconnections 125 */ 126 DISCONNECT("disconnect"), 127 128 129 130 /** 131 * Extended operations 132 */ 133 EXTENDED("extended"), 134 135 136 137 /** 138 * Modify operations 139 */ 140 MODIFY("modify"), 141 142 143 144 /** 145 * Rename operations 146 */ 147 RENAME("rename"), 148 149 150 151 /** 152 * Search operations 153 */ 154 SEARCH("search"), 155 156 157 158 /** 159 * Unbind operations 160 */ 161 UNBIND("unbind"); 162 163 164 165 /** String representation of the value. */ 166 private final String name; 167 168 169 170 /** Private constructor. */ 171 private LogRecordType(String name) { this.name = name; } 172 173 174 175 /** {@inheritDoc} */ 176 public String toString() { return name; } 177 178 } 179 180 181 182 /** The "connection-client-address-equal-to" property definition. */ 183 private static final IPAddressMaskPropertyDefinition PD_CONNECTION_CLIENT_ADDRESS_EQUAL_TO; 184 185 186 187 /** The "connection-client-address-not-equal-to" property definition. */ 188 private static final IPAddressMaskPropertyDefinition PD_CONNECTION_CLIENT_ADDRESS_NOT_EQUAL_TO; 189 190 191 192 /** The "connection-port-equal-to" property definition. */ 193 private static final IntegerPropertyDefinition PD_CONNECTION_PORT_EQUAL_TO; 194 195 196 197 /** The "connection-protocol-equal-to" property definition. */ 198 private static final StringPropertyDefinition PD_CONNECTION_PROTOCOL_EQUAL_TO; 199 200 201 202 /** The "log-record-type" property definition. */ 203 private static final EnumPropertyDefinition<LogRecordType> PD_LOG_RECORD_TYPE; 204 205 206 207 /** The "request-target-dn-equal-to" property definition. */ 208 private static final StringPropertyDefinition PD_REQUEST_TARGET_DN_EQUAL_TO; 209 210 211 212 /** The "request-target-dn-not-equal-to" property definition. */ 213 private static final StringPropertyDefinition PD_REQUEST_TARGET_DN_NOT_EQUAL_TO; 214 215 216 217 /** The "response-etime-greater-than" property definition. */ 218 private static final IntegerPropertyDefinition PD_RESPONSE_ETIME_GREATER_THAN; 219 220 221 222 /** The "response-etime-less-than" property definition. */ 223 private static final IntegerPropertyDefinition PD_RESPONSE_ETIME_LESS_THAN; 224 225 226 227 /** The "response-result-code-equal-to" property definition. */ 228 private static final IntegerPropertyDefinition PD_RESPONSE_RESULT_CODE_EQUAL_TO; 229 230 231 232 /** The "response-result-code-not-equal-to" property definition. */ 233 private static final IntegerPropertyDefinition PD_RESPONSE_RESULT_CODE_NOT_EQUAL_TO; 234 235 236 237 /** The "search-response-is-indexed" property definition. */ 238 private static final BooleanPropertyDefinition PD_SEARCH_RESPONSE_IS_INDEXED; 239 240 241 242 /** The "search-response-nentries-greater-than" property definition. */ 243 private static final IntegerPropertyDefinition PD_SEARCH_RESPONSE_NENTRIES_GREATER_THAN; 244 245 246 247 /** The "search-response-nentries-less-than" property definition. */ 248 private static final IntegerPropertyDefinition PD_SEARCH_RESPONSE_NENTRIES_LESS_THAN; 249 250 251 252 /** The "user-dn-equal-to" property definition. */ 253 private static final StringPropertyDefinition PD_USER_DN_EQUAL_TO; 254 255 256 257 /** The "user-dn-not-equal-to" property definition. */ 258 private static final StringPropertyDefinition PD_USER_DN_NOT_EQUAL_TO; 259 260 261 262 /** The "user-is-member-of" property definition. */ 263 private static final DNPropertyDefinition PD_USER_IS_MEMBER_OF; 264 265 266 267 /** The "user-is-not-member-of" property definition. */ 268 private static final DNPropertyDefinition PD_USER_IS_NOT_MEMBER_OF; 269 270 271 272 /** Build the "connection-client-address-equal-to" property definition. */ 273 static { 274 IPAddressMaskPropertyDefinition.Builder builder = IPAddressMaskPropertyDefinition.createBuilder(INSTANCE, "connection-client-address-equal-to"); 275 builder.setOption(PropertyOption.MULTI_VALUED); 276 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "connection-client-address-equal-to")); 277 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<AddressMask>()); 278 PD_CONNECTION_CLIENT_ADDRESS_EQUAL_TO = builder.getInstance(); 279 INSTANCE.registerPropertyDefinition(PD_CONNECTION_CLIENT_ADDRESS_EQUAL_TO); 280 } 281 282 283 284 /** Build the "connection-client-address-not-equal-to" property definition. */ 285 static { 286 IPAddressMaskPropertyDefinition.Builder builder = IPAddressMaskPropertyDefinition.createBuilder(INSTANCE, "connection-client-address-not-equal-to"); 287 builder.setOption(PropertyOption.MULTI_VALUED); 288 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "connection-client-address-not-equal-to")); 289 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<AddressMask>()); 290 PD_CONNECTION_CLIENT_ADDRESS_NOT_EQUAL_TO = builder.getInstance(); 291 INSTANCE.registerPropertyDefinition(PD_CONNECTION_CLIENT_ADDRESS_NOT_EQUAL_TO); 292 } 293 294 295 296 /** Build the "connection-port-equal-to" property definition. */ 297 static { 298 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "connection-port-equal-to"); 299 builder.setOption(PropertyOption.MULTI_VALUED); 300 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "connection-port-equal-to")); 301 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 302 builder.setUpperLimit(65535); 303 builder.setLowerLimit(1); 304 PD_CONNECTION_PORT_EQUAL_TO = builder.getInstance(); 305 INSTANCE.registerPropertyDefinition(PD_CONNECTION_PORT_EQUAL_TO); 306 } 307 308 309 310 /** Build the "connection-protocol-equal-to" property definition. */ 311 static { 312 StringPropertyDefinition.Builder builder = StringPropertyDefinition.createBuilder(INSTANCE, "connection-protocol-equal-to"); 313 builder.setOption(PropertyOption.MULTI_VALUED); 314 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "connection-protocol-equal-to")); 315 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<String>()); 316 builder.setPattern("[a-zA-Z0-9]+", "NAME"); 317 PD_CONNECTION_PROTOCOL_EQUAL_TO = builder.getInstance(); 318 INSTANCE.registerPropertyDefinition(PD_CONNECTION_PROTOCOL_EQUAL_TO); 319 } 320 321 322 323 /** Build the "log-record-type" property definition. */ 324 static { 325 EnumPropertyDefinition.Builder<LogRecordType> builder = EnumPropertyDefinition.createBuilder(INSTANCE, "log-record-type"); 326 builder.setOption(PropertyOption.MULTI_VALUED); 327 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "log-record-type")); 328 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<LogRecordType>()); 329 builder.setEnumClass(LogRecordType.class); 330 PD_LOG_RECORD_TYPE = builder.getInstance(); 331 INSTANCE.registerPropertyDefinition(PD_LOG_RECORD_TYPE); 332 } 333 334 335 336 /** Build the "request-target-dn-equal-to" property definition. */ 337 static { 338 StringPropertyDefinition.Builder builder = StringPropertyDefinition.createBuilder(INSTANCE, "request-target-dn-equal-to"); 339 builder.setOption(PropertyOption.MULTI_VALUED); 340 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "request-target-dn-equal-to")); 341 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<String>()); 342 PD_REQUEST_TARGET_DN_EQUAL_TO = builder.getInstance(); 343 INSTANCE.registerPropertyDefinition(PD_REQUEST_TARGET_DN_EQUAL_TO); 344 } 345 346 347 348 /** Build the "request-target-dn-not-equal-to" property definition. */ 349 static { 350 StringPropertyDefinition.Builder builder = StringPropertyDefinition.createBuilder(INSTANCE, "request-target-dn-not-equal-to"); 351 builder.setOption(PropertyOption.MULTI_VALUED); 352 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "request-target-dn-not-equal-to")); 353 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<String>()); 354 PD_REQUEST_TARGET_DN_NOT_EQUAL_TO = builder.getInstance(); 355 INSTANCE.registerPropertyDefinition(PD_REQUEST_TARGET_DN_NOT_EQUAL_TO); 356 } 357 358 359 360 /** Build the "response-etime-greater-than" property definition. */ 361 static { 362 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "response-etime-greater-than"); 363 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "response-etime-greater-than")); 364 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 365 PD_RESPONSE_ETIME_GREATER_THAN = builder.getInstance(); 366 INSTANCE.registerPropertyDefinition(PD_RESPONSE_ETIME_GREATER_THAN); 367 } 368 369 370 371 /** Build the "response-etime-less-than" property definition. */ 372 static { 373 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "response-etime-less-than"); 374 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "response-etime-less-than")); 375 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 376 PD_RESPONSE_ETIME_LESS_THAN = builder.getInstance(); 377 INSTANCE.registerPropertyDefinition(PD_RESPONSE_ETIME_LESS_THAN); 378 } 379 380 381 382 /** Build the "response-result-code-equal-to" property definition. */ 383 static { 384 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "response-result-code-equal-to"); 385 builder.setOption(PropertyOption.MULTI_VALUED); 386 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "response-result-code-equal-to")); 387 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 388 PD_RESPONSE_RESULT_CODE_EQUAL_TO = builder.getInstance(); 389 INSTANCE.registerPropertyDefinition(PD_RESPONSE_RESULT_CODE_EQUAL_TO); 390 } 391 392 393 394 /** Build the "response-result-code-not-equal-to" property definition. */ 395 static { 396 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "response-result-code-not-equal-to"); 397 builder.setOption(PropertyOption.MULTI_VALUED); 398 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "response-result-code-not-equal-to")); 399 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 400 PD_RESPONSE_RESULT_CODE_NOT_EQUAL_TO = builder.getInstance(); 401 INSTANCE.registerPropertyDefinition(PD_RESPONSE_RESULT_CODE_NOT_EQUAL_TO); 402 } 403 404 405 406 /** Build the "search-response-is-indexed" property definition. */ 407 static { 408 BooleanPropertyDefinition.Builder builder = BooleanPropertyDefinition.createBuilder(INSTANCE, "search-response-is-indexed"); 409 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "search-response-is-indexed")); 410 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Boolean>()); 411 PD_SEARCH_RESPONSE_IS_INDEXED = builder.getInstance(); 412 INSTANCE.registerPropertyDefinition(PD_SEARCH_RESPONSE_IS_INDEXED); 413 } 414 415 416 417 /** Build the "search-response-nentries-greater-than" property definition. */ 418 static { 419 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "search-response-nentries-greater-than"); 420 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "search-response-nentries-greater-than")); 421 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 422 PD_SEARCH_RESPONSE_NENTRIES_GREATER_THAN = builder.getInstance(); 423 INSTANCE.registerPropertyDefinition(PD_SEARCH_RESPONSE_NENTRIES_GREATER_THAN); 424 } 425 426 427 428 /** Build the "search-response-nentries-less-than" property definition. */ 429 static { 430 IntegerPropertyDefinition.Builder builder = IntegerPropertyDefinition.createBuilder(INSTANCE, "search-response-nentries-less-than"); 431 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "search-response-nentries-less-than")); 432 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<Integer>()); 433 PD_SEARCH_RESPONSE_NENTRIES_LESS_THAN = builder.getInstance(); 434 INSTANCE.registerPropertyDefinition(PD_SEARCH_RESPONSE_NENTRIES_LESS_THAN); 435 } 436 437 438 439 /** Build the "user-dn-equal-to" property definition. */ 440 static { 441 StringPropertyDefinition.Builder builder = StringPropertyDefinition.createBuilder(INSTANCE, "user-dn-equal-to"); 442 builder.setOption(PropertyOption.MULTI_VALUED); 443 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "user-dn-equal-to")); 444 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<String>()); 445 PD_USER_DN_EQUAL_TO = builder.getInstance(); 446 INSTANCE.registerPropertyDefinition(PD_USER_DN_EQUAL_TO); 447 } 448 449 450 451 /** Build the "user-dn-not-equal-to" property definition. */ 452 static { 453 StringPropertyDefinition.Builder builder = StringPropertyDefinition.createBuilder(INSTANCE, "user-dn-not-equal-to"); 454 builder.setOption(PropertyOption.MULTI_VALUED); 455 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "user-dn-not-equal-to")); 456 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<String>()); 457 PD_USER_DN_NOT_EQUAL_TO = builder.getInstance(); 458 INSTANCE.registerPropertyDefinition(PD_USER_DN_NOT_EQUAL_TO); 459 } 460 461 462 463 /** Build the "user-is-member-of" property definition. */ 464 static { 465 DNPropertyDefinition.Builder builder = DNPropertyDefinition.createBuilder(INSTANCE, "user-is-member-of"); 466 builder.setOption(PropertyOption.MULTI_VALUED); 467 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "user-is-member-of")); 468 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<DN>()); 469 PD_USER_IS_MEMBER_OF = builder.getInstance(); 470 INSTANCE.registerPropertyDefinition(PD_USER_IS_MEMBER_OF); 471 } 472 473 474 475 /** Build the "user-is-not-member-of" property definition. */ 476 static { 477 DNPropertyDefinition.Builder builder = DNPropertyDefinition.createBuilder(INSTANCE, "user-is-not-member-of"); 478 builder.setOption(PropertyOption.MULTI_VALUED); 479 builder.setAdministratorAction(new AdministratorAction(AdministratorAction.Type.NONE, INSTANCE, "user-is-not-member-of")); 480 builder.setDefaultBehaviorProvider(new UndefinedDefaultBehaviorProvider<DN>()); 481 PD_USER_IS_NOT_MEMBER_OF = builder.getInstance(); 482 INSTANCE.registerPropertyDefinition(PD_USER_IS_NOT_MEMBER_OF); 483 } 484 485 486 487 // Register the tags associated with this managed object definition. 488 static { 489 INSTANCE.registerTag(Tag.valueOf("logging")); 490 } 491 492 493 494 /** 495 * Get the Access Log Filtering Criteria configuration definition 496 * singleton. 497 * 498 * @return Returns the Access Log Filtering Criteria configuration 499 * definition singleton. 500 */ 501 public static AccessLogFilteringCriteriaCfgDefn getInstance() { 502 return INSTANCE; 503 } 504 505 506 507 /** 508 * Private constructor. 509 */ 510 private AccessLogFilteringCriteriaCfgDefn() { 511 super("access-log-filtering-criteria", TopCfgDefn.getInstance()); 512 } 513 514 515 516 /** {@inheritDoc} */ 517 public AccessLogFilteringCriteriaCfgClient createClientConfiguration( 518 ManagedObject<? extends AccessLogFilteringCriteriaCfgClient> impl) { 519 return new AccessLogFilteringCriteriaCfgClientImpl(impl); 520 } 521 522 523 524 /** {@inheritDoc} */ 525 public AccessLogFilteringCriteriaCfg createServerConfiguration( 526 ServerManagedObject<? extends AccessLogFilteringCriteriaCfg> impl) { 527 return new AccessLogFilteringCriteriaCfgServerImpl(impl); 528 } 529 530 531 532 /** {@inheritDoc} */ 533 public Class<AccessLogFilteringCriteriaCfg> getServerConfigurationClass() { 534 return AccessLogFilteringCriteriaCfg.class; 535 } 536 537 538 539 /** 540 * Get the "connection-client-address-equal-to" property definition. 541 * <p> 542 * Filters log records associated with connections which match at 543 * least one of the specified client host names or address masks. 544 * <p> 545 * Valid values include a host name, a fully qualified domain name, 546 * a domain name, an IP address, or a subnetwork with subnetwork 547 * mask. 548 * 549 * @return Returns the "connection-client-address-equal-to" property definition. 550 */ 551 public IPAddressMaskPropertyDefinition getConnectionClientAddressEqualToPropertyDefinition() { 552 return PD_CONNECTION_CLIENT_ADDRESS_EQUAL_TO; 553 } 554 555 556 557 /** 558 * Get the "connection-client-address-not-equal-to" property definition. 559 * <p> 560 * Filters log records associated with connections which do not 561 * match any of the specified client host names or address masks. 562 * <p> 563 * Valid values include a host name, a fully qualified domain name, 564 * a domain name, an IP address, or a subnetwork with subnetwork 565 * mask. 566 * 567 * @return Returns the "connection-client-address-not-equal-to" property definition. 568 */ 569 public IPAddressMaskPropertyDefinition getConnectionClientAddressNotEqualToPropertyDefinition() { 570 return PD_CONNECTION_CLIENT_ADDRESS_NOT_EQUAL_TO; 571 } 572 573 574 575 /** 576 * Get the "connection-port-equal-to" property definition. 577 * <p> 578 * Filters log records associated with connections to any of the 579 * specified listener port numbers. 580 * 581 * @return Returns the "connection-port-equal-to" property definition. 582 */ 583 public IntegerPropertyDefinition getConnectionPortEqualToPropertyDefinition() { 584 return PD_CONNECTION_PORT_EQUAL_TO; 585 } 586 587 588 589 /** 590 * Get the "connection-protocol-equal-to" property definition. 591 * <p> 592 * Filters log records associated with connections which match any 593 * of the specified protocols. 594 * <p> 595 * Typical values include "ldap", "ldaps", or "jmx". 596 * 597 * @return Returns the "connection-protocol-equal-to" property definition. 598 */ 599 public StringPropertyDefinition getConnectionProtocolEqualToPropertyDefinition() { 600 return PD_CONNECTION_PROTOCOL_EQUAL_TO; 601 } 602 603 604 605 /** 606 * Get the "log-record-type" property definition. 607 * <p> 608 * Filters log records based on their type. 609 * 610 * @return Returns the "log-record-type" property definition. 611 */ 612 public EnumPropertyDefinition<LogRecordType> getLogRecordTypePropertyDefinition() { 613 return PD_LOG_RECORD_TYPE; 614 } 615 616 617 618 /** 619 * Get the "request-target-dn-equal-to" property definition. 620 * <p> 621 * Filters operation log records associated with operations which 622 * target entries matching at least one of the specified DN patterns. 623 * <p> 624 * Valid DN filters are strings composed of zero or more wildcards. 625 * A double wildcard ** replaces one or more RDN components (as in 626 * uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces 627 * either a whole RDN, or a whole type, or a value substring (as in 628 * uid=bj*,ou=people,dc=example,dc=com). 629 * 630 * @return Returns the "request-target-dn-equal-to" property definition. 631 */ 632 public StringPropertyDefinition getRequestTargetDNEqualToPropertyDefinition() { 633 return PD_REQUEST_TARGET_DN_EQUAL_TO; 634 } 635 636 637 638 /** 639 * Get the "request-target-dn-not-equal-to" property definition. 640 * <p> 641 * Filters operation log records associated with operations which 642 * target entries matching none of the specified DN patterns. 643 * <p> 644 * Valid DN filters are strings composed of zero or more wildcards. 645 * A double wildcard ** replaces one or more RDN components (as in 646 * uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces 647 * either a whole RDN, or a whole type, or a value substring (as in 648 * uid=bj*,ou=people,dc=example,dc=com). 649 * 650 * @return Returns the "request-target-dn-not-equal-to" property definition. 651 */ 652 public StringPropertyDefinition getRequestTargetDNNotEqualToPropertyDefinition() { 653 return PD_REQUEST_TARGET_DN_NOT_EQUAL_TO; 654 } 655 656 657 658 /** 659 * Get the "response-etime-greater-than" property definition. 660 * <p> 661 * Filters operation response log records associated with operations 662 * which took longer than the specified number of milli-seconds to 663 * complete. 664 * <p> 665 * It is recommended to only use this criteria in conjunction with 666 * the "combined" output mode of the access logger, since this filter 667 * criteria is only applied to response log messages. 668 * 669 * @return Returns the "response-etime-greater-than" property definition. 670 */ 671 public IntegerPropertyDefinition getResponseEtimeGreaterThanPropertyDefinition() { 672 return PD_RESPONSE_ETIME_GREATER_THAN; 673 } 674 675 676 677 /** 678 * Get the "response-etime-less-than" property definition. 679 * <p> 680 * Filters operation response log records associated with operations 681 * which took less than the specified number of milli-seconds to 682 * complete. 683 * <p> 684 * It is recommended to only use this criteria in conjunction with 685 * the "combined" output mode of the access logger, since this filter 686 * criteria is only applied to response log messages. 687 * 688 * @return Returns the "response-etime-less-than" property definition. 689 */ 690 public IntegerPropertyDefinition getResponseEtimeLessThanPropertyDefinition() { 691 return PD_RESPONSE_ETIME_LESS_THAN; 692 } 693 694 695 696 /** 697 * Get the "response-result-code-equal-to" property definition. 698 * <p> 699 * Filters operation response log records associated with operations 700 * which include any of the specified result codes. 701 * <p> 702 * It is recommended to only use this criteria in conjunction with 703 * the "combined" output mode of the access logger, since this filter 704 * criteria is only applied to response log messages. 705 * 706 * @return Returns the "response-result-code-equal-to" property definition. 707 */ 708 public IntegerPropertyDefinition getResponseResultCodeEqualToPropertyDefinition() { 709 return PD_RESPONSE_RESULT_CODE_EQUAL_TO; 710 } 711 712 713 714 /** 715 * Get the "response-result-code-not-equal-to" property definition. 716 * <p> 717 * Filters operation response log records associated with operations 718 * which do not include any of the specified result codes. 719 * <p> 720 * It is recommended to only use this criteria in conjunction with 721 * the "combined" output mode of the access logger, since this filter 722 * criteria is only applied to response log messages. 723 * 724 * @return Returns the "response-result-code-not-equal-to" property definition. 725 */ 726 public IntegerPropertyDefinition getResponseResultCodeNotEqualToPropertyDefinition() { 727 return PD_RESPONSE_RESULT_CODE_NOT_EQUAL_TO; 728 } 729 730 731 732 /** 733 * Get the "search-response-is-indexed" property definition. 734 * <p> 735 * Filters search operation response log records associated with 736 * searches which were either indexed or unindexed. 737 * <p> 738 * It is recommended to only use this criteria in conjunction with 739 * the "combined" output mode of the access logger, since this filter 740 * criteria is only applied to response log messages. 741 * 742 * @return Returns the "search-response-is-indexed" property definition. 743 */ 744 public BooleanPropertyDefinition getSearchResponseIsIndexedPropertyDefinition() { 745 return PD_SEARCH_RESPONSE_IS_INDEXED; 746 } 747 748 749 750 /** 751 * Get the "search-response-nentries-greater-than" property definition. 752 * <p> 753 * Filters search operation response log records associated with 754 * searches which returned more than the specified number of entries. 755 * <p> 756 * It is recommended to only use this criteria in conjunction with 757 * the "combined" output mode of the access logger, since this filter 758 * criteria is only applied to response log messages. 759 * 760 * @return Returns the "search-response-nentries-greater-than" property definition. 761 */ 762 public IntegerPropertyDefinition getSearchResponseNentriesGreaterThanPropertyDefinition() { 763 return PD_SEARCH_RESPONSE_NENTRIES_GREATER_THAN; 764 } 765 766 767 768 /** 769 * Get the "search-response-nentries-less-than" property definition. 770 * <p> 771 * Filters search operation response log records associated with 772 * searches which returned less than the specified number of entries. 773 * <p> 774 * It is recommended to only use this criteria in conjunction with 775 * the "combined" output mode of the access logger, since this filter 776 * criteria is only applied to response log messages. 777 * 778 * @return Returns the "search-response-nentries-less-than" property definition. 779 */ 780 public IntegerPropertyDefinition getSearchResponseNentriesLessThanPropertyDefinition() { 781 return PD_SEARCH_RESPONSE_NENTRIES_LESS_THAN; 782 } 783 784 785 786 /** 787 * Get the "user-dn-equal-to" property definition. 788 * <p> 789 * Filters log records associated with users matching at least one 790 * of the specified DN patterns. 791 * <p> 792 * Valid DN filters are strings composed of zero or more wildcards. 793 * A double wildcard ** replaces one or more RDN components (as in 794 * uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces 795 * either a whole RDN, or a whole type, or a value substring (as in 796 * uid=bj*,ou=people,dc=example,dc=com). 797 * 798 * @return Returns the "user-dn-equal-to" property definition. 799 */ 800 public StringPropertyDefinition getUserDNEqualToPropertyDefinition() { 801 return PD_USER_DN_EQUAL_TO; 802 } 803 804 805 806 /** 807 * Get the "user-dn-not-equal-to" property definition. 808 * <p> 809 * Filters log records associated with users which do not match any 810 * of the specified DN patterns. 811 * <p> 812 * Valid DN filters are strings composed of zero or more wildcards. 813 * A double wildcard ** replaces one or more RDN components (as in 814 * uid=dmiller,**,dc=example,dc=com). A simple wildcard * replaces 815 * either a whole RDN, or a whole type, or a value substring (as in 816 * uid=bj*,ou=people,dc=example,dc=com). 817 * 818 * @return Returns the "user-dn-not-equal-to" property definition. 819 */ 820 public StringPropertyDefinition getUserDNNotEqualToPropertyDefinition() { 821 return PD_USER_DN_NOT_EQUAL_TO; 822 } 823 824 825 826 /** 827 * Get the "user-is-member-of" property definition. 828 * <p> 829 * Filters log records associated with users which are members of at 830 * least one of the specified groups. 831 * 832 * @return Returns the "user-is-member-of" property definition. 833 */ 834 public DNPropertyDefinition getUserIsMemberOfPropertyDefinition() { 835 return PD_USER_IS_MEMBER_OF; 836 } 837 838 839 840 /** 841 * Get the "user-is-not-member-of" property definition. 842 * <p> 843 * Filters log records associated with users which are not members 844 * of any of the specified groups. 845 * 846 * @return Returns the "user-is-not-member-of" property definition. 847 */ 848 public DNPropertyDefinition getUserIsNotMemberOfPropertyDefinition() { 849 return PD_USER_IS_NOT_MEMBER_OF; 850 } 851 852 853 854 /** 855 * Managed object client implementation. 856 */ 857 private static class AccessLogFilteringCriteriaCfgClientImpl implements 858 AccessLogFilteringCriteriaCfgClient { 859 860 /** Private implementation. */ 861 private ManagedObject<? extends AccessLogFilteringCriteriaCfgClient> impl; 862 863 864 865 /** Private constructor. */ 866 private AccessLogFilteringCriteriaCfgClientImpl( 867 ManagedObject<? extends AccessLogFilteringCriteriaCfgClient> impl) { 868 this.impl = impl; 869 } 870 871 872 873 /** {@inheritDoc} */ 874 public SortedSet<AddressMask> getConnectionClientAddressEqualTo() { 875 return impl.getPropertyValues(INSTANCE.getConnectionClientAddressEqualToPropertyDefinition()); 876 } 877 878 879 880 /** {@inheritDoc} */ 881 public void setConnectionClientAddressEqualTo(Collection<AddressMask> values) { 882 impl.setPropertyValues(INSTANCE.getConnectionClientAddressEqualToPropertyDefinition(), values); 883 } 884 885 886 887 /** {@inheritDoc} */ 888 public SortedSet<AddressMask> getConnectionClientAddressNotEqualTo() { 889 return impl.getPropertyValues(INSTANCE.getConnectionClientAddressNotEqualToPropertyDefinition()); 890 } 891 892 893 894 /** {@inheritDoc} */ 895 public void setConnectionClientAddressNotEqualTo(Collection<AddressMask> values) { 896 impl.setPropertyValues(INSTANCE.getConnectionClientAddressNotEqualToPropertyDefinition(), values); 897 } 898 899 900 901 /** {@inheritDoc} */ 902 public SortedSet<Integer> getConnectionPortEqualTo() { 903 return impl.getPropertyValues(INSTANCE.getConnectionPortEqualToPropertyDefinition()); 904 } 905 906 907 908 /** {@inheritDoc} */ 909 public void setConnectionPortEqualTo(Collection<Integer> values) { 910 impl.setPropertyValues(INSTANCE.getConnectionPortEqualToPropertyDefinition(), values); 911 } 912 913 914 915 /** {@inheritDoc} */ 916 public SortedSet<String> getConnectionProtocolEqualTo() { 917 return impl.getPropertyValues(INSTANCE.getConnectionProtocolEqualToPropertyDefinition()); 918 } 919 920 921 922 /** {@inheritDoc} */ 923 public void setConnectionProtocolEqualTo(Collection<String> values) { 924 impl.setPropertyValues(INSTANCE.getConnectionProtocolEqualToPropertyDefinition(), values); 925 } 926 927 928 929 /** {@inheritDoc} */ 930 public SortedSet<LogRecordType> getLogRecordType() { 931 return impl.getPropertyValues(INSTANCE.getLogRecordTypePropertyDefinition()); 932 } 933 934 935 936 /** {@inheritDoc} */ 937 public void setLogRecordType(Collection<LogRecordType> values) { 938 impl.setPropertyValues(INSTANCE.getLogRecordTypePropertyDefinition(), values); 939 } 940 941 942 943 /** {@inheritDoc} */ 944 public SortedSet<String> getRequestTargetDNEqualTo() { 945 return impl.getPropertyValues(INSTANCE.getRequestTargetDNEqualToPropertyDefinition()); 946 } 947 948 949 950 /** {@inheritDoc} */ 951 public void setRequestTargetDNEqualTo(Collection<String> values) { 952 impl.setPropertyValues(INSTANCE.getRequestTargetDNEqualToPropertyDefinition(), values); 953 } 954 955 956 957 /** {@inheritDoc} */ 958 public SortedSet<String> getRequestTargetDNNotEqualTo() { 959 return impl.getPropertyValues(INSTANCE.getRequestTargetDNNotEqualToPropertyDefinition()); 960 } 961 962 963 964 /** {@inheritDoc} */ 965 public void setRequestTargetDNNotEqualTo(Collection<String> values) { 966 impl.setPropertyValues(INSTANCE.getRequestTargetDNNotEqualToPropertyDefinition(), values); 967 } 968 969 970 971 /** {@inheritDoc} */ 972 public Integer getResponseEtimeGreaterThan() { 973 return impl.getPropertyValue(INSTANCE.getResponseEtimeGreaterThanPropertyDefinition()); 974 } 975 976 977 978 /** {@inheritDoc} */ 979 public void setResponseEtimeGreaterThan(Integer value) { 980 impl.setPropertyValue(INSTANCE.getResponseEtimeGreaterThanPropertyDefinition(), value); 981 } 982 983 984 985 /** {@inheritDoc} */ 986 public Integer getResponseEtimeLessThan() { 987 return impl.getPropertyValue(INSTANCE.getResponseEtimeLessThanPropertyDefinition()); 988 } 989 990 991 992 /** {@inheritDoc} */ 993 public void setResponseEtimeLessThan(Integer value) { 994 impl.setPropertyValue(INSTANCE.getResponseEtimeLessThanPropertyDefinition(), value); 995 } 996 997 998 999 /** {@inheritDoc} */ 1000 public SortedSet<Integer> getResponseResultCodeEqualTo() { 1001 return impl.getPropertyValues(INSTANCE.getResponseResultCodeEqualToPropertyDefinition()); 1002 } 1003 1004 1005 1006 /** {@inheritDoc} */ 1007 public void setResponseResultCodeEqualTo(Collection<Integer> values) { 1008 impl.setPropertyValues(INSTANCE.getResponseResultCodeEqualToPropertyDefinition(), values); 1009 } 1010 1011 1012 1013 /** {@inheritDoc} */ 1014 public SortedSet<Integer> getResponseResultCodeNotEqualTo() { 1015 return impl.getPropertyValues(INSTANCE.getResponseResultCodeNotEqualToPropertyDefinition()); 1016 } 1017 1018 1019 1020 /** {@inheritDoc} */ 1021 public void setResponseResultCodeNotEqualTo(Collection<Integer> values) { 1022 impl.setPropertyValues(INSTANCE.getResponseResultCodeNotEqualToPropertyDefinition(), values); 1023 } 1024 1025 1026 1027 /** {@inheritDoc} */ 1028 public Boolean isSearchResponseIsIndexed() { 1029 return impl.getPropertyValue(INSTANCE.getSearchResponseIsIndexedPropertyDefinition()); 1030 } 1031 1032 1033 1034 /** {@inheritDoc} */ 1035 public void setSearchResponseIsIndexed(Boolean value) { 1036 impl.setPropertyValue(INSTANCE.getSearchResponseIsIndexedPropertyDefinition(), value); 1037 } 1038 1039 1040 1041 /** {@inheritDoc} */ 1042 public Integer getSearchResponseNentriesGreaterThan() { 1043 return impl.getPropertyValue(INSTANCE.getSearchResponseNentriesGreaterThanPropertyDefinition()); 1044 } 1045 1046 1047 1048 /** {@inheritDoc} */ 1049 public void setSearchResponseNentriesGreaterThan(Integer value) { 1050 impl.setPropertyValue(INSTANCE.getSearchResponseNentriesGreaterThanPropertyDefinition(), value); 1051 } 1052 1053 1054 1055 /** {@inheritDoc} */ 1056 public Integer getSearchResponseNentriesLessThan() { 1057 return impl.getPropertyValue(INSTANCE.getSearchResponseNentriesLessThanPropertyDefinition()); 1058 } 1059 1060 1061 1062 /** {@inheritDoc} */ 1063 public void setSearchResponseNentriesLessThan(Integer value) { 1064 impl.setPropertyValue(INSTANCE.getSearchResponseNentriesLessThanPropertyDefinition(), value); 1065 } 1066 1067 1068 1069 /** {@inheritDoc} */ 1070 public SortedSet<String> getUserDNEqualTo() { 1071 return impl.getPropertyValues(INSTANCE.getUserDNEqualToPropertyDefinition()); 1072 } 1073 1074 1075 1076 /** {@inheritDoc} */ 1077 public void setUserDNEqualTo(Collection<String> values) { 1078 impl.setPropertyValues(INSTANCE.getUserDNEqualToPropertyDefinition(), values); 1079 } 1080 1081 1082 1083 /** {@inheritDoc} */ 1084 public SortedSet<String> getUserDNNotEqualTo() { 1085 return impl.getPropertyValues(INSTANCE.getUserDNNotEqualToPropertyDefinition()); 1086 } 1087 1088 1089 1090 /** {@inheritDoc} */ 1091 public void setUserDNNotEqualTo(Collection<String> values) { 1092 impl.setPropertyValues(INSTANCE.getUserDNNotEqualToPropertyDefinition(), values); 1093 } 1094 1095 1096 1097 /** {@inheritDoc} */ 1098 public SortedSet<DN> getUserIsMemberOf() { 1099 return impl.getPropertyValues(INSTANCE.getUserIsMemberOfPropertyDefinition()); 1100 } 1101 1102 1103 1104 /** {@inheritDoc} */ 1105 public void setUserIsMemberOf(Collection<DN> values) { 1106 impl.setPropertyValues(INSTANCE.getUserIsMemberOfPropertyDefinition(), values); 1107 } 1108 1109 1110 1111 /** {@inheritDoc} */ 1112 public SortedSet<DN> getUserIsNotMemberOf() { 1113 return impl.getPropertyValues(INSTANCE.getUserIsNotMemberOfPropertyDefinition()); 1114 } 1115 1116 1117 1118 /** {@inheritDoc} */ 1119 public void setUserIsNotMemberOf(Collection<DN> values) { 1120 impl.setPropertyValues(INSTANCE.getUserIsNotMemberOfPropertyDefinition(), values); 1121 } 1122 1123 1124 1125 /** {@inheritDoc} */ 1126 public ManagedObjectDefinition<? extends AccessLogFilteringCriteriaCfgClient, ? extends AccessLogFilteringCriteriaCfg> definition() { 1127 return INSTANCE; 1128 } 1129 1130 1131 1132 /** {@inheritDoc} */ 1133 public PropertyProvider properties() { 1134 return impl; 1135 } 1136 1137 1138 1139 /** {@inheritDoc} */ 1140 public void commit() throws ManagedObjectAlreadyExistsException, 1141 MissingMandatoryPropertiesException, ConcurrentModificationException, 1142 OperationRejectedException, LdapException { 1143 impl.commit(); 1144 } 1145 1146 1147 1148 /** {@inheritDoc} */ 1149 public String toString() { 1150 return impl.toString(); 1151 } 1152 } 1153 1154 1155 1156 /** 1157 * Managed object server implementation. 1158 */ 1159 private static class AccessLogFilteringCriteriaCfgServerImpl implements 1160 AccessLogFilteringCriteriaCfg { 1161 1162 /** Private implementation. */ 1163 private ServerManagedObject<? extends AccessLogFilteringCriteriaCfg> impl; 1164 1165 /** The value of the "connection-client-address-equal-to" property. */ 1166 private final SortedSet<AddressMask> pConnectionClientAddressEqualTo; 1167 1168 /** The value of the "connection-client-address-not-equal-to" property. */ 1169 private final SortedSet<AddressMask> pConnectionClientAddressNotEqualTo; 1170 1171 /** The value of the "connection-port-equal-to" property. */ 1172 private final SortedSet<Integer> pConnectionPortEqualTo; 1173 1174 /** The value of the "connection-protocol-equal-to" property. */ 1175 private final SortedSet<String> pConnectionProtocolEqualTo; 1176 1177 /** The value of the "log-record-type" property. */ 1178 private final SortedSet<LogRecordType> pLogRecordType; 1179 1180 /** The value of the "request-target-dn-equal-to" property. */ 1181 private final SortedSet<String> pRequestTargetDNEqualTo; 1182 1183 /** The value of the "request-target-dn-not-equal-to" property. */ 1184 private final SortedSet<String> pRequestTargetDNNotEqualTo; 1185 1186 /** The value of the "response-etime-greater-than" property. */ 1187 private final Integer pResponseEtimeGreaterThan; 1188 1189 /** The value of the "response-etime-less-than" property. */ 1190 private final Integer pResponseEtimeLessThan; 1191 1192 /** The value of the "response-result-code-equal-to" property. */ 1193 private final SortedSet<Integer> pResponseResultCodeEqualTo; 1194 1195 /** The value of the "response-result-code-not-equal-to" property. */ 1196 private final SortedSet<Integer> pResponseResultCodeNotEqualTo; 1197 1198 /** The value of the "search-response-is-indexed" property. */ 1199 private final Boolean pSearchResponseIsIndexed; 1200 1201 /** The value of the "search-response-nentries-greater-than" property. */ 1202 private final Integer pSearchResponseNentriesGreaterThan; 1203 1204 /** The value of the "search-response-nentries-less-than" property. */ 1205 private final Integer pSearchResponseNentriesLessThan; 1206 1207 /** The value of the "user-dn-equal-to" property. */ 1208 private final SortedSet<String> pUserDNEqualTo; 1209 1210 /** The value of the "user-dn-not-equal-to" property. */ 1211 private final SortedSet<String> pUserDNNotEqualTo; 1212 1213 /** The value of the "user-is-member-of" property. */ 1214 private final SortedSet<DN> pUserIsMemberOf; 1215 1216 /** The value of the "user-is-not-member-of" property. */ 1217 private final SortedSet<DN> pUserIsNotMemberOf; 1218 1219 1220 1221 /** Private constructor. */ 1222 private AccessLogFilteringCriteriaCfgServerImpl(ServerManagedObject<? extends AccessLogFilteringCriteriaCfg> impl) { 1223 this.impl = impl; 1224 this.pConnectionClientAddressEqualTo = impl.getPropertyValues(INSTANCE.getConnectionClientAddressEqualToPropertyDefinition()); 1225 this.pConnectionClientAddressNotEqualTo = impl.getPropertyValues(INSTANCE.getConnectionClientAddressNotEqualToPropertyDefinition()); 1226 this.pConnectionPortEqualTo = impl.getPropertyValues(INSTANCE.getConnectionPortEqualToPropertyDefinition()); 1227 this.pConnectionProtocolEqualTo = impl.getPropertyValues(INSTANCE.getConnectionProtocolEqualToPropertyDefinition()); 1228 this.pLogRecordType = impl.getPropertyValues(INSTANCE.getLogRecordTypePropertyDefinition()); 1229 this.pRequestTargetDNEqualTo = impl.getPropertyValues(INSTANCE.getRequestTargetDNEqualToPropertyDefinition()); 1230 this.pRequestTargetDNNotEqualTo = impl.getPropertyValues(INSTANCE.getRequestTargetDNNotEqualToPropertyDefinition()); 1231 this.pResponseEtimeGreaterThan = impl.getPropertyValue(INSTANCE.getResponseEtimeGreaterThanPropertyDefinition()); 1232 this.pResponseEtimeLessThan = impl.getPropertyValue(INSTANCE.getResponseEtimeLessThanPropertyDefinition()); 1233 this.pResponseResultCodeEqualTo = impl.getPropertyValues(INSTANCE.getResponseResultCodeEqualToPropertyDefinition()); 1234 this.pResponseResultCodeNotEqualTo = impl.getPropertyValues(INSTANCE.getResponseResultCodeNotEqualToPropertyDefinition()); 1235 this.pSearchResponseIsIndexed = impl.getPropertyValue(INSTANCE.getSearchResponseIsIndexedPropertyDefinition()); 1236 this.pSearchResponseNentriesGreaterThan = impl.getPropertyValue(INSTANCE.getSearchResponseNentriesGreaterThanPropertyDefinition()); 1237 this.pSearchResponseNentriesLessThan = impl.getPropertyValue(INSTANCE.getSearchResponseNentriesLessThanPropertyDefinition()); 1238 this.pUserDNEqualTo = impl.getPropertyValues(INSTANCE.getUserDNEqualToPropertyDefinition()); 1239 this.pUserDNNotEqualTo = impl.getPropertyValues(INSTANCE.getUserDNNotEqualToPropertyDefinition()); 1240 this.pUserIsMemberOf = impl.getPropertyValues(INSTANCE.getUserIsMemberOfPropertyDefinition()); 1241 this.pUserIsNotMemberOf = impl.getPropertyValues(INSTANCE.getUserIsNotMemberOfPropertyDefinition()); 1242 } 1243 1244 1245 1246 /** {@inheritDoc} */ 1247 public void addChangeListener( 1248 ConfigurationChangeListener<AccessLogFilteringCriteriaCfg> listener) { 1249 impl.registerChangeListener(listener); 1250 } 1251 1252 1253 1254 /** {@inheritDoc} */ 1255 public void removeChangeListener( 1256 ConfigurationChangeListener<AccessLogFilteringCriteriaCfg> listener) { 1257 impl.deregisterChangeListener(listener); 1258 } 1259 1260 1261 1262 /** {@inheritDoc} */ 1263 public SortedSet<AddressMask> getConnectionClientAddressEqualTo() { 1264 return pConnectionClientAddressEqualTo; 1265 } 1266 1267 1268 1269 /** {@inheritDoc} */ 1270 public SortedSet<AddressMask> getConnectionClientAddressNotEqualTo() { 1271 return pConnectionClientAddressNotEqualTo; 1272 } 1273 1274 1275 1276 /** {@inheritDoc} */ 1277 public SortedSet<Integer> getConnectionPortEqualTo() { 1278 return pConnectionPortEqualTo; 1279 } 1280 1281 1282 1283 /** {@inheritDoc} */ 1284 public SortedSet<String> getConnectionProtocolEqualTo() { 1285 return pConnectionProtocolEqualTo; 1286 } 1287 1288 1289 1290 /** {@inheritDoc} */ 1291 public SortedSet<LogRecordType> getLogRecordType() { 1292 return pLogRecordType; 1293 } 1294 1295 1296 1297 /** {@inheritDoc} */ 1298 public SortedSet<String> getRequestTargetDNEqualTo() { 1299 return pRequestTargetDNEqualTo; 1300 } 1301 1302 1303 1304 /** {@inheritDoc} */ 1305 public SortedSet<String> getRequestTargetDNNotEqualTo() { 1306 return pRequestTargetDNNotEqualTo; 1307 } 1308 1309 1310 1311 /** {@inheritDoc} */ 1312 public Integer getResponseEtimeGreaterThan() { 1313 return pResponseEtimeGreaterThan; 1314 } 1315 1316 1317 1318 /** {@inheritDoc} */ 1319 public Integer getResponseEtimeLessThan() { 1320 return pResponseEtimeLessThan; 1321 } 1322 1323 1324 1325 /** {@inheritDoc} */ 1326 public SortedSet<Integer> getResponseResultCodeEqualTo() { 1327 return pResponseResultCodeEqualTo; 1328 } 1329 1330 1331 1332 /** {@inheritDoc} */ 1333 public SortedSet<Integer> getResponseResultCodeNotEqualTo() { 1334 return pResponseResultCodeNotEqualTo; 1335 } 1336 1337 1338 1339 /** {@inheritDoc} */ 1340 public Boolean isSearchResponseIsIndexed() { 1341 return pSearchResponseIsIndexed; 1342 } 1343 1344 1345 1346 /** {@inheritDoc} */ 1347 public Integer getSearchResponseNentriesGreaterThan() { 1348 return pSearchResponseNentriesGreaterThan; 1349 } 1350 1351 1352 1353 /** {@inheritDoc} */ 1354 public Integer getSearchResponseNentriesLessThan() { 1355 return pSearchResponseNentriesLessThan; 1356 } 1357 1358 1359 1360 /** {@inheritDoc} */ 1361 public SortedSet<String> getUserDNEqualTo() { 1362 return pUserDNEqualTo; 1363 } 1364 1365 1366 1367 /** {@inheritDoc} */ 1368 public SortedSet<String> getUserDNNotEqualTo() { 1369 return pUserDNNotEqualTo; 1370 } 1371 1372 1373 1374 /** {@inheritDoc} */ 1375 public SortedSet<DN> getUserIsMemberOf() { 1376 return pUserIsMemberOf; 1377 } 1378 1379 1380 1381 /** {@inheritDoc} */ 1382 public SortedSet<DN> getUserIsNotMemberOf() { 1383 return pUserIsNotMemberOf; 1384 } 1385 1386 1387 1388 /** {@inheritDoc} */ 1389 public Class<? extends AccessLogFilteringCriteriaCfg> configurationClass() { 1390 return AccessLogFilteringCriteriaCfg.class; 1391 } 1392 1393 1394 1395 /** {@inheritDoc} */ 1396 public DN dn() { 1397 return impl.getDN(); 1398 } 1399 1400 1401 1402 /** {@inheritDoc} */ 1403 public String toString() { 1404 return impl.toString(); 1405 } 1406 } 1407}