Search in sources :

Example 1 with Authorization

use of com.influxdb.client.domain.Authorization in project nifi-influxdb-bundle by influxdata.

the class AbstractITInfluxDB_2 method init.

protected void init() throws Exception {
    influxDBClient = InfluxDBClientFactory.create(INFLUX_DB_2, "my-token".toCharArray());
    organization = influxDBClient.getOrganizationsApi().findOrganizations().stream().filter(it -> it.getName().equals("my-org")).findFirst().orElseThrow(IllegalStateException::new);
    bucketName = "nifi-bucket-" + System.currentTimeMillis();
    Bucket bucket = influxDBClient.getBucketsApi().createBucket(bucketName, null, organization);
    PermissionResource resource = new PermissionResource();
    resource.setId(bucket.getId());
    resource.setOrgID(organization.getId());
    resource.setType(PermissionResource.TypeEnum.BUCKETS);
    // 
    // Add Permissions to read and write to the Bucket
    // 
    Permission readBucket = new Permission();
    readBucket.setResource(resource);
    readBucket.setAction(Permission.ActionEnum.READ);
    Permission writeBucket = new Permission();
    writeBucket.setResource(resource);
    writeBucket.setAction(Permission.ActionEnum.WRITE);
    Authorization authorization = influxDBClient.getAuthorizationsApi().createAuthorization(organization, Arrays.asList(readBucket, writeBucket));
    String token = authorization.getToken();
    influxDBClient.close();
    InfluxDBClientOptions options = InfluxDBClientOptions.builder().url(INFLUX_DB_2).authenticateToken(token.toCharArray()).org(organization.getId()).bucket(bucket.getId()).build();
    influxDBClient = InfluxDBClientFactory.create(options);
    queryApi = influxDBClient.getQueryApi();
}
Also used : Arrays(java.util.Arrays) InfluxDBClientFactory(com.influxdb.client.InfluxDBClientFactory) Authorization(com.influxdb.client.domain.Authorization) Permission(com.influxdb.client.domain.Permission) PermissionResource(com.influxdb.client.domain.PermissionResource) TestRunner(org.apache.nifi.util.TestRunner) InfluxDBClient(com.influxdb.client.InfluxDBClient) After(org.junit.After) Organization(com.influxdb.client.domain.Organization) QueryApi(com.influxdb.client.QueryApi) InfluxDBClientOptions(com.influxdb.client.InfluxDBClientOptions) Bucket(com.influxdb.client.domain.Bucket) Authorization(com.influxdb.client.domain.Authorization) Bucket(com.influxdb.client.domain.Bucket) InfluxDBClientOptions(com.influxdb.client.InfluxDBClientOptions) Permission(com.influxdb.client.domain.Permission) PermissionResource(com.influxdb.client.domain.PermissionResource)

Aggregations

InfluxDBClient (com.influxdb.client.InfluxDBClient)1 InfluxDBClientFactory (com.influxdb.client.InfluxDBClientFactory)1 InfluxDBClientOptions (com.influxdb.client.InfluxDBClientOptions)1 QueryApi (com.influxdb.client.QueryApi)1 Authorization (com.influxdb.client.domain.Authorization)1 Bucket (com.influxdb.client.domain.Bucket)1 Organization (com.influxdb.client.domain.Organization)1 Permission (com.influxdb.client.domain.Permission)1 PermissionResource (com.influxdb.client.domain.PermissionResource)1 Arrays (java.util.Arrays)1 TestRunner (org.apache.nifi.util.TestRunner)1 After (org.junit.After)1