private void PutJohnSmith()
        {
            id = new RiakObjectId("default", "users", "john_smith");
            var obj = new RiakObject(id, "...user data...",
                                     RiakConstants.ContentTypes.TextPlain);

            obj.BinIndex("twitter").Set("jsmith123");
            obj.BinIndex("email").Set("*****@*****.**");
            CheckResult(client.Put(obj));
        }
        public void SecondaryIndexesAreForcedToLowerCase()
        {
            var obj = new RiakObject(Bucket, Key);

            obj.BinIndex("UPPERCASE").Set("foo");
            obj.IntIndex("MixedCase").Set(10);

            obj.BinIndexes.ContainsKey("uppercase").ShouldBeTrue();
            obj.IntIndexes.ContainsKey("mixedcase").ShouldBeTrue();

            obj.BinIndex("UPPERCASE").Values.First().ShouldEqual("foo");
            obj.BinIndex("uppercase").Values.First().ShouldEqual("foo");
            obj.IntIndex("MixedCase").Values.First().ShouldEqual(10);
            obj.IntIndex("mixedcase").Values.First().ShouldEqual(10);
        }
        public void RangeQuery()
        {
            var Cluster = RiakCluster.FromConfig("riakConfig");
            var Client = Cluster.CreateClient();

            var bucket = "rsds";

            Client.Batch(batch =>
            {
                for (var i = 1; i < 11; i++)
                {
                    var d = DateTime.Now.AddDays(0 - i);
                    var doc = new RiakObject(bucket, i.ToString(), new { value = i, created_date = d });

                    var position = 100 + i;

                    doc.BinIndex("position").Set(position.ToString());
                    
                    batch.Put(doc);
                }
            });

            var query = new RiakMapReduceQuery()
                    .Inputs(RiakIndex.Range("bucket", "position", 100, 200))
                    .MapJs(m => m.Name("Riak.mapValuesJson").Keep(true));

            var result = Client.MapReduce(query);
            //var items = result.Value.PhaseResults.SelectMany(x => x.GetObjects<dynamic>);
        }
        public void RiakIndexNameManglingIsHandledAutomatically()
        {
            var riakObject = new RiakObject(Bucket, Key, "value");
            riakObject.BinIndex("name").Set("jeremiah");
            riakObject.BinIndex("state_bin").Set("oregon");
            riakObject.IntIndex("age").Add(32);
            riakObject.IntIndex("cats_int").Add(2);

            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("name").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("name_bin").ShouldBeTrue();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state_bin").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state_bin_bin").ShouldBeTrue();

            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("age").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("age_int").ShouldBeTrue();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats_int").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats_int_int").ShouldBeTrue();
        }
Exemple #5
0
        private static RiakObject ToRiakObject(HabitacionVM habitacionVM)
        {
            var habitacionRiakObjectId = new RiakObjectId(habitacionBucketName, habitacionVM.Numero.ToString());
            var riakObject             = new RiakObject(habitacionRiakObjectId, habitacionVM);

            BinIndex habitacionTipoIndex = riakObject.BinIndex(habitacionTipoIndexName);

            habitacionTipoIndex.Add(habitacionVM.Tipo.Tipo);

            return(riakObject);
        }
Exemple #6
0
        private static RiakObject ToRiakObject(EmpleadoVM empleadoVM)
        {
            var empleadoRiakObjectId = new RiakObjectId(empleadoBucketName, empleadoVM.NumReg.ToString());
            var riakObject           = new RiakObject(empleadoRiakObjectId, empleadoVM);

            BinIndex empleadoNombreIndex = riakObject.BinIndex(empleadoNombreIndexName);

            empleadoNombreIndex.Add(empleadoVM.Nombre);

            if (empleadoVM.Servicio != null)
            {
                BinIndex empleadoSerDescIndex = riakObject.BinIndex(empleadoServicioDescripcionIndexName);
                empleadoSerDescIndex.Add(empleadoVM.Servicio.Descripcion);

                IntIndex empleadoCodSIndex = riakObject.IntIndex(empleadoCodSIndexName);
                empleadoCodSIndex.Add(empleadoVM.Servicio.CodS.ToString());
            }

            return(riakObject);
        }
        public void RiakIndexNameManglingIsHandledAutomatically()
        {
            var riakObject = new RiakObject(Bucket, Key, "value");

            riakObject.BinIndex("name").Set("jeremiah");
            riakObject.BinIndex("state_bin").Set("oregon");
            riakObject.IntIndex("age").Add(32);
            riakObject.IntIndex("cats_int").Add(2);

            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("name").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("name_bin").ShouldBeTrue();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state_bin").ShouldBeFalse();
            riakObject.BinIndexes.Values.Select(v => v.RiakIndexName).Contains("state_bin_bin").ShouldBeTrue();

            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("age").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("age_int").ShouldBeTrue();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats_int").ShouldBeFalse();
            riakObject.IntIndexes.Values.Select(v => v.RiakIndexName).Contains("cats_int_int").ShouldBeTrue();
        }
