/** * Creates a new instance of RegistrationEntry associated with a listener * @param listener The associated listener */ RegistrationEntry( SchemaManager schemaManager, DirectoryListener listener ) { this( listener, new NotificationCriteria( schemaManager ) ); }
/** * Creates a new instance of EventLog for a replica * * @param partitionTxn The Transaction to use * @param directoryService The DirectoryService instance * @param replicaId The replica ID * @throws IOException if we weren't able to log the event */ public ReplicaEventLog( PartitionTxn partitionTxn, DirectoryService directoryService, int replicaId ) throws IOException { PROVIDER_LOG.debug( "Creating the replication queue for replica {}", replicaId ); SchemaManager schemaManager = directoryService.getSchemaManager(); this.replicaId = replicaId; this.searchCriteria = new NotificationCriteria( schemaManager ); this.searchCriteria.setEventMask( EventType.ALL_EVENT_TYPES_MASK ); // Create the journal file, or open if already exists File replDir = directoryService.getInstanceLayout().getReplDirectory(); journalFile = new File( replDir, REPLICA_EVENT_LOG_NAME_PREFIX + replicaId ); recman = new BaseRecordManager( journalFile.getAbsolutePath() ); TransactionManager transactionManager = ( ( BaseRecordManager ) recman ).getTransactionManager(); transactionManager.setMaximumTransactionsInLog( 200 ); SerializableComparator<String> comparator = new SerializableComparator<>( SchemaConstants.CSN_ORDERING_MATCH_MR_OID ); comparator.setSchemaManager( schemaManager ); journal = new JdbmTable<>( schemaManager, journalFile.getName(), recman, comparator, StringSerializer.INSTANCE, new ReplicaEventMessageSerializer( schemaManager ) ); this.partitionTxn = partitionTxn; }
NotificationCriteria criteria = new NotificationCriteria( dirService.getSchemaManager() ); criteria.setBase( new Dn( dirService.getSchemaManager(), ServerDNConstants.REPL_CONSUMER_DN_STR ) ); criteria.setEventMask( EventType.DELETE );
public void addNamingListener( Name name, int scope, NamingListener namingListener ) throws NamingException { ExprNode filter = new PresenceNode( objectClassAT ); try { DirectoryListener listener = new EventListenerAdapter( ( ServerLdapContext ) this, namingListener ); NotificationCriteria criteria = new NotificationCriteria( schemaManager ); criteria.setFilter( filter ); criteria.setScope( SearchScope.getSearchScope( scope ) ); criteria.setAliasDerefMode( AliasDerefMode.getEnum( env ) ); criteria.setBase( buildTarget( JndiUtils.fromName( name ) ) ); service.getEventService().addListener( listener, criteria ); listeners.put( namingListener, listener ); } catch ( Exception e ) { JndiUtils.wrap( e ); } }
ConfigChangeListener configListener = new ConfigChangeListener( cpReader, directoryService ); NotificationCriteria criteria = new NotificationCriteria( directoryService.getSchemaManager() ); criteria.setBase( configPartition.getSuffixDn() ); criteria.setEventMask( EventType.ALL_EVENT_TYPES_MASK );
public void addNamingListener( Name name, String filterStr, SearchControls searchControls, NamingListener namingListener ) throws NamingException { ExprNode filter; try { filter = FilterParser.parse( schemaManager, filterStr ); } catch ( Exception e ) { NamingException e2 = new NamingException( I18n.err( I18n.ERR_501, filterStr ) ); e2.setRootCause( e ); throw e2; } try { DirectoryListener listener = new EventListenerAdapter( ( ServerLdapContext ) this, namingListener ); NotificationCriteria criteria = new NotificationCriteria( schemaManager ); criteria.setFilter( filter ); criteria.setScope( SearchScope.getSearchScope( searchControls.getSearchScope() ) ); criteria.setAliasDerefMode( AliasDerefMode.getEnum( getEnvironment() ) ); criteria.setBase( buildTarget( JndiUtils.fromName( name ) ) ); getDirectoryService().getEventService().addListener( listener, criteria ); getListeners().put( namingListener, listener ); } catch ( Exception e ) { JndiUtils.wrap( e ); } }
ReplicaEventLog replica = new ReplicaEventLog( partitionTxn, directoryService, Integer.parseInt( id ) ); NotificationCriteria searchCriteria = new NotificationCriteria( schemaManager );
NotificationCriteria criteria = new NotificationCriteria( dirService.getSchemaManager() ); criteria.setAliasDerefMode( request.getDerefAliases() ); criteria.setBase( request.getBase() );
NotificationCriteria criteria = new NotificationCriteria( session.getCoreSession().getDirectoryService().getSchemaManager() ); criteria.setAliasDerefMode( req.getDerefAliases() ); criteria.setBase( req.getBase() );