`(16) Patent No.:
`(12) United States Patent
`
`Naroff et al. Sep. 4, 2012 (45) Date of Patent:
`
`
`USOO826l246Bl
`
`(54) METHOD AND SYSTEM FOR
`DYNAMICALLY POPULATING GROUPS IN A
`DEVELOPER ENVIRONMENT
`
`(75)
`
`Inventors: Steve Naroff, San Jose, CA (US); Steve
`Lewallen, San Jose, CA (US); Tim
`Burngarner Sharpsburg MD (US)
`’
`’
`.
`.
`(73) Ass1gnee: Apple Inc., Cupertmo, CA (US)
`.
`.
`.
`.
`.
`( * ) Notlce:
`Subject to any d1scla1mer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 15403) by 883 days.
`
`(21) Appl NO . 10/936 233
`3
`Sep. 7, 2004
`
`Filed:
`
`(22)
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 9/44
`(2006.01)
`G06F 9/45
`(52) US. Cl.
`........................................ 717/140; 717/106
`(58) Field of Classification Search ........................ None
`See application file for complete search history.
`
`5,583,993 A
`a
`a
`2323: 2
`5,633,839 A
`5,640,566 A
`5,666,530 A
`5,710,922 A
`5,714,971 A *
`5,721,949 A
`5,726,909 A
`5,727,202 A
`5,734,823 A
`5,739,451 A
`5,740,134 A
`5,819,160 A
`5,835,721 A
`
`5,835,732 A
`
`12/1996 Foster et a1.
`u S
`13,/133$ grotner et a1~
`5/1997 Alexander et al.
`6/1997 Victor et al.
`9/1997 Clark et al,
`1/1998 Alley et a1.
`2/1998 Shalit et a1.
`2/1998 Smith et a1.
`3/1998 Kr'k '
`3/l998 Kulcéflgan
`3/l998 Saigh et a1.
`4/ 1998 Winksy et al.
`4/1998 Peterson
`10/1998 Foladare et a1.
`11/1998 Donahue et al.
`
`................... 715/804
`
`11/1998 Kikinis et al.
`(Continued)
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`0 917 077
`
`5/1999
`(Continued)
`
`OTHER PUBLICATIONS
`_
`_
`_
`_
`De Herrera, Chris, “Microsoft ActiveSync 3:1,” Vers1on 1.02, Oct.
`13, 2000.
`
`(56)
`
`References Clted
`
`(Continued)
`
`U'S' PATENT DOCUMENTS
`3,990,710 A
`11/1976 Hughes
`4,528,643 A
`7/l985 Freeny, Jr.
`4,851,931 A
`7/1989 Parker et al.
`5,168,481 A
`12/1992 Culbertson et 31.
`5,191,533 2
`$133; $3M“
`5’341’350 A
`8/1994 Frank et a1.
`5:355:302 A
`10/ 1994 Martin et 31,
`5,418,713 A
`5/ 1995 Allen
`5,428,735 A *
`6/1995 Kahl et 3L ~~~~~~~~~~~~~~~~~~~~ 715/839
`g’ggi’ggg :
`£1332 Thlgnvzpiin-Rohrlich
`5,559,945 A
`9/1996 Beaudet et a1.
`5,561,604 A
`10/1996 Buckley et a1.
`5,566,353 A
`10/1996 Cho et a1.
`
`Primary Examiner 7 Li Zhen
`~
`~ i
`Asszslanl Exammer
`Evral Bodden
`
`ABSTRACT
`(57)
`Improved techniques for automatic (or dynamic) updating (or
`maintaining) of file groups in a developer environment that
`stores and executes files are disclosed. The automatic update
`to file groups can occur when additional files are added to or
`removed from the developer environment. The automatic
`update to file groups can also occur when previously stored
`files are Othemlse altered
`
`35 Claims, 17 Drawing Sheets
`
`300
`
`/
`
`PDATE FIL
`GROUPS
`
`302
`
`304
`
`306
`
` ORE DYNAMI
`
`FILE GROUP(S
`
`UPDATE TO
`ILE AFFECT ONE OR
`
`MORE FILE
`GROUP(S)
`7
`305
`
`
`REGENERATE ONE OR
`MORE FILE GROUPS IN
`ACCORDANCE WITH FILE
`
`GROUP CONDITIONS
`
`
`
`
`
`
`DISPLAY SELECTED
`FILE GROUP
`
`
`
`RECEIVE FILE
`GROUP SELECTION
`
`
`
`
`
`I
`DISPLAY FILE GROUP
`IN ACCORDANCE WITH
`
`
`FILE GROUP
`CONDITIONS
`
`310
`
`312
`
`Apple Exhibit 4250
`
`Apple V. SightSound Technologies
`CBM2013-00020
`
`Page 00001
`
`Apple Exhibit 4250
`Apple v. SightSound Technologies
`CBM2013-00020
`Page 00001
`
`
`
`US 8,261,246 B1
`
`Page2
`
`U.S. PATENT DOCUMENTS
`
`7,228,298 B1
`
`6/2007 Raines
`
`12/1998 Alleyetal
`
`............ 707/203
`
`
`
`~
`
`~~~~~~~~~~~~~~~~~~~~~~
`
`1/1
`
`5845 282 A
`A
`2/1999 Jacobs
`5,875,110 A
`4/1999 Caposselaetal.
`5,897,642 A *
`“999 Bernard etaL
`5,918,213 A
`“999 Yamaum et 31'
`5,918,303 A
`71999 H9fikeretifl'
`5,923,757 A
`2,332,313 A * $333 $0231”
`5,963,916 A
`10/1999 Ka Ian ~
`,
`,
`P
`5,969,283 A
`”“999 Looney etaL
`5,983,069 A
`11/ 1999 C110 etaL
`5,995,098 A
`11/ 1999 Okada. etal'
`6,000,000 A
`”/1999 HakaS et 31'
`2582333 A
`lggggg anlkmslft 3L1
`6,041,023 A
`”000 Lagging”
`,
`,
`283%; A
`”$888 gfelflfit91~
`6,098,072 A *
`8/2000 81111311131; 31
`,
`,
`6,125,369 A
`”000 Wu etaL
`6,172,948 Bl
`“2001 Kelleretal'
`6,208,044 Bl
`”001 715“”th etal'
`224112828 3 ”$881 1%” et 31} 1
`6,243,725 B1
`6/2001 HZIIIESTejnznetal.
`,
`,
`6,247,135 B1
`6/2001 Feague
`1
`.
`2315:2333
`$3881 3W6;
`6,272,545 B1
`8/2001 13121113513651”
`,
`,
`.. g
`~
`6,283,764 BZ
`”001 KallyamaetaL
`6,295,541 Bl
`”001 B9dnaretal~
`6,332,175 Bl
`”/2001 Bmelletal'
`6,338,044 Bl
`“2002 COOketaL
`2315837? 3
`$883 E10133 321$
`6,380,947 B1
`4/2002 $3:th '
`,
`,
`1
`2,23%???) 3
`$883 2W .
`6,434,680 B2
`MOM 1331:? if31'
`~
`,
`,
`P.
`6,446,080 Bl
`”002 “ARV“ etaL
`E’jgi’gg? E
`33883 VKVatllnSkY 321$
`6,490,432 B1
`”/2002 W: 212:; 3'1
`,
`,
`g .
`~
`Egg/E: Bi
`lggggg £1103:d et 31
`,
`,
`6,529,804 Bl
`”003 Draggon et 31'
`222327182 3
`ggggg $111113“ Nie‘flen
`6,587,404 B1
`7/2003 K211: Z: :1'
`,
`,
`~
`6,621,768 Bl
`”003 Kel1e¥etal~
`2223/33 3: @388; i332?
`,
`,
`6,665,803 B2
`12/2003 Lunsford etal.
`gig/jg; 3 $88: gowk WA 1
`6,731,312 B2
`5/2004 Rig?“ eta'
`,
`,
`6760721 Bl
`7/2004 Chase“ “3L
`6,763,345 Bl
`7/2004 Hemplema“ et 31'
`6,779,019 Bl
`”004 Mfmsseau etal'
`6,785,542 Bl
`”004 Bhghtetal'
`gagg‘l‘ggg E?
`13388:“ £22111?
`.
`6,874,037 B1
`”005 Abrmfigtal
`~
`,
`,
`233:8; 3%
`$882 SOOdmanjiaL
`6,941,324 B2
`9/2005 P32311112: al
`6,978,127 B1
`”/2005 Bulthuisetal
`6,983,457 B2*
`1/2006 Mitsumorietal.
`6987 221 B2
`1,2006 Plan
`7’003’495 B1
`2,2006 Burgeretal.
`7,043,477 B2
`5/2006 Mercer et al.
`7,055,165 B2
`5/2006 Connelly
`7,111,009 B1
`9/2006 Gupta
`7,117,516 32
`10/2006 K1100 et 31.
`7,126,770 B1
`10/2006 Araietal.
`7,171,557 B2*
`1/2007 Kallahalla etal.
`7,209,633 B1
`4/2007 Novak etal.
`
`~
`
`........... 717/145
`
`............ 713/165
`
`ta,
`
`'
`
`9/2007 Mirouze etal.
`7,272,385 B2
`7:39:52 B 75333
`7’797’446 B2
`9,2010 H 11
`2001/0004310 A1
`6,2001 K3113”
`2001/0011308 A1
`8/2001 Clark etal.
`2001/0021053 A1
`9/2001 Colbourne etal.
`2001/0041021 A1
`11/2001 Boyle etal.
`2001/0044835 A1
`11/2001 Schoberetal.
`2001/0048642 A1
`12/2001 Beihan
`2001/0052123 A1
`12/2001 Kawai
`2002/0002413 A1
`1/2002 Tokue
`2002/0010788 A1
`1/2002 Nathan etal.
`2002/0013784 A1
`1/2002 Swanson
`2002/0015161 A1
`2/2002 Haneda etal.
`2002/0016968 A1
`2/2002 Nathan etal.
`2002/0046315 A1
`4/2002 Milleretal.
`2002/0055934 A1
`5/2002 Llpscomb etal.
`2002/0073167 A1
`6/2002 Powell et al.
`................ 345/769
`2002/0080180 A1
`6/2002 Manderetal.
`2002/0116082 A1
`8/2002 Gudorf
`2002/0118300 A1
`8/2002 Middleton etal.
`2002/0133515 A1
`9/2002 Kagle etal.
`2002/0138606 A1
`9/2002 Robison
`2002/0152278 A1
`10/2002 Pontenzone etal.
`”OZ/0161865 A1
`10/2002 Nguyen
`2002/0194195 A1
`12/2002 Fenton etal.
`2002/0174269 A1
`11/2002 Spurgatetal.
`2002/0194309 A1
`12/2002 Carteretal.
`2003/0013493 A1
`1/2003 Irimajirietal.
`2003/0014767 A1
`1/2003 Stumphauzer
`2003/0030733 A1
`2/2003 Seaman etal.
`2003/0037254 A1
`2/2003 Fischeretal.
`2003/0046434 A1
`3/2003 Flanagin etal.
`2003/0046671 A1
`3/2003 Bowen .......................... 717/141
`2003/0050058 A1
`3/2003 Walsh etal.
`2003/0055723 A1
`3/2003 English
`2003/0074457 A1
`4/2003 Kluth
`2003/0079038 A1
`4/2003 Robbin etal.
`............ 380/277
`2003/0081784 A1
`5/2003 Kallahalla etal.
`2003/0093340 A1
`5/2003 Krysteketal.
`2003/0098893 A1
`5/2003 Makinen ....................... 345/853
`2003/0112279 A1
`6/2003 Irimajiri
`2003/0149628 A1
`8/2003 Abbosh etal.
`2003/0167318 A1
`9/2003 Robbin etal.
`2003/0182315 A1
`9/2003 Plastina etal.
`2003/0191756 A1
`10/2003 Oh
`717/120
`2003/0200532 A1
`10/2003 Gensel
`2003/0206203 A1
`11/2003 Ly ................................. 345/853
`2003/0210821 A1
`11/2003 Yogeshwar etal.
`2003/0221541A1
`12/2003 Platt
`2004/0001395 A1
`1/2004 Keller et al.
`2004/0001396 A1
`1/2004 Keller et al.
`2004/0027930 A1
`2/2004 Kudo
`2004/0017997 A1
`“2004 0’ng
`2004/0055446 A1
`3/2004 Robbin etal.
`2004/0076086 A1
`4/2004 Keller
`2004/0083480 A1
`4/2004 Dodge .......................... 719/310
`2004/0093274 A1
`5/2004 Vanska etal.
`2004/0103102 A1
`5/2004 Nelson .......................... 707/100
`2004/0113915 A1
`6/2004 Ohtsukietal.
`2004/0123242 A1
`6/2004 McKibben etal.
`2004/0123725 A1
`7/2004 Kim
`2004/0128277 A1
`7/2004 Manderetal.
`2004/0139180 A1
`7/2004 White etal.
`2004/0148358 A1
`7/2004 Singh etal.
`2004/0205028 A1
`10/2004 Verosub etal.
`2004/0223245 A1
`11/2004 Morohashl
`2004/0225762 A1
`“/2004 P00
`2004/0249863 A1
`12/2004 Kawainina ................. 707/104.1
`2004/0261064 A1
`12/2004 Goldstein etal.
`............. 717/140
`2005/0055718 A1
`”005 Stone
`2005/0060264 A1
`3/2005 Schrock et 31.
`2005/0080915 A1
`4/2005 Shoemaker
`2005/0120063 A1
`6/2005 Koestler ........................ 707/204
`2005/0149392 A1
`7/2005 Gold etal.
`2005/0235015 A1
`10/2005 Abanainietal.
`2005/0240494 A1
`10/2005 Cue etal.
`
`........... 715/513
`
`.................... 707/1
`
`Page 00002
`
`Page 00002
`
`
`
`US 8,261,246 B1
`Page 3
`
`2005/0240661 A1
`2005/0249080 A1
`2005/0262528 A1
`2005/0267803 A1
`2005/0278377 A1
`2006/0015378 A1
`2006/0036567 A1*
`2006/0066627 A1
`2006/0089949 A1
`2006/0100978 A1
`2006/0156236 A1
`2006/0156239 A1
`2006/0163358 A1
`2006/0168340 A1*
`2006/0247980 A1
`2008/0256378 A1
`2009/0063496 A1
`2009/0063543 A1
`2010/0042654 A1
`
`10/2005 Heller et al.
`11/2005 Foote et al.
`11/2005 Herley et al.
`12/2005 Patel et al.
`12/2005 Mirrashidi et al.
`1/2006 Mirrishidi et al.
`2/2006 Tan ................................... 707/1
`3/2006 Gerhard et al.
`4/2006 Robbin
`5/2006 Heller et al.
`7/2006 Heller et al.
`7/2006 Jobs
`7/2006 Biderman
`.................. 709/242
`7/2006 Heller et al.
`11/2006 Mirrashidi et al.
`10/2008 Guillorit
`3/2009 Cunningham et al.
`3/2009 Martin et al.
`2/2010 Heller et al.
`
`FOREIGN PATENT DOCUMENTS
`0 982 732
`3/2000
`EP
`1 028 425
`8/2000
`EP
`1 548 740
`6/2005
`EP
`2000-339917
`12/2000
`JP
`2002-76465
`3/2001
`JP
`2001-93226
`4/2001
`JP
`2001-117800
`4/2001
`JP
`2001/291365 A
`10/2001
`JP
`2002/74909 A
`3/2002
`JP
`WO 95/16950
`6/1995
`W0
`WO 01/33569
`5/2001
`W0
`WO 01/67753 A1
`9/2001
`W0
`WO 02/25610
`3/2002
`W0
`WO 02/25935
`3/2002
`W0
`W0 03/023786
`3/2003
`W0
`W0 W0 2004-004338
`1/2004
`W0
`WO 2004/084413
`9/2004
`WO
`2005073856 A2
`8/2005
`
`OTHER PUBLICATIONS
`
`1995, http://www.wikipedia.org/wiki/
`
`IEEE 13947Wikipedia,
`Firewire.
`Miniman, “Applian Software’s Replay Radio and Player v1.02,”
`Product
`review, pocketnow.com, http://www.pocketnow.com/re-
`views/replay/replay.htm, Jul. 31, 2001.
`Personal Jukebox (PJB), “Systems Research Center and PAAD,”
`Compaq Computer Corp., Oct. 13, 2000, http://research.compaq.
`com/SRC/pj b/.
`Compaq, “Personal Jukebox,” Jan. 24, 2001, http://research.compaq.
`com/SRC/pj b/.
`Steinberg, “Sonicblue Rio Car,” Product Review, Dec. 12, 2000,
`http://electronics.cnet.com/electronics/0-6342420-1304-4098389.
`html.
`Andrew Birrell, “Personal Jukebox (PJB),” Oct. 13, 2000, http://
`birrell . org/andrew/talks/pjb-overview.ppt.
`Travis Butler, “Portable MP3: The Nomad Jukebox,” Jan. 8, 2001,
`http://db.tidbits.com/getbits.acgi?tbart:06261.
`Travis Butler, “Archos Jukebox 6000 Challenges Nomad Jukebox,”
`Aug. 13, 2001, http://db.tidbits.com/getbits.acgi?tbart:06521.
`Adam C. Engst, “SoundJam Keeps on Jammin’,” Jun. 19, 2000,
`http://db.tidbits.com/getbits.acgi?tbart:05988.
`Musicmatch,
`“Musicmatch and Xing Technology Introduce
`Musicmatch Jukebox,” May 18, 1998, http://www.musicmatch.com/
`info/company/press/releases/?year:1998&release:2.
`“Nomad Jukebox,” User Guide, Creative Technology Ltd., Version 1,
`Aug. 2000.
`“Apple’s iPod Available in Stores Tomorrow,” Press Release, Apple
`Computer, Inc., Nov. 9, 2001.
`“Digital Still CamerasiDownloading Images to a Computer,” Mimi
`Chakarova et al., Multi-Media Reporting and Convergence, 2 pgs.
`“Apple Introduces iTunesiWorld’s Best and Easiest To Use Juke-
`box Software,” Macworld Expo, San Francisco, Jan. 9, 2001.
`iTunes, Playlist Related Help Screens, iTunes v1.0, Apple Computer,
`Inc., Jan. 2001.
`
`“Apple Announces iTunes 2,” Press Release, Apple Computer, Inc.,
`Oct. 23,2001.
`Specification Sheet, iTunes 2, Apple Computer, Inc., Oct. 31, 2001.
`iTunes 2, Playlist Related Help Screens, iTunes v2.0, Apple Com-
`puter, Inc., Oct. 23, 2001 .
`SoundJam MP Plus, Representative Screens, published by Casady &
`Greene, Inc., Salinas, CA, 2000.
`“SoundJam MP Plus Manual, version 2.0”7MP3 Player and
`Encoder for Macintosh by Jeffrey Robbin, Bill Kincaid and Dave
`Heller, manual by Tom Negrino, published by Casady & Greene, Inc.,
`2000.
`Replay Gain, “Replay GainiA proposed Standard,” Oct. 7, 2001,
`available from http://replaygain.hydrogenaudio.org/index.html and
`http://replaygain.hydrogenaudio.org/outline.htrnl.
`Office Action from European Patent Office for European Patent
`Application No. 037644267 dated Nov. 8, 2005+A90.
`Glenn Fleishman, “Handheld iPod joins MP3 band a bit late, but is
`standout player,” Nov. 6, 2001, http://seattletimes.nwsource.com/
`htrnl/businesstechnology/l34361811,ptmacc040.html.
`“Hewlett Packard Jornada 525 Color Pocket PC,” downloaded Jan.
`25, 2002, http://www.pc4d.com/electronics/products/56/jornadai
`5257coloripocketipc.shtrnl.
`iTunes, Digital Music for your Mac, Apple Computer, Inc., down-
`loaded Oct. 22, 2001, http://www.apple.com/itunes/.
`“Rio Portable Music Player,” Web Review, downloaded Jan. 25,
`2002, http://www.webreviews.com/9901/rio.html.
`Andy Lindauer, “What’s in your Pocket?,” Edgereview, downloaded
`Jan. 25, 2002, http://www.edgereview.com/print.cfm?Type:aag
`&ID:286.
`U.S. Appl. No. 10/973,925, filed Oct. 25, 2004.
`US. Appl. No. 11/097,591, filed Apr. 1, 2005.
`US. Appl. No. 11/097,034, filed Apr. 1, 2005.
`International Search Report dated Jul. 9, 2003, from International
`Application No. PCT/USO3/21534.
`U.S. Appl. No. 10/198,639, filed Jul. 16, 2002.
`Breen, Christopher, “iMixing it Up: Sharing Your Sounds,” Sep. 17,
`2004, http://playlistmag.com/help/2004/09/imixhowto/index.php.
`Kawamoto et al., “On 15’ Birthday, iTunes Unwraps New Features,”
`Apr.
`28,
`2004,
`http://news.com.com/
`On+1st+birthday,+iTunes+unwraps+new+features/2100-1027i3 -
`5201598.html.
`PBS Local Insertion Server Instruction Manual, Microvision, Inc.,
`Jun. 19, 1996, pp. 1-71.
`Wave Station Digital Audio Automation System, Instruction &
`Operations Manual Broadcast Software International, pp. 1-1 13, Feb.
`4, 1997.
`Nielsen et al., “Comparative Design Review: An Exercise in Parallel
`Design”, INTERCHI ’93, pgs., Apr. 24-29, 1993, 414-417.
`Lowery Daryl, “Random-Access Digital AudioiRecording Sys-
`tems”, Jun. 1992, pp. 68-71.
`Sadie Master System, Product Brochure, Studio audio Digital Equip-
`ment Inc., 2 pgs.
`RCS Works-CaItWall User’s Guide and Reference Manual, pp. 1-83,
`Feb. 7, 1993.
`“Digital Audio Just Got Easier! ”, CartWorks Digital Audio Systems,
`dbm Systems, Inc.
`“CartWorks File Utilities User’s Manual”, dbm Systems, Inc., pp.
`1-8.
`“CartWorks MHD Music-on-Hard-Drive QuickSchedule User’s
`Manual”, dbm Systems, Inc., pp. 1-8, Feb. 8, 1998.
`“CartWorks MHD Music-on-Hard-Drive User’s Manual V6.8”, dbm
`Systems, Inc., pp. 1-11.
`“CartWorks On-Demand Editor User’s Manual”, dbm Systems, Inc.,
`pp. 1-7.
`“CartWorks Script Editor User’s Manual v3 .12”, dbm Systems, Inc.,
`pp. 1-26.
`“CartWorks Spot Set Editor User’s Manual”, dbm Systems, Inc., pp.
`1-1 1 .
`“The DADpro Digital Audio Delivery System Operation Manual
`Version 1.0”, IBM Corp., pp. 1-424, Aug. 30, 1996.
`“Virtual RecorderiBasic Operations”, ASC Audio Video Corpora-
`tion, pp. 1-94, Sep. 9, 1996.
`
`Page 00003
`
`Page 00003
`
`
`
`US 8,261,246 B1
`Page 4
`
`“Broadcast Tools: SpotBase, Playlist & TapeBase”, ASC Audio
`Video Corporation, pp. 1-2.
`“VR 300 Advanced Broadcast Video Server”, ASC Audio Video
`Corporation, pp. 1-9.
`“VR300 Video Server User Manual, Version 1.0”, ASC Audio Video
`Corporation, pp. 1-40, Mar. 20, 1998.
`“Gravis WinDecks Version 1.12”, screen shots, Gravis Computer
`Technology Ltd., pp. 1-10.
`WinDecks, User Instructions, Gravis Computer Technology Ltd., pp.
`1-14.
`U.S.App1.No. 11/138,004, filed May 25,2005.
`U.S.App1.No. 11/114,914, filed Apr. 25,2005.
`U.S.App1.No. 11/454,060, filed Jun. 14, 2006.
`Iriver, “PMP140/120”, Sep. 13, 2004, 1-2 pgs.
`MG-25, Portable MPEG4 Player (MG-25), Jul. 29, 2004, 1-3 pgs.
`Half-lifeiWikipedia, the free encyclopedia, http;//enwikipedia.org/
`wiki/Halfe-life, Feb. 22, 2009.
`Mabini. MemMaid Review. Pocket PC Dubai, Jul. 23, 2004[online],
`[retrieved on Mar. 26, 2008]. Retrieved from the Internew <URL:
`http://www.pocketpcdubai.com/DinarSoft/memmaidireview.
`htm1>.
`Windows XP Service Pack 2, Figures 1-2 and “How to obtain the
`latest Windows XP service pack,” Aug. 25, 2004.
`Office Action from European Patent Office for 03764426.7 mailed
`Aug. 14, 2006.
`Torrone, Phillip, How-To: Getting Podcasts on a Portable Media
`Center (and other Windows Media Devices, Oct. 2004.
`Office Action for European Patent Office for 03764426.7 mailed Sep.
`11, 2009.
`Notification of Reason for Rejection for Japanese Patent Application
`2004-521604, mailed Apr. 15, 2008 (with translation).
`Notification for Reason for Rejection for Japanese Patent Application
`2004-521604, mailed Jun. 16, 2009 (with translations).
`Written Opinion for PCT/US03/21534 mailed Mar. 12, 2004.
`International Preliminary Examination Report for PCT/US/21534
`mailed Jun. 8, 2004.
`Personal Jukebox (PJB), “System Research Center and PAAD”,
`Compaq Computer Corp., Oct. 13, 2000, http;//research.compaq.
`com/SRC/pj b/.
`Etchison, “Accelerated Discrete Adjustment of the Parameters of a
`Process”, IBM Technical Disclosure Bulletin, vol. 15, No. 5, Oct. 1,
`1972, 2 pgs.
`Notification for Reason for Rejection for Japanese Patent Application
`2004-521604, mailed Mar. 9, 2010 (with translations).
`Office Action for US. Appl. No. 10/198,639, mailed Dec. 2, 2005.
`Final Office Action for US. Appl. No. 10/198,639, mailed May 4,
`2006.
`Advisory Action U.S. Appl. No. 10/198,639, mailed Aug. 25, 2006.
`Office Action for US. Appl. No. 10/198,639, mailed Jan. 3, 2007.
`Final Office Action for US. Appl. No. 10/198,639, mailed Jun. 12,
`2007.
`Office Action for US. Appl. No. 10/198,639, mailed Oct. 3, 2007.
`
`Notice of Allowance for US. Appl. No. 10/198,639, mailed Apr. 2,
`2010.
`Handbook for PalmTM m500 Series Handhelds, User Manual.
`Sinitsyn, “A Synchronization Framework for Personal Mobile Serv-
`ers,” Proceedings of the Second IEEE Annual Conference on Perva-
`sive Computing and Communications Workshops, Piscataway, NJ,
`Mar. 14, 2004, pp. 1-4.
`Vetro et al., “Media Conversions to Support Mobile Users,” IEEE
`Canadian Conference on Electrical and Computer Engineering,
`Piscataway, NJ, May 13, 2001, pp. 607-612.
`Zheng et al., “MobiGATE: a mobile gateway proxy for the active
`deployment of transport entities,” Proceedings of the 2004 Interna-
`tional Conference on Parallel Processing, Piscataway, NJ, Aug. 15,
`2004.
`RCA Lyra User’s Guide, RD2201/2202/2204, www.lyrazone.com,
`pp. 1-37.
`Lyra, Personal Digital Player, RCA, Product Box.
`Compaq Computer Corp., copyright 1991, Personal Jukebox User
`Manual, pp. 1-29.
`“About MusicMatch Jukebox,” MusicMatch Jukebox v4 Help, pp.
`1-4.
`RealJukebox Plus Manual, Real Networks, Inc., copyright 1999, pp.
`1-83, RealJukebox, Real Networks, Inc ., webpages downloaded Oct.
`27, 2005 http://www.real.com/Jukebox/releaseinotes.html#.
`TuneBase 100 User Guide, A CD Library Management System,
`Escient, Inc. copyright 1999.
`TuneBase Pro Mk-II User’s Guide, Escient, Inc.
`Window’s Media Player 6.4, Microsoft Corp., copyright 1999, soft-
`ware available at http://www.oldversion.com/program.php?n:wmp
`See also Windows Media Player 6.4 Software Official website at
`http://www.microsoft.com/windows/windowsmedia/player/ver-
`sion64/default.aspx.
`Bridgman, “Windows XP Expert Zone Community Columist”,
`Using Windows Mobile-based Portable Media Centers and Windows
`Media Player 10, Aug. 25,2004, 1-11.
`Summons to Attend Oral Proceedings for European Patent Applica-
`tion No. 037644267, mailed Jun. 9, 2010.
`Office Action for Japanese Patent Application No. 2010-157096,
`dated Feb. 28, 2012.
`Minutes of the Oral Proceedings for EP Patent Application No.
`037644267, dated Jan. 26, 2011.
`Office Action (Questioning) for Japanese Patent Application No.
`2004-521604, dated May 17, 2011.
`Office Action for US. Appl. No. 12/582,624, mailed Nov. 24, 2010.
`Final Office Action for US. Appl. No. 12/582,624, mailed May 10,
`201 1.
`Notice of Allowance for US. Appl. No. 12/582,624, mailed Oct. 5,
`2011.
`
`* cited by examiner
`
`Page 00004
`
`Page 00004
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 1 of 17
`
`US 8,261,246 B1
`
`PERSONAL
`
`COMPUTER
`
`PROJECT
`
`MANAGER
`
`106
`
`COMPKER
`
`102
`
`FIG. 1A
`
`
`COMPlER
`
`150
`
`PERSONAL
`
`COMPUTER
`
`PROJE§TMANAGER
`
`FEE
`
`DATABASE
`
`158
`
`FIG. 1B
`
`Page00005
`
`Page 00005
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 2 of 17
`
`US 8,261,246 B1
`
`USER INTERFACE
`
`212
`
`[— 200
`
`
`
`
`
`
`PROJECT MANAGER
`
`APPLICATION
`
`202
`
`OPERATING SYSTEM
`
`204
`
`
`
`
`
` 20
`
`
`
`PERIPHERAL
`
`DEVICE
`
`
`DATABASE
`
`FILE
`
`FIG. 2
`
`210
`
`Page 00006
`
`Page 00006
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 3 of 17
`
`US 8,261,246 B1
`
`300
`
`2:35;;
`
`DISPLAY SELECTED
`
`FILE GROUP
`
`302 ‘AS FILE BEE
`
`
`
`UPDATED
`
`
`304
`
`RECEIVE FILE
`GROUP SELECTION
`
`
`
`310
`
`
`CONDITIONS 306
`
`DISPLAY FILE GROUP
`IN ACCORDANCE WITH
`FILE GROUP
`
`
`
`
`UPDATE TO
`FILE AFFECT ONE OR
`
`MORE FILE
`
`
`
`GROUP(S)
`7
`
`308
`
`REGENERATE ONE OR
`MORE FILE GROUPS IN
`ACCORDANCE WITH FILE
`
`GROUP CONDITIONS
`
`FIG. 3A
`
`312
`
`Page 00007
`
`Page 00007
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 4 of 17
`
`US 8,261,246 B1
`
`
`
`DISPLAY FILE
`
`GROUP
`
`
`
`312
`
`{
`
`OBTAIN SELECTED
`FILE GROUP
`
`314
`
`IDENTIFY COLUMNS/
`
`FIELDS IN THE
`
`SELECTED FILE GROUP
`
`316
`
`
`
`
`
`
`
`
`IDENTIFY VISIBLE COLUMNS/
`FIELDS IN THE FILE GROUP
`
`318
`
`IDENTIFY FILES IN THE
`
`
`SELECTED FILE GROUP
`
`320
`
`DISPLAY INFORMATION FOR
`
`EACH OF THE VISIBLE
`
`EACH OF THE FILES IN THE
`
`SELECTED FILE GROUP IN
`
`COLUMNS/FIELDS OF THE
`
`SELECTED FILE GROUP FOR
`
`
`
`322
`
`
`
`
`
`
`ACCORDANCE WITH FILE
`GROUP CONDITIONS
`
`
`FIG. BB
`
`Page 00008
`
`Page 00008
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 5 of 17
`
`US 8,261,246 B1
`
`8m
`
`2m:gnomem3:\«.o“_z_gnome5:
`
`
`
`
`
`ZO_._.<_>_N_OH_Z_m__>_<znSOmOm..=n_
`
`0mmsmEHE
`\‘2925382.«mm
`
`
`
`m=>_<zm_n__n_
`
`
`
` mums.mommm#m2:
`
`nm=u=DO_>_Pm.
`
`ZO_m_>m_m
`
`
`
`mat.m..=u_
`
`ill
`
`aEEgwEmt
`
`
`
`xw<_>_wo._m=u_
`
`!8a:
`
`Page 00009
`
`Page 00009
`
`
`
`
`
`
`
`SET NEW
`
`FILE FLAG
`
`
`
`’
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 6 of 17
`
`US 8,261,246 B1
`
`
`
`MODIFIED YES
`I)
`'
`
`SET MODIFICATION
`FLAG
`
`403
`
`
`FILE
`ADDED
`?
`
`
`
`
`
`
`
`
`
`
`410
`
`SET FILE
`DELETED FLAG
`
`FIG. 4
`
`Page 00010
`
`Page 00010
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 7 of 17
`
`US 8,261,246 B1
`
`506
`
`
`
`IS
`YNAMIC
`NO
`UPDATE
`
`FLAG
`
`SET
`
`?
`
`YES
`
`
`
` COMPARE MODIFICATION
`MASK WITH FIELDS MASK
`
`
`
`FOR FILE GROUP
`
`
`
`
`
`
`ANY
`MATCHING
`
`FIELDS
`
`?
`
`SET UPDATE FLAG
`
`
`
`FIG. 5A
`
`Page 00011
`
`Page 00011
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 8 of 17
`
`US 8,261,246 B1
`
`
`
`DELETED
`
`MESSAGE
`
`
`
`RECEIVED
`
`DELETED
`
`FILE IN
`
`
`
`ILE GROUP
`?
`
`518
`
`REMOVE REFERENCE TO DELETED
`
`
`
`FILE (E.G., FILE ITEMS) FROM FILE
`GROUP
`
`
`
`
`522
`
`SET UPDATE FLAG
`
`DYNAMIC
`
`NO
`
`FIG. 58
`
`Page 00012
`
`Page 00012
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 9 of 17
`
`US 8,261,246 B1
`
`IS
`
`FILE GROUP
`
`DYNAMIC
`
`?
`
`
`
`
`
`528
`
`SET UPDATE FLAG
`
`FIG. 5C
`
`Page 00013
`
`Page 00013
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 10 of 17
`
`US 8,261,246 B1
`
`FILE GROUP
`
`FILE GROUP
`
`DISPLAYED
`
`?
`
`
`
`
`
`DYNAMIC
`
`?
`
`
`
`
`
`
`RE-DRAW FILE GROUP
`
`ON SCREEN
`
`IS
`
`UPDATE
`
`FLAG
`
`SET
`
`?
`
`SET IDLE UPDATE FLAG
`
`538
`
`540
`
`
`
`FIG. 5D
`
`Page 00014
`
`Page 00014
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 11 of 17
`
`US 8,261,246 B1
`
`600
`
`/
`
`604
`
`
`IS
`IDLE
`
`UPDATE
`
`FLAG
`SET
`
`7
`
`YES
`
`RETRIEVE FILE GROUP
`
`CONDITIONS
`
`REGENERATE FILE GROUP
`
`ILE GROUP
`DISPLAYED
`
`RE—DRAW FILE GROUP ON SCREEN
`
`606
`
`608
`
`
`
`
`
`
`
`
`
`
`CLEAR IDLE UPDATE FLAG
`
`614
`
`
`
`616
`
`CLEAR UPDATE FLAG
`
`
`
`Page 00015
`
`Page 00015
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 12 of 17
`
`US 8,261,246 B1
`
`
`
`SELECT FIRST (NEXT) ITEM IN
`EXISTING FILE GROUP
`
`COMPARE SELECTED ITEM
`WITH FILTER CRITERIA
`
`
`
`
`702
`
`
`704
`
`
`
`
`SHOULD
`SELECTED
`
`
`ITEM REMAIN
`
`IN UPDATED
`
`
`FILE GROUP
`
`
`
`
`REMOVE SELECTED ITEM
`
`FROM FILE GROUP
`
`
`
`MARK CORRESPONDING FILE ITEM
`
`AS CONSIDERED
`
`712
`
`FIG. 7A
`
`
`
`Page 00016
`
`Page 00016
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 13 of 17
`
`US 8,261,246 B1
`
`SELECT FIRST (NEXT) ITEM
`IN THE FILE
`
`
`
`
`IS
`ILE ITE
`
`MARKED
`
` 714
`
`
`
`
`?
`
`
`COMPARE THE SELECTED FILE
`ITEM
`
`WITH THE FILTER CRITERIA
`
`
` FILTER
`CRITERIA
`
`SATISFIED
`
`?
`
`
`
`
`SELECTED FILE ITEM
`
`726
`
`ADD SELECTED FILE ITEM TO
`
`THE UPDATED FILE GROUP
`
`CLEAR MARK FOR THE
`
`
`
`FIG. 78
`
`Page 00017
`
`Page 00017
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 14 of 17
`
`US 8,261,246 B1
`
`SORT THE UPDATED FILE GROUP
`BASED ON SORT CRITERIA
`
`728
`
`SELECT FIRST (NEXT) ITEM IN
`THE SORTED, UPDATED FILE
`GROUP
`
`
`
`
` 730
`
`
`
`
`
`ACCUMULATE TOTAL ITEMS
`THE SORTED, UPDATED FILE GROUP
`
`
`732
`
`
`LIMIT
`
`CRITERIA
`
`MET
`
`?
`
`
`REMOVE SUBSEQUENT
`
`ITEMS FROM THE
`
`
`
`
`SORTED, UPDATED FILE
`GROUP
`
`
`
`FIG. 70
`
`Page 00018
`
`Page 00018
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 15 of 17
`
`US 8,261,246 B1
`
`USER INPUT
`
`DEVICE
`
`
`
`9 8
`
`900
`
`/
`
`fl
`
`DISPLAY
`
`CODEC
`
`912
`
`9&2
`
`PROCESSOR
`
`flL
`
`FILE
`
`SYSTEM
`
`(STORAGE DISK)
`
`%
`CACHE
`
`922
`
`920
`
`FIG. 8
`
`Page 00019
`
`Page 00019
`
`
`
`US. Patent
`
`Sep. 4, 2012
`
`Sheet 16 of 17
`
`US 8,261,246 B1
`
`
`g
`
`Smart, ;Play|ist
`
`
`31»F14" :r S- m é."3§_ : ‘0 ho:1 E'2. o
`
`1000
`
`uni
`
`
`
`
`
`
`
`
` mm_mmm..
`mmmmmmmam.
`
`
`
`
`
`
`‘ error msgs
`=¢_
`
`
`selected by
`
`random
`
`I???
`
`
`
`FIG. 9A
`
`
`
`
`
` Smart Play/list In“? _
`
` fifififiw
`
`__
`
`error msgs
`
`,
`,1
`E30 sekected by random
`
`FIG. QB
`
`Page 00020
`
`Page 00020
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 17 of 17
`
`US 8,261,246 B1
`
`
`
`
`
`335483,xiykvurrrip‘sx328;:x:iiite?§i_¥:€\
`
`EH2”$322are“Q;
`
`
`
`n,3&«£.§fl9:389;WW3
`
`a~g§§a¢é¢u¢u
`
`«kgofifimgncamwuflsufi,:3.MAMA.
`
`amatufimmafis333..Mm;
`
`
`
`icineaaéoaavcafi_umwcv~xu3uou<mow?
`
`.£3.35a...
`afiiaxfies323533943mm
`..«3:5mm»,
`
`
`
`
`
`
`
`
`
`
`
`38;
`
`
`
`”mm.“m,afingfiiéfi,Wmfiwmw»3‘.Emmyx.35.93E;
`
`
`
`
`raw:.yeués£532%.2538:5,8E?05323?a853533238mengagemi}
`PAS£335»2%”.*gm$936.8.-afizxnouaauuoomfig,4336may
`
`
`34.9.EtfifiaaifimfléM“8533.an?
`
`refifiafim?.g§§§b,33:83:6m?
`
`6,352.30m€333.43mm
`
`.$35mm
`$823522«RM
`
`
`
`._E..§_>§zm«mo4%
`
`
`
` W£55338%>,,“accafiaesmmb«3.33%at,
`
`.355amAY933.3333mm
`
`
`3252..EAa25.5256
`
`Ewaécvuzséfiomm_.
`
`
`
` 333“3:dA«5E3?fig23%%¢,
`
`£33395...mv.A,__
`
`2.5.9.3,@A
`
` 3E.22fia.W35coaafioEofiE.mmx
`
`
`
` «Karim5M3...@:3msA3.3503mm:
`
`Page 00021
`
`Page 00021
`
`
`
`
`
`
`
`US 8,261,246 B1
`
`1
`METHOD AND SYSTEM FOR
`DYNAMICALLY POPULATING GROUPS IN A
`DEVELOPER ENVIRONMENT
`
`RELATED APPLICATIONS
`
`This application is related to application Ser. No. 10/198,
`639, entitled “Method and System for Updating Playlists,”
`filed on Jul. 16, 2002, which is incorporated herein by refer-
`ence for all purposes.
`This application also claims priority from provisional
`application No. 60/513,958, entitled “Method and System for
`Dynamically Populating Groups in a Developer Environ-
`ment,” listing Naroff, et al. as inventors, filed on Oct. 23,
`2003, which is incorporated herein by reference for all pur-
`poses.
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`
`The present invention relates to dynamically populating
`groups of files and, more particularly, to dynamically popu-
`lating groups of files in a developer environment.
`2. Description of the Related Art
`Typically, application developers working on a particular
`project work concurrently on a large number of files, and
`therefore must also store and keep track of a large number of
`files. Depending upon the operating system ofthe application
`developer environment, application developers have the
`capability of creating either folders or directories to store
`source code files that are being generated or tested. Hence, in
`order to organize the files for a particular project, application
`developers typically manually create their own directories or
`folders in order to keep track of each of the files.
`Conventionally,
`software application files have been
`manually stored in folders by the application developer using
`an operation such as a drag-and-drop operation. For instance,
`the application developer may group files according to
`project. As a result, each of the files may be manually stored
`in the appropriate folder.
`to
`While folders are generally functionally sufficient
`enable files to be sorted and grouped, folders are typically
`grouped hierarchically in order to further sort files in a logical
`manner. Specifically, in order to sub-divide various groups to
`generate “sub-groups,” it is often necessary to group the fold-
`ers hierarchically. Although functionally sufiicient, such hier-
`archical grouping is often complex. In fact, this complex
`grouping is often counter-intuitive. As a result, a developer
`who did not generate the hierarchical group of folders would
`have a difficult time navigating such a system. As a result,
`finding a desired file is often a difficult and time-consuming
`process. It follows that testing software applications grouped
`in such a manner would be a tedious and time-consuming
`process. In addition, as testing time increases, the costs of
`testing similarly increase.
`Even a developer who was the originator of a file grouping
`hierarchy may not be able to recall a complex categorization
`scheme. In addition, it is important to note that during the
`development process, source code files are typically modified
`as testing is performed. As a result of these changes, the
`application developer may wish to re-categorize a particular
`file. However, file categorization is typically a manual pro-
`cess, as described above. Unfortunately, even if categoriza-
`tion of files has been performed upon creation ofthe files, this
`cannot reflect the changes that are continually made to the
`files. As a result, the developer must continually re-categorize
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`the files, as appropriate. This requires diligence on the part of
`the application developer, as well as a well thought out folder
`hierarchy.
`Thus, there is a need for improved techniques for catego-
`rizing and storing software application files in a software
`application environment.
`
`SUMMARY OF THE INVENTION
`
`Broadly speaking, the invention relates to automatic (or
`dynamic) generation or updating (or maintaining) of file
`groups in a file management system. The automatic update to
`file groups can occur when additional files are added to or
`removed from the file management system. The automatic
`update to file groups can also occur when the content of
`previously stored files is otherwise altered.
`The invention can be implemented in numerous ways
`including as a method, system, device, apparatus, and com-
`puter readable medium. Several embodiments of the inven-
`tion are discussed below.
`
`As a computer-implemented method for automatically
`updating a file group, one embodiment of the invention
`includes at least the acts of: determining whether a file (e. g.,
`content of the file) has been altered; and regenerating one or
`more file groups or associating the file with one or more file
`groups when it is determined that the file has been altered.
`As a computer-implemented method for updating a file
`group, one embodiment of the invention includes at least the
`acts of: obtaining or receiving one or more file group rules to
`be used to create the file group; producing a file group from a
`plurality of available file items and the file group rules; sub-
`sequently determining whether the file group should be repro-
`duced due to changes with respect to the available file items;
`and rebuilding the file group from the plurality of available
`file items and the file group rules when it is determined that
`the file group should be rebuilt.
`As a computer-implemented method for generating a plu-
`rality of file groups, one embodiment of the invention
`includes at least the acts of: obtaining one or more file group
`rules to be used to create one of the plurality of file groups;
`producing the one of the plurality of file groups from a plu-
`rality of available files and the one or more file group rules;
`and repeating the obtaining and producing steps for the
`remaining ones of the plurality of file groups.
`The embodiments of the invention may be implemented
`software, hardware, or a combination of hardware and soft-
`ware. The invention can also be embodied as computer read-
`able code on a computer readable medium. In addition, data
`structures disclosed are also part of the invention.
`Other aspects and advantages of the invention will become
`apparent from the following detailed description taken in
`conjunction with the accompanying drawings which illus-
`trate, by way of example, the principles of the invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention will be readily understood by the following
`detailed description in conjunction with the accompanying
`drawings, wherein like reference numerals designate like
`structural elements, and in which:
`FIG. 1A is a block diagram of a file management system
`according to one embodiment of the invention.
`FIG. 1B is a block diagram of a file storage system accord-
`ing to one embodiment of the invention.
`FIG. 2 is a block diagram of program architecture accord-
`ing to one embodiment of the invention.
`
`Page 00022
`
`Page 00022
`
`
`
`US 8,261,246 B1
`
`3
`FIG. 3A is a flow diagram of dynamically populating a file
`group according to one embodiment of the invention.
`FIG. 3B is a diagram illustrating a method of displaying a
`file group according to one embodiment of the invention.
`FIG. 3C is a diagram of a file database arrangement in
`a