use of com.google.firestore.admin.v1beta1.Index in project OpenTripPlanner by opentripplanner.
the class GenericEdgeUpdater method getClosestPropertyValue.
/**
* Returns closest a value of selected property for given point.
* <p>
* Returned array represent value for selected property time
*
* @param samplePoint point
* @param propertyName propertyName
* @return result the closest value for selected property for given point
*/
private <E> List<E> getClosestPropertyValue(Point2D samplePoint, String propertyName) {
double lon = samplePoint.getX();
double lat = samplePoint.getY();
int lonIndex = getClosestIndex(dataFile.getLongitudeArray(), lon);
int latIndex = getClosestIndex(dataFile.getLatitudeArray(), lat);
int timeSize = (int) dataFile.getTimeArray().getSize();
List result = new ArrayList<>();
int height = 0;
for (int timeIndex = 0; timeIndex < timeSize; timeIndex++) {
Array dataArray = genericVariablesData.get(propertyName);
Index selectIndex = dataArray.getIndex();
if (selectIndex.getRank() == 3) {
selectIndex.set(timeIndex, latIndex, lonIndex);
} else if (selectIndex.getRank() == 4) {
selectIndex.set(timeIndex, height, latIndex, lonIndex);
} else {
throw new IllegalArgumentException(String.format("Invalid data array shape for %s", propertyName));
}
Class dataArrayType = dataArray.getDataType().getPrimitiveClassType();
if (dataArrayType.equals(Integer.TYPE)) {
result.add(timeIndex, ((ArrayInt) dataArray).get(selectIndex));
} else if (dataArrayType.equals(Double.TYPE)) {
result.add(timeIndex, ((ArrayDouble) dataArray).get(selectIndex));
} else if (dataArrayType.equals(Float.TYPE)) {
result.add(timeIndex, ((ArrayFloat) dataArray).get(selectIndex));
} else if (dataArrayType.equals(Long.TYPE)) {
result.add(timeIndex, ((ArrayLong) dataArray).get(selectIndex));
} else {
throw new IllegalArgumentException(String.format("Unsupported format %s of %s variable", dataArrayType, propertyName));
}
}
return result;
}
use of com.google.firestore.admin.v1beta1.Index in project java-datastore by googleapis.
the class DatastoreAdminClientTest method getIndexTest.
@Test
public void getIndexTest() throws Exception {
Index expectedResponse = Index.newBuilder().setProjectId("projectId-894832108").setIndexId("indexId1943291277").setKind("kind3292052").addAllProperties(new ArrayList<Index.IndexedProperty>()).build();
mockDatastoreAdmin.addResponse(expectedResponse);
GetIndexRequest request = GetIndexRequest.newBuilder().setProjectId("projectId-894832108").setIndexId("indexId1943291277").build();
Index actualResponse = client.getIndex(request);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockDatastoreAdmin.getRequests();
Assert.assertEquals(1, actualRequests.size());
GetIndexRequest actualRequest = ((GetIndexRequest) actualRequests.get(0));
Assert.assertEquals(request.getProjectId(), actualRequest.getProjectId());
Assert.assertEquals(request.getIndexId(), actualRequest.getIndexId());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.firestore.admin.v1beta1.Index in project java-datastore by googleapis.
the class DatastoreAdminClientTest method deleteIndexTest.
@Test
public void deleteIndexTest() throws Exception {
Index expectedResponse = Index.newBuilder().setProjectId("projectId-894832108").setIndexId("indexId1943291277").setKind("kind3292052").addAllProperties(new ArrayList<Index.IndexedProperty>()).build();
Operation resultOperation = Operation.newBuilder().setName("deleteIndexTest").setDone(true).setResponse(Any.pack(expectedResponse)).build();
mockDatastoreAdmin.addResponse(resultOperation);
DeleteIndexRequest request = DeleteIndexRequest.newBuilder().setProjectId("projectId-894832108").setIndexId("indexId1943291277").build();
Index actualResponse = client.deleteIndexAsync(request).get();
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockDatastoreAdmin.getRequests();
Assert.assertEquals(1, actualRequests.size());
DeleteIndexRequest actualRequest = ((DeleteIndexRequest) actualRequests.get(0));
Assert.assertEquals(request.getProjectId(), actualRequest.getProjectId());
Assert.assertEquals(request.getIndexId(), actualRequest.getIndexId());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.firestore.admin.v1beta1.Index in project java-datastore by googleapis.
the class DatastoreAdminClientTest method listIndexesTest.
@Test
public void listIndexesTest() throws Exception {
Index responsesElement = Index.newBuilder().build();
ListIndexesResponse expectedResponse = ListIndexesResponse.newBuilder().setNextPageToken("").addAllIndexes(Arrays.asList(responsesElement)).build();
mockDatastoreAdmin.addResponse(expectedResponse);
ListIndexesRequest request = ListIndexesRequest.newBuilder().setProjectId("projectId-894832108").setFilter("filter-1274492040").setPageSize(883849137).setPageToken("pageToken873572522").build();
ListIndexesPagedResponse pagedListResponse = client.listIndexes(request);
List<Index> resources = Lists.newArrayList(pagedListResponse.iterateAll());
Assert.assertEquals(1, resources.size());
Assert.assertEquals(expectedResponse.getIndexesList().get(0), resources.get(0));
List<AbstractMessage> actualRequests = mockDatastoreAdmin.getRequests();
Assert.assertEquals(1, actualRequests.size());
ListIndexesRequest actualRequest = ((ListIndexesRequest) actualRequests.get(0));
Assert.assertEquals(request.getProjectId(), actualRequest.getProjectId());
Assert.assertEquals(request.getFilter(), actualRequest.getFilter());
Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize());
Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.firestore.admin.v1beta1.Index in project security by opensearch-project.
the class ConfigModelV7 method reload.
private SecurityRoles reload(SecurityDynamicConfiguration<RoleV7> settings) {
final Set<Future<SecurityRole>> futures = new HashSet<>(5000);
final ExecutorService execs = Executors.newFixedThreadPool(10);
for (Entry<String, RoleV7> securityRole : settings.getCEntries().entrySet()) {
Future<SecurityRole> future = execs.submit(new Callable<SecurityRole>() {
@Override
public SecurityRole call() throws Exception {
SecurityRole.Builder _securityRole = new SecurityRole.Builder(securityRole.getKey());
if (securityRole.getValue() == null) {
return null;
}
final Set<String> permittedClusterActions = agr.resolvedActions(securityRole.getValue().getCluster_permissions());
_securityRole.addClusterPerms(permittedClusterActions);
for (final Index permittedAliasesIndex : securityRole.getValue().getIndex_permissions()) {
final String dls = permittedAliasesIndex.getDls();
final List<String> fls = permittedAliasesIndex.getFls();
final List<String> maskedFields = permittedAliasesIndex.getMasked_fields();
for (String pat : permittedAliasesIndex.getIndex_patterns()) {
IndexPattern _indexPattern = new IndexPattern(pat);
_indexPattern.setDlsQuery(dls);
_indexPattern.addFlsFields(fls);
_indexPattern.addMaskedFields(maskedFields);
_indexPattern.addPerm(agr.resolvedActions(permittedAliasesIndex.getAllowed_actions()));
/*for(Entry<String, List<String>> type: permittedAliasesIndex.getValue().getTypes(-).entrySet()) {
TypePerm typePerm = new TypePerm(type.getKey());
final List<String> perms = type.getValue();
typePerm.addPerms(agr.resolvedActions(perms));
_indexPattern.addTypePerms(typePerm);
}*/
_securityRole.addIndexPattern(_indexPattern);
}
}
return _securityRole.build();
}
});
futures.add(future);
}
execs.shutdown();
try {
execs.awaitTermination(30, TimeUnit.SECONDS);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
log.error("Thread interrupted (1) while loading roles");
return null;
}
try {
SecurityRoles _securityRoles = new SecurityRoles(futures.size());
for (Future<SecurityRole> future : futures) {
_securityRoles.addSecurityRole(future.get());
}
return _securityRoles;
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
log.error("Thread interrupted (2) while loading roles");
return null;
} catch (ExecutionException e) {
log.error("Error while updating roles: {}", e.getCause(), e.getCause());
throw ExceptionsHelper.convertToOpenSearchException(e);
}
}
Aggregations