Search Results

Search found 17945 results on 718 pages for 'last fm'.

Page 317/718 | < Previous Page | 313 314 315 316 317 318 319 320 321 322 323 324  | Next Page >

  • Why does cat not use options the way I expect UNIX programs to use switches?

    - by Chas. Owens
    I have been a UNIX user for more years than I care to think about, and in that time I have been trained to expect that when contradictory switches are given to a program the last one wins. Recently I have noticed that cat -bn file and cat -nb file both use the -b option (number blank lines) over the -n option (number all lines). I get this behavior on both BSD and Linux, so I don't think it is an implementation quirk. Is this something that is specified somewhere and am I just crazy for expecting the first example to number all lines?

    Read the article

  • Back in Brazil! See you at JavaOne LAD this week

    - by terrencebarr
    It’s great to be back in Sao Paulo. I’m looking forward to a another buzzing JavaOne LAD conference and the energy of the Latin American Java community! And, of course, catching up with Brazilian friends over some serious Caipirinhas I’m part of the Technical Keynote on Tuesday, and doing three technical sessions: Harnessing the Explosion of Advanced Microcontrollers with Embedded Java, Dec 5, 11:15 A New Platform for Ubiquitous Computing: Oracle Java ME Embedded, Dec 5, 17:30 Java ME Embedded Profile 8—for an Embedded World with Increasing Demands, Dec 6, 11:15 In fact, I think I will morph the last session into a more wide sweeping introduction into Java ME 8 (of which the Java ME Embedded Profile 8 is a component) – there is so much new and cool stuff in the pipe that just talking about Java ME Embedded Profile doesn’t do it justice.   Plus, I’ll be showing some small embedded Java toys at the demo booth (in the Exhibition Pavilion).   Hope to see you there!   Cheers, – Terrence Filed under: Mobile & Embedded Tagged: "Java ME 8", "JavaOne LAD", Java Embedded, Java ME

    Read the article

  • Why Wouldn't Root Be Able to Change a Zone's IP Address in Oracle Solaris 11?

    - by rickramsey
    You might assume that if you have root access to an Oracle Solaris zone, you'd be able to change the root's IP address. If so, you'd proceed along these lines ... First, you'd log in: root@global_zone:~# zlogin user-zone Then you'd remove the IP interface: root@user-zone:~# ipadm delete-ip vnic0 Next, you'd create a new IP interface: root@user-zone:~# ipadm create-ip vnic0 Then you'd assign the IP interface a new IP address (10.0.0.10): root@user-zone:~# ipadm create-addr -a local=10.0.0.10/24 vnic0/v4 ipadm: cannot create address: Permission denied Why would that happen? Here are some potential reasons: You're in the wrong zone Nobody bothered to tell you that you were fired last week. The sysadmin for the global zone (probably your ex-girlfriend) enabled link protection mode on the zone with this sweet little command: root@global_zone:~# dladm set-linkprop -p \ protection=mac-nospoof,restricted,ip-nospoof vnic0 How'd your ex-girlfriend learn to do that? By reading this article: Securing a Cloud-Based Data Center with Oracle Solaris 11 by Orgad Kimchi, Ron Larson, and Richard Friedman When you build a private cloud, you need to protect sensitive data not only while it's in storage, but also during transmission between servers and clients, and when it's being used by an application. When a project is completed, the cloud must securely delete sensitive data and make sure the original data is kept secure. These are just some of the many security precautions a sysadmin needs to take to secure data in a cloud infrastructure. Orgad, Ron, and Richard and explain the rest and show you how to employ the security features in Oracle Solaris 11 to protect your cloud infrastructure. Part 2 of a three-part article on cloud deployments that use the Oracle Solaris Remote Lab as a case study. About the Photograph That's the fence separating a small group of tourist cabins from a pasture in the small town of Tropic, Utah. Follow Rick on: Personal Blog | Personal Twitter | Oracle Forums   Follow OTN Garage on: Web | Facebook | Twitter | YouTube

    Read the article

  • chrome memory and cpu footprint

    - by nmizar
    I've searched the forums for an answer but I couldn't find quite the answer I was looking for [1] , so I thought I it could as well be of interest to more people around here. I carry out a big part of my job on the browser (or for the browser, if you want to put it that way). I tend to use Chrome, because it's got natively many of the newest features that I need (DevTools stuff, mainly but not only). BTW, I'm usually running the last available Chrome version/build on a desktop Vaio with 4GB RAM and dual core CPU and Ubuntu 12.04 as distro and Gnome as window manager. So, I was curious about a) why does Chrome spawn so many threads even opening only three of four tabs and b) is there any way to allocate more memory to Chrome to prevent its performance from degrading? Thanks in advance, Nacho PS [1] I found threads about Chrome freezing or running out of memory but not about the reasons for this being so or for avoiding it to happen. PPS Of course, I could always buy a newer and more capable machine and that is exactly what I'm trying to evaluate: is this a question of outdated hardware or the problem will keep appearing on any (decently but not hugely sized) machine?

    Read the article

  • Is there any simple game that involves psychological factors?

    - by Roman
    I need to find a simple game in which several people need to interact with each other. The game should be simple for an analysis (it should be simple to describe what happens in the game, what players did). Because of the last reason, the video games are not appropriate for my purposes. I am thinking of a simple, schematic, strategic game where people can make a limited set of simple moves. Moreover, the moves of the game should be conditioned not only by a pure logic (like in chess or go). The behavior in the game should depend on psychological factors, on relations between people. In more details, I think it should be a cooperation game where people make their decisions based on mutual trust. It would be nice if players can express punishment and forgiveness in the game. Does anybody knows a game that is close to what I have described above? ADDED I need to add that I need a game where actions of players are simple and easy to formalize. Because of that I cannot use verbal games (where communication between players is important). By simple actions I understand, for example, moves on the board from one position to another one, or passing chips from one player to another one and so on.

    Read the article

  • Tried teaching myself to program before college, accidently overwhelmed myself, tips?

    - by Gunnar Keith
    I'm sixteen, I'm overly interested in programming, and I'm currently taking IT classes during my mornings in high school. Last year, I tried teaching myself to code. It was quite exciting, but all I did was watch TheNewBoston's videos on YouTube for Python. After his tutorials, I just did research, made some CMD programs, and that's it. After that, I got cocky and got my feet wet in many other languages. Java, C++, C#, Perl, Ruby... and it overwhelmed me. Which made it less fun to code. I want to go to college for a 2 year programming course. And I want to make writing code my profession. But how do you recommend I attack re-learning it all again? Start with Python? Don't even try? Also, I'm not 100% in math, but I'm good friends with a lot of programmers, who say they suck at math, but manage to code just fine. I'm not looking for negative feedback. I just want the proper head-start on things before college.

    Read the article

  • XSF-FO intellisense and national languages with Apache FOP

    - by Lukasz Kurylo
    Some time ago I showed how to get an intellisense and how to configure the FO.NET to acquire national characters inside the generated pdf files. Due to the limitations that I mensioned in my previous post, I started playing with the Apache FOP. In this post I want to show, how to acquire the same result as I showed in the two posts related to FO.NET.   Intellisense   To get the intellisense from the XSL-FO templates set the xsi:schemaLocation the same way I showed it in this post. The only diffrence to FO.NET is that, during generating the document by the code I showed last time we will get an exception:   org.apache.fop.fo.ValidationException: Invalid property encountered on "fo:root": xsi:schemaLocation (See position 6:11)   Fortunatelly there is a very easy way to resolve this without removing the entire attribute along with the intellisense. Add to the FopFactory the ignoreNamespace by:   FopFactory fopFactory = FopFactory.newInstance(); fopFactory.ignoreNamespace(http://www.w3.org/2001/XMLSchema-instance);   Notice that, the url specified in this method this is a namespace for the xmlns:xsi namespace, not xsi.schemaLocation.   Fonts / national characters   This point is a little dfferent to acquire, but not more complicated that it was with FO.NET. To set the fonts in Apache FOP 1.0, we need a configuration file. A sample one can be get from the directory where we unpacked the fop binaries, from conf subdirectory. There is a file called fop.xconf. We must copy this file to our solution. In the simplest way, in the <fonts> tag we can add  <auto-detect/>. Thanks to this, FOP will index all fonts available on the installed operating system. There probably should be no problem, if we have a http handler or a WCF Service on the server that serves the generated pdf documents. In this situation we can use all available fonts on this server.   To use this config file, we must set a path to it:   FopFactory fopFactory = FopFactory.newInstance(); fopFactory.setUserConfig(new File("fop.xconf"));

    Read the article

  • HP Photosmart 7450 Prints Noise On Windows 7 Pro 64-bit

    - by David Mackintosh
    I have received a working (in its last location) HP Photosmart 7450 printer. I connected it up to my Windows 7 Pro 64-bit workstation, and the driver was (apparently) installed. The problem is that whenever I try to print from it -- test page, text from notepad, picture, whatever -- it spins through a half dozen sheets of paper, some of which have fractions of text on them, but most of which are either blank or have line noise printed on them. Noise similar to what was printed out on ye olde laserjet printers when the postscript interpreter failed. HP's web site only has a "use the included driver in Windows 7, be happy" instruction. The driver has been removed and added several times. The printer was previously attached to a XP Home computer and worked correctly without incident. Does anyone have any ideas for troubleshooting before I drop this printer in the river?

    Read the article

  • Are periodic full backups really necessary on an incremental backup setup?

    - by user2229980
    I intend to use an old computer I have as a remote backup server for myself and a few other people. We are all geographically separated, and the plan is to do incremental daily backups using rsync and ssh. My original idea was to make one initial full backup then never again have to deal with the overhead of doing it, and from that moment on only copy the files changed since the last backup. I've been told that this could be bad, but I fail to understand why. Since each snapshot is comprised of hard links to the unchanged files plus the original changed ones, isn't it going to be identical to a new full backup? Why would I want to make another full backup?

    Read the article

  • Basic questions about network topologies

    - by laoshanlung
    I have just started learning about network topologies, but there are a lot of confusion about different types of network topologies i have learnt so far. First of all, BUS topology. If i have like 100 PCs in the same wire connected using BUS topology, and the network connection speed is 100Mbps, then each PC will have a connection of 1Mbps, right ? With the same scenario, if i connect those 100 PCs using STAR topology, then each PC will have a connection of 100Mbps ? Then with the TREE topology, i divide the system into 10 sub-system (10 tree branches) , each branch has 10 PCs, then i will have other 10 small "BUS-topology" networks each one will have a connection of 10Mbps and therefore each PC will also have 10Mbps ? And the last one is RING topology, 100 PCs, each PC will have 100Mbps connection ?

    Read the article

  • Fixing Windows7 Bootmgr

    - by Ashfame
    I made my laptop Dell XPS 15z dual boot with Ubuntu last year, and something went wrong & BOOTMGR of my windows got fried. I couldn't fix it that time. And I kept using Ubuntu. I don't even remember whether I installed directly via a live usb or used wubi, sorry. I installed 11.10 at that point of time, but right now I am on 12.10. Today, I got to know about the Boot repair tool, so I was wondering with this tool may be I can figure out what's exactly wrong with my setup. This is my Boot info - http://paste.ubuntu.com/1343575/ If I select the Win7 entry on GRUB2, I get the error BOOTMGR is missing. Press Ctrl-Alt-Del. Now the thing is I have read numerous links on how this could be fixed, but I don't feel comfortable without knowing what I am doing. So unless I am sure what a certain tool would do, I would prefer fixing it by hand (manually editing files). So reading from my boot info file, can anyone explain it to me what's messed up wrong here and what could fix it? I certainly can't afford to have my ubuntu install unbootable right now, but looking into this issue is bothering me too much. Help appreciated! I have Win7 DVD & Ubuntu live USBs with me, I am just looking for a sure shot way of fixing Win7 without any harm to my existing Ubuntu install.

    Read the article

  • S.M.A.R.T - Predictive Failure Count

    - by Bastien974
    I'm monitoring my IBM ServeRAID M5015 controller for RAID status with MegaCLI, I have this on one of the disk : Enclosure Device ID: 252 Slot Number: 6 Enclosure position: 0 Device Id: 14 Sequence Number: 2 Media Error Count: 32 Other Error Count: 0 Predictive Failure Count: 18 Last Predictive Failure Event Seq Number: 8119 PD Type: SAS Raw Size: 279.396 GB [0x22ecb25c Sectors] Non Coerced Size: 278.896 GB [0x22dcb25c Sectors] Coerced Size: 278.464 GB [0x22cee000 Sectors] Firmware state: Online, Spun Up SAS Address(0): 0x5000c50042c319c9 SAS Address(1): 0x0 Connected Port Number: 5(path0) Inquiry Data: IBM-ESXSST9300653SS B6336XN04HC10525B633 IBM FRU/CRU: 81Y9671 FDE Capable: Not Capable FDE Enable: Disable Secured: Unsecured Locked: Unlocked Needs EKM Attention: No Foreign State: None Device Speed: 6.0Gb/s Link Speed: 6.0Gb/s Media Type: Hard Disk Device Drive: Not Certified Drive Temperature :33 Celsius What does this mean exactly ? I can't find an exact description, is there a way to have more details ? The RAID array has the Optimal state. Media Error Count: 32 Predictive Failure Count: 18 Is there a way through the CLI to power-on the front LED so I physically know which disk I need to replace ?

    Read the article

  • My search what the Cloud will mean for my Work

    - by Kay Sellenrode
    Since I finished my MCM Exchange 2007 training back in April 2009 I’m struggling with the Cloud. I know it will change the way we do things today, but how will it affect my work. My work is Exchange consultancy mostly in the Netherlands, but more and more across the globe.   In my job as a consultant I noticed last year that a large percentage of my customers showed interest in the cloud services available today. But in most situations it seemed that it wasn’t the right time for them to switch to a cloud service at this moment. Right now I’m helping one of my customers is exploring Exchange online and it looks like they will switch over from their on-premise Exchange solution. This made me more than ever realize that I need to do something to not miss the boat.     With Office 365 coming this year, my idea is that Cloud services will take off from now. Also I’m sure that quite some customers will expect me to help them with their decision between the cloud and the on premise solution. So in the next months I will explore all the possibilities of Office 365, but also some of the competition in this field.   In my search for what the cloud will mean for me and my customers, I will go over all the aspects of the offered solutions. Any help in my search is always welcome. I’m looking forward to ideas people have around the cloud and how it will change the IT environment, especially in the Unified communications field.   Next week I will post my first article about my experiences with the cloud until now.

    Read the article

  • Blackberry Gmail password change

    - by Highstead
    I've updated my gmail password and so i must update my blackberry password. I tried updating the email password to which i got the following message. Invalid email address or password. Please verify your email address and password. The information you provided is incorrect. If the error persists contact gmail.com (Your email provider). Please try again. I tried again, with what i know the password to be, with password show on. I've also deleted the account and tried to create it. I've tried going to the "Last account activity: XXXX details" menu and signing out all devices. I'm continually getting the above error, but the account activities don't seem to show any sign of a mobile attempt to access my mail account. Has anyone had this issue before and how did you sign it. Thanks in advance.

    Read the article

  • Linux WD30EZRX WD Green HDD & Blacx Duet 5G Usb

    - by Adam
    I have connected up an WD30EZRX WD Green HDD to a Thermaltake Blacx Duet 5G USB dock in Ubuntu 12.04. Every thing seems fine except when the HDD idles it seems to have error ls: reading directory .: Input/output error after a while and is only fixed by unmounting and remounting the drive as root. I have the following line in /etc/fstab UUID=AAF670E9F670B6E3 /media/3TB ntfs defaults,user,auto 0 0 I have noticed that it seems to go between /dev/sdc2 and /dev/sdd2 devices on remount. I did copy 1TB last night without issue in 1 sitting. But after x mins of idle it has remount issue. Any tips/suggestions on how to proceed would be appreciated. Spent most of the night googling and all its done is made me sad. Edit (tried as suggested): root@mediaserver:/media/3TB# sudo hdparm -B 255 -S 253 /dev/sdd2 /dev/sdd2: setting Advanced Power Management level to disabled HDIO_DRIVE_CMD failed: Input/output error setting standby to 253 (vendor-specific) APM_level = not supported Seems as if that didn't help with this particular drive.

    Read the article

  • Precautions during SSH

    - by Shagun
    I recently had to give away my Ubuntu 12.10 root password to one of my friends so that he could SSH into my system and send some files to me. Now he is my friend and I trust him so I was not reluctant in sharing my password. And I did change it afterwards. But it just struck me how can I view all the commands that were executed by some other user remote logging into my system (obviously not my friend. I mean in general).To what extent can they access my data (especially my passwords eg I use Last Pass so can they access my account passwords as well??) And if they open any browser after logging into my system do they have access to all my passwords provided I have saved them using the "remember password" option given by chrome Also what precautions I should take when I am allowing some one to remote login in my system and how can I track the various commands used by them or the changes they made in my system. Also is there some simple way to get notified whenever some one logs into my system apart from checking the /var/log/auth.log file??

    Read the article

  • How to loop section from a song correctly?

    - by Teflo
    I'm programming a little Music Engine for my game in C# and XNA, and one aspect from it is the possibility to loop a section from a song. For example, my song has an intropart, and when the song reached the end ( or any other specific point ), it jumps back where the intropart is just over. ( A - B - B - B ... ) Now I'm using IrrKlank, which is working perfectly, without any gaps, but I have a problem: The point where to jump back is a bit inaccurate. Here's some example code: public bool Passed(float time) { if ( PlayPosition >= time ) return true; return false; } //somewhere else if( song.Passed( 10.0f ) ) song.JumpTo( 5.0f ); Now the problem is, the song passes the 10 seconds, but play a few milliseconds until 10.1f or so, and then jumps to 5 seconds. It's not that dramatic, but very incorrect for my needs. I tried to fix it like that: public bool Passed( float time ) { if( PlayPosition + 3 * dt >= time && PlayPosition <= time ) return true; return false; } ( dt is the delta time, the elapsed time since the last frame ) But I don't think, that's a good solution for that. I hope, you can understand my problem ( and my english, yay /o/ ) and help me :)

    Read the article

  • Best solution for getting referral information in PHP

    - by absentx
    I am currently redoing some link structuring on a website. In the past we have used specific php files on the last step to direct the user to the proper place. Example: www.mysite.com/action/go-to-blue.php or www.mysite.com/action/short/go-to-red.php www.mysite.com/action/tall/go-to-red.php We are now restructuring to eliminate the /short/ or /tall/ directory. What this means is now "go-to-blue.php" will be doing some extra processing to make sure it sends the visitor to the proper place. The static method of the past was quite effective, because, well, if they left from that page we knew we had it right. Now since we are 301 redirecting action/short/go-to-red.php to just action/go-to-red.php it is quite important on "go-to-red.php" that we realize a user may have been redirected from /short/ or /tall/. So right now I am using HTTP_REFERRER and of course in my testing that works fine, but after a lot of reading it is clear that this is not a solid solution, so I was starting to brainstorm on other ways to check and make sure we get the proper referral information. If we could check HTTP_REFERRER plus some other test, I would feel confident we have a pretty good system in place to send the visitor to the right place. Some questions/comments: Could I use a session variable or a cookie to accomplish this goal? If so, would that be maintained through the 301 redirect? I don't see why it wouldn't be.. Passing the url in the url is not an option in this case.

    Read the article

  • Postgresql spawning a ridiculous number of postmaster processes

    - by Kevin Loney
    For some reason postgres is spawning 700 postmaster processes for handling database requests and the postgres log file if full of 'unexpected EOF on client connection', 'incomplete startup packet' and 'sorry, too many clients already'. netstat tells me that all the open connections are local and I'm pretty sure are coming from postgres internally. This particular instance has been running just fine for the last 230 days or so and nothing has changed configuration wise. Any thoughts on where I should be looking to try and resolve this issue? This is my first time diagnosing a problem like this so if there is any steps I can take to help narrow down the cause that would be helpful as well.

    Read the article

  • How-to get the binding for a tab in the Dynamic Tab Shell Template

    - by Frank Nimphius
    The Dynamic Tab Shell template does expose a method on the Tab.java class that allows you to get access to the ADF binding container for a tab. At least in theory this works, because in practice this call always returns a null value (a bug is filed for this). To work around the problem, you can use code similar to the following to get the ADF binding for a specific tab DCBindingContainer currentBinding = (DCBindingContainer) BindingContext.getCurrent().getCurrentBindingsEntry(); DCBindingContainer templateBinding = (DCBindingContainer)currentBinding.get("ptb1"); DCBindingContainer tabBinding= (DCBindingContainer)templateBinding.get("r"+0);  In the code line above, the tabBinding variable will hold the binding reference to the first tab in the dynamic tab shell template. Note that the tab doesn't need to be visible for this (which has to do with how the template works).  "ptb1" is the template reference name in the PageDef file (Executable section) of the template consumer view. Check this string in your page before using this code. If it differs, change it also in the code above. "r0" is the binding reference of the first tab in the template. Te last tab is referenced by "r14".  

    Read the article

  • Fan always on and overheating problems on HP G62

    - by Dave
    I have a HP G62 with i5 processor, 4G Ram and ATI HD 5470. Started using Ubuntu 4 months ago, first was 11.10 and after 12.04. Everything worked perfectly until some weeks ago when my cpu fan became "crazy" and I mean by this always on, noise and overheating problems, for sure if I put a glass with water in some minutes will boil (and I mean it). There can be a bug in the last kernel or any other Ubuntu's official update? And by the way CPU fan is cleaned like a new born baby; Used jupiter and all those stuff (lm-sensor, psensor...) - same problem; Don't ask me to install ATI drivers because will work like sh#t (interface laggy as HD 5470 isn't supported by Ubuntu) and I can't even open ATI Catalyst (error when I try to open it), more than this I always used open source drivers and as I said, worked perfectly (3d, effects). Right now I'm back to Windows and everything is working perfectly but my main problem is that I get used with Ubuntu and kinda weird to use windows again. I want back my nice and almost perfect Ubuntu. Thanks, Dave

    Read the article

  • Laptop screen is cracked, external monitor only mirroring the broken laptop screen

    - by user92415
    I did something stupid. When my Dell Vostro 1000 laptop screen cracked and went all crazy and I couldn't see anything, I attached it to an external monitor and pressed Fn + F5 and it worked. But then I did something in the control panel that made the external screen look similar to the laptop screen. That made the external screen completely unusable too. In the control panel it was the last tab – something with "dual screens" I think. Is there anyway to reverse what did, turn off the laptop screen permanently and turn the external monitor into the primary? Remember that I can't see anything on the laptop screen. It is a complete goner – and because of what I did I can't see anything on the external monitor.

    Read the article

  • The Twelve Days of Geekmas

    - by YatriTrivedi
    Looking for some last minute shopping for your favorite geek? We put a few holiday shopping items into the form of a song to show off just how geeky your Christmas can be. Make sure that you read through the list to the tune of the Twelve Days of Christmas. Yes, we’re really being silly today. Have fun! Image by dawolf On the twelfth day of Geekmas, a dear friend gave to me… Latest Features How-To Geek ETC The Complete List of iPad Tips, Tricks, and Tutorials The 50 Best Registry Hacks that Make Windows Better The How-To Geek Holiday Gift Guide (Geeky Stuff We Like) LCD? LED? Plasma? The How-To Geek Guide to HDTV Technology The How-To Geek Guide to Learning Photoshop, Part 8: Filters Improve Digital Photography by Calibrating Your Monitor The Brothers Mario – Epic Gangland Style Mario Brothers Movie Trailer [Video] Score Awesome Games on the Cheap with the Humble Indie Bundle Add a Colorful Christmas Theme to Your Windows 7 Desktop This Windows Hack Changes the Blue Screen of Death to Red Edit Images Quickly in Firefox with Pixlr Grabber Zoho Writer, Sheet, and Show Now Available in Chrome Web Store

    Read the article

  • Update Your NetBeans Plugin's "Supported NetBeans Versions" In The Next Two Weeks!

    - by Geertjan
    For each NetBeans plugin uploaded to the NetBeans Plugin Portal, the registration page starts like this: Note how the "Supported NetBeans Versions" field is empty, i.e., no checkbox is checked, for the plugin above. As you can also see, there is a red asterisk next to this field, which means it is mandatory. It is mandatory for the latest version of the NetBeans Plugin Portal, while it wasn't mandatory before, so that several plugins were registered without their supported version being set. Therefore, since the version is now mandatory, anyone who doesn't want their plugin to be hidden for the rest of this year, and removed on 1 January 2013 if no one complains about their absence, needs to go to their plugin's registration page and set a NetBeans Version. E-mails have been sent to plugin developers of unversioned plugins already, over the last weeks. Currently there are 91 plugins that still need to have their NetBeans Version set. Probably at least 1/3 of those are my own plugins, so this is as much a reminder to myself as anyone else! Whether or not you have received an e-mail asking you to set a NetBeans Version for your plugins, please take a quick look anyway and maybe this is a good opportunity to update other information relating to your plugin. You (and I) have two weeks: on Monday 16 April, any NetBeans plugin in the Plugin Portal without a NetBeans Version will be hidden. And then removed, at the start of next year, if no one complains.

    Read the article

  • Code contracts and inheritance

    - by DigiMortal
    In my last posting about code contracts I introduced you how to force code contracts to classes through interfaces. In this posting I will go step further and I will show you how code contracts work in the case of inherited classes. As a first thing let’s take a look at my interface and code contracts. [ContractClass(typeof(ProductContracts))] public interface IProduct {     int Id { get; set; }     string Name { get; set; }     decimal Weight { get; set; }     decimal Price { get; set; } }   [ContractClassFor(typeof(IProduct))] internal sealed class ProductContracts : IProduct {     private ProductContracts() { }       int IProduct.Id     {         get         {             return default(int);         }         set         {             Contract.Requires(value > 0);         }     }       string IProduct.Name     {         get         {             return default(string);         }         set         {             Contract.Requires(!string.IsNullOrWhiteSpace(value));             Contract.Requires(value.Length <= 25);         }     }       decimal IProduct.Weight     {         get         {             return default(decimal);         }         set         {             Contract.Requires(value > 3);             Contract.Requires(value < 100);         }     }       decimal IProduct.Price     {         get         {             return default(decimal);         }         set         {             Contract.Requires(value > 0);             Contract.Requires(value < 100);         }     } } And here is the product class that inherits IProduct interface. public class Product : IProduct {     public int Id { get; set; }     public string Name { get; set; }     public virtual decimal Weight { get; set; }     public decimal Price { get; set; } } if we run this code and violate the code contract set to Id we will get ContractException. public class Program {     static void Main(string[] args)     {         var product = new Product();         product.Id = -100;     } }   Now let’s make Product to be abstract class and let’s define new class called Food that adds one more contract to Weight property. public class Food : Product {     public override decimal Weight     {         get         {             return base.Weight;         }         set         {             Contract.Requires(value > 1);             Contract.Requires(value < 10);               base.Weight = value;         }     } } Now we should have the following rules at place for Food: weight must be greater than 1, weight must be greater than 3, weight must be less than 100, weight must be less than 10. Interesting part is what happens when we try to violate the lower and upper limits of Food weight. To see what happens let’s try to violate rules #2 and #4. Just comment one of the last lines out in the following method to test another assignment. public class Program {     static void Main(string[] args)     {         var food = new Food();         food.Weight = 12;         food.Weight = 2;     } } And here are the results as pictures to see where exceptions are thrown. Click on images to see them at original size. Violation of lower limit. Violation of upper limit. As you can see for both violations we get ContractException like expected. Code contracts inheritance is powerful and at same time dangerous feature. Although you can always narrow down the conditions that come from more general classes it is possible to define impossible or conflicting contracts at different points in inheritance hierarchy.

    Read the article

< Previous Page | 313 314 315 316 317 318 319 320 321 322 323 324  | Next Page >