public void WhenGivenResourceIdShouldConvertToStoreId()
        {
            ResourceId resourceId = new ResourceId("id");
            IStoreId storeId = ResourceIdToStoreIdConverter.Default.Convert(resourceId);

            Assert.AreEqual("id.atom", ((IStoreId<string>) storeId).Value);
        }
 public void ComplexValue()
 {
     NameValueCollection parameters = new NameValueCollection();
     parameters.Add("key1", "A");
     parameters.Add("key1", "B");
     parameters.Add("key2", "C");
     ResourceId resourceId = new ResourceId(parameters);
 }
        public Func<IStore, IRepresentation> CreateFeedAccessor(ResourceId resourceId)
        {
            if (resourceId.Equals(workingFeedResourceId))
            {
                return (store => new WorkingFeed(store.GetCurrentFeed(recentEventsFeedStoreId)));
            }

            return (store => new ArchiveFeed(store.GetArchiveFeed(converter.Convert(resourceId))));
        }
        public void ShouldExhibitValueTypeEquality()
        {
            ResourceId resourceId1 = new ResourceId("A");
            ResourceId resourceId2 = new ResourceId("A");
            ResourceId resourceId3 = new ResourceId("B");

            Assert.True(resourceId1.Equals(resourceId2));
            Assert.False(resourceId1.Equals(resourceId3));
            Assert.True(resourceId1.Equals(resourceId1));
            Assert.False(resourceId1.Equals(new object()));
            Assert.False(resourceId1.Equals(null));

            Assert.True(resourceId1.GetHashCode().Equals(resourceId2.GetHashCode()));
            Assert.False(resourceId1.GetHashCode().Equals(resourceId3.GetHashCode()));
            Assert.True(resourceId1.GetHashCode().Equals(resourceId1.GetHashCode()));
            Assert.False(resourceId1.GetHashCode().Equals(new object().GetHashCode()));
        }
 public IStoreId Convert(ResourceId resourceId)
 {
     return resourceId.ToStoreId(this);
 }
 public bool Equals(ResourceId other)
 {
     if (ReferenceEquals(null, other)) return false;
     if (ReferenceEquals(this, other)) return true;
     return Equals(other.internalValue, internalValue);
 }
 public Func<IStore, IRepresentation> CreateFeedAccessor(ResourceId resourceId)
 {
     throw new ServerException("Feed mappings not initialized.");
 }
 public GetFeedCommand(ResourceId id)
 {
     this.id = id;
 }
 public FeedMappings(ResourceIdToStoreIdConverter converter, ResourceId workingFeedResourceId, IStoreId recentEventsFeedStoreId)
 {
     this.converter = converter;
     this.workingFeedResourceId = workingFeedResourceId;
     this.recentEventsFeedStoreId = recentEventsFeedStoreId;
 }