Exemple #8
0
        private static RiakObject ToRiakObject(FacturaVM facturaVM)
        {
            var facturaRiakObjectId = new RiakObjectId(facturasBucketName, facturaVM.CodigoF.ToString());
            var riakObject          = new RiakObject(facturaRiakObjectId, facturaVM);

            BinIndex facturaEntradaDateIndex = riakObject.BinIndex(facturaFacturaEntradaDateIndexName);

            facturaEntradaDateIndex.Add(facturaVM.Entrada.ToString("yyyy-MM-dd"));

            BinIndex facturaSalidaDateIndex = riakObject.BinIndex(facturaFacturaSalidaDateIndexName);

            facturaSalidaDateIndex.Add(facturaVM.Salida.ToString("yyyy-MM-dd"));

            BinIndex facturaDNIDateIndex = riakObject.BinIndex(facturaFacturaDNIIndexName);

            facturaDNIDateIndex.Add(facturaVM.Cliente.DNI);

            BinIndex facturaNumeroDateIndex = riakObject.BinIndex(facturaFacturaNumeroIndexName);

            facturaNumeroDateIndex.Add(facturaVM.Numero.Numero.ToString());

            BinIndex facturaFormaDateIndex = riakObject.BinIndex(facturaFacturaFormaIndexName);

            facturaFormaDateIndex.Add(facturaVM.Forma.Forma.ToString());

            BinIndex facturaTotalDateIndex = riakObject.BinIndex(facturaFacturaTotalIndexName);

            facturaTotalDateIndex.Add(facturaVM.Total.ToString());


            return(riakObject);
        }
