Search Results

Search found 15115 results on 605 pages for 'state pattern'.

Page 216/605 | < Previous Page | 212 213 214 215 216 217 218 219 220 221 222 223  | Next Page >

  • A Simple Entity Tagger

    - by Elton Stoneman
    In the REST world, ETags are your gateway to performance boosts by letting clients cache responses. In the non-REST world, you may also want to add an ETag to an entity definition inside a traditional service contract – think of a scenario where a consumer persists its own representation of your entity, and wants to keep it in sync. Rather than load every entity by ID and check for changes, the consumer can send in a set of linked IDs and ETags, and you can return only the entities where the current ETag is different from the consumer’s version.  If your entity is a projection from various sources, you may not have a persistent ETag, so you need an efficient way to generate an ETag which is deterministic, so an entity with the same state always generates the same ETag. I have an implementation for a generic ETag generator on GitHub here: EntityTagger code sample. The essence is simple - we get the entity, serialize it and build a hash from the serialized value. Any changes to either the state or the structure of the entity will result in a different hash. To use it, just call SetETag, passing your populated object and a Func<> which acts as an accessor to the ETag property: EntityTagger.SetETag(user, x => x.ETag); The implementation is all in at 80 lines of code, which is all pretty straightforward: var eTagProperty = AsPropertyInfo(eTagPropertyAccessor); var originalETag = eTagProperty.GetValue(entity, null); try { ResetETag(entity, eTagPropertyAccessor); string json; var serializer = new DataContractJsonSerializer(entity.GetType()); using (var stream = new MemoryStream()) { serializer.WriteObject(stream, entity); json = Encoding.UTF8.GetString(stream.GetBuffer(), 0, (int)stream.Length); } var guid = GetDeterministicGuid(json); eTagProperty.SetValue(entity, guid.ToString(), null); //... There are a couple of helper methods to check if the object has changed since the ETag value was last set, and to reset the ETag. This implementation uses JSON to do the serializing rather than XML. Benefit - should be marginally more efficient as your hashing a much smaller serialized string; downside, JSON doesn't include namespaces or class names at the root level, so if you have two classes with the exact same structure but different names, then instances which have the same content will have the same ETag. You may want that behaviour, but change to use the XML DataContractSerializer if you think that will be an issue. If you can persist the ETag somewhere, it will save you server processing to load up the entity, but that will only apply to scenarios where you can reliably invalidate your ETag (e.g. if you control all the entry points where entity contents can be updated, then you can calculate and persist the new ETag with each update).

    Read the article

  • Don’t string together XML

    - by KyleBurns
    XML has been a pervasive tool in software development for over a decade.  It provides a way to communicate data in a manner that is simple to understand and free of platform dependencies.  Also pervasive in software development is what I consider to be the anti-pattern of using string manipulation to create XML.  This usually starts with a “quick and dirty” approach because you need an XML document and looks like (for all of the examples here, we’ll assume we’re writing the body of a method intended to take a Contact object and return an XML string): return string.Format("<Contact><BusinessName>{0}</BusinessName></Contact>", contact.BusinessName);   In the code example, I created (or at least believe I created) an XML document representing a simple contact object in one line of code with very little overhead.  Work’s done, right?  No it’s not.  You see, what I didn’t realize was that this code would be used in the real world instead of my fantasy world where I own all the data and can prevent any of it containing problematic values.  If I use this code to create a contact record for the business “Sanford & Son”, any XML parser will be incapable of processing the data because the ampersand is special in XML and should have been encoded as &amp;. Following the pattern that I have seen many times over, my next step as a developer is going to be to do what any developer in his right mind would do – instruct the user that ampersands are “bad” and they cannot be used without breaking computers.  This may work in many cases and is often accompanied by logic at the UI layer of applications to block these “bad” characters, but sooner or later someone is going to figure out that other applications allow for them and will want the same.  This often leads to the creation of “cleaner” functions that perform a replace on the strings for every special character that the person writing the function can think of.  The cleaner function will usually grow over time as support requests reveal characters that were missed in the initial cut.  Sooner or later you end up writing your own somewhat functional XML engine. I have never been told by anyone paying me to write code that they would like to buy a somewhat functional XML engine.  My employer/customer’s needs have always been for something that may use XML, but ultimately is functionality that drives business value. I’m not going to build an XML engine. So how can I generate XML that is always well-formed without writing my own engine?  Easy – use one of the ones provided to you for free!  If you’re in a shop that still supports VB6 applications, you can use the DomDocument or MXXMLWriter object (of the two I prefer MXXMLWriter, but I’m not going to fully describe either here).  For .Net Framework applications prior to the 3.5 framework, the code is a little more verbose than I would like, but easy once you understand what pieces are required:             using (StringWriter sw = new StringWriter())             {                 using (XmlTextWriter writer = new XmlTextWriter(sw))                 {                     writer.WriteStartDocument();                     writer.WriteStartElement("Contact");                     writer.WriteElementString("BusinessName", contact.BusinessName);                     writer.WriteEndElement(); // end Contact element                     writer.WriteEndDocument();                     writer.Flush();                     return sw.ToString();                 }             }   Looking at that code, it’s easy to understand why people are drawn to the initial one-liner.  Lucky for us, the 3.5 .Net Framework added the System.Xml.Linq.XElement object.  This object takes away a lot of the complexity present in the XmlTextWriter approach and allows us to generate the document as follows: return new XElement("Contact", new XElement("BusinessName", contact.BusinessName)).ToString();   While it is very common for people to use string manipulation to create XML, I’ve discussed here reasons not to use this method and introduced powerful APIs that are built into the .Net Framework as an alternative.  I’ve given a very simplistic example here to highlight the most basic XML generation task.  For more information on the XmlTextWriter and XElement APIs, check out the MSDN library.

    Read the article

  • Google Games Chat #5

    Google Games Chat #5 The Google Games Chat (official motto: "Still not cancelled") is back for yet another rousing debate about industry trends, the state of gaming in general, and, frankly, any other random thoughts that happen to cross our minds. We don't really filter what we say very much. Ask us questions in the moderator link! We might even get around to answering them! From: GoogleDevelopers Views: 0 0 ratings Time: 00:00 More in Gaming

    Read the article

  • Ubuntu 11.10 error message at startup after clean install

    - by user999687
    I have just installed Ubuntu 11.10 (did a fresh install and erased 11.04). After the reboot it appeared a log on the screen, saying all the starting services on the left and [OK] on the right. However, two particular entries, starting automatic crash report installation and starting restore sound card(s') mixer state(s) were set on [FAIL]. After that, Ubuntu did not boot. Is there any way that i can skip those two entries and boot Ubuntu?

    Read the article

  • Estimates, constraint and design [closed]

    - by user65964
    For your next two software projects (assuming that you're getting programming assignments, otherwise consider the program to find the min and max of a set of rational numbers) estimate how much effort they would take before doing them, then keep track of the actual time spent. How accurate were your estimates? State the requirements, constraint, design, estimate (your original estimate and the actual time it took), implementation (conventions used, implement/test path followed.

    Read the article

  • SqlLocalDb vs. Cumulative Updates

    - by AaronBertrand
    Last week I announced that SQL Server 2012 Cumulative Update #3 was released. A question came up about SqlLocalDb and I will try to address the current state of patching SqlLocalDb. Please keep in mind that these comments are only relevant to cumulative updates - I do not know whether this is all true for service packs. When SqlLocalDb was first released, there were a few ways to get it: - Visual Studio 2012 betas - SQL Server 2012 Express - From the standalone feature pack installer Now, at that...(read more)

    Read the article

  • How can I clear history and settings for the Remote Desktop Viewer (Vinagre)?

    - by user68370
    How do I clear all the settings for Vinagre to take it back to a brand-new, virgin state? I accidentally typed a connection in wrong and I cannot figure out how to delete it. Also some of my connections are not working correctly and I think that if I could flush the whole thing clean it might fix those issues. I have tried uninstalling and reinstalling, but it remembers the previous settings/connections.

    Read the article

  • What is juju doing when my deployment is "pending"? It seems to take awhile without much happening

    - by mfisch
    After deploying a charm, either locally or not, juju status lists "Pending". It seems to sit in this state for awhile, longer in my experience in the cloud, a bit shorter locally. What is juju doing during this time? For local instances it's a couple minutes or less, longer with cloud instances, up to 10 minutes in some cases. I am just curious if deploy's stay pending when the VM is being setup or is something else going on?

    Read the article

  • Open source Entity-Component game [on hold]

    - by Papavoikos
    I've been reading a lot about entity-component design but every article talks about the philosophy behind such design, leaving a lot of details and implementations outside. I'm looking for an open source game that uses the entity-component design so I can study the concrete implementations and see how they deal with things such as How (and if) they deal with inter-component communication How much logic each component has or doesn't have How a subsystem can change it's behavior depending on an entity's state (the screen darkens depending on the player's health)

    Read the article

  • SQL Azure - Creating backups and copies of your databases

    As a DBA you always followed a practice to back up your database (or take a snapshot of your database) before making any changes so that you can revert to your old database state if something goes wrong. Also to setup a development or test environment you use a backup of your database and restore it in the respective environment. If you are moving to SQL Azure, what would you do in these cases as backup / restore and database snapshots are not supported as of now?

    Read the article

  • Sécurité IT : la Chine n'est plus la première source de cyber attaques, le pays cède son titre à l'Indonésie

    Sécurité IT : la Chine n'est plus la première source de cyber attaque, le pays cède son titre à l'Indonésie Dans son rapport « The State of the Internet » qui a couvert le second trimestre de l'année en cours, Akamai révèle que la Chine n'est désormais plus le champion des cyber attaques. Bien que le pays soit toujours la source du tiers des attaques enregistrées entre avril et juillet, c'est maintenant l'Indonésie qui occupe le trône avec 38% des attaques. Rappelons que pendant le premier...

    Read the article

  • xmodmap reverting periodically

    - by JediBrooker
    I'm using xmodmap to swap control and command keys on my macbook pro. However, periodically the key revert back to their original state and this is becoming quite annoying. I'm on Ubuntu 13.10 and I can remember when this situation started occurring was when the system got a keyboard settings (in the system settings) update. Any ideas as to how to either: 1) delete the keyboard settings, or 2) stop the keyboard settings from reverting my keys ??? Cheers!

    Read the article

  • Legal Applications of Metamorphic Code

    - by V_P
    Firstly, I would like to state that I already understand the 'vx' applications for Metamorphic code. I am not here to ask a question related to any of those topics as that would be inappropriate in this context. I would like to know if anyone has ever used 'Metamorphic' code in practice, for purposes other than those previously stated, if so, what was the reasoning for using said concept. In essence I am trying to discover a purpose for this concept, if any, other than circumventing anti-virus scanners and the like.

    Read the article

  • Converting a PowerShell Script into a Module Part 2

    In this article the author explains how PSModuleInfo object for a module can be retrieved. Further, he shows how code can be injected into the module to manipulate the state of a module without having to reload it. He also explains how to directly set some metadata elements, like the module description, and some other PSModuleInfo object features.

    Read the article

  • Implementing Search Engine Optimization Technique to E-Publishing Domain

    Implement the SEO concepts to both applications static and dynamic web application. There is no issue for create SEO contents to static (web contents does not change until that web site is re host) web application and keep up the SEO regulations and state of affairs. A few significant challenges to dynamic content poses. To overcome these challenges to have a fully functional dynamic site that is optimized as much as a static site can be optimized. Whatever user search and they can get information their information quickly.

    Read the article

  • Is FFmpeg missing from the official repositories in 14.04?

    - by user254877
    I tried to install ffmpeg in trusty/Ubuntu 14.04 and got the following message: $sudo apt-get install ffmpeg Reading package lists... Done Building dependency tree Reading state information... Done Package ffmpeg is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'ffmpeg' has no installation candidate Why isn't the package available?

    Read the article

  • Cannot access Windows via grub after new dual-boot Ubuntu install

    - by user287474
    I previously installed Ubuntu on a computer that had Windows XP on it and got it successfully to run alongside it. (access both OS systems) Now I installed Ubuntu again on my MSI notebook with Windows 8.1, and I cannot access the GRUB without hitting escape on startup, and even then, I can no longer open windows. Before all of this, I created a recovery point, file history and saved a back up on a external hard drive incase I did anything wrong. Now how can I revert my computer back to it's state before installation.

    Read the article

  • Unable to access “430 GB Volume”

    - by user170924
    Error mounting /dev/sda3 at /media/fehr/D42CAFD92CAFB4C0: Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda3" "/media/fehr/D42CAFD92CAFB4C0"' exited with non-zero exit status 14: The disk contains an unclean file system (0, 0). Metadata kept in Windows cache, refused to mount. Failed to mount '/dev/sda3': Operation not permitted The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read-only with the 'ro' mount option.

    Read the article

  • Parallel Tasks in .NET 3.0

    Provide a mechanism to execute a list of tasks in parallel on multiple threads and communicate back to the calling thread useful state such as exceptions, timeouts and successful task completion.

    Read the article

  • Mozilla revendique 40% de part de marché européen pour Firefox, et Chrome continue son progrès selon

    Mise à jour du 02/04/10 (MAJ Djug) Mozilla revendique 40% de part de marché européen pour Firefox et Chrome continue sa monté en puissance selon les derniers chiffres de NetApplications Mozilla vient de publier un document «The State of the Internet» dans lequel elle revendique 40% de part de marché européen pour son navigateur Firefox durant le premier trimestre de 2010. [IMG]http://djug.developpez.com/rsc/firefox_share.jpg[/IMG] Selon ce document, 350 millions de personne utilisent Firefox à travers le monde ce qui représente 30% de part de marché mondiale du navigateur Web. D'un...

    Read the article

  • MVVM/Presentation Model With WinForms

    - by Erik Ashepa
    Hi, I'm currently working on a brownfield application, it's written with winforms, as a preparation to use WPF in a later version, out team plans to at least use the MVVM/Presentation model, and bind it against winforms... I've explored the subject, including the posts in this site (which i love very much), when boiled down, the main advantage of wpf are : binding controls to properties in xaml. binding commands to command objects in the viewmodel. the first feature is easy to implement (in code), or with a generic control binder, which binds all the controls in the form. the second feature is a little harder to implement, but if you inherit from all your controls and add a command property (which is triggered by an internal event such as click), which is binded to a command instance in the ViewModel. The challenges I'm currently aware of are : implementing a commandmanager, (which will trigger the CanInvoke method of the commands as necessery. winforms only supports one level of databinding : datasource, datamember, wpf is much more flexible. am i missing any other major features that winforms lacks in comparison with wpf, when attempting to implement this design pattern? i sure many of you will recommend some sort of MVP pattern, but MVVM/Presentation model is the way to go for me, because I'll want future WPF support. Thanks in advance, Erik.

    Read the article

< Previous Page | 212 213 214 215 216 217 218 219 220 221 222 223  | Next Page >