@SuppressWarnings("unchecked") @Override public T get(DataFetchingEnvironment environment) { Object source = environment.getSource(); if (source == null) { return null; } if (function != null) { return (T) function.apply(source); } if (source instanceof Map) { return (T) ((Map<?, ?>) source).get(propertyName); } return (T) getPropertyViaGetter(source, environment.getFieldType(), environment); }
@Override @Batched @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { List<Iterable<String>> retVal = new ArrayList<>(); for (String s : (List<String>) environment.getSource()) { retVal.add(new LinkedHashSet<>(Arrays.asList(s, "end"))); } return retVal; } });
@Override @Batched public List<List<Product>> get(DataFetchingEnvironment environment) { List<Department> departments = environment.getSource(); return getProductsForDepartments(departments); } };
@Override @Batched @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { increment(callCounts, CallType.VALUE); List<String> retVal = new ArrayList<>(); for (String s : (List<String>) environment.getSource()) { retVal.add("null".equals(s) ? null : s); } return retVal; } });
@Override @Batched @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { List<String> retVal = new ArrayList<>(); for (String s : (List<String>) environment.getSource()) { retVal.add("null".equals(s) ? null : s); } retVal.add("badValue"); return retVal; } });
@Override @Batched public List<List<Department>> get(DataFetchingEnvironment environment) { List<Shop> shops = environment.getSource(); return getDepartmentsForShops(shops); } };
@Batched @Override @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { increment(callCounts, CallType.WORDS_AND_LETTERS); List<String> sources = environment.getSource(); List<List<List<String>>> retVal = new ArrayList<>(); for (String source : sources) { List<List<String>> sentence = new ArrayList<>(); splitSentence(source, sentence); retVal.add(sentence); } return retVal.toArray(); } });
@Override public CompletableFuture<List<Object>> get(DataFetchingEnvironment environment) throws Exception { List<Object> sources = environment.getSource(); List<CompletableFuture<Object>> results = new ArrayList<>(); for (Object source : sources) { DataFetchingEnvironment singleEnv = newDataFetchingEnvironment(environment) .source(source).build(); CompletableFuture<Object> cf = Async.toCompletableFuture(delegate.get(singleEnv)); results.add(cf); } return Async.each(results); } }
@Batched @Override @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { increment(callCounts, CallType.SHATTER); List<String> sources = environment.getSource(); List<List<String>> retVal = new ArrayList<>(); for (String source : sources) { List<String> retItem = new ArrayList<>(); for (char c : source.toCharArray()) { retItem.add(Character.toString(c)); } retVal.add(retItem); } return retVal; } });
@Override @Batched @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { increment(callCounts, CallType.APPEND); List<String> retVal = new ArrayList<>(); for (String s : (List<String>) environment.getSource()) { retVal.add(s + environment.getArgument("text")); } // make it an Iterable thing not just List return new ArrayDeque<>(retVal); } });
@Override public Object get(DataFetchingEnvironment environment) { String argId = environment.getArgument("id"); Object source = environment.getSource(); // // you can pass per load call contexts // return characterDataLoader.load(argId, source); } };
@Batched @Override @SuppressWarnings("unchecked") public Object get(DataFetchingEnvironment environment) { increment(callCounts, CallType.SPLIT); String regex = environment.getArgument("regex"); List<String> sources = environment.getSource(); List<List<String>> retVal = new ArrayList<>(); if (regex == null) { for (String ignored : sources) { retVal.add(null); } return retVal; } for (String source : sources) { List<String> retItem = new ArrayList<>(); for (String str : source.split(regex)) { if (str.isEmpty()) { retItem.add(null); } else { retItem.add(str); } } retVal.add(retItem); } return retVal; } });
@Override public Object get(DataFetchingEnvironment environment) { StarWarsCharacter starWarsCharacter = environment.getSource(); List<String> friendIds = starWarsCharacter.getFriendIds(); DataLoader<String, Object> dataLoader = environment.getDataLoader("character"); return dataLoader.loadMany(friendIds); } };
.name("stop") .type(stopType) .dataFetcher(environment -> ((GraphIndex.StopAndDistance) environment.getSource()).stop) .build()) .field(GraphQLFieldDefinition.newFieldDefinition() .name("distance") .type(Scalars.GraphQLInt) .dataFetcher(environment -> ((GraphIndex.StopAndDistance) environment.getSource()).distance) .build()) .build(); .type(patternType) .dataFetcher(environment -> index.patternForId .get(((StopTimesInPattern) environment.getSource()).pattern.id)) .build()) .field(GraphQLFieldDefinition.newFieldDefinition() .name("stoptimes") .type(new GraphQLList(stoptimeType)) .dataFetcher(environment -> ((StopTimesInPattern) environment.getSource()).times) .build()) .build(); .type(new GraphQLNonNull(Scalars.GraphQLID)) .dataFetcher(environment -> relay .toGlobalId(clusterType.getName(), ((StopCluster) environment.getSource()).id)) .build()) .field(GraphQLFieldDefinition.newFieldDefinition() .name("gtfsId") .type(new GraphQLNonNull(Scalars.GraphQLString))
DataLoader friendsDataLoader = environment.getDataLoader("friends"); List<String> friendIds = asMapGet(environment.getSource(), "friends"); return friendsDataLoader.loadMany(friendIds); };
@Override public Object get(DataFetchingEnvironment dataFetchingEnvironment) { Object source = dataFetchingEnvironment.getSource(); return ((Map<String, Object>)source).get(key); }
private SchemaContainerVersion getSchemaContainerVersion(DataFetchingEnvironment env) { Object source = env.getSource(); if (source instanceof SchemaContainerVersion) { return (SchemaContainerVersion) source; } else if (source instanceof SchemaContainer) { return ((SchemaContainer) source).getLatestVersion(); } else { throw new RuntimeException("Invalid type {" + source + "}."); } }
public FetchParams(DataFetchingEnvironment environment, HGQLSchema hgqlschema) { subjectResource = environment.getSource(); String predicate = ((Field) environment.getFields().toArray()[0]).getName(); predicateURI = hgqlschema.getFields().get(predicate).getId(); client = environment.getContext(); if (!environment.getParentType().getName().equals("Query")) { String targetName = hgqlschema.getTypes().get(environment.getParentType().getName()).getField(predicate).getTargetName(); if (hgqlschema.getTypes().containsKey(targetName) && hgqlschema.getTypes().get(targetName).getId()!=null) { targetURI=hgqlschema.getTypes().get(targetName).getId(); } } }
public FetchParams(DataFetchingEnvironment environment, HGQLSchema hgqlschema) { subjectResource = environment.getSource(); String predicate = ((Field) environment.getFields().toArray()[0]).getName(); predicateURI = hgqlschema.getFields().get(predicate).getId(); client = environment.getContext(); if (!environment.getParentType().getName().equals("Query")) { String targetName = hgqlschema.getTypes().get(environment.getParentType().getName()).getField(predicate).getTargetName(); if (hgqlschema.getTypes().containsKey(targetName) && hgqlschema.getTypes().get(targetName).getId()!=null) { targetURI=hgqlschema.getTypes().get(targetName).getId(); } } }
public GraphQLFieldDefinition createBinaryDef(FieldSchema schema) { return newFieldDefinition().name(schema.getName()).description(schema.getLabel()).type(new GraphQLTypeReference(BINARY_FIELD_TYPE_NAME)) .dataFetcher(env -> { GraphFieldContainer container = env.getSource(); return container.getBinary(schema.getName()); }).build(); }