public FeedDataSource(Feed feed, DataSourceId id, String targetDataset, IAType itemType, IAType metaType, List<IAType> pkTypes, List<ScalarFunctionCallExpression> keyAccessExpression, EntityId sourceFeedId, FeedRuntimeType location, String[] locations, INodeDomain domain, FeedConnection feedConnection) throws AlgebricksException { super(id, itemType, metaType, Type.FEED, domain); this.feed = feed; this.targetDataset = targetDataset; this.sourceFeedId = sourceFeedId; this.location = location; this.locations = locations; this.pkTypes = pkTypes; this.keyAccessExpression = keyAccessExpression; this.computationNodeDomain = domain; this.feedConnection = feedConnection; initFeedDataSource(); }
new RecordDescriptor(serdes.toArray(new ISerializerDeserializer[serdes.size()])); FeedPolicyEntity feedPolicy = (FeedPolicyEntity) getProperties().get(BuiltinFeedPolicies.CONFIG_FEED_POLICY_KEY); if (feedPolicy == null) { throw new AlgebricksException("Feed not configured with a policy"); new FeedConnectionId(getId().getDataverseName(), getId().getDatasourceName(), getTargetDataset()); FeedCollectOperatorDescriptor feedCollector = new FeedCollectOperatorDescriptor(jobSpec, feedConnectionId, feedOutputType, feedDesc, feedPolicy.getProperties(), getLocation()); return new Pair<>(feedCollector, new AlgebricksAbsolutePartitionConstraint(getLocations()));
keyAccessScalarFunctionCallExpression = null; FeedDataSource feedDataSource = new FeedDataSource(sourceFeed, aqlId, targetDataset, feedOutputType, metaType, pkTypes, keyAccessScalarFunctionCallExpression, sourceFeed.getFeedId(), FeedRuntimeType.valueOf(subscriptionLocation), locations.split(","), context.getComputationNodeDomain(), feedConnection); feedDataSource.getProperties().put(BuiltinFeedPolicies.CONFIG_FEED_POLICY_KEY, feedPolicy); return feedDataSource;
FeedConnection feedConnection = feedDataSource.getFeedConnection(); if (feedConnection.getAppliedFunctions() == null || feedConnection.getAppliedFunctions().size() == 0) { return false; INodeDomain runtimeDomain = feedDataSource.getComputationNodeDomain();