public IAsyncResult BeginCreateSubscription(ITopicClient topic, string name, string sqlFilter, AsyncCallback callback) { Requires.NotNull(topic, "topic"); Requires.NotNullOrEmpty(name, "name"); TopicClient client = (TopicClient)topic; SqlFilter filter = new SqlFilter(sqlFilter); SubscriptionDescription description = new SubscriptionDescription(); // TODO: Filters aren't actually working at the moment //description.DefaultRuleDescription = new RuleDescription(filter); description.DefaultRuleDescription = new RuleDescription(); Func <SubscriptionClient> creator = () => CreateSubscription(client, name); return(SubscriptionClient.BeginCreateSubscription(client.Path, name, description, client.TokenProvider, callback, creator)); }