/** * Build a {@link StorageAdminClient} client. * * @return a {@link StorageAdminClient} client. */ public StorageAdminClient buildAdmin() { checkNotNull(settings, "Storage client settings is null"); if (settings.enableServerSideRouting()) { return new SimpleStorageAdminClientImpl(settings); } else { return new StorageAdminClientImpl(settings, ClientResources.create()); } }
/** * Build a {@link StorageClient} client. * * @return a {@link StorageClient} client. */ public StorageClient build() { checkNotNull(settings, "Stream settings is null"); checkArgument(validateNamespaceName(namespaceName), "Namespace name '" + namespaceName + "'is invalid"); if (settings.enableServerSideRouting()) { return new SimpleStorageClientImpl(namespaceName, settings); } else { return new StorageClientImpl( namespaceName, settings, ClientResources.create()); } }
/** Sets all property values using the given {@code StorageClientSettings} as a template. */ public StorageClientSettings.Builder mergeFrom(StorageClientSettings value) { StorageClientSettings_Builder _defaults = StorageClientSettings.newBuilder(); if (!Objects.equals(value.numWorkerThreads(), _defaults.numWorkerThreads())) { numWorkerThreads(value.numWorkerThreads()); } if (_defaults._unsetProperties.contains(StorageClientSettings_Builder.Property.SERVICE_URI) || !Objects.equals(value.serviceUri(), _defaults.serviceUri())) { serviceUri(value.serviceUri()); } if (!Objects.equals(value.endpointResolver(), _defaults.endpointResolver())) { endpointResolver(value.endpointResolver()); } if (!Objects.equals(value.usePlaintext(), _defaults.usePlaintext())) { usePlaintext(value.usePlaintext()); } value.clientName().ifPresent(this::clientName); value.statsLogger().ifPresent(this::statsLogger); if (!Objects.equals(value.backoffPolicy(), _defaults.backoffPolicy())) { backoffPolicy(value.backoffPolicy()); } if (!Objects.equals(value.enableServerSideRouting(), _defaults.enableServerSideRouting())) { enableServerSideRouting(value.enableServerSideRouting()); } return (StorageClientSettings.Builder) this; }