Exemple #9
0
        private static RiakObject ToRiakObject(Order order)
        {
            var orderRiakObjectId = new RiakObjectId(ordersBucketName, order.Id.ToString());
            var riakObject        = new RiakObject(orderRiakObjectId, order);

            IntIndex salesPersonIdIndex = riakObject.IntIndex(ordersSalesPersonIdIndexName);

            salesPersonIdIndex.Add(order.SalesPersonId.ToString());

            BinIndex orderDateIndex = riakObject.BinIndex(ordersOrderDateIndexName);

            orderDateIndex.Add(order.OrderDate.ToString("yyyy-MM-dd"));

            return(riakObject);
        }
        private ICollection <RiakObjectId> PutObjectsWithIndexValues()
        {
            var ids = new List <RiakObjectId>();

            var larryId = new RiakObjectId("indexes", "people", "larry");
            var larry   = new RiakObject(larryId, "My name is Larry",
                                         RiakConstants.ContentTypes.TextPlain);

            larry.BinIndex("field1").Set("val1");
            larry.IntIndex("field2").Set(1001);

            ids.Add(larryId);
            CheckResult(client.Put(larry));

            var moeId = new RiakObjectId("indexes", "people", "moe");
            var moe   = new RiakObject(moeId, "My name is Moe",
                                       RiakConstants.ContentTypes.TextPlain);

            moe.BinIndex("Field1").Set("val2");
            moe.IntIndex("Field2").Set(1002);

            ids.Add(moeId);
            CheckResult(client.Put(moe));

            var curlyId = new RiakObjectId("indexes", "people", "curly");
            var curly   = new RiakObject(curlyId, "My name is Curly",
                                         RiakConstants.ContentTypes.TextPlain);

            curly.BinIndex("FIELD1").Set("val3");
            curly.IntIndex("FIELD2").Set(1003);

            ids.Add(curlyId);
            CheckResult(client.Put(curly));

            var veronicaId = new RiakObjectId("indexes", "people", "veronica");
            var veronica   = new RiakObject(veronicaId, "My name is Curly",
                                            RiakConstants.ContentTypes.TextPlain);

            veronica.BinIndex("FIELD1").Set(new string[] { "val4", "val4" });
            veronica.IntIndex("FIELD2").Set(new BigInteger[] {
                1004, 1005, 1006, 1004, 1004, 1007
            });

            ids.Add(veronicaId);
            CheckResult(client.Put(veronica));

            return(ids);
        }
        public void IndexesAreSavedWithAnObject()
        {
            var o = new RiakObject(Bucket, "the_object", "{ value: \"this is an object\" }");

            o.BinIndex("tacos").Set("are great!");
            o.IntIndex("age").Set(12);

            Client.Put(o);

            var result = Client.Get(o.ToRiakObjectId());

            result.BinIndexes.Count.ShouldEqual(1);
            result.IntIndexes.Count.ShouldEqual(1);

            result.BinIndex("tacos").Values[0].ShouldEqual("are great!");
            result.IntIndex("age").Values[0].ShouldEqual(12);
        }
        public void BinIndexGetReturnsListOfKeys()
        {
            for (var i = 0; i < 10; i++)
            {
                var o = new RiakObject(Bucket, i.ToString(), "{ value: \"this is an object\" }");
                o.BinIndex("age").Set("32");

                Client.Put(o);
            }

            var result = Client.IndexGet(Bucket, "age", "32");

            result.IndexKeyTerms.Count().ShouldEqual(10);

            foreach (var v in result.IndexKeyTerms)
            {
                var key = int.Parse(v.Key);
                key.ShouldBeLessThan(10);
                key.ShouldBeGreaterThan(-1);
            }
        }
        public void BinIndexGetReturnsListOfKeys()
        {
            for (var i = 0; i < 10; i++)
            {
                var o = new RiakObject(Bucket, i.ToString(), "{ value: \"this is an object\" }");
                o.BinIndex("age").Set("32");

                Client.Put(o);
            }

            var result = Client.IndexGet(Bucket, "age", "32");
            result.IsSuccess.ShouldBeTrue(result.ErrorMessage);
            result.Value.Count.ShouldEqual(10);

            foreach (var v in result.Value)
            {
                var key = int.Parse(v);
                key.ShouldBeLessThan(10);
                key.ShouldBeGreaterThan(-1);
            }
        }
        public void IndexesAreSavedWithAnObject()
        {
            var o = new RiakObject(Bucket, "the_object", "{ value: \"this is an object\" }");
            o.BinIndex("tacos").Set("are great!");
            o.IntIndex("age").Set(12);

            Client.Put(o);

            var result = Client.Get(o.ToRiakObjectId());

            result.IsSuccess.ShouldBeTrue(result.ErrorMessage);
            var ro = result.Value;

            ro.BinIndexes.Count.ShouldEqual(1);
            ro.IntIndexes.Count.ShouldEqual(1);
        }
        public void SecondaryIndexesAreForcedToLowerCase()
        {
            var obj = new RiakObject(Bucket, Key);

            obj.BinIndex("UPPERCASE").Set("foo");
            obj.IntIndex("MixedCase").Set(10);

            obj.BinIndexes.ContainsKey("uppercase").ShouldBeTrue();
            obj.IntIndexes.ContainsKey("mixedcase").ShouldBeTrue();

            obj.BinIndex("UPPERCASE").Values.First().ShouldEqual("foo");
            obj.BinIndex("uppercase").Values.First().ShouldEqual("foo");
            obj.IntIndex("MixedCase").Values.First().ShouldEqual(10);
            obj.IntIndex("mixedcase").Values.First().ShouldEqual(10);
        }
        public void RiakIndexingSupportsMultipleValuesCorrectly()
        {
            var riakObject = new RiakObject(Bucket, Key, "value");

            riakObject.BinIndex("jobs").Set("dogsbody");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(1);

            riakObject.BinIndex("jobs").Add("toilet cleaner", "president", "juggler");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(4);

            riakObject.BinIndex("jobs").Remove("dogsbody", "juggler");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(2);

            riakObject.BinIndex("jobs").Set("general", "engineer", "cook");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(3);
            riakObject.BinIndex("jobs").Values.Contains("general").ShouldBeTrue();

            riakObject.BinIndex("jobs").Clear();
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(0);

            riakObject.BinIndex("jobs").Delete();
            riakObject.BinIndexes.ContainsKey("jobs").ShouldBeFalse();

            riakObject.IntIndex("years").Set(10);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(1);

            riakObject.IntIndex("years").Add(20, 40, 999);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(4);

            riakObject.IntIndex("years").Remove(40, 999);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(2);

            riakObject.IntIndex("years").Set(51, 52, 53);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(3);
            riakObject.IntIndex("years").Values.Contains(52).ShouldBeTrue();

            riakObject.IntIndex("years").Clear();
            riakObject.IntIndex("years").Values.Count.ShouldEqual(0);

            riakObject.IntIndex("years").Delete();
            riakObject.IntIndexes.ContainsKey("years").ShouldBeFalse();
        }
        private ICollection<RiakObjectId> PutObjectsWithIndexValues()
        {
            var ids = new List<RiakObjectId>();

            var larryId = new RiakObjectId("indexes", "people", "larry");
            var larry = new RiakObject(larryId, "My name is Larry",
                RiakConstants.ContentTypes.TextPlain);

            larry.BinIndex("field1").Set("val1");
            larry.IntIndex("field2").Set(1001);

            ids.Add(larryId);
            CheckResult(client.Put(larry));

            var moeId = new RiakObjectId("indexes", "people", "moe");
            var moe = new RiakObject(moeId, "My name is Moe",
                RiakConstants.ContentTypes.TextPlain);

            moe.BinIndex("Field1").Set("val2");
            moe.IntIndex("Field2").Set(1002);

            ids.Add(moeId);
            CheckResult(client.Put(moe));

            var curlyId = new RiakObjectId("indexes", "people", "curly");
            var curly = new RiakObject(curlyId, "My name is Curly",
                RiakConstants.ContentTypes.TextPlain);

            curly.BinIndex("FIELD1").Set("val3");
            curly.IntIndex("FIELD2").Set(1003);

            ids.Add(curlyId);
            CheckResult(client.Put(curly));

            var veronicaId = new RiakObjectId("indexes", "people", "veronica");
            var veronica = new RiakObject(veronicaId, "My name is Curly",
                RiakConstants.ContentTypes.TextPlain);

            veronica.BinIndex("FIELD1").Set(new string[] { "val4", "val4" });
            veronica.IntIndex("FIELD2").Set(new BigInteger[] {
                1004, 1005, 1006, 1004, 1004, 1007
            });

            ids.Add(veronicaId);
            CheckResult(client.Put(veronica));

            return ids;
        }
        public void RiakIndexingSupportsMultipleValuesCorrectly()
        {
            var riakObject = new RiakObject(Bucket, Key, "value");

            riakObject.BinIndex("jobs").Set("dogsbody");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(1);

            riakObject.BinIndex("jobs").Add("toilet cleaner", "president", "juggler");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(4);

            riakObject.BinIndex("jobs").Remove("dogsbody", "juggler");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(2);

            riakObject.BinIndex("jobs").Set("general", "engineer", "cook");
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(3);
            riakObject.BinIndex("jobs").Values.Contains("general").ShouldBeTrue();

            riakObject.BinIndex("jobs").Clear();
            riakObject.BinIndex("jobs").Values.Count.ShouldEqual(0);

            riakObject.BinIndex("jobs").Delete();
            riakObject.BinIndexes.ContainsKey("jobs").ShouldBeFalse();

            riakObject.IntIndex("years").Set(10);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(1);

            riakObject.IntIndex("years").Add(20, 40, 999);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(4);

            riakObject.IntIndex("years").Remove(40, 999);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(2);

            riakObject.IntIndex("years").Set(51, 52, 53);
            riakObject.IntIndex("years").Values.Count.ShouldEqual(3);
            riakObject.IntIndex("years").Values.Contains(52).ShouldBeTrue();

            riakObject.IntIndex("years").Clear();
            riakObject.IntIndex("years").Values.Count.ShouldEqual(0);

            riakObject.IntIndex("years").Delete();
            riakObject.IntIndexes.ContainsKey("years").ShouldBeFalse();
        }
 private void PutJohnSmith()
 {
     id = new RiakObjectId("default", "users", "john_smith");
     var obj = new RiakObject(id, "...user data...",
         RiakConstants.ContentTypes.TextPlain);
     obj.BinIndex("twitter").Set("jsmith123");
     obj.BinIndex("email").Set("*****@*****.**");
     CheckResult(client.Put(obj));
 }