`Naroff et al.
`
`(10) Patent No.2
`(45) Date of Patent:
`
`US 8,261,246 B1
`Sep. 4, 2012
`
`US008261246B1
`
`(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) Assignee: Apple Inc., Cupertino, CA (US)
`,
`,,
`,
`,
`,
`,
`) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U,S,C, 15403) by 883 days,
`
`(
`
`(21) Appl. No.: 10/936,233
`(22)
`Filed:
`Sm 7’ 2004
`(51)
`Int. Cl.
`(2006.01)
`G06F 9/44
`(2006.01)
`G06F 9/45
`(52) U.S. Cl.
`...................................... .. 717/140; 717/106
`(58) Field of Classification Search ...................... .. None
`See application file for complete search history.
`
`5,583,993 A
`12/1996 Foster et al.
`2
`1,2,; Elroner et 91.
`5,633,839 A
`5/1997 A11<:>t<Sander et al
`5,640,566 A
`6/1997 Victor et al.
`5,555,530 A
`9/1997 (;1ar1{ 5131,
`5,710,922 A
`1/1998 Alley et al.
`2 *
`§ha_1t1,t1et,311~ ~~~~~~~~~~~~~~~~~ ~- 715/804
`,
`,
`H11
`6 3.
`.
`2
`Elrllfflgan
`5,734,823 A
`3/1998 Saigh et al.
`5,739,451 A
`4/1993 winksy 5131,
`5,740,134 A
`4/1998 Peterson
`5,819,160 A
`10/1998 Foladare et al.
`5,835,721 A
`11/1998 Donahue et al.
`5’835’732 A 1“ 3‘ ‘*1’
`FOREIGN PATENT DOCUMENTS
`0 917 077
`5/1999
`(Continued)
`
`EP
`
`D H
`1: 255333’
`
`Ch_
`HS’
`
`OTHER PUBLICATIONS
`102 0
`f A _
`S
`3,1,,V _
`lcrosot
`“We ync
`'
`’
`erslon '
`’
`
`ct‘
`
`(56)
`
`References Cited
`
`(Continued)
`
`US’ PATENT DOCUMENTS
`3,990,710 A
`11/1976 Hughes
`4,528,643 A
`7/1985 Freeny, Jr,
`4,851,931 A
`7/1989 Parker et 211.
`5,168,481 A
`12/1992 Culbertson et al.
`5,181,107 A
`1/1993 Rhoades
`5,191,573 A
`3/1993 Hair
`5,341,350 A
`8/1994 Frank et al,
`5,35 5,302 A
`10/1994 Martin 51 31,
`5,418,713 A
`5/1995 Allen
`,
`,
`OW CS
`~~~~~~~~~~~~~~~~~~ ~~ 715/839
`Q *
`Eihl e1t31~
`5,504,852 A
`4/1996 Th0mpS0n_R0hr1ich
`5,559,945 A
`9/1996 Beaudet et al.
`5,561,604 A
`10/1996 Buckley et al.
`5,566,353 A
`10/1996 Cho et al.
`
`Primary Examiner — Li Zhen
`~
`~ _
`Assistant Examiner
`Evral Bodden
`
`(57)
`ABSTRACT
`~
`~
`~
`~
`Improvedtechrp(I1i111es for automatac (OI1' dynamic) updating1(1or
`maintaining) o
`e groups in a eve oper environment t at
`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 a1‘ered~
`
`35 Claims, 17 Drawing Sheets
`
`300
`
`PDATE FIL
`GROUPS
`
`302
`
`304
`
`DISPLAY SELECTED
`FILE GROUP
`
`
`
`RECEIVE FILE
`GROUP SELECTION
`
`I
`DISPLAY FILE GROUP
`IN ACCORDANCE WITH
`FILE GROUP
`CONDITIONS
`
`310
`
`312
`
`Apple Exhibit 4459
`
`Apple v. SightSound Technologies
`CBM2013-00023
`
`Page 00001
`
` ores DYNAMI
`
`UPDATE TO
`ILE AFFECT ONE OR
`
`MORE FILE
`GROUP(S)
`7
`305
`
`REGENERATE ONE OR
`MORE FILE GROUPS IN
`ACCORDANCE WITH FILE
`GROUP CONDITIONS
`
`
`
`
`
`
`
`FILE GROUP(S
`
`306
`
`Apple Exhibit 4459
`Apple v. SightSound Technologies
`CBM2013-00023
`Page 00001
`
`
`
`US 8,261,246 B1
`Page2
`
`~~~~~~~~~~ ,, 707/203
`
`
`
`~~~~~~~~~~~~~~~~~~~~~ ,, 1/1
`
`U.S. PATENT DOCUMENTS
`5,845,282 A
`12/1998 Alley etal.
`5,854,858 A
`171999 55111515
`5,875,110 A
`271999 1555155
`5,897,642 A *
`4/1999 C3P055e13e131,
`5,918,213 A
`571999 1351115151 5151,
`5,918,303 A
`571999 Y511151115 5151,
`5,923,757 A
`771999 115515515151
`5,925,843 A
`771999 M111515151
`5,925,819 A *
`771999 19555151,
`5,953,915 A
`1071999 K5P1511
`5,959,283 A
`1071999 L°5115Y 5151,
`5,983,059 A
`1171999 C115 5151,
`5,995,098 A
`1171999 01555155151
`5,000,000 A
`1271999 11555151115 5151,
`5,005,274 A
`1271999 11555151115 5151,
`5,038,199 A
`372000 1’5W15W51‘1 5151,
`5,041,023 A
`372000 15151155515511
`5,052,797 A
`472000 015155151
`5,051,305 A
`572000 13115111151111
`6,098,072 A *
`8/2000 S11-111113-11613-1,
`5,125,359 A
`972000 W115151,
`5,172,948 131
`172001 K511515151
`5,208,044 131
`372001 V15W5115511151115151,
`5,215,131 131
`472001 11115151,
`6,243,328 B1
`6/2001 Fenneretal.
`5,243,725 131
`572001 115111P151115115151~
`5,247,135 131
`572001 F55g115
`5,248,945 131
`572001 DW51‘
`5,255,951 131
`772001 V511RYZ1115151~
`5,272,545 131
`872001 F15115g1115151~
`5,283,754 132
`972001 K5J1Y511155151~
`5,295,541 131
`972001 1355111515151
`5,332,175 131
`1272001 131115115151
`5,338,044 131
`172002 555155151
`6,341,316 B1
`1/2002 K101336131,
`5,355,971 131
`372002 K515 5151,
`5,380,947 131
`472002 815551
`5,389,457 131
`572002 EY51
`5,407,750 131
`572002 G155515 5151,
`6,434,680 B2
`8/2002 Be1kn3P e1 3-1,
`5,445,080 131
`972002 V511RYZ1115151~
`6,452,609 B1
`9/2002 K311I15kYe131,
`5,453,281 131
`972002 W5115155151,
`5,490,432 131
`1272002 W5g511515151~
`5,493,758 131
`1272002 M5151“
`6,523,124 B1
`2/2003 Lunsfordetal.
`5,529,804 131
`372003 191555511 5151,
`5,553,759 131
`572003 V511 D511V15111511
`6,587,403 B1
`7/2003 K611616131,
`5,587,404 131
`772003 K511515151,
`5,521,758 131
`972003 K511515151
`5,535,873 131
`1072003 55111115151
`5,554,981 132
`1272003 A5115 5151,
`6,665,803 B2
`12/2003 Lunsfordetal.
`5,718,348 131
`472004 N5V51‘ 5151,
`5,721,489 131
`472004 13511Y51111115151'
`5,731,312 132
`572004 R5551“
`6,760,721 B1
`7/2004 C1135eI1e131,
`5,753,345 131
`772004 115111P151115115151~
`6,779,019 B1
`8/2004 1V101-155631-1613-1,
`5,785,542 131
`872004 131151115151
`6,794,566 B2
`9/2004 P301161
`5,801,954 131
`1072004 M511515V1
`6,874,037 B1
`3/2005 A1313-1116131,
`5,928,433 132
`872005 G5551111511 5151,
`5,933,433 131
`872005 P5115115 5151,
`5,941,324 132
`972005 P15511115 5151,
`6,978,127 B1
`12/2005 Bnlthuisetal.
`6,983,457 132*
`1/2006 Mitsumorietal.
`6,987,221 B2
`1/2006 Platt
`7,003,495 B1
`2/2006 Burger etal.
`
`......... .. 717/145
`
`7,055,165 B2
`7,111,009 B1
`7,117,516 B2
`7,126,770 B1
`7,171,557 132*
`7,209,633 B1
`
`5/2006 C0nne11y
`9/2005 Gupta
`10/2006 Khoo etal.
`10/2006 Araietal.
`1/2007 Kallahalla etal.
`4/2007 Novak etal.
`
`.......... .. 713/165
`
`7,228,298 B1
`E;
`7,502,626 B1
`7,797,446 B2
`2001/0004,310 A1
`2001/0011308 A1
`2001/0021053 A1
`2001/0041021 A1
`2001/0044835 A1
`2001/0048642 A1
`2001/0052123 A1
`2002/0002413 A1
`2002/0010788 A1
`2002/0013784 A1
`2002/0015161 A1
`2002/0016968 A1
`2002/0046315 A1
`2002/0055934 A1
`2002/0073167 A1
`2002/0080180 A1
`2002/0116082 A1
`2002/0118300 A1
`2002/0133515 A1
`2002/0138606 A1
`2002/0152278 A1
`2002/0161865 A1
`2002/0174269 A1
`2002/0194195 A1
`2002/0194309 A1
`2003/0013493 A1
`2003/0014767 A1
`2003/0030733 A1
`2003/0037254 A1
`2003/0046434 A1
`2003/0046671 A1
`2003/0050058 A1
`2003/0055723 A1
`2003/0074457 A1
`2003/0079038 A1
`2003/0081784 A1
`2003/0093340 A1
`2003/0098893 A1
`2003/0112279 A1
`2003/0149628 A1
`2003/0167318 A1
`2003/0182315 A1
`2003/0191756 A1
`2003/0200532 A1
`2003/0206203 A1
`2003/0210821 A1
`2003/0221541 A1
`2004/0001395 A1
`2004/0001396 A1
`2004/0017997 A1
`2004/0027930 A1
`2004/0055446 A1
`2004/0076086 A1
`2004/0083480 A1
`2004/0093274 A1
`2004/0103102 A1
`2004/0113915 A1
`2004/0123242 A1
`2004/0123725 A1
`2004/0128277 A1
`2004/0139180 A1
`2004/0148358 A1
`2004/0205028 A1
`2004/0223245 A1
`2004/0225762 A1
`ZOWOZ49863 A1
`200470251054 A1
`
`2005/0060264 A1
`2005/0080915 A1
`2005/0120063 A1
`2005/0149392 A1
`2005/0235015 A1
`2005/0240494 A1
`
`6/2007 Ra_ines
`113%; %4”°§Z9 9141‘
`3/2009 Lcggilzinen
`9/2010 Heller etal
`6/2001 Kono
`8/2001 Clark etal
`9/2001 Colbouineetal
`11/2001 Boyle etal
`11/2001 Sch0beret,a1
`12/2001 Berhan
`12/2001 Kawai
`1/2002 Tokue
`1/2002 Nathan etal
`,
`1/2002 swanson
`2/2002 Haneda etal
`2/2002 Nathan etal,
`4/2002 Miller et al
`,
`5/2002 Lipscomb etal
`6/2002 Powell etal
`6/2002 Mandereta,1
`,,,,,,,,,,,,,, ,,
`,
`8/2002 Gudorf
`8/2002 Middleton etal
`9/2002 Kagleetal
`,
`9/2002 Robison
`10/2002 Pontenzone etal
`10/2002 N
`11/2002 sgi1i1iy(:i,t1etal
`12/2002 Fgntgn etal,
`12/2002 Carter etal,
`1/2003 Irimajiriet,a1
`1/2003 Stumphauzer,
`2/2003 seanian etal
`2/2003 Fischeretal,
`3/2003 F1anaginet211
`,
`3/2003 Bowen
`3/2003 Wa1Shet,,é,1,1 ,,,,,,,,,,,,,,,,,,, ,,
`3/2003 English
`,
`4/2003 Kluth
`4/2003 Robbin etal
`5/2003 Kallahalla etal
`5/2003 Krysteket a1
`,
`5/2003 Makinen
`,,,,,,,,,,,,,,,,,,,,, ,,
`6/2003 Irimajiri
`8/2003 Abbosh etal
`9/2003 Robbin etal,
`9/2003 Plastina etal
`10/2003 Oh
`10/2003 Gensel
`11/2003 Ly
`11/2003
`12/2003 Platt
`1/2004 Keller et al
`1/2004 Keller et al,
`1/2004 Cowgill
`,
`2/2004 Kudo
`3/2004 Robbin etal
`4/2004 Keller
`4/2004 Dodge
`5/2004 Va_nSkae,,1,,2,,1,,,,,,,,,,,,,,,,,, ,,
`5/2004 Nelson
`,
`6/2004 OhtSuki,,e,t,,é,1,1,,,,,,,,,,,,,,,,, ,,
`6/2004 McKibbenet,a1
`7/2004 Kim
`7/2004 Manderetal
`7/2004 White et a1
`7/2004 Singh etal,
`10/2004 Ver0subet,a1
`11/2004 Morohashi
`11/2004 P00
`707/1041
`12/2004 K
`~
`5W51111115 ~~~~~~~~~~~~~~ ~
`1272004 G5151515111 5151,
`~~~~~~~~~~~ ~~ 7177140
`
`719/310
`
`707/100
`
`715/513
`
`707/1
`
`,
`
`,
`
`,
`
`,
`
`,
`
`,
`
`345/769
`
`717/141
`
`,
`
`,,,,,,,,,, ,,
`
`380/277
`
`345/853
`
`717/120
`345/853
`
`,,,,,,,,,,,, ,,
`,
`
`,
`
`,
`
`,
`
`,,,,,,,,, ,,
`
`,
`
`,,,,,,,,,,,,,,,,,, ,,
`
`,
`
`3/2005 Schrock et 211.
`4/2005 Shoemaker
`6/2005 Koestler ...................... .. 707/204
`7/2005 Gold etal.
`10/2005 Abanamietal.
`10/2005 Cue etal.
`
`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
`W0 95/16950
`6/1995
`W0
`W0 01/33569
`5/2001
`W0
`W0 01/67753 A1
`9/2001
`W0
`W0 02/25610
`3/2002
`W0
`W0 02/25935
`3/2002
`W0
`W0 03/023786
`3/2003
`W0
`W0 W0 2004-004338
`1/2004
`W0 W0 2004/084413
`9/2004
`W0
`2005073856 A2
`8/2005
`
`OTHER PUBLICATIONS
`
`1995, http://www.wikipedia.org/wiki/
`
`IEEE 1394—Wikipedia,
`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 Cameras—Downloading Images to a Computer,” Mimi
`Chakarova et al., Multi-Media Reporting and Convergence, 2 pgs.
`“Apple Introduces iTunes—World’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”—MP3 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 Gain—A proposed Standard,” Oct. 7, 2001,
`available from http://replaygain.hydrogenaudio.org/index.htrnl and
`http://replaygain.hydrogenaudio.org/outline.htrnl.
`0ffice Action from European Patent 0ffice for European Patent
`Application No. 03764426.7 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/134361811_ptmacc040.html.
`“Hewlett Packard Jornada 525 Color Pocket PC,” downloaded Jan.
`25, 2002, http://www.pc4d.com/electronics/products/56/jornada_
`525_color_pocket_pc.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.
`U.S. Appl. No. 11/097,591, filed Apr. 1, 2005.
`U.S. Appl. No. 11/097,034, filed Apr. 1, 2005.
`International Search Report dated Jul. 9, 2003, from International
`Application No. PCT/US03/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/
`0n+1st+birthday,+iTunes+unwraps+new+features/2100-1027_3 -
`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 Audio—Recording Sys-
`tems”, Jun. 1992, pp. 68-71.
`Sadie Master System, Product Brochure, Studio audio Digital Equip-
`ment Inc., 2 pgs.
`RCS Works-CartWall 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 0n-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 10”, IBM Corp., pp. 1-424, Aug. 30, 1996.
`“Virtual Recorder—Basic 0perations”, 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. Appl. No. 11/138,004, filed May 25, 2005.
`U.S. Appl. No. 11/114,914, filed Apr. 25,2005.
`U.S. Appl. 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-life—Wikipedia, 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/memmaid_review.
`htrnl>.
`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 U.S. Appl. No. 10/198,639, mailed Dec. 2, 2005.
`Final Office Action for U.S. 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 U.S. Appl. No. 10/198,639, mailed Jan. 3, 2007.
`Final Office Action for U.S. Appl. No. 10/198,639, mailed Jun. 12,
`2007.
`Office Action for U.S. Appl. No. 10/198,639, mailed Oct. 3, 2007.
`
`Notice of Allowance for U.S. 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/release_notes.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. 03764426.7, 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.
`03764426.7, dated Jan. 26, 2011.
`Office Action (Questioning) for Japanese Patent Application No.
`2004-521604, dated May 17, 2011.
`Office Action for U.S. Appl. No. 12/582,624, mailed Nov. 24, 2010.
`Final Office Action for U.S. Appl. No. 12/582,624, mailed May 10,
`201 1.
`Notice of Allowance for U.S. Appl. No. 12/582,624, mailed Oct. 5,
`2011.
`
`* cited by examiner
`
`Page 00004
`
`Page 00004
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 1 of 17
`
`US 8,261,246 B1
`
`PERSONAL
`
`COMPUTER
`
`PROJECT
`
`MANAGER
`
`106
`
`COMPKER
`
`102
`
`FIG. 1A
`
`PERSONAL
`
`COMPUTER
`
`PROJBTTMANAGER
`
`FKE
`
`DATABASE
`
`158
`
`COMPKER
`
`FIG. 1B
`
`150
`
`Page 00005
`
`Page 00005
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 2 of 17
`
`US 8,261,246 B1
`
`f‘ 200
`
`USER INTERFACE
`
`212
`
`
`
`
`
`PROJECT MANAGER
`
`APPLICATION
`
`OPERATING SYSTEM
`
`204
`
` 202
`
`FILE
`
`
`
`DATABASE
`
`
`
` 20
`
`
`
`PERIPHERAL
`
`DEVICE
`
`FIG. 2
`
`210
`
`Page 00006
`
`Page 00006
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 3 of 17
`
`US 8,261,246 B1
`
`300
`
`Pgggfigg
`
`DISPLAY SELECTED
`
`FILE GROUP
`
`RECEIVE FILE
`
`GROUP SELECTION
`
`310
`
`302 qAS FILE BEE
`
`
`
`UPDATED
`7
`.
`
`304
`
`CONDITIONS 306
`
`DISPLAY FILE GROUP
`IN ACCORDANCE WITH
`FILE GROUP
`
`312
`
`
`UPDATE TO
`FILE AFFECT ONE OR
`
`MORE FILE
`
`
`
`
`GROUP CONDITIONS
`
`GROUP(S)
`7
`
`308
`
`REGENERATE ONE OR
`MORE FILE GROUPS IN
`ACCORDANCE WITH FILE
`
`FIG. 3A
`
`Page 00007
`
`Page 00007
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 4 of 17
`
`US 8,261,246 B1
`
`
`
`DISPLAY FILE
`
`GROUP
`
`
`
`312
`
`,4
`
`OBTAIN SELECTED
`FILE GROUP
`
`314
`
`IDENTIFY COLUMNSI
`
`FIELDS IN THE
`
`316
`
`SELECTED FILE GROUP
`
`IDENTIFY VISIBLE COLUMNSI
`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. 3B
`
`Page 00003
`
`Page 00008
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 5 of 17
`
`US 8,261,246 B1
`
`03
`
`\\zo:<_>_mouz_«mm
`
`
`
`_>_m_.:m_.__“_
`
`can
`
`smEmaomoms:\«.on_z_nsomom_._:
`
`
`
`zO_._.<_>_w_Ou_z_m_s_<znsomom:_”_
`
`
`
`m_s_<zm_.__n_
`
`
`
` ow:mommm#mz:
`
`.m_E_oo_>_5.
`
`zo_m_>m_m
`
`
`
`mn_>._.m_.__u_
`
`m.__“_
`
`—||..I
`
` wsm:
`
`
`
`v_w<s_.wn_._m__n_
`
`%om.0_u_
`
`Page 00009
`
`Page 00009
`
`
`
`
`
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 6 of 17
`
`US 8,261,246 B1
`
`MODIFIED YES
`?
`
`SET MODIFICATION
`FLAG
`
`FILE
`ADDED
`?
`
`
`
`
`
`
`
`
`410
`
`
`
`SET FILE
`DELETED FLAG
`
`FIG. 4
`
`Page 00010
`
`403
`
`SET NEW
`
`FILE FLAG
`
`’
`
`Page 00010
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 7 of 17
`
`US 8,261,246 B1
`
`506
`
`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
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 8 of 17
`
`US 8,261,246 B1
`
`
`
`DELETED
`
`MESSAGE
`
`RECEIVED
`
`
`
`DELETED
`
`FILE IN
`
`
`
`
`ILE GROUP
`?
`
`
`
`
`FILE (E.G., FILE ITEMS) FROM FILE
`GROUP
`
`REMOVE REFERENCE TO DELETED
`
`518
`
`522
`
`SET UPDATE FLAG
`
`FIG. 5B
`
`Page 00012
`
`Page 00012
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 9 of 17
`
`US 8,261,246 B1
`
`FILE GROUP
`
`DYNAMIC
`
`?
`
`
`
`
`528
`
`SET UPDATE FLAG
`
`FIG. 5C
`
`Page 00013
`
`Page 00013
`
`
`
`U.S. 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
`
`538
`
`IS
`
`UPDATE
`
`FLAG
`
`SET
`
`?
`
`Page 00014
`
`
`
`SET IDLE UPDATE FLAG
`
`540
`
`
`
`FIG. 5D
`
`Page 00014
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 11 of 17
`
`US 8,261,246 B1
`
`600
`
`/
`
`
`
`IDLE
`
`
`
`
`UPDATE
`
`FLAG
`SET
`
`?
`
`Page 00015
`
`
`
`606
`
`608
`
` ILE GROUP
`DISPLAYED
`
`614
`
`616
`
`Page 00015
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 12 of 17
`
`US 8,261,246 B1
`
`702
`
`
`704
`
`
`
`SELECT FIRST (NEXT) ITEM IN
`EXISTING FILE GROUP
`
`COMPARE SELECTED ITEM
`WITH FILTER CRITERIA
`
`
`
`
`
`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
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 13 of 17
`
`US 8,261,246 B1
`
`SELECT FIRST (NEXT) ITEM
`IN THE FILE
`
`714
`
`MARKED
`
`
`COMPARE THE SELECTED FILE
`ITEM
`
`WITH THE FILTER CRITERIA
`
`
`
`
` FILTER
`CRITERIA
`SATISFIED
`
`?
`
`Page 00017
`
`Page 00017
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 14 of 17
`
`US 8,261,246 B1
`
`
`
`SORT THE UPDATED FILE GROUP
`BASED ON SORT CRITERIA
`
`
`
`723
`
`
`
`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. 7C
`
`Page 00013
`
`Page 00018
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 15 of 17
`
`US 8,261,246 B1
`
`900
`
`f
`
`i
`
`DISPLAY
`
`
` USER INPUT
`
`9 8
`
`CODEC
`
`912
`
`9_02
`
`PROCESSOR
`
`FILE
`
`SYSTEM
`
`$2.
`
`(STORAGE DISK)
`
`%
`CACHE
`
`922
`
`920
`
`FIG. 8
`
`Page 00019
`
`Page 00019
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 16 Of 17
`
`US 8,261,246 B1
`
`E
`
`Smart’ ;Playlist
`
`1000
`
`“-3
`
`
`
`‘E
`
`2inF1h 3'
`
`E2."3§_ 2 ‘O IN021 9L‘. O
`
`,.S-;-"’
`
`
`
`‘ error msgs
`=¢_
`
`selected by
`
`random
`
`,,.,m._,,.,.W.m..
`
`ms-umcamzxznmmmmga.uummrg.
`
`
`
`FICE 9/\
`
`
`
` Smagyt Playlist ,
`
`M‘
`
` __
`
`
`
`
`
`E.sekected by random 1
`
`error msgs
`
`FW(3.9E3
`
`Page00020
`
`Page 00020
`
`
`
`U.S. Patent
`
`Sep. 4, 2012
`
`Sheet 17 of 17
`
`US 8,261,246 B1
`
`1
`
`
`
`xmwwoem,,.,._E,w_m..%:_.
`
`iaifigecogvcacu
`
`.:zn.$..._
`
`a£§§_$.aoucu
`
`
`
`
`rags;3§..82&25%.2E.§.,8.38:3»§££§e..§§o§...32§.a8Mo..a.~..<we.m,Wm.:>
`FAS(33932%”.*8».E€.§8._.y5:&8a.€uoou§a£mz..3:3mmww
`
`
`
`
`»,..._.o,..acT5w§3..u>.ta...mu.n§émuwS.:3u¢,.,
`
`.gemmfifi
`
`£c:¢ou§.5m4,mO
`
`
`
`_,_._..§_>§a§o.$
`
`
`
`,§c.8.£....<mo%>,..9E.3e.ao..c_mm1»
`
`u33.u3u.an
`
`€x.§..%o
`
`e.s_e§<8
`
`...3:6$«mm;
`
`E$.£c~-£§.&<mO_.
`
`3.3%9.:.3Aeéfififise$3..y,5.:wQ.a,
`
`rxpfiauaxwA.__
`
`u_..&...C.®.A
`
`,SE22$2»W35c£.S:.oEo.nE_fix
`
`5&3...@0:3;izasooumm: xocefim
`
`
`
`Page 00021
`
`
`
`
`
`m.efi3.§.,8..n§a...:§.ab$...58:50
`
`38..
`
`
`
`
`
`
`
`ememsmmmweS...Seem»x,532.«saw
`
`.:a.»...eEac.§n__:mwu£€§.,V10...
`§.S3..§.¢.._».32An.,a5,.:.§£o.c_
`
`
`
`xrzzxwfiuouqmo
`
`
`
`...uo.w,o.§ua._«mDacfizauum
`
`2ucaxuma5.3“&A
`
`_um:,.2xu3uou<mo
`
`
`
`.uafisu
`
`
`
`
`
`
`
`x.§«z.urrr:..>.sK¥2»€£:3.itttié3§§&omm.1;¥£9«_vH«.v_ur€vN
`
`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 difiicult 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
`carmot 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 f