Can you send me a patch against the git version?
On Fri, Sep 18, 2009 at 12:47 AM, Sean Kearon <[email protected]>wrote: > > Okay, I've extended Rhino.Licensing to allow locking against a > machine. The license element now has an attribute named machine. To > support this, I've added the following overload to LicenseGenerator, > preserving the previous functionality (the test for which remains): > > public string Generate(string name, Guid id, DateTime > expirationDate, string machineKey, LicenseType licenseType) > > This allows a machine key to be specified in the license. The > intended usage is to issue a license immediately after purchase and > then issue another after activation, where activation sends > information about the machine on which the application is running. I > have added LicenseType.PendingActivation to indicate the state where > the user has purchased but not yet activated. > > LicenseValidator is extended to read the machine key and has the > following new property for the machine key: > > public string Machine { get; private set; } > > Finally there is a new test in Can_generate_and_validate_key that > corresponds to the previous Gen_and_validate with simple extension for > the new machine feature: > > [Fact] > public void Gen_and_validate_with_machine() > { > var guid = Guid.NewGuid(); > var generator = new LicenseGenerator(public_and_private); > var expiration = DateTime.Now.AddDays(30); > var machine = Guid.NewGuid().ToString(); > var key = generator.Generate("Oren Eini", guid, expiration, > machine, LicenseType.PendingActivation); > > var path = Path.GetTempFileName(); > File.WriteAllText(path, key); > > var validator = new LicenseValidator(public_only, path); > validator.AssertValidLicense(); > > Assert.Equal(guid, validator.UserId); > Assert.Equal(expiration, validator.ExpirationDate); > Assert.Equal("Oren Eini", validator.Name); > Assert.Equal(machine, validator.Machine); > Assert.Equal(LicenseType.PendingActivation, > validator.LicenseType); > } > > Changed files here: > > http://groups.google.com/group/rhino-tools-dev/web/Rhino.Licensing%20with%20machine%20locking.zip?hl=all > > SVN patch here: > > http://groups.google.com/group/rhino-tools-dev/web/rhino%20licensing%20machine%20locking.patch?hl=all > > Hope this is useful! > > Sean > > On Sep 16, 10:30 pm, Sean Kearon <[email protected]> wrote: > > Thanks Ayende. > > > > Sean > > > > On 16 Sep, 22:12, Ayende Rahien <[email protected]> wrote: > > > > > > > > > inline > > > > > On Thu, Sep 17, 2009 at 12:02 AM, Sean Kearon < > [email protected]>wrote: > > > > > > After much pain with commercial licensing tools, I'm looking at > > > > Rhino.Licensing and have a couple of questions: > > > > > > ~ What do I have to do to use the code as part of my commercial > > > > project - acks etc? > > > > > Attribution in the documentation would be nice, but is not required. > > > > > > ~ If I customise the code then should I share my customisations and, > > > > if so, how is best to do this? (I want to add the ability to lock to > a > > > > machine). > > > > > Make the modifications, post a patch here, if this is good, I'll commit > it. > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en -~----------~----~----~----~------~----~------~--~---
