private static IdentityStoreConfigurationBuilder configureFileIdentityStore(ResourceEntry resource, final NamedIdentityConfigurationBuilder builder) { ModelNode modelNode = resource.getModel(); FileStoreConfigurationBuilder fileStoreBuilder = builder.stores().file(); ModelNode workingDir = modelNode.get(ModelElement.FILE_STORE_WORKING_DIR.getName()); ModelNode alwaysCreateFiles = modelNode.get(ModelElement.FILE_STORE_ALWAYS_CREATE_FILE.getName()); ModelNode asyncWrite = modelNode.get(ModelElement.FILE_STORE_ASYNC_WRITE.getName()); ModelNode asyncWriteThreadPool = modelNode.get(ModelElement.FILE_STORE_ASYNC_THREAD_POOL.getName()); if (workingDir.isDefined()) { fileStoreBuilder.workingDirectory(workingDir.asString()); } if (alwaysCreateFiles.isDefined()) { fileStoreBuilder.preserveState(!alwaysCreateFiles.asBoolean()); } if (asyncWrite.isDefined()) { fileStoreBuilder.asyncWrite(asyncWrite.asBoolean()); } if (asyncWriteThreadPool.isDefined()) { fileStoreBuilder.asyncWriteThreadPool(asyncWriteThreadPool.asInt()); } return fileStoreBuilder; }
private IdentityStoreConfigurationBuilder<?, ?> configureFileIdentityStore(OperationContext context, ServiceBuilder<PartitionManager> serviceBuilder, PartitionManagerService partitionManagerService, ModelNode resource, String configurationName, final NamedIdentityConfigurationBuilder builder) throws OperationFailedException { FileStoreConfigurationBuilder fileStoreBuilder = builder.stores().file(); String workingDir = FileStoreResourceDefinition.WORKING_DIR.resolveModelAttribute(context, resource).asString(); String relativeTo = FileStoreResourceDefinition.RELATIVE_TO.resolveModelAttribute(context, resource).asString(); ModelNode alwaysCreateFiles = FileStoreResourceDefinition.ALWAYS_CREATE_FILE.resolveModelAttribute(context, resource); ModelNode asyncWrite = FileStoreResourceDefinition.ASYNC_WRITE.resolveModelAttribute(context, resource); ModelNode asyncWriteThreadPool = FileStoreResourceDefinition.ASYNC_WRITE_THREAD_POOL .resolveModelAttribute(context, resource); fileStoreBuilder.preserveState(!alwaysCreateFiles.asBoolean()); fileStoreBuilder.asyncWrite(asyncWrite.asBoolean()); fileStoreBuilder.asyncWriteThreadPool(asyncWriteThreadPool.asInt()); if (serviceBuilder != null) { FileIdentityStoreService storeService = new FileIdentityStoreService(fileStoreBuilder, workingDir, relativeTo); ServiceName storeServiceName = PartitionManagerService .createIdentityStoreServiceName(partitionManagerService.getName(), configurationName, ModelElement.FILE_STORE .getName()); ServiceBuilder<FileIdentityStoreService> storeServiceBuilder = context.getServiceTarget() .addService(storeServiceName, storeService); storeServiceBuilder.addDependency(PathManagerService.SERVICE_NAME, PathManager.class, storeService.getPathManager()); serviceBuilder.addDependency(storeServiceName); ServiceController<FileIdentityStoreService> controller = storeServiceBuilder .setInitialMode(Mode.PASSIVE) .install(); } return fileStoreBuilder; }
private IdentityStoreConfigurationBuilder<?, ?> configureFileIdentityStore(OperationContext context, ServiceBuilder<PartitionManager> serviceBuilder, PartitionManagerService partitionManagerService, ModelNode resource, String configurationName, final NamedIdentityConfigurationBuilder builder) throws OperationFailedException { FileStoreConfigurationBuilder fileStoreBuilder = builder.stores().file(); String workingDir = FileStoreResourceDefinition.WORKING_DIR.resolveModelAttribute(context, resource).asString(); String relativeTo = FileStoreResourceDefinition.RELATIVE_TO.resolveModelAttribute(context, resource).asString(); ModelNode alwaysCreateFiles = FileStoreResourceDefinition.ALWAYS_CREATE_FILE.resolveModelAttribute(context, resource); ModelNode asyncWrite = FileStoreResourceDefinition.ASYNC_WRITE.resolveModelAttribute(context, resource); ModelNode asyncWriteThreadPool = FileStoreResourceDefinition.ASYNC_WRITE_THREAD_POOL .resolveModelAttribute(context, resource); fileStoreBuilder.preserveState(!alwaysCreateFiles.asBoolean()); fileStoreBuilder.asyncWrite(asyncWrite.asBoolean()); fileStoreBuilder.asyncWriteThreadPool(asyncWriteThreadPool.asInt()); if (serviceBuilder != null) { FileIdentityStoreService storeService = new FileIdentityStoreService(fileStoreBuilder, workingDir, relativeTo); ServiceName storeServiceName = PartitionManagerService .createIdentityStoreServiceName(partitionManagerService.getName(), configurationName, ModelElement.FILE_STORE .getName()); ServiceBuilder<FileIdentityStoreService> storeServiceBuilder = context.getServiceTarget() .addService(storeServiceName, storeService); storeServiceBuilder.addDependency(PathManagerService.SERVICE_NAME, PathManager.class, storeService.getPathManager()); serviceBuilder.requires(storeServiceName); ServiceController<FileIdentityStoreService> controller = storeServiceBuilder .setInitialMode(Mode.PASSIVE) .install(); } return fileStoreBuilder; }