ofs | hex dump | ascii |
---|
0000 | 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 70 68 70 0a 3c 3f 70 68 70 0a 2f 2a 0a 20 2a 20 54 | #!/usr/bin/env.php.<?php./*..*.T |
0020 | 68 69 73 20 66 69 6c 65 20 69 73 20 70 61 72 74 20 6f 66 20 43 6f 6d 70 6f 73 65 72 2e 0a 20 2a | his.file.is.part.of.Composer...* |
0040 | 0a 20 2a 20 28 63 29 20 4e 69 6c 73 20 41 64 65 72 6d 61 6e 6e 20 3c 6e 61 64 65 72 6d 61 6e 40 | ..*.(c).Nils.Adermann.<naderman@ |
0060 | 6e 61 64 65 72 6d 61 6e 2e 64 65 3e 0a 20 2a 20 20 20 20 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 | naderman.de>..*.....Jordi.Boggia |
0080 | 6e 6f 20 3c 6a 2e 62 6f 67 67 69 61 6e 6f 40 73 65 6c 64 2e 62 65 3e 0a 20 2a 0a 20 2a 20 46 6f | no.<j.boggiano@seld.be>..*..*.Fo |
00a0 | 72 20 74 68 65 20 66 75 6c 6c 20 63 6f 70 79 72 69 67 68 74 20 61 6e 64 20 6c 69 63 65 6e 73 65 | r.the.full.copyright.and.license |
00c0 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 70 6c 65 61 73 65 20 76 69 65 77 0a 20 2a 20 74 68 65 | .information,.please.view..*.the |
00e0 | 20 6c 69 63 65 6e 73 65 20 74 68 61 74 20 69 73 20 6c 6f 63 61 74 65 64 20 61 74 20 74 68 65 20 | .license.that.is.located.at.the. |
0100 | 62 6f 74 74 6f 6d 20 6f 66 20 74 68 69 73 20 66 69 6c 65 2e 0a 20 2a 2f 0a 0a 50 68 61 72 3a 3a | bottom.of.this.file...*/..Phar:: |
0120 | 6d 61 70 50 68 61 72 28 27 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 27 29 3b 0a 64 65 66 69 6e 65 | mapPhar('composer.phar');.define |
0140 | 28 27 43 4f 4d 50 4f 53 45 52 5f 44 45 56 5f 57 41 52 4e 49 4e 47 5f 54 49 4d 45 27 2c 20 31 33 | ('COMPOSER_DEV_WARNING_TIME',.13 |
0160 | 34 36 33 35 33 35 36 37 29 3b 0a 72 65 71 75 69 72 65 20 27 70 68 61 72 3a 2f 2f 63 6f 6d 70 6f | 46353567);.require.'phar://compo |
0180 | 73 65 72 2e 70 68 61 72 2f 62 69 6e 2f 63 6f 6d 70 6f 73 65 72 27 3b 0a 0a 5f 5f 48 41 4c 54 5f | ser.phar/bin/composer';..__HALT_ |
01a0 | 43 4f 4d 50 49 4c 45 52 28 29 3b 20 3f 3e 0d 0a 3f 44 00 00 d9 00 00 00 11 00 00 00 01 00 0d 00 | COMPILER();.?>..?D.............. |
01c0 | 00 00 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 00 00 00 00 11 00 00 00 73 72 63 2f 62 6f 6f 74 73 | ..composer.phar........src/boots |
01e0 | 74 72 61 70 2e 70 68 70 b9 01 00 00 9f 2c 18 50 b9 01 00 00 28 8e 49 9f b6 01 00 00 00 00 00 00 | trap.php.....,.P....(.I......... |
0200 | 1d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 43 6f 6e 73 6f 6c 65 49 4f 2e 70 68 | ....src/Composer/IO/ConsoleIO.ph |
0220 | 70 06 0e 00 00 9f 2c 18 50 06 0e 00 00 7b 13 d4 f0 b6 01 00 00 00 00 00 00 1a 00 00 00 73 72 63 | p.....,.P....{...............src |
0240 | 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 4e 75 6c 6c 49 4f 2e 70 68 70 12 04 00 00 9f 2c 18 50 12 | /Composer/IO/NullIO.php.....,.P. |
0260 | 04 00 00 1d 1d fc 03 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | ...................src/Composer/ |
0280 | 49 4f 2f 49 4f 49 6e 74 65 72 66 61 63 65 2e 70 68 70 59 03 00 00 9f 2c 18 50 59 03 00 00 10 ba | IO/IOInterface.phpY....,.PY..... |
02a0 | 20 3d b6 01 00 00 00 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 | .=............src/Composer/Comma |
02c0 | 6e 64 2f 43 6f 6d 6d 61 6e 64 2e 70 68 70 80 04 00 00 9f 2c 18 50 80 04 00 00 a2 fe 97 49 b6 01 | nd/Command.php.....,.P.......I.. |
02e0 | 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 43 | ......-...src/Composer/Command/C |
0300 | 72 65 61 74 65 50 72 6f 6a 65 63 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 28 14 00 00 9f 2c 18 50 28 | reateProjectCommand.php(....,.P( |
0320 | 14 00 00 19 d6 d5 e3 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | ...............%...src/Composer/ |
0340 | 43 6f 6d 6d 61 6e 64 2f 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 b4 02 00 00 9f 2c 18 50 | Command/AboutCommand.php.....,.P |
0360 | b4 02 00 00 1a 87 d1 cf b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | ................$...src/Composer |
0380 | 2f 43 6f 6d 6d 61 6e 64 2f 53 68 6f 77 43 6f 6d 6d 61 6e 64 2e 70 68 70 4b 1f 00 00 9f 2c 18 50 | /Command/ShowCommand.phpK....,.P |
03a0 | 4b 1f 00 00 54 7d f7 15 b6 01 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | K...T}..........&...src/Composer |
03c0 | 2f 43 6f 6d 6d 61 6e 64 2f 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 4f 08 00 00 9f 2c | /Command/UpdateCommand.phpO...., |
03e0 | 18 50 4f 08 00 00 46 48 01 5f b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 | .PO...FH._........'...src/Compos |
0400 | 65 72 2f 43 6f 6d 6d 61 6e 64 2f 49 6e 73 74 61 6c 6c 43 6f 6d 6d 61 6e 64 2e 70 68 70 9c 06 00 | er/Command/InstallCommand.php... |
0420 | 00 9f 2c 18 50 9c 06 00 00 23 75 ea b8 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d | ..,.P....#u..........(...src/Com |
0440 | 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 56 61 6c 69 64 61 74 65 43 6f 6d 6d 61 6e 64 2e 70 68 | poser/Command/ValidateCommand.ph |
0460 | 70 b4 0f 00 00 9f 2c 18 50 b4 0f 00 00 c7 d1 28 3f b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 | p.....,.P......(?........'...src |
0480 | 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 44 65 70 65 6e 64 73 43 6f 6d 6d 61 6e 64 | /Composer/Command/DependsCommand |
04a0 | 2e 70 68 70 79 0a 00 00 9f 2c 18 50 79 0a 00 00 42 fd 55 a3 b6 01 00 00 00 00 00 00 26 00 00 00 | .phpy....,.Py...B.U.........&... |
04c0 | 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 53 65 61 72 63 68 43 6f 6d 6d 61 | src/Composer/Command/SearchComma |
04e0 | 6e 64 2e 70 68 70 5d 0d 00 00 9f 2c 18 50 5d 0d 00 00 7f 20 b2 24 b6 01 00 00 00 00 00 00 2a 00 | nd.php]....,.P]......$........*. |
0500 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 53 65 6c 66 55 70 64 61 74 | ..src/Composer/Command/SelfUpdat |
0520 | 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 ba 06 00 00 9f 2c 18 50 ba 06 00 00 25 21 e5 57 b6 01 00 00 | eCommand.php.....,.P....%!.W.... |
0540 | 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f 52 65 71 | ....'...src/Composer/Command/Req |
0560 | 75 69 72 65 43 6f 6d 6d 61 6e 64 2e 70 68 70 d4 0c 00 00 9f 2c 18 50 d4 0c 00 00 70 50 47 5c b6 | uireCommand.php.....,.P....pPG\. |
0580 | 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 6d 61 6e 64 2f | .......,...src/Composer/Command/ |
05a0 | 48 65 6c 70 65 72 2f 44 69 61 6c 6f 67 48 65 6c 70 65 72 2e 70 68 70 9e 01 00 00 9f 2c 18 50 9e | Helper/DialogHelper.php.....,.P. |
05c0 | 01 00 00 95 82 8c 26 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | ......&........$...src/Composer/ |
05e0 | 43 6f 6d 6d 61 6e 64 2f 49 6e 69 74 43 6f 6d 6d 61 6e 64 2e 70 68 70 36 28 00 00 9f 2c 18 50 36 | Command/InitCommand.php6(...,.P6 |
0600 | 28 00 00 c2 14 bc 6f b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | (.....o........)...src/Composer/ |
0620 | 44 6f 77 6e 6c 6f 61 64 65 72 2f 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 5b 08 00 00 | Downloader/VcsDownloader.php[... |
0640 | 9f 2c 18 50 5b 08 00 00 a3 31 8c 4c b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.P[....1.L........*...src/Comp |
0660 | 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 | oser/Downloader/FileDownloader.p |
0680 | 68 70 ce 09 00 00 9f 2c 18 50 ce 09 00 00 4a 42 32 ca b6 01 00 00 00 00 00 00 29 00 00 00 73 72 | hp.....,.P....JB2.........)...sr |
06a0 | 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 53 76 6e 44 6f 77 6e 6c 6f 61 | c/Composer/Downloader/SvnDownloa |
06c0 | 64 65 72 2e 70 68 70 59 05 00 00 9f 2c 18 50 59 05 00 00 d2 91 bb 04 b6 01 00 00 00 00 00 00 30 | der.phpY....,.PY...............0 |
06e0 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 50 65 61 72 50 | ...src/Composer/Downloader/PearP |
0700 | 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 2e 70 68 70 f3 1a 00 00 9f 2c 18 50 f3 1a 00 00 a9 | ackageExtractor.php.....,.P..... |
0720 | f5 20 9c b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e | ...........+...src/Composer/Down |
0740 | 6c 6f 61 64 65 72 2f 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2e 70 68 70 0c 0e 00 00 9f 2c | loader/DownloadManager.php....., |
0760 | 18 50 0c 0e 00 00 03 87 c8 db b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 | .P................/...src/Compos |
0780 | 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 | er/Downloader/DownloaderInterfac |
07a0 | 65 2e 70 68 70 8f 01 00 00 9f 2c 18 50 8f 01 00 00 74 80 69 74 b6 01 00 00 00 00 00 00 2e 00 00 | e.php.....,.P....t.it........... |
07c0 | 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 54 72 61 6e 73 70 6f | .src/Composer/Downloader/Transpo |
07e0 | 72 74 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 64 00 00 00 9f 2c 18 50 64 00 00 00 47 c9 87 89 b6 | rtException.phpd....,.Pd...G.... |
0800 | 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 | .......*...src/Composer/Download |
0820 | 65 72 2f 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e5 00 00 00 9f 2c 18 50 e5 00 00 | er/PharDownloader.php.....,.P... |
0840 | 00 de c9 1f e7 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f | .............)...src/Composer/Do |
0860 | 77 6e 6c 6f 61 64 65 72 2f 54 61 72 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e3 00 00 00 9f 2c | wnloader/TarDownloader.php....., |
0880 | 18 50 e3 00 00 00 cd 92 58 3f b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 | .P......X?........(...src/Compos |
08a0 | 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 48 67 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 a5 05 | er/Downloader/HgDownloader.php.. |
08c0 | 00 00 9f 2c 18 50 a5 05 00 00 f2 6a 85 a0 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f | ...,.P.....j..........-...src/Co |
08e0 | 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 | mposer/Downloader/ArchiveDownloa |
0900 | 64 65 72 2e 70 68 70 9a 06 00 00 9f 2c 18 50 9a 06 00 00 4e ed 2f eb b6 01 00 00 00 00 00 00 29 | der.php.....,.P....N./.........) |
0920 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f 5a 69 70 44 6f | ...src/Composer/Downloader/ZipDo |
0940 | 77 6e 6c 6f 61 64 65 72 2e 70 68 70 e0 07 00 00 9f 2c 18 50 e0 07 00 00 f6 76 6e eb b6 01 00 00 | wnloader.php.....,.P.....vn..... |
0960 | 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 6f 77 6e 6c 6f 61 64 65 72 2f | ....)...src/Composer/Downloader/ |
0980 | 47 69 74 44 6f 77 6e 6c 6f 61 64 65 72 2e 70 68 70 db 19 00 00 9f 2c 18 50 db 19 00 00 2f 71 ff | GitDownloader.php.....,.P..../q. |
09a0 | 2d b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 | -........+...src/Composer/Reposi |
09c0 | 74 6f 72 79 2f 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 63 09 00 00 9f 2c 18 50 | tory/ArrayRepository.phpc....,.P |
09e0 | 63 09 00 00 55 64 f9 ec b6 01 00 00 00 00 00 00 30 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | c...Ud..........0...src/Composer |
0a00 | 2f 52 65 70 6f 73 69 74 6f 72 79 2f 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 | /Repository/FilesystemRepository |
0a20 | 2e 70 68 70 89 04 00 00 9f 2c 18 50 89 04 00 00 17 88 9d 4d b6 01 00 00 00 00 00 00 37 00 00 00 | .php.....,.P.......M........7... |
0a40 | 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 57 72 69 74 61 62 6c 65 | src/Composer/Repository/Writable |
0a60 | 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 5b 01 00 00 9f 2c 18 50 5b | RepositoryInterface.php[....,.P[ |
0a80 | 01 00 00 74 4d 02 d5 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | ...tM..........*...src/Composer/ |
0aa0 | 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 86 14 00 | Repository/PearRepository.php... |
0ac0 | 00 9f 2c 18 50 86 14 00 00 e4 31 6b f7 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d | ..,.P.....1k.........-...src/Com |
0ae0 | 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 | poser/Repository/RepositoryManag |
0b00 | 65 72 2e 70 68 70 70 07 00 00 9f 2c 18 50 70 07 00 00 f1 a5 e7 79 b6 01 00 00 00 00 00 00 2c 00 | er.phpp....,.Pp......y........,. |
0b20 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 | ..src/Composer/Repository/Vcs/Gi |
0b40 | 74 48 75 62 44 72 69 76 65 72 2e 70 68 70 37 19 00 00 9f 2c 18 50 37 19 00 00 a6 81 4f 28 b6 01 | tHubDriver.php7....,.P7.....O(.. |
0b60 | 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 | ......2...src/Composer/Repositor |
0b80 | 79 2f 56 63 73 2f 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 2e 70 68 70 3d 0d 00 00 | y/Vcs/GitBitbucketDriver.php=... |
0ba0 | 9f 2c 18 50 3d 0d 00 00 cf c7 8e ba b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.P=...............)...src/Comp |
0bc0 | 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 47 69 74 44 72 69 76 65 72 2e 70 68 | oser/Repository/Vcs/GitDriver.ph |
0be0 | 70 ba 10 00 00 9f 2c 18 50 ba 10 00 00 2a 95 28 7a b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 | p.....,.P....*.(z........)...src |
0c00 | 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 53 76 6e 44 72 69 76 | /Composer/Repository/Vcs/SvnDriv |
0c20 | 65 72 2e 70 68 70 b9 12 00 00 9f 2c 18 50 b9 12 00 00 9e e8 39 8d b6 01 00 00 00 00 00 00 32 00 | er.php.....,.P......9.........2. |
0c40 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 56 63 | ..src/Composer/Repository/Vcs/Vc |
0c60 | 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 43 02 00 00 9f 2c 18 50 43 02 00 00 | sDriverInterface.phpC....,.PC... |
0c80 | f9 46 c4 fc b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 | .F..........(...src/Composer/Rep |
0ca0 | 6f 73 69 74 6f 72 79 2f 56 63 73 2f 48 67 44 72 69 76 65 72 2e 70 68 70 6a 0d 00 00 9f 2c 18 50 | ository/Vcs/HgDriver.phpj....,.P |
0cc0 | 6a 0d 00 00 7a ce 14 58 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | j...z..X........)...src/Composer |
0ce0 | 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 56 63 73 44 72 69 76 65 72 2e 70 68 70 fe 04 00 | /Repository/Vcs/VcsDriver.php... |
0d00 | 00 9f 2c 18 50 fe 04 00 00 4c 12 32 42 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d | ..,.P....L.2B........1...src/Com |
0d20 | 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 2f 48 67 42 69 74 62 75 63 6b 65 74 | poser/Repository/Vcs/HgBitbucket |
0d40 | 44 72 69 76 65 72 2e 70 68 70 f8 0c 00 00 9f 2c 18 50 f8 0c 00 00 cd a4 6d e9 b6 01 00 00 00 00 | Driver.php.....,.P......m....... |
0d60 | 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e | ..4...src/Composer/Repository/In |
0d80 | 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 db 00 00 00 9f 2c | stalledArrayRepository.php....., |
0da0 | 18 50 db 00 00 00 7e 8e 24 d8 b6 01 00 00 00 00 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 | .P....~.$.........)...src/Compos |
0dc0 | 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 56 63 73 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 db | er/Repository/VcsRepository.php. |
0de0 | 17 00 00 9f 2c 18 50 db 17 00 00 30 e6 66 c1 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 | ....,.P....0.f.............src/C |
0e00 | 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 | omposer/Repository/PlatformRepos |
0e20 | 69 74 6f 72 79 2e 70 68 70 ac 08 00 00 9f 2c 18 50 ac 08 00 00 6c 2c c2 8a b6 01 00 00 00 00 00 | itory.php.....,.P....l,......... |
0e40 | 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e 73 | .9...src/Composer/Repository/Ins |
0e60 | 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 a3 00 | talledFilesystemRepository.php.. |
0e80 | 00 00 9f 2c 18 50 a3 00 00 00 56 0a 95 5f b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f | ...,.P....V.._......../...src/Co |
0ea0 | 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 | mposer/Repository/CompositeRepos |
0ec0 | 69 74 6f 72 79 2e 70 68 70 44 06 00 00 9f 2c 18 50 44 06 00 00 90 bc c6 63 b6 01 00 00 00 00 00 | itory.phpD....,.PD......c....... |
0ee0 | 00 38 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 49 6e 73 | .8...src/Composer/Repository/Ins |
0f00 | 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 87 00 00 | talledRepositoryInterface.php... |
0f20 | 00 9f 2c 18 50 87 00 00 00 18 a3 39 70 b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d | ..,.P......9p............src/Com |
0f40 | 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 | poser/Repository/ComposerReposit |
0f60 | 6f 72 79 2e 70 68 70 3f 0e 00 00 9f 2c 18 50 3f 0e 00 00 50 7c 4c d5 b6 01 00 00 00 00 00 00 2f | ory.php?....,.P?...P|L........./ |
0f80 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f | ...src/Composer/Repository/Pear/ |
0fa0 | 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 2e 70 68 70 71 01 00 00 9f 2c 18 50 71 01 00 00 66 ba | DependencyInfo.phpq....,.Pq...f. |
0fc0 | 54 f2 b6 01 00 00 00 00 00 00 38 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 | T.........8...src/Composer/Repos |
0fe0 | 69 74 6f 72 79 2f 50 65 61 72 2f 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 | itory/Pear/PackageDependencyPars |
1000 | 65 72 2e 70 68 70 21 16 00 00 9f 2c 18 50 21 16 00 00 3d cc f3 46 b6 01 00 00 00 00 00 00 2c 00 | er.php!....,.P!...=..F........,. |
1020 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 43 | ..src/Composer/Repository/Pear/C |
1040 | 68 61 6e 6e 65 6c 49 6e 66 6f 2e 70 68 70 c4 01 00 00 9f 2c 18 50 c4 01 00 00 3a 54 2a c9 b6 01 | hannelInfo.php.....,.P....:T*... |
1060 | 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 | ..........src/Composer/Repositor |
1080 | 79 2f 50 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 2e 70 68 70 6d 06 00 00 9f 2c 18 50 | y/Pear/ChannelReader.phpm....,.P |
10a0 | 6d 06 00 00 ef e5 4e 27 b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | m.....N'........,...src/Composer |
10c0 | 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 50 61 63 6b 61 67 65 49 6e 66 6f 2e 70 68 70 | /Repository/Pear/PackageInfo.php |
10e0 | b0 03 00 00 9f 2c 18 50 b0 03 00 00 9f 0d b8 0c b6 01 00 00 00 00 00 00 35 00 00 00 73 72 63 2f | .....,.P................5...src/ |
1100 | 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 44 65 70 65 6e 64 65 | Composer/Repository/Pear/Depende |
1120 | 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 71 02 00 00 9f 2c 18 50 71 02 00 00 39 0e 17 | ncyConstraint.phpq....,.Pq...9.. |
1140 | 3d b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 | =........4...src/Composer/Reposi |
1160 | 74 6f 72 79 2f 50 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 73 74 31 31 52 65 61 64 65 72 2e 70 68 | tory/Pear/ChannelRest11Reader.ph |
1180 | 70 26 09 00 00 9f 2c 18 50 26 09 00 00 f2 55 62 08 b6 01 00 00 00 00 00 00 2c 00 00 00 73 72 63 | p&....,.P&....Ub.........,...src |
11a0 | 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 52 65 6c 65 61 73 | /Composer/Repository/Pear/Releas |
11c0 | 65 49 6e 66 6f 2e 70 68 70 92 01 00 00 9f 2c 18 50 92 01 00 00 6f 93 8a c3 b6 01 00 00 00 00 00 | eInfo.php.....,.P....o.......... |
11e0 | 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 | .2...src/Composer/Repository/Pea |
1200 | 72 2f 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 2e 70 68 70 34 05 00 00 9f 2c 18 50 34 | r/BaseChannelReader.php4....,.P4 |
1220 | 05 00 00 44 3f 8b 85 b6 01 00 00 00 00 00 00 34 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | ...D?..........4...src/Composer/ |
1240 | 52 65 70 6f 73 69 74 6f 72 79 2f 50 65 61 72 2f 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 | Repository/Pear/ChannelRest10Rea |
1260 | 64 65 72 2e 70 68 70 c0 09 00 00 9f 2c 18 50 c0 09 00 00 5d 31 0f de b6 01 00 00 00 00 00 00 2f | der.php.....,.P....]1........../ |
1280 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 52 65 70 6f 73 | ...src/Composer/Repository/Repos |
12a0 | 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 6d 01 00 00 9f 2c 18 50 6d 01 00 00 7e 60 | itoryInterface.phpm....,.Pm...~` |
12c0 | a6 32 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 52 65 70 6f 73 | .2........-...src/Composer/Repos |
12e0 | 69 74 6f 72 79 2f 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 2e 70 68 70 15 02 00 00 9f | itory/PackageRepository.php..... |
1300 | 2c 18 50 15 02 00 00 82 f3 73 3e b6 01 00 00 00 00 00 00 39 00 00 00 73 72 63 2f 43 6f 6d 70 6f | ,.P......s>........9...src/Compo |
1320 | 73 65 72 2f 52 65 70 6f 73 69 74 6f 72 79 2f 4e 6f 74 69 66 69 61 62 6c 65 52 65 70 6f 73 69 74 | ser/Repository/NotifiableReposit |
1340 | 6f 72 79 49 6e 74 65 72 66 61 63 65 2e 70 68 70 e3 00 00 00 9f 2c 18 50 e3 00 00 00 c5 d0 53 27 | oryInterface.php.....,.P......S' |
1360 | b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 | ........+...src/Composer/Package |
1380 | 2f 44 75 6d 70 65 72 2f 41 72 72 61 79 44 75 6d 70 65 72 2e 70 68 70 16 07 00 00 9f 2c 18 50 16 | /Dumper/ArrayDumper.php.....,.P. |
13a0 | 07 00 00 ce 00 27 59 b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f | .....'Y........*...src/Composer/ |
13c0 | 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 4a 73 6f 6e 4c 6f 61 64 65 72 2e 70 68 70 f9 01 00 | Package/Loader/JsonLoader.php... |
13e0 | 00 9f 2c 18 50 f9 01 00 00 21 7e 88 7b b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d | ..,.P....!~.{......../...src/Com |
1400 | 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 4c 6f 61 64 65 72 49 6e 74 65 72 | poser/Package/Loader/LoaderInter |
1420 | 66 61 63 65 2e 70 68 70 84 00 00 00 9f 2c 18 50 84 00 00 00 78 99 ef 53 b6 01 00 00 00 00 00 00 | face.php.....,.P....x..S........ |
1440 | 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f | +...src/Composer/Package/Loader/ |
1460 | 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 fc 15 00 00 9f 2c 18 50 fc 15 00 00 f1 be 2d 4c b6 | ArrayLoader.php.....,.P......-L. |
1480 | 01 00 00 00 00 00 00 35 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f | .......5...src/Composer/Package/ |
14a0 | 4c 6f 61 64 65 72 2f 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 2e 70 68 70 | Loader/ValidatingArrayLoader.php |
14c0 | b6 1c 00 00 9f 2c 18 50 b6 1c 00 00 e9 2b b9 50 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f | .....,.P.....+.P........1...src/ |
14e0 | 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 6f 61 64 65 72 2f 52 6f 6f 74 50 61 63 6b | Composer/Package/Loader/RootPack |
1500 | 61 67 65 4c 6f 61 64 65 72 2e 70 68 70 07 15 00 00 9f 2c 18 50 07 15 00 00 8a 39 b3 d4 b6 01 00 | ageLoader.php.....,.P.....9..... |
1520 | 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4d 65 | .....&...src/Composer/Package/Me |
1540 | 6d 6f 72 79 50 61 63 6b 61 67 65 2e 70 68 70 03 1b 00 00 9f 2c 18 50 03 1b 00 00 ce c6 ef b5 b6 | moryPackage.php.....,.P......... |
1560 | 01 00 00 00 00 00 00 1f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f | ...........src/Composer/Package/ |
1580 | 4c 6f 63 6b 65 72 2e 70 68 70 10 13 00 00 9f 2c 18 50 10 13 00 00 d7 20 27 58 b6 01 00 00 00 00 | Locker.php.....,.P......'X...... |
15a0 | 00 00 29 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 50 61 63 6b 61 | ..)...src/Composer/Package/Packa |
15c0 | 67 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 11 08 00 00 9f 2c 18 50 11 08 00 00 30 3d 09 ec b6 | geInterface.php.....,.P....0=... |
15e0 | 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f | .......$...src/Composer/Package/ |
1600 | 42 61 73 65 50 61 63 6b 61 67 65 2e 70 68 70 3d 0d 00 00 9f 2c 18 50 3d 0d 00 00 a2 69 4a e8 b6 | BasePackage.php=....,.P=....iJ.. |
1620 | 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f | ...........src/Composer/Package/ |
1640 | 56 65 72 73 69 6f 6e 2f 56 65 72 73 69 6f 6e 50 61 72 73 65 72 2e 70 68 70 e0 15 00 00 9f 2c 18 | Version/VersionParser.php.....,. |
1660 | 50 e0 15 00 00 fa 01 4c 4f b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 | P......LO........%...src/Compose |
1680 | 72 2f 50 61 63 6b 61 67 65 2f 41 6c 69 61 73 50 61 63 6b 61 67 65 2e 70 68 70 77 12 00 00 9f 2c | r/Package/AliasPackage.phpw...., |
16a0 | 18 50 77 12 00 00 af be d3 20 b6 01 00 00 00 00 00 00 1d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 | .Pw...................src/Compos |
16c0 | 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 2e 70 68 70 33 05 00 00 9f 2c 18 50 33 05 00 00 92 | er/Package/Link.php3....,.P3.... |
16e0 | 66 36 b9 b6 01 00 00 00 00 00 00 37 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b | f6.........7...src/Composer/Pack |
1700 | 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 | age/LinkConstraint/MultiConstrai |
1720 | 6e 74 2e 70 68 70 5c 03 00 00 9f 2c 18 50 5c 03 00 00 5b 0b 7d 63 b6 01 00 00 00 00 00 00 39 00 | nt.php\....,.P\...[.}c........9. |
1740 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 | ..src/Composer/Package/LinkConst |
1760 | 72 61 69 6e 74 2f 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 f9 05 00 00 9f | raint/VersionConstraint.php..... |
1780 | 2c 18 50 f9 05 00 00 29 6d cf ce b6 01 00 00 00 00 00 00 3a 00 00 00 73 72 63 2f 43 6f 6d 70 6f | ,.P....)m..........:...src/Compo |
17a0 | 73 65 72 2f 50 61 63 6b 61 67 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 53 70 65 63 69 | ser/Package/LinkConstraint/Speci |
17c0 | 66 69 63 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 70 71 02 00 00 9f 2c 18 50 71 02 00 00 96 53 9a | ficConstraint.phpq....,.Pq....S. |
17e0 | f8 b6 01 00 00 00 00 00 00 3f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 50 61 63 6b 61 67 | .........?...src/Composer/Packag |
1800 | 65 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 2f 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 | e/LinkConstraint/LinkConstraintI |
1820 | 6e 74 65 72 66 61 63 65 2e 70 68 70 15 01 00 00 9f 2c 18 50 15 01 00 00 e5 fe 87 a2 b6 01 00 00 | nterface.php.....,.P............ |
1840 | 00 00 00 00 16 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 61 63 68 65 2e 70 68 70 be 03 | ........src/Composer/Cache.php.. |
1860 | 00 00 9f 2c 18 50 be 03 00 00 c9 f2 a0 f9 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 6f | ...,.P................3...src/Co |
1880 | 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 50 6f 6c 69 63 79 | mposer/DependencyResolver/Policy |
18a0 | 49 6e 74 65 72 66 61 63 65 2e 70 68 70 91 01 00 00 9f 2c 18 50 91 01 00 00 42 18 9f b6 b6 01 00 | Interface.php.....,.P....B...... |
18c0 | 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 | .....+...src/Composer/Dependency |
18e0 | 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 53 65 74 2e 70 68 70 9b 09 00 00 9f 2c 18 50 9b 09 00 00 | Resolver/RuleSet.php.....,.P.... |
1900 | 4a 79 0c c0 b6 01 00 00 00 00 00 00 36 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 | Jy..........6...src/Composer/Dep |
1920 | 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 | endencyResolver/SolverBugExcepti |
1940 | 6f 6e 2e 70 68 70 98 01 00 00 9f 2c 18 50 98 01 00 00 7f 22 71 4e b6 01 00 00 00 00 00 00 31 00 | on.php.....,.P....."qN........1. |
1960 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 | ..src/Composer/DependencyResolve |
1980 | 72 2f 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 2e 70 68 70 57 15 00 00 9f 2c 18 50 57 15 00 00 9e | r/DefaultPolicy.phpW....,.PW.... |
19a0 | e9 5d 81 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 | .].........-...src/Composer/Depe |
19c0 | 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 44 65 63 69 73 69 6f 6e 73 2e 70 68 70 8e 0e 00 00 | ndencyResolver/Decisions.php.... |
19e0 | 9f 2c 18 50 8e 0e 00 00 bb ed 61 f4 b6 01 00 00 00 00 00 00 31 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.P......a.........1...src/Comp |
1a00 | 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 57 61 74 63 | oser/DependencyResolver/RuleWatc |
1a20 | 68 4e 6f 64 65 2e 70 68 70 f0 03 00 00 9f 2c 18 50 f0 03 00 00 5d 24 f3 b4 b6 01 00 00 00 00 00 | hNode.php.....,.P....]$......... |
1a40 | 00 3b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f | .;...src/Composer/DependencyReso |
1a60 | 6c 76 65 72 2f 53 6f 6c 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 | lver/SolverProblemsException.php |
1a80 | c4 03 00 00 9f 2c 18 50 c4 03 00 00 ac d6 5b b0 b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f | .....,.P......[........./...src/ |
1aa0 | 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 54 72 61 6e | Composer/DependencyResolver/Tran |
1ac0 | 73 61 63 74 69 6f 6e 2e 70 68 70 11 14 00 00 9f 2c 18 50 11 14 00 00 93 fe de 87 b6 01 00 00 00 | saction.php.....,.P............. |
1ae0 | 00 00 00 40 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 | ...@...src/Composer/DependencyRe |
1b00 | 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 | solver/Operation/UninstallOperat |
1b20 | 69 6f 6e 2e 70 68 70 49 02 00 00 9f 2c 18 50 49 02 00 00 46 fb c2 c9 b6 01 00 00 00 00 00 00 3d | ion.phpI....,.PI...F...........= |
1b40 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 | ...src/Composer/DependencyResolv |
1b60 | 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 | er/Operation/UpdateOperation.php |
1b80 | 68 03 00 00 9f 2c 18 50 68 03 00 00 f6 53 d5 5d b6 01 00 00 00 00 00 00 49 00 00 00 73 72 63 2f | h....,.Ph....S.]........I...src/ |
1ba0 | 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 | Composer/DependencyResolver/Oper |
1bc0 | 61 74 69 6f 6e 2f 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f | ation/MarkAliasInstalledOperatio |
1be0 | 6e 2e 70 68 70 d0 02 00 00 9f 2c 18 50 d0 02 00 00 78 55 5a 61 b6 01 00 00 00 00 00 00 3e 00 00 | n.php.....,.P....xUZa........>.. |
1c00 | 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 | .src/Composer/DependencyResolver |
1c20 | 2f 4f 70 65 72 61 74 69 6f 6e 2f 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 43 | /Operation/InstallOperation.phpC |
1c40 | 02 00 00 9f 2c 18 50 43 02 00 00 b4 5c f5 2a b6 01 00 00 00 00 00 00 3d 00 00 00 73 72 63 2f 43 | ....,.PC....\.*........=...src/C |
1c60 | 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 | omposer/DependencyResolver/Opera |
1c80 | 74 69 6f 6e 2f 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 eb 01 00 00 9f 2c 18 50 | tion/SolverOperation.php.....,.P |
1ca0 | eb 01 00 00 c4 a7 dd 94 b6 01 00 00 00 00 00 00 4b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | ................K...src/Composer |
1cc0 | 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 74 69 6f 6e 2f 4d 61 | /DependencyResolver/Operation/Ma |
1ce0 | 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 2e 70 68 70 d6 | rkAliasUninstalledOperation.php. |
1d00 | 02 00 00 9f 2c 18 50 d6 02 00 00 5f 69 c7 ab b6 01 00 00 00 00 00 00 40 00 00 00 73 72 63 2f 43 | ....,.P...._i..........@...src/C |
1d20 | 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 4f 70 65 72 61 | omposer/DependencyResolver/Opera |
1d40 | 74 69 6f 6e 2f 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 d3 00 00 00 9f | tion/OperationInterface.php..... |
1d60 | 2c 18 50 d3 00 00 00 d9 e2 26 e4 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f | ,.P......&.........(...src/Compo |
1d80 | 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 50 6f 6f 6c 2e 70 68 70 43 | ser/DependencyResolver/Pool.phpC |
1da0 | 0e 00 00 9f 2c 18 50 43 0e 00 00 bf 57 73 3a b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 | ....,.PC....Ws:........(...src/C |
1dc0 | 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 2e | omposer/DependencyResolver/Rule. |
1de0 | 70 68 70 d4 0f 00 00 9f 2c 18 50 d4 0f 00 00 1b d5 fa ee b6 01 00 00 00 00 00 00 34 00 00 00 73 | php.....,.P................4...s |
1e00 | 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 | rc/Composer/DependencyResolver/R |
1e20 | 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 2e 70 68 70 50 15 00 00 9f 2c 18 50 50 15 00 00 c0 | uleSetGenerator.phpP....,.PP.... |
1e40 | dc 64 1e b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 | .d........./...src/Composer/Depe |
1e60 | 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 44 65 62 75 67 53 6f 6c 76 65 72 2e 70 68 70 89 06 | ndencyResolver/DebugSolver.php.. |
1e80 | 00 00 9f 2c 18 50 89 06 00 00 a3 d2 ad 85 b6 01 00 00 00 00 00 00 33 00 00 00 73 72 63 2f 43 6f | ...,.P................3...src/Co |
1ea0 | 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 53 65 | mposer/DependencyResolver/RuleSe |
1ec0 | 74 49 74 65 72 61 74 6f 72 2e 70 68 70 14 06 00 00 9f 2c 18 50 14 06 00 00 7d f5 c7 f9 b6 01 00 | tIterator.php.....,.P....}...... |
1ee0 | 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 | .....2...src/Composer/Dependency |
1f00 | 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 57 61 74 63 68 43 68 61 69 6e 2e 70 68 70 69 01 00 00 9f | Resolver/RuleWatchChain.phpi.... |
1f20 | 2c 18 50 69 01 00 00 68 ef 9a 2c b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f | ,.Pi...h..,........*...src/Compo |
1f40 | 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 53 6f 6c 76 65 72 2e 70 68 | ser/DependencyResolver/Solver.ph |
1f60 | 70 43 35 00 00 9f 2c 18 50 43 35 00 00 e5 22 66 50 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 | pC5...,.PC5..."fP........+...src |
1f80 | 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 2f 52 65 71 | /Composer/DependencyResolver/Req |
1fa0 | 75 65 73 74 2e 70 68 70 89 04 00 00 9f 2c 18 50 89 04 00 00 31 1a b2 49 b6 01 00 00 00 00 00 00 | uest.php.....,.P....1..I........ |
1fc0 | 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c | +...src/Composer/DependencyResol |
1fe0 | 76 65 72 2f 50 72 6f 62 6c 65 6d 2e 70 68 70 d0 0a 00 00 9f 2c 18 50 d0 0a 00 00 69 44 c1 4e b6 | ver/Problem.php.....,.P....iD.N. |
2000 | 01 00 00 00 00 00 00 32 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 44 65 70 65 6e 64 65 6e | .......2...src/Composer/Dependen |
2020 | 63 79 52 65 73 6f 6c 76 65 72 2f 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 2e 70 68 70 e1 06 00 | cyResolver/RuleWatchGraph.php... |
2040 | 00 9f 2c 18 50 e1 06 00 00 89 72 f4 76 b6 01 00 00 00 00 00 00 18 00 00 00 73 72 63 2f 43 6f 6d | ..,.P.....r.v............src/Com |
2060 | 70 6f 73 65 72 2f 46 61 63 74 6f 72 79 2e 70 68 70 1a 19 00 00 9f 2c 18 50 1a 19 00 00 0e 22 f3 | poser/Factory.php.....,.P.....". |
2080 | 17 b6 01 00 00 00 00 00 00 20 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 46 | .............src/Composer/Util/F |
20a0 | 69 6c 65 73 79 73 74 65 6d 2e 70 68 70 97 0c 00 00 9f 2c 18 50 97 0c 00 00 a6 06 9d 17 b6 01 00 | ilesystem.php.....,.P........... |
20c0 | 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 50 72 6f 63 65 | .....%...src/Composer/Util/Proce |
20e0 | 73 73 45 78 65 63 75 74 6f 72 2e 70 68 70 71 04 00 00 9f 2c 18 50 71 04 00 00 89 8a c7 ac b6 01 | ssExecutor.phpq....,.Pq......... |
2100 | 00 00 00 00 00 00 26 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 52 65 6d 6f | ......&...src/Composer/Util/Remo |
2120 | 74 65 46 69 6c 65 73 79 73 74 65 6d 2e 70 68 70 d2 11 00 00 9f 2c 18 50 d2 11 00 00 9d a3 9c df | teFilesystem.php.....,.P........ |
2140 | b6 01 00 00 00 00 00 00 2a 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 6c 2f 53 74 | ........*...src/Composer/Util/St |
2160 | 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 2e 70 68 70 43 06 00 00 9f 2c 18 50 43 06 | reamContextFactory.phpC....,.PC. |
2180 | 00 00 23 59 74 3a b6 01 00 00 00 00 00 00 22 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 | ..#Yt:........"...src/Composer/U |
21a0 | 74 69 6c 2f 45 72 72 6f 72 48 61 6e 64 6c 65 72 2e 70 68 70 14 02 00 00 9f 2c 18 50 14 02 00 00 | til/ErrorHandler.php.....,.P.... |
21c0 | b4 40 85 e6 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 55 74 69 | .@..........+...src/Composer/Uti |
21e0 | 6c 2f 53 70 64 78 4c 69 63 65 6e 73 65 49 64 65 6e 74 69 66 69 65 72 2e 70 68 70 36 0a 00 00 9f | l/SpdxLicenseIdentifier.php6.... |
2200 | 2c 18 50 36 0a 00 00 c4 36 bb 6f b6 01 00 00 00 00 00 00 19 00 00 00 73 72 63 2f 43 6f 6d 70 6f | ,.P6....6.o............src/Compo |
2220 | 73 65 72 2f 55 74 69 6c 2f 53 76 6e 2e 70 68 70 5b 0c 00 00 9f 2c 18 50 5b 0c 00 00 f7 82 63 9b | ser/Util/Svn.php[....,.P[.....c. |
2240 | b6 01 00 00 00 00 00 00 19 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6d 70 6f 73 65 | ............src/Composer/Compose |
2260 | 72 2e 70 68 70 97 05 00 00 9f 2c 18 50 97 05 00 00 4f 51 70 ac b6 01 00 00 00 00 00 00 25 00 00 | r.php.....,.P....OQp.........%.. |
2280 | 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 | .src/Composer/Json/JsonManipulat |
22a0 | 6f 72 2e 70 68 70 49 0a 00 00 9f 2c 18 50 49 0a 00 00 1b e9 2f fe b6 01 00 00 00 00 00 00 1e 00 | or.phpI....,.PI...../........... |
22c0 | 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 46 69 6c 65 2e 70 68 70 | ..src/Composer/Json/JsonFile.php |
22e0 | 43 14 00 00 9f 2c 18 50 43 14 00 00 11 e7 12 70 b6 01 00 00 00 00 00 00 2d 00 00 00 73 72 63 2f | C....,.PC......p........-...src/ |
2300 | 43 6f 6d 70 6f 73 65 72 2f 4a 73 6f 6e 2f 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 | Composer/Json/JsonValidationExce |
2320 | 70 74 69 6f 6e 2e 70 68 70 32 01 00 00 9f 2c 18 50 32 01 00 00 39 62 84 31 b6 01 00 00 00 00 00 | ption.php2....,.P2...9b.1....... |
2340 | 00 17 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f 6e 66 69 67 2e 70 68 70 fc 07 00 00 | .....src/Composer/Config.php.... |
2360 | 9f 2c 18 50 fc 07 00 00 f2 d0 1b f0 b6 01 00 00 00 00 00 00 1d 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.P....................src/Comp |
2380 | 6f 73 65 72 2f 53 63 72 69 70 74 2f 45 76 65 6e 74 2e 70 68 70 f4 01 00 00 9f 2c 18 50 f4 01 00 | oser/Script/Event.php.....,.P... |
23a0 | 00 a2 1a 99 bd b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 | .............$...src/Composer/Sc |
23c0 | 72 69 70 74 2f 53 63 72 69 70 74 45 76 65 6e 74 73 2e 70 68 70 81 02 00 00 9f 2c 18 50 81 02 00 | ript/ScriptEvents.php.....,.P... |
23e0 | 00 c1 a7 cb ed b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 | .............$...src/Composer/Sc |
2400 | 72 69 70 74 2f 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 2e 70 68 70 6f 00 00 00 9f 2c 18 50 6f 00 00 | ript/CommandEvent.phpo....,.Po.. |
2420 | 00 0d b7 14 79 b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 | ....y........$...src/Composer/Sc |
2440 | 72 69 70 74 2f 50 61 63 6b 61 67 65 45 76 65 6e 74 2e 70 68 70 e2 01 00 00 9f 2c 18 50 e2 01 00 | ript/PackageEvent.php.....,.P... |
2460 | 00 5b 10 1d b4 b6 01 00 00 00 00 00 00 27 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 53 63 | .[...........'...src/Composer/Sc |
2480 | 72 69 70 74 2f 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2e 70 68 70 87 08 00 00 9f 2c 18 50 | ript/EventDispatcher.php.....,.P |
24a0 | 87 08 00 00 3f 21 d5 e4 b6 01 00 00 00 00 00 00 28 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 | ....?!..........(...src/Composer |
24c0 | 2f 49 6e 73 74 61 6c 6c 65 72 2f 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 15 05 00 00 | /Installer/NoopInstaller.php.... |
24e0 | 9f 2c 18 50 15 05 00 00 b2 03 fd 15 b6 01 00 00 00 00 00 00 2f 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.P................/...src/Comp |
2500 | 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 4d 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c | oser/Installer/MetapackageInstal |
2520 | 6c 65 72 2e 70 68 70 a6 04 00 00 9f 2c 18 50 a6 04 00 00 ab a3 66 ce b6 01 00 00 00 00 00 00 28 | ler.php.....,.P......f.........( |
2540 | 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 65 61 72 49 6e | ...src/Composer/Installer/PearIn |
2560 | 73 74 61 6c 6c 65 72 2e 70 68 70 d5 0c 00 00 9f 2c 18 50 d5 0c 00 00 f3 60 7d b0 b6 01 00 00 00 | staller.php.....,.P.....`}...... |
2580 | 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 50 72 | ...+...src/Composer/Installer/Pr |
25a0 | 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 e1 05 00 00 9f 2c 18 50 e1 05 00 00 3e 3a | ojectInstaller.php.....,.P....>: |
25c0 | 31 c4 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 | 1.........+...src/Composer/Insta |
25e0 | 6c 6c 65 72 2f 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 b3 17 00 00 9f 2c 18 | ller/LibraryInstaller.php.....,. |
2600 | 50 b3 17 00 00 43 28 18 2d b6 01 00 00 00 00 00 00 2e 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 | P....C(.-............src/Compose |
2620 | 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2e | r/Installer/InstallationManager. |
2640 | 70 68 70 c2 0d 00 00 9f 2c 18 50 c2 0d 00 00 10 4e 05 ca b6 01 00 00 00 00 00 00 2d 00 00 00 73 | php.....,.P.....N..........-...s |
2660 | 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 6e 73 74 61 6c 6c 65 72 49 | rc/Composer/Installer/InstallerI |
2680 | 6e 74 65 72 66 61 63 65 2e 70 68 70 c5 02 00 00 9f 2c 18 50 c5 02 00 00 48 53 93 a1 b6 01 00 00 | nterface.php.....,.P....HS...... |
26a0 | 00 00 00 00 2d 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2f 49 | ....-...src/Composer/Installer/I |
26c0 | 6e 73 74 61 6c 6c 65 72 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 b4 09 00 00 9f 2c 18 50 b4 09 00 | nstallerInstaller.php.....,.P... |
26e0 | 00 86 07 a9 9e b6 01 00 00 00 00 00 00 24 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 43 6f | .............$...src/Composer/Co |
2700 | 6e 73 6f 6c 65 2f 41 70 70 6c 69 63 61 74 69 6f 6e 2e 70 68 70 f0 0b 00 00 9f 2c 18 50 f0 0b 00 | nsole/Application.php.....,.P... |
2720 | 00 33 71 30 cc b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 41 75 | .3q0.........+...src/Composer/Au |
2740 | 74 6f 6c 6f 61 64 2f 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2e 70 68 70 53 21 00 00 | toload/AutoloadGenerator.phpS!.. |
2760 | 9f 2c 18 50 53 21 00 00 cc 23 2c 69 b6 01 00 00 00 00 00 00 2b 00 00 00 73 72 63 2f 43 6f 6d 70 | .,.PS!...#,i........+...src/Comp |
2780 | 6f 73 65 72 2f 41 75 74 6f 6c 6f 61 64 2f 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 61 74 6f 72 2e | oser/Autoload/ClassMapGenerator. |
27a0 | 70 68 70 81 07 00 00 9f 2c 18 50 81 07 00 00 00 bb ea bb b6 01 00 00 00 00 00 00 1a 00 00 00 73 | php.....,.P....................s |
27c0 | 72 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 6e 73 74 61 6c 6c 65 72 2e 70 68 70 e3 3c 00 00 9f 2c 18 | rc/Composer/Installer.php.<...,. |
27e0 | 50 e3 3c 00 00 76 d8 db 06 b6 01 00 00 00 00 00 00 25 00 00 00 73 72 63 2f 43 6f 6d 70 6f 73 65 | P.<..v...........%...src/Compose |
2800 | 72 2f 41 75 74 6f 6c 6f 61 64 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 9c 15 00 00 9f 2c | r/Autoload/ClassLoader.php....., |
2820 | 18 50 9c 15 00 00 a4 69 f6 f6 b6 01 00 00 00 00 00 00 18 00 00 00 72 65 73 2f 73 70 64 78 2d 69 | .P.....i..............res/spdx-i |
2840 | 64 65 6e 74 69 66 69 65 72 2e 6a 73 6f 6e 58 09 00 00 9f 2c 18 50 58 09 00 00 8c 66 e7 cc b6 01 | dentifier.jsonX....,.PX....f.... |
2860 | 00 00 00 00 00 00 18 00 00 00 72 65 73 2f 63 6f 6d 70 6f 73 65 72 2d 73 63 68 65 6d 61 2e 6a 73 | ..........res/composer-schema.js |
2880 | 6f 6e 83 2b 00 00 9f 2c 18 50 83 2b 00 00 19 c3 95 61 b6 01 00 00 00 00 00 00 1f 00 00 00 73 72 | on.+...,.P.+.....a............sr |
28a0 | 63 2f 43 6f 6d 70 6f 73 65 72 2f 49 4f 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 00 24 00 | c/Composer/IO/hiddeninput.exe.$. |
28c0 | 00 9f 2c 18 50 00 24 00 00 95 8d a5 76 b6 01 00 00 00 00 00 00 3f 00 00 00 76 65 6e 64 6f 72 2f | ..,.P.$.....v........?...vendor/ |
28e0 | 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e | symfony/process/Symfony/Componen |
2900 | 74 2f 50 72 6f 63 65 73 73 2f 50 68 70 50 72 6f 63 65 73 73 2e 70 68 70 df 02 00 00 9f 2c 18 50 | t/Process/PhpProcess.php.....,.P |
2920 | df 02 00 00 ed 5a e2 ae b6 01 00 00 00 00 00 00 45 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f | .....Z..........E...vendor/symfo |
2940 | 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 6f | ny/process/Symfony/Component/Pro |
2960 | 63 65 73 73 2f 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 28 05 00 00 9f 2c 18 | cess/ExecutableFinder.php(....,. |
2980 | 50 28 05 00 00 8b f8 40 ad b6 01 00 00 00 00 00 00 3c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 | P(.....@.........<...vendor/symf |
29a0 | 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 | ony/process/Symfony/Component/Pr |
29c0 | 6f 63 65 73 73 2f 50 72 6f 63 65 73 73 2e 70 68 70 ba 2d 00 00 9f 2c 18 50 ba 2d 00 00 94 91 53 | ocess/Process.php.-...,.P.-....S |
29e0 | 09 b6 01 00 00 00 00 00 00 43 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 | .........C...vendor/symfony/proc |
2a00 | 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 6f 63 65 73 73 2f 50 72 | ess/Symfony/Component/Process/Pr |
2a20 | 6f 63 65 73 73 42 75 69 6c 64 65 72 2e 70 68 70 f7 06 00 00 9f 2c 18 50 f7 06 00 00 72 d3 cd 98 | ocessBuilder.php.....,.P....r... |
2a40 | b6 01 00 00 00 00 00 00 51 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 | ........Q...vendor/symfony/proce |
2a60 | 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 6f 63 65 73 73 2f 45 78 63 | ss/Symfony/Component/Process/Exc |
2a80 | 65 70 74 69 6f 6e 2f 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 2e 70 68 70 66 00 00 | eption/ExceptionInterface.phpf.. |
2aa0 | 00 9f 2c 18 50 66 00 00 00 5d f6 3e 54 b6 01 00 00 00 00 00 00 4f 00 00 00 76 65 6e 64 6f 72 2f | ..,.Pf...].>T........O...vendor/ |
2ac0 | 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e | symfony/process/Symfony/Componen |
2ae0 | 74 2f 50 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 52 75 6e 74 69 6d 65 45 78 63 65 70 | t/Process/Exception/RuntimeExcep |
2b00 | 74 69 6f 6e 2e 70 68 70 98 00 00 00 9f 2c 18 50 98 00 00 00 a2 1b d8 3a b6 01 00 00 00 00 00 00 | tion.php.....,.P.......:........ |
2b20 | 55 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f | U...vendor/symfony/process/Symfo |
2b40 | 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 6f 63 65 73 73 2f 45 78 63 65 70 74 69 6f 6e 2f 50 | ny/Component/Process/Exception/P |
2b60 | 72 6f 63 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 2e 70 68 70 a2 02 00 00 9f 2c 18 | rocessFailedException.php.....,. |
2b80 | 50 a2 02 00 00 d2 3a 2f fc b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 | P.....:/.........H...vendor/symf |
2ba0 | 6f 6e 79 2f 70 72 6f 63 65 73 73 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 50 72 | ony/process/Symfony/Component/Pr |
2bc0 | 6f 63 65 73 73 2f 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2e 70 68 70 9b 02 00 | ocess/PhpExecutableFinder.php... |
2be0 | 00 9f 2c 18 50 9b 02 00 00 b4 a5 44 45 b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e 64 6f 72 2f | ..,.P......DE........H...vendor/ |
2c00 | 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e | symfony/console/Symfony/Componen |
2c20 | 74 2f 43 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 48 65 6c 70 43 6f 6d 6d 61 6e 64 2e 70 68 | t/Console/Command/HelpCommand.ph |
2c40 | 70 e2 05 00 00 9f 2c 18 50 e2 05 00 00 dd fc 1b ff b6 01 00 00 00 00 00 00 44 00 00 00 76 65 6e | p.....,.P................D...ven |
2c60 | 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 | dor/symfony/console/Symfony/Comp |
2c80 | 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 43 6f 6d 6d 61 6e 64 2e 70 68 | onent/Console/Command/Command.ph |
2ca0 | 70 25 1c 00 00 9f 2c 18 50 25 1c 00 00 30 dc 95 87 b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e | p%....,.P%...0...........H...ven |
2cc0 | 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 | dor/symfony/console/Symfony/Comp |
2ce0 | 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 43 6f 6d 6d 61 6e 64 2f 4c 69 73 74 43 6f 6d 6d 61 6e | onent/Console/Command/ListComman |
2d00 | 64 2e 70 68 70 3d 07 00 00 9f 2c 18 50 3d 07 00 00 5c f7 17 15 b6 01 00 00 00 00 00 00 4d 00 00 | d.php=....,.P=...\...........M.. |
2d20 | 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f | .vendor/symfony/console/Symfony/ |
2d40 | 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 54 65 73 74 65 72 2f 41 70 70 6c 69 63 61 | Component/Console/Tester/Applica |
2d60 | 74 69 6f 6e 54 65 73 74 65 72 2e 70 68 70 f2 04 00 00 9f 2c 18 50 f2 04 00 00 2a a3 b4 04 b6 01 | tionTester.php.....,.P....*..... |
2d80 | 00 00 00 00 00 00 49 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 | ......I...vendor/symfony/console |
2da0 | 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 54 65 73 74 65 | /Symfony/Component/Console/Teste |
2dc0 | 72 2f 43 6f 6d 6d 61 6e 64 54 65 73 74 65 72 2e 70 68 70 7a 04 00 00 9f 2c 18 50 7a 04 00 00 78 | r/CommandTester.phpz....,.Pz...x |
2de0 | 55 d7 f0 b6 01 00 00 00 00 00 00 58 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f | U..........X...vendor/symfony/co |
2e00 | 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f | nsole/Symfony/Component/Console/ |
2e20 | 46 6f 72 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 | Formatter/OutputFormatterStyleSt |
2e40 | 61 63 6b 2e 70 68 70 08 05 00 00 9f 2c 18 50 08 05 00 00 79 08 49 27 b6 01 00 00 00 00 00 00 53 | ack.php.....,.P....y.I'........S |
2e60 | 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e | ...vendor/symfony/console/Symfon |
2e80 | 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 46 6f 72 6d 61 74 74 65 72 2f 4f 75 | y/Component/Console/Formatter/Ou |
2ea0 | 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 2e 70 68 70 29 0c 00 00 9f 2c 18 50 29 0c | tputFormatterStyle.php)....,.P). |
2ec0 | 00 00 a5 19 d2 78 b6 01 00 00 00 00 00 00 5c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 | .....x........\...vendor/symfony |
2ee0 | 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f | /console/Symfony/Component/Conso |
2f00 | 6c 65 2f 46 6f 72 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c | le/Formatter/OutputFormatterStyl |
2f20 | 65 49 6e 74 65 72 66 61 63 65 2e 70 68 70 8e 01 00 00 9f 2c 18 50 8e 01 00 00 f6 eb c4 3d b6 01 | eInterface.php.....,.P.......=.. |
2f40 | 00 00 00 00 00 00 4e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 | ......N...vendor/symfony/console |
2f60 | 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 46 6f 72 6d 61 | /Symfony/Component/Console/Forma |
2f80 | 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 2e 70 68 70 b8 0b 00 00 9f 2c 18 50 | tter/OutputFormatter.php.....,.P |
2fa0 | b8 0b 00 00 0f 2a 6a 6a b6 01 00 00 00 00 00 00 57 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f | .....*jj........W...vendor/symfo |
2fc0 | 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e | ny/console/Symfony/Component/Con |
2fe0 | 73 6f 6c 65 2f 46 6f 72 6d 61 74 74 65 72 2f 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e | sole/Formatter/OutputFormatterIn |
3000 | 74 65 72 66 61 63 65 2e 70 68 70 98 01 00 00 9f 2c 18 50 98 01 00 00 33 6c 7e b4 b6 01 00 00 00 | terface.php.....,.P....3l~...... |
3020 | 00 00 00 40 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...@...vendor/symfony/console/Sy |
3040 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 41 70 70 6c 69 63 61 74 | mfony/Component/Console/Applicat |
3060 | 69 6f 6e 2e 70 68 70 2e 48 00 00 9f 2c 18 50 2e 48 00 00 0d df 53 cd b6 01 00 00 00 00 00 00 48 | ion.php.H...,.P.H....S.........H |
3080 | 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e | ...vendor/symfony/console/Symfon |
30a0 | 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 74 41 | y/Component/Console/Input/InputA |
30c0 | 72 67 75 6d 65 6e 74 2e 70 68 70 9a 05 00 00 9f 2c 18 50 9a 05 00 00 fd 77 4f 6d b6 01 00 00 00 | rgument.php.....,.P.....wOm..... |
30e0 | 00 00 00 40 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...@...vendor/symfony/console/Sy |
3100 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e | mfony/Component/Console/Input/In |
3120 | 70 75 74 2e 70 68 70 83 09 00 00 9f 2c 18 50 83 09 00 00 7c 3e 7f 5c b6 01 00 00 00 00 00 00 46 | put.php.....,.P....|>.\........F |
3140 | 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e | ...vendor/symfony/console/Symfon |
3160 | 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 53 74 72 69 6e 67 | y/Component/Console/Input/String |
3180 | 49 6e 70 75 74 2e 70 68 70 92 05 00 00 9f 2c 18 50 92 05 00 00 8b 63 80 95 b6 01 00 00 00 00 00 | Input.php.....,.P.....c......... |
31a0 | 00 46 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 | .F...vendor/symfony/console/Symf |
31c0 | 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e 70 75 | ony/Component/Console/Input/Inpu |
31e0 | 74 4f 70 74 69 6f 6e 2e 70 68 70 1a 0b 00 00 9f 2c 18 50 1a 0b 00 00 58 a5 aa 58 b6 01 00 00 00 | tOption.php.....,.P....X..X..... |
3200 | 00 00 00 44 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...D...vendor/symfony/console/Sy |
3220 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 41 72 | mfony/Component/Console/Input/Ar |
3240 | 67 76 49 6e 70 75 74 2e 70 68 70 c4 10 00 00 9f 2c 18 50 c4 10 00 00 f6 34 b3 cc b6 01 00 00 00 | gvInput.php.....,.P.....4....... |
3260 | 00 00 00 49 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...I...vendor/symfony/console/Sy |
3280 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 75 74 2f 49 6e | mfony/Component/Console/Input/In |
32a0 | 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 20 03 00 00 9f 2c 18 50 20 03 00 00 39 94 f8 c7 | putInterface.php.....,.P....9... |
32c0 | b6 01 00 00 00 00 00 00 45 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f | ........E...vendor/symfony/conso |
32e0 | 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e 70 | le/Symfony/Component/Console/Inp |
3300 | 75 74 2f 41 72 72 61 79 49 6e 70 75 74 2e 70 68 70 d1 08 00 00 9f 2c 18 50 d1 08 00 00 da 5f af | ut/ArrayInput.php.....,.P....._. |
3320 | c3 b6 01 00 00 00 00 00 00 4a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 | .........J...vendor/symfony/cons |
3340 | 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 49 6e | ole/Symfony/Component/Console/In |
3360 | 70 75 74 2f 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 2e 70 68 70 3b 25 00 00 9f 2c 18 50 3b | put/InputDefinition.php;%...,.P; |
3380 | 25 00 00 7f 9a bf df b6 01 00 00 00 00 00 00 3a 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e | %..............:...vendor/symfon |
33a0 | 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 | y/console/Symfony/Component/Cons |
33c0 | 6f 6c 65 2f 53 68 65 6c 6c 2e 70 68 70 e4 0d 00 00 9f 2c 18 50 e4 0d 00 00 d4 ac eb c1 b6 01 00 | ole/Shell.php.....,.P........... |
33e0 | 00 00 00 00 00 42 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f | .....B...vendor/symfony/console/ |
3400 | 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 | Symfony/Component/Console/Output |
3420 | 2f 4f 75 74 70 75 74 2e 70 68 70 78 07 00 00 9f 2c 18 50 78 07 00 00 c6 02 19 a4 b6 01 00 00 00 | /Output.phpx....,.Px............ |
3440 | 00 00 00 46 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...F...vendor/symfony/console/Sy |
3460 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4e | mfony/Component/Console/Output/N |
3480 | 75 6c 6c 4f 75 74 70 75 74 2e 70 68 70 a3 00 00 00 9f 2c 18 50 a3 00 00 00 92 c7 a2 8e b6 01 00 | ullOutput.php.....,.P........... |
34a0 | 00 00 00 00 00 52 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f | .....R...vendor/symfony/console/ |
34c0 | 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 | Symfony/Component/Console/Output |
34e0 | 2f 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 15 01 00 00 9f | /ConsoleOutputInterface.php..... |
3500 | 2c 18 50 15 01 00 00 0e 8d c3 06 b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e 64 6f 72 2f 73 79 | ,.P................H...vendor/sy |
3520 | 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f | mfony/console/Symfony/Component/ |
3540 | 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 53 74 72 65 61 6d 4f 75 74 70 75 74 2e 70 68 70 99 | Console/Output/StreamOutput.php. |
3560 | 04 00 00 9f 2c 18 50 99 04 00 00 c1 96 d0 a5 b6 01 00 00 00 00 00 00 4b 00 00 00 76 65 6e 64 6f | ....,.P................K...vendo |
3580 | 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e | r/symfony/console/Symfony/Compon |
35a0 | 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 4f 75 74 70 75 74 49 6e 74 65 72 66 61 | ent/Console/Output/OutputInterfa |
35c0 | 63 65 2e 70 68 70 e6 02 00 00 9f 2c 18 50 e6 02 00 00 2e 1b 93 3c b6 01 00 00 00 00 00 00 49 00 | ce.php.....,.P.......<........I. |
35e0 | 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 | ..vendor/symfony/console/Symfony |
3600 | 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 4f 75 74 70 75 74 2f 43 6f 6e 73 6f 6c | /Component/Console/Output/Consol |
3620 | 65 4f 75 74 70 75 74 2e 70 68 70 74 05 00 00 9f 2c 18 50 74 05 00 00 28 c8 3e 54 b6 01 00 00 00 | eOutput.phpt....,.Pt...(.>T..... |
3640 | 00 00 00 4b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 | ...K...vendor/symfony/console/Sy |
3660 | 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 48 | mfony/Component/Console/Helper/H |
3680 | 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 2e 70 68 70 ef 00 00 00 9f 2c 18 50 ef 00 00 00 3d 65 | elperInterface.php.....,.P....=e |
36a0 | 1b 0c b6 01 00 00 00 00 00 00 4b 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e | ..........K...vendor/symfony/con |
36c0 | 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 48 | sole/Symfony/Component/Console/H |
36e0 | 65 6c 70 65 72 2f 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 2e 70 68 70 07 05 00 00 9f 2c 18 | elper/FormatterHelper.php.....,. |
3700 | 50 07 05 00 00 04 1b 38 9f b6 01 00 00 00 00 00 00 45 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 | P......8.........E...vendor/symf |
3720 | 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 6f | ony/console/Symfony/Component/Co |
3740 | 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 48 65 6c 70 65 72 53 65 74 2e 70 68 70 d3 03 00 00 9f 2c | nsole/Helper/HelperSet.php....., |
3760 | 18 50 d3 03 00 00 98 5e 39 74 b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d | .P.....^9t........H...vendor/sym |
3780 | 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 43 | fony/console/Symfony/Component/C |
37a0 | 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 44 69 61 6c 6f 67 48 65 6c 70 65 72 2e 70 68 70 ec 05 | onsole/Helper/DialogHelper.php.. |
37c0 | 00 00 9f 2c 18 50 ec 05 00 00 31 be 47 8a b6 01 00 00 00 00 00 00 42 00 00 00 76 65 6e 64 6f 72 | ...,.P....1.G.........B...vendor |
37e0 | 2f 73 79 6d 66 6f 6e 79 2f 63 6f 6e 73 6f 6c 65 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 | /symfony/console/Symfony/Compone |
3800 | 6e 74 2f 43 6f 6e 73 6f 6c 65 2f 48 65 6c 70 65 72 2f 48 65 6c 70 65 72 2e 70 68 70 39 01 00 00 | nt/Console/Helper/Helper.php9... |
3820 | 9f 2c 18 50 39 01 00 00 8b fa a9 8a b6 01 00 00 00 00 00 00 39 00 00 00 76 65 6e 64 6f 72 2f 73 | .,.P9...............9...vendor/s |
3840 | 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f | ymfony/finder/Symfony/Component/ |
3860 | 46 69 6e 64 65 72 2f 46 69 6e 64 65 72 2e 70 68 70 3c 19 00 00 9f 2c 18 50 3c 19 00 00 1b d3 51 | Finder/Finder.php<....,.P<.....Q |
3880 | a1 b6 01 00 00 00 00 00 00 37 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 | .........7...vendor/symfony/find |
38a0 | 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 47 6c 6f 62 | er/Symfony/Component/Finder/Glob |
38c0 | 2e 70 68 70 0d 05 00 00 9f 2c 18 50 0d 05 00 00 7a 9d f8 0a b6 01 00 00 00 00 00 00 54 00 00 00 | .php.....,.P....z...........T... |
38e0 | 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f | vendor/symfony/finder/Symfony/Co |
3900 | 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 44 65 70 74 68 52 61 6e | mponent/Finder/Iterator/DepthRan |
3920 | 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 68 03 00 00 9f 2c 18 50 68 03 00 00 | geFilterIterator.phph....,.Ph... |
3940 | 9b 55 6f 1a b6 01 00 00 00 00 00 00 4c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 | .Uo.........L...vendor/symfony/f |
3960 | 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 | inder/Symfony/Component/Finder/I |
3980 | 74 65 72 61 74 6f 72 2f 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 2e 70 68 70 dc 05 00 00 | terator/SortableIterator.php.... |
39a0 | 9f 2c 18 50 dc 05 00 00 20 48 a0 3a b6 01 00 00 00 00 00 00 55 00 00 00 76 65 6e 64 6f 72 2f 73 | .,.P.....H.:........U...vendor/s |
39c0 | 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f | ymfony/finder/Symfony/Component/ |
39e0 | 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 | Finder/Iterator/FilecontentFilte |
3a00 | 72 49 74 65 72 61 74 6f 72 2e 70 68 70 23 03 00 00 9f 2c 18 50 23 03 00 00 da 5f 56 c7 b6 01 00 | rIterator.php#....,.P#...._V.... |
3a20 | 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 | .....S...vendor/symfony/finder/S |
3a40 | 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 | ymfony/Component/Finder/Iterator |
3a60 | 2f 53 69 7a 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 2d 02 00 00 | /SizeRangeFilterIterator.php-... |
3a80 | 9f 2c 18 50 2d 02 00 00 fc 36 51 1f b6 01 00 00 00 00 00 00 5a 00 00 00 76 65 6e 64 6f 72 2f 73 | .,.P-....6Q.........Z...vendor/s |
3aa0 | 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f | ymfony/finder/Symfony/Component/ |
3ac0 | 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 | Finder/Iterator/ExcludeDirectory |
3ae0 | 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 a6 02 00 00 9f 2c 18 50 a6 02 00 00 d3 40 | FilterIterator.php.....,.P.....@ |
3b00 | 31 de b6 01 00 00 00 00 00 00 56 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e | 1.........V...vendor/symfony/fin |
3b20 | 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 | der/Symfony/Component/Finder/Ite |
3b40 | 72 61 74 6f 72 2f 4d 75 6c 74 69 70 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 | rator/MultiplePcreFilterIterator |
3b60 | 2e 70 68 70 a8 03 00 00 9f 2c 18 50 a8 03 00 00 11 59 2d e6 b6 01 00 00 00 00 00 00 50 00 00 00 | .php.....,.P.....Y-.........P... |
3b80 | 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f | vendor/symfony/finder/Symfony/Co |
3ba0 | 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 43 75 73 74 6f 6d 46 69 | mponent/Finder/Iterator/CustomFi |
3bc0 | 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 5c 02 00 00 9f 2c 18 50 5c 02 00 00 49 ca 33 b2 | lterIterator.php\....,.P\...I.3. |
3be0 | b6 01 00 00 00 00 00 00 52 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 | ........R...vendor/symfony/finde |
3c00 | 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 | r/Symfony/Component/Finder/Itera |
3c20 | 74 6f 72 2f 46 69 6c 65 6e 61 6d 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 7a 02 | tor/FilenameFilterIterator.phpz. |
3c40 | 00 00 9f 2c 18 50 7a 02 00 00 57 6c 19 48 b6 01 00 00 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 | ...,.Pz...Wl.H........S...vendor |
3c60 | 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e | /symfony/finder/Symfony/Componen |
3c80 | 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 | t/Finder/Iterator/DateRangeFilte |
3ca0 | 72 49 74 65 72 61 74 6f 72 2e 70 68 70 2f 02 00 00 9f 2c 18 50 2f 02 00 00 d8 b4 1b 08 b6 01 00 | rIterator.php/....,.P/.......... |
3cc0 | 00 00 00 00 00 52 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 | .....R...vendor/symfony/finder/S |
3ce0 | 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 | ymfony/Component/Finder/Iterator |
3d00 | 2f 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 2e 70 68 70 5d 02 00 00 9f | /FileTypeFilterIterator.php].... |
3d20 | 2c 18 50 5d 02 00 00 fe c9 56 90 b6 01 00 00 00 00 00 00 56 00 00 00 76 65 6e 64 6f 72 2f 73 79 | ,.P].....V.........V...vendor/sy |
3d40 | 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 | mfony/finder/Symfony/Component/F |
3d60 | 69 6e 64 65 72 2f 49 74 65 72 61 74 6f 72 2f 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 | inder/Iterator/RecursiveDirector |
3d80 | 79 49 74 65 72 61 74 6f 72 2e 70 68 70 37 02 00 00 9f 2c 18 50 37 02 00 00 01 50 88 37 b6 01 00 | yIterator.php7....,.P7....P.7... |
3da0 | 00 00 00 00 00 4c 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 | .....L...vendor/symfony/finder/S |
3dc0 | 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 | ymfony/Component/Finder/Comparat |
3de0 | 6f 72 2f 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 26 03 00 00 9f 2c 18 50 26 03 00 | or/DateComparator.php&....,.P&.. |
3e00 | 00 e9 68 64 b1 b6 01 00 00 00 00 00 00 4e 00 00 00 76 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f | ..hd.........N...vendor/symfony/ |
3e20 | 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f | finder/Symfony/Component/Finder/ |
3e40 | 43 6f 6d 70 61 72 61 74 6f 72 2f 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 2e 70 68 70 79 | Comparator/NumberComparator.phpy |
3e60 | 03 00 00 9f 2c 18 50 79 03 00 00 22 60 14 db b6 01 00 00 00 00 00 00 48 00 00 00 76 65 6e 64 6f | ....,.Py..."`..........H...vendo |
3e80 | 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d 70 6f 6e 65 | r/symfony/finder/Symfony/Compone |
3ea0 | 6e 74 2f 46 69 6e 64 65 72 2f 43 6f 6d 70 61 72 61 74 6f 72 2f 43 6f 6d 70 61 72 61 74 6f 72 2e | nt/Finder/Comparator/Comparator. |
3ec0 | 70 68 70 88 03 00 00 9f 2c 18 50 88 03 00 00 3e 9a 5d 58 b6 01 00 00 00 00 00 00 3e 00 00 00 76 | php.....,.P....>.]X........>...v |
3ee0 | 65 6e 64 6f 72 2f 73 79 6d 66 6f 6e 79 2f 66 69 6e 64 65 72 2f 53 79 6d 66 6f 6e 79 2f 43 6f 6d | endor/symfony/finder/Symfony/Com |
3f00 | 70 6f 6e 65 6e 74 2f 46 69 6e 64 65 72 2f 53 70 6c 46 69 6c 65 49 6e 66 6f 2e 70 68 70 86 02 00 | ponent/Finder/SplFileInfo.php... |
3f20 | 00 9f 2c 18 50 86 02 00 00 82 26 47 c7 b6 01 00 00 00 00 00 00 34 00 00 00 76 65 6e 64 6f 72 2f | ..,.P.....&G.........4...vendor/ |
3f40 | 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f | seld/jsonlint/src/Seld/JsonLint/ |
3f60 | 55 6e 64 65 66 69 6e 65 64 2e 70 68 70 3e 00 00 00 9f 2c 18 50 3e 00 00 00 ff 71 9f 9f b6 01 00 | Undefined.php>....,.P>....q..... |
3f80 | 00 00 00 00 00 35 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 | .....5...vendor/seld/jsonlint/sr |
3fa0 | 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 4a 73 6f 6e 50 61 72 73 65 72 2e 70 68 70 83 26 | c/Seld/JsonLint/JsonParser.php.& |
3fc0 | 00 00 9f 2c 18 50 83 26 00 00 bb d0 e1 7e b6 01 00 00 00 00 00 00 30 00 00 00 76 65 6e 64 6f 72 | ...,.P.&.....~........0...vendor |
3fe0 | 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 | /seld/jsonlint/src/Seld/JsonLint |
4000 | 2f 4c 65 78 65 72 2e 70 68 70 91 10 00 00 9f 2c 18 50 91 10 00 00 38 49 09 44 b6 01 00 00 00 00 | /Lexer.php.....,.P....8I.D...... |
4020 | 00 00 3b 00 00 00 76 65 6e 64 6f 72 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 2f 53 | ..;...vendor/seld/jsonlint/src/S |
4040 | 65 6c 64 2f 4a 73 6f 6e 4c 69 6e 74 2f 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 2e 70 68 | eld/JsonLint/ParsingException.ph |
4060 | 70 1d 01 00 00 9f 2c 18 50 1d 01 00 00 fd bb 3a cb b6 01 00 00 00 00 00 00 49 00 00 00 76 65 6e | p.....,.P......:.........I...ven |
4080 | 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 | dor/justinrainbow/json-schema/sr |
40a0 | 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 55 6e 64 65 66 69 6e | c/JsonSchema/Constraints/Undefin |
40c0 | 65 64 2e 70 68 70 78 06 00 00 9f 2c 18 50 78 06 00 00 68 b7 d9 71 b6 01 00 00 00 00 00 00 44 00 | ed.phpx....,.Px...h..q........D. |
40e0 | 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 | ..vendor/justinrainbow/json-sche |
4100 | 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 54 79 | ma/src/JsonSchema/Constraints/Ty |
4120 | 70 65 2e 70 68 70 d4 05 00 00 9f 2c 18 50 d4 05 00 00 85 e9 2b 46 b6 01 00 00 00 00 00 00 46 00 | pe.php.....,.P......+F........F. |
4140 | 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 | ..vendor/justinrainbow/json-sche |
4160 | 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 53 63 | ma/src/JsonSchema/Constraints/Sc |
4180 | 68 65 6d 61 2e 70 68 70 d4 01 00 00 9f 2c 18 50 d4 01 00 00 b9 3a 66 4d b6 01 00 00 00 00 00 00 | hema.php.....,.P.....:fM........ |
41a0 | 46 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 | F...vendor/justinrainbow/json-sc |
41c0 | 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f | hema/src/JsonSchema/Constraints/ |
41e0 | 4e 75 6d 62 65 72 2e 70 68 70 57 02 00 00 9f 2c 18 50 57 02 00 00 2e 31 f2 e7 b6 01 00 00 00 00 | Number.phpW....,.PW....1........ |
4200 | 00 00 46 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d | ..F...vendor/justinrainbow/json- |
4220 | 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 | schema/src/JsonSchema/Constraint |
4240 | 73 2f 4f 62 6a 65 63 74 2e 70 68 70 94 07 00 00 9f 2c 18 50 94 07 00 00 63 e8 5a fb b6 01 00 00 | s/Object.php.....,.P....c.Z..... |
4260 | 00 00 00 00 53 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f | ....S...vendor/justinrainbow/jso |
4280 | 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 | n-schema/src/JsonSchema/Constrai |
42a0 | 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 2e 70 68 70 24 01 00 00 9f | nts/ConstraintInterface.php$.... |
42c0 | 2c 18 50 24 01 00 00 03 67 d6 ec b6 01 00 00 00 00 00 00 4a 00 00 00 76 65 6e 64 6f 72 2f 6a 75 | ,.P$....g..........J...vendor/ju |
42e0 | 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e | stinrainbow/json-schema/src/Json |
4300 | 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6e 73 74 72 61 69 6e 74 2e 70 68 | Schema/Constraints/Constraint.ph |
4320 | 70 15 0a 00 00 9f 2c 18 50 15 0a 00 00 3e 1d e3 18 b6 01 00 00 00 00 00 00 4a 00 00 00 76 65 6e | p.....,.P....>...........J...ven |
4340 | 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 | dor/justinrainbow/json-schema/sr |
4360 | 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 43 6f 6c 6c 65 63 74 | c/JsonSchema/Constraints/Collect |
4380 | 69 6f 6e 2e 70 68 70 56 08 00 00 9f 2c 18 50 56 08 00 00 dc 3c a7 b6 b6 01 00 00 00 00 00 00 44 | ion.phpV....,.PV....<..........D |
43a0 | 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 | ...vendor/justinrainbow/json-sch |
43c0 | 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 45 | ema/src/JsonSchema/Constraints/E |
43e0 | 6e 75 6d 2e 70 68 70 86 01 00 00 9f 2c 18 50 86 01 00 00 24 28 6d be b6 01 00 00 00 00 00 00 46 | num.php.....,.P....$(m.........F |
4400 | 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 | ...vendor/justinrainbow/json-sch |
4420 | 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 43 6f 6e 73 74 72 61 69 6e 74 73 2f 53 | ema/src/JsonSchema/Constraints/S |
4440 | 74 72 69 6e 67 2e 70 68 70 98 02 00 00 9f 2c 18 50 98 02 00 00 b4 f5 97 6b b6 01 00 00 00 00 00 | tring.php.....,.P.......k....... |
4460 | 00 3d 00 00 00 76 65 6e 64 6f 72 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 | .=...vendor/justinrainbow/json-s |
4480 | 63 68 65 6d 61 2f 73 72 63 2f 4a 73 6f 6e 53 63 68 65 6d 61 2f 56 61 6c 69 64 61 74 6f 72 2e 70 | chema/src/JsonSchema/Validator.p |
44a0 | 68 70 5b 01 00 00 9f 2c 18 50 5b 01 00 00 38 11 97 f6 b6 01 00 00 00 00 00 00 13 00 00 00 76 65 | hp[....,.P[...8...............ve |
44c0 | 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 1a 02 00 00 9f 2c 18 50 1a 02 00 00 9c b0 61 | ndor/autoload.php.....,.P......a |
44e0 | 5b b6 01 00 00 00 00 00 00 27 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f 61 75 74 | [........'...vendor/composer/aut |
4500 | 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 bb 01 00 00 9f 2c 18 50 bb 01 00 00 | oload_namespaces.php.....,.P.... |
4520 | 11 1f 28 c3 b6 01 00 00 00 00 00 00 25 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 2f | ..(.........%...vendor/composer/ |
4540 | 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 68 70 5a 00 00 00 9f 2c 18 50 5a 00 00 | autoload_classmap.phpZ....,.PZ.. |
4560 | 00 eb a6 e1 96 b6 01 00 00 00 00 00 00 1f 00 00 00 76 65 6e 64 6f 72 2f 63 6f 6d 70 6f 73 65 72 | .................vendor/composer |
4580 | 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 43 09 00 00 9f 2c 18 50 43 09 00 00 85 1c a0 e0 | /ClassLoader.phpC....,.PC....... |
45a0 | b6 01 00 00 00 00 00 00 0c 00 00 00 62 69 6e 2f 63 6f 6d 70 6f 73 65 72 01 01 00 00 9f 2c 18 50 | ............bin/composer.....,.P |
45c0 | 01 01 00 00 ef 0c 6f 68 b6 01 00 00 00 00 00 00 07 00 00 00 4c 49 43 45 4e 53 45 33 04 00 00 9f | ......oh............LICENSE3.... |
45e0 | 2c 18 50 33 04 00 00 0b 81 32 0b b6 01 00 00 00 00 00 00 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | ,.P3.....2.........<?php........ |
4600 | 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 24 66 69 | ....function.includeIfExists($fi |
4620 | 6c 65 29 0a 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 69 6c 65 29 29 20 7b 0a | le).{.if.(file_exists($file)).{. |
4640 | 72 65 74 75 72 6e 20 69 6e 63 6c 75 64 65 20 24 66 69 6c 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 28 | return.include.$file;.}.}..if.(( |
4660 | 21 24 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 5f 5f 44 49 52 | !$loader.=.includeIfExists(__DIR |
4680 | 5f 5f 2e 27 2f 2e 2e 2f 76 65 6e 64 6f 72 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 20 26 | __.'/../vendor/autoload.php')).& |
46a0 | 26 20 28 21 24 6c 6f 61 64 65 72 20 3d 20 69 6e 63 6c 75 64 65 49 66 45 78 69 73 74 73 28 5f 5f | &.(!$loader.=.includeIfExists(__ |
46c0 | 44 49 52 5f 5f 2e 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 61 75 74 6f 6c 6f 61 64 2e 70 68 70 27 29 29 | DIR__.'/../../../autoload.php')) |
46e0 | 29 20 7b 0a 64 69 65 28 27 59 6f 75 20 6d 75 73 74 20 73 65 74 20 75 70 20 74 68 65 20 70 72 6f | ).{.die('You.must.set.up.the.pro |
4700 | 6a 65 63 74 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2c 20 72 75 6e 20 74 68 65 20 66 6f 6c 6c 6f | ject.dependencies,.run.the.follo |
4720 | 77 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 3a 27 2e 50 48 50 5f 45 4f 4c 2e 0a 27 63 75 72 6c 20 2d | wing.commands:'.PHP_EOL..'curl.- |
4740 | 73 20 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 69 6e 73 74 61 6c 6c | s.http://getcomposer.org/install |
4760 | 65 72 20 7c 20 70 68 70 27 2e 50 48 50 5f 45 4f 4c 2e 0a 27 70 68 70 20 63 6f 6d 70 6f 73 65 72 | er.|.php'.PHP_EOL..'php.composer |
4780 | 2e 70 68 61 72 20 69 6e 73 74 61 6c 6c 27 2e 50 48 50 5f 45 4f 4c 29 3b 0a 7d 0a 0a 72 65 74 75 | .phar.install'.PHP_EOL);.}..retu |
47a0 | 72 6e 20 24 6c 6f 61 64 65 72 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | rn.$loader;.<?php............nam |
47c0 | 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 | espace.Composer\IO;..use.Symfony |
47e0 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e | \Component\Console\Input\InputIn |
4800 | 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 | terface;.use.Symfony\Component\C |
4820 | 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 | onsole\Output\OutputInterface;.u |
4840 | 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c | se.Symfony\Component\Console\Hel |
4860 | 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 | per\HelperSet;........class.Cons |
4880 | 6f 6c 65 49 4f 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 4f 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 | oleIO.implements.IOInterface.{.p |
48a0 | 72 6f 74 65 63 74 65 64 20 24 69 6e 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 75 74 70 | rotected.$input;.protected.$outp |
48c0 | 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 70 72 6f 74 65 63 | ut;.protected.$helperSet;.protec |
48e0 | 74 65 64 20 24 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 | ted.$authorizations.=.array();.p |
4900 | 72 6f 74 65 63 74 65 64 20 24 6c 61 73 74 4d 65 73 73 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | rotected.$lastMessage;.........p |
4920 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 6e 70 75 74 | ublic.function.__construct(Input |
4940 | 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 | Interface.$input,.OutputInterfac |
4960 | 65 20 24 6f 75 74 70 75 74 2c 20 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 29 | e.$output,.HelperSet.$helperSet) |
4980 | 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d | .{.$this->input.=.$input;.$this- |
49a0 | 3e 6f 75 74 70 75 74 20 3d 20 24 6f 75 74 70 75 74 3b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 | >output.=.$output;.$this->helper |
49c0 | 53 65 74 20 3d 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | Set.=.$helperSet;.}.....public.f |
49e0 | 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e | unction.isInteractive().{.return |
4a00 | 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 3b 0a | .$this->input->isInteractive();. |
4a20 | 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 | }.....public.function.isDecorate |
4a40 | 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 69 73 44 65 | d().{.return.$this->output->isDe |
4a60 | 63 6f 72 61 74 65 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | corated();.}.....public.function |
4a80 | 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 24 74 68 | .isVerbose().{.return.(bool).$th |
4aa0 | 69 73 2d 3e 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 3b | is->input->getOption('verbose'); |
4ac0 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 | .}.....public.function.write($me |
4ae0 | 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 | ssages,.$newline.=.true).{.$this |
4b00 | 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c | ->output->write($messages,.$newl |
4b20 | 69 6e 65 29 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 20 3d 20 6a 6f 69 6e 28 | ine);.$this->lastMessage.=.join( |
4b40 | 24 6e 65 77 6c 69 6e 65 20 3f 20 22 5c 6e 22 20 3a 20 27 27 2c 20 28 61 72 72 61 79 29 20 24 6d | $newline.?."\n".:.'',.(array).$m |
4b60 | 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | essages);.}.....public.function. |
4b80 | 6f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 | overwrite($messages,.$newline.=. |
4ba0 | 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 24 6d 65 73 73 61 67 65 | true,.$size.=.null).{...$message |
4bc0 | 73 20 3d 20 6a 6f 69 6e 28 24 6e 65 77 6c 69 6e 65 20 3f 20 22 5c 6e 22 20 3a 20 27 27 2c 20 28 | s.=.join($newline.?."\n".:.'',.( |
4be0 | 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 | array).$messages);....if.(!isset |
4c00 | 28 24 73 69 7a 65 29 29 20 7b 0a 0a 20 24 73 69 7a 65 20 3d 20 73 74 72 6c 65 6e 28 73 74 72 69 | ($size)).{...$size.=.strlen(stri |
4c20 | 70 5f 74 61 67 73 28 24 74 68 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 29 29 3b 0a 7d 0a 0a | p_tags($this->lastMessage));.}.. |
4c40 | 20 24 74 68 69 73 2d 3e 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c 78 30 38 22 2c | .$this->write(str_repeat("\x08", |
4c60 | 20 24 73 69 7a 65 29 2c 20 66 61 6c 73 65 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 77 72 69 74 65 | .$size),.false);....$this->write |
4c80 | 28 24 6d 65 73 73 61 67 65 73 2c 20 66 61 6c 73 65 29 3b 0a 0a 24 66 69 6c 6c 20 3d 20 24 73 69 | ($messages,.false);..$fill.=.$si |
4ca0 | 7a 65 20 2d 20 73 74 72 6c 65 6e 28 73 74 72 69 70 5f 74 61 67 73 28 24 6d 65 73 73 61 67 65 73 | ze.-.strlen(strip_tags($messages |
4cc0 | 29 29 3b 0a 69 66 20 28 24 66 69 6c 6c 20 3e 20 30 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 77 72 | ));.if.($fill.>.0).{...$this->wr |
4ce0 | 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 66 69 6c 6c 29 2c 20 66 61 6c 73 | ite(str_repeat('.',.$fill),.fals |
4d00 | 65 29 3b 0a 0a 20 24 74 68 69 73 2d 3e 77 72 69 74 65 28 73 74 72 5f 72 65 70 65 61 74 28 22 5c | e);...$this->write(str_repeat("\ |
4d20 | 78 30 38 22 2c 20 24 66 69 6c 6c 29 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 6e 65 | x08",.$fill),.false);.}..if.($ne |
4d40 | 77 6c 69 6e 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 24 74 68 | wline).{.$this->write('');.}.$th |
4d60 | 69 73 2d 3e 6c 61 73 74 4d 65 73 73 61 67 65 20 3d 20 24 6d 65 73 73 61 67 65 73 3b 0a 7d 0a 0a | is->lastMessage.=.$messages;.}.. |
4d80 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 73 74 69 6f 6e | ...public.function.ask($question |
4da0 | 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | ,.$default.=.null).{.return.$thi |
4dc0 | 73 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 2d 3e 61 73 6b | s->helperSet->get('dialog')->ask |
4de0 | 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 | ($this->output,.$question,.$defa |
4e00 | 75 6c 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 | ult);.}.....public.function.askC |
4e20 | 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 | onfirmation($question,.$default. |
4e40 | 3d 20 74 72 75 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 | =.true).{.return.$this->helperSe |
4e60 | 74 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f | t->get('dialog')->askConfirmatio |
4e80 | 6e 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 | n($this->output,.$question,.$def |
4ea0 | 61 75 6c 74 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b | ault);.}.....public.function.ask |
4ec0 | 41 6e 64 56 61 6c 69 64 61 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f | AndValidate($question,.$validato |
4ee0 | 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 64 65 66 61 75 6c 74 20 3d | r,.$attempts.=.false,.$default.= |
4f00 | 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 | .null).{.return.$this->helperSet |
4f20 | 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 | ->get('dialog')->askAndValidate( |
4f40 | 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 | $this->output,.$question,.$valid |
4f60 | 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a 0a 0a | ator,.$attempts,.$default);.}... |
4f80 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 | ..public.function.askAndHideAnsw |
4fa0 | 65 72 28 24 71 75 65 73 74 69 6f 6e 29 0a 7b 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 | er($question).{...if.(defined('P |
4fc0 | 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 65 | HP_WINDOWS_VERSION_BUILD')).{.$e |
4fe0 | 78 65 20 3d 20 5f 5f 44 49 52 5f 5f 2e 27 5c 5c 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 | xe.=.__DIR__.'\\hiddeninput.exe' |
5000 | 3b 0a 0a 0a 20 69 66 20 28 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 5f 5f 46 49 | ;....if.('phar:'.===.substr(__FI |
5020 | 4c 45 5f 5f 2c 20 30 2c 20 35 29 29 20 7b 0a 24 74 6d 70 45 78 65 20 3d 20 73 79 73 5f 67 65 74 | LE__,.0,.5)).{.$tmpExe.=.sys_get |
5040 | 5f 74 65 6d 70 5f 64 69 72 28 29 2e 27 2f 68 69 64 64 65 6e 69 6e 70 75 74 2e 65 78 65 27 3b 0a | _temp_dir().'/hiddeninput.exe';. |
5060 | 63 6f 70 79 28 24 65 78 65 2c 20 24 74 6d 70 45 78 65 29 3b 0a 24 65 78 65 20 3d 20 24 74 6d 70 | copy($exe,.$tmpExe);.$exe.=.$tmp |
5080 | 45 78 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 | Exe;.}..$this->write($question,. |
50a0 | 66 61 6c 73 65 29 3b 0a 24 76 61 6c 75 65 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 | false);.$value.=.rtrim(shell_exe |
50c0 | 63 28 24 65 78 65 29 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 0a 0a 20 69 | c($exe));.$this->write('');....i |
50e0 | 66 20 28 69 73 73 65 74 28 24 74 6d 70 45 78 65 29 29 20 7b 0a 75 6e 6c 69 6e 6b 28 24 74 6d 70 | f.(isset($tmpExe)).{.unlink($tmp |
5100 | 45 78 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 | Exe);.}..return.$value;.}..if.(f |
5120 | 69 6c 65 5f 65 78 69 73 74 73 28 27 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 27 29 29 20 7b 0a 0a 20 | ile_exists('/usr/bin/env')).{... |
5140 | 24 74 65 73 74 20 3d 20 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d 63 20 27 65 63 68 | $test.=."/usr/bin/env.%s.-c.'ech |
5160 | 6f 20 4f 4b 27 20 32 3e 20 2f 64 65 76 2f 6e 75 6c 6c 22 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 | o.OK'.2>./dev/null";.foreach.(ar |
5180 | 72 61 79 28 27 62 61 73 68 27 2c 20 27 7a 73 68 27 2c 20 27 6b 73 68 27 2c 20 27 63 73 68 27 29 | ray('bash',.'zsh',.'ksh',.'csh') |
51a0 | 20 61 73 20 24 73 68 29 20 7b 0a 69 66 20 28 27 4f 4b 27 20 3d 3d 3d 20 72 74 72 69 6d 28 73 68 | .as.$sh).{.if.('OK'.===.rtrim(sh |
51c0 | 65 6c 6c 5f 65 78 65 63 28 73 70 72 69 6e 74 66 28 24 74 65 73 74 2c 20 24 73 68 29 29 29 29 20 | ell_exec(sprintf($test,.$sh)))). |
51e0 | 7b 0a 24 73 68 65 6c 6c 20 3d 20 24 73 68 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 69 66 20 28 69 | {.$shell.=.$sh;.break;.}.}.if.(i |
5200 | 73 73 65 74 28 24 73 68 65 6c 6c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 71 75 | sset($shell)).{.$this->write($qu |
5220 | 65 73 74 69 6f 6e 2c 20 66 61 6c 73 65 29 3b 0a 24 72 65 61 64 43 6d 64 20 3d 20 28 24 73 68 65 | estion,.false);.$readCmd.=.($she |
5240 | 6c 6c 20 3d 3d 3d 20 27 63 73 68 27 29 20 3f 20 27 73 65 74 20 6d 79 70 61 73 73 77 6f 72 64 20 | ll.===.'csh').?.'set.mypassword. |
5260 | 3d 20 24 3c 27 20 3a 20 27 72 65 61 64 20 6d 79 70 61 73 73 77 6f 72 64 27 3b 0a 24 63 6f 6d 6d | =.$<'.:.'read.mypassword';.$comm |
5280 | 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 22 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 25 73 20 2d | and.=.sprintf("/usr/bin/env.%s.- |
52a0 | 63 20 27 73 74 74 79 20 2d 65 63 68 6f 3b 20 25 73 3b 20 73 74 74 79 20 65 63 68 6f 3b 20 65 63 | c.'stty.-echo;.%s;.stty.echo;.ec |
52c0 | 68 6f 20 5c 24 6d 79 70 61 73 73 77 6f 72 64 27 22 2c 20 24 73 68 65 6c 6c 2c 20 24 72 65 61 64 | ho.\$mypassword'",.$shell,.$read |
52e0 | 43 6d 64 29 3b 0a 24 76 61 6c 75 65 20 3d 20 72 74 72 69 6d 28 73 68 65 6c 6c 5f 65 78 65 63 28 | Cmd);.$value.=.rtrim(shell_exec( |
5300 | 24 63 6f 6d 6d 61 6e 64 29 29 3b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 0a 72 | $command));.$this->write('');..r |
5320 | 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 | eturn.$value;.}.}....return.$thi |
5340 | 73 2d 3e 61 73 6b 28 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | s->ask($question);.}.....public. |
5360 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 28 29 0a 7b 0a 72 | function.getAuthorizations().{.r |
5380 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 3b 0a 7d 0a 0a | eturn.$this->authorizations;.}.. |
53a0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 6f 72 69 7a 61 74 | ...public.function.hasAuthorizat |
53c0 | 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 0a 7b 0a 24 61 75 74 68 73 20 3d 20 | ion($repositoryName).{.$auths.=. |
53e0 | 24 74 68 69 73 2d 3e 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 28 29 3b 0a 0a 72 65 74 | $this->getAuthorizations();..ret |
5400 | 75 72 6e 20 69 73 73 65 74 28 24 61 75 74 68 73 5b 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 | urn.isset($auths[$repositoryName |
5420 | 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 | ]);.}.....public.function.getAut |
5440 | 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 0a 7b 0a 24 61 | horization($repositoryName).{.$a |
5460 | 75 74 68 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 28 | uths.=.$this->getAuthorizations( |
5480 | 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 61 75 74 68 73 5b 24 72 65 70 6f 73 69 74 | );..return.isset($auths[$reposit |
54a0 | 6f 72 79 4e 61 6d 65 5d 29 20 3f 20 24 61 75 74 68 73 5b 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 | oryName]).?.$auths[$repositoryNa |
54c0 | 6d 65 5d 20 3a 20 61 72 72 61 79 28 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 6e 75 6c 6c 2c 20 | me].:.array('username'.=>.null,. |
54e0 | 27 70 61 73 73 77 6f 72 64 27 20 3d 3e 20 6e 75 6c 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | 'password'.=>.null);.}.....publi |
5500 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 | c.function.setAuthorization($rep |
5520 | 6f 73 69 74 6f 72 79 4e 61 6d 65 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 | ositoryName,.$username,.$passwor |
5540 | 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e | d.=.null).{.$this->authorization |
5560 | 73 5b 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 27 75 73 65 72 | s[$repositoryName].=.array('user |
5580 | 6e 61 6d 65 27 20 3d 3e 20 24 75 73 65 72 6e 61 6d 65 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d | name'.=>.$username,.'password'.= |
55a0 | 3e 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | >.$password);.}.}.<?php......... |
55c0 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 3b 0a 0a 0a 0a 0a 0a 0a | ...namespace.Composer\IO;....... |
55e0 | 63 6c 61 73 73 20 4e 75 6c 6c 49 4f 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 4f 49 6e 74 65 72 66 | class.NullIO.implements.IOInterf |
5600 | 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 | ace.{....public.function.isInter |
5620 | 61 63 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 | active().{.return.false;.}.....p |
5640 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 0a 7b 0a 72 65 74 | ublic.function.isVerbose().{.ret |
5660 | 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | urn.false;.}.....public.function |
5680 | 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d | .isDecorated().{.return.false;.} |
56a0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 | .....public.function.write($mess |
56c0 | 61 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 | ages,.$newline.=.true).{.}.....p |
56e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 | ublic.function.overwrite($messag |
5700 | 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 38 30 29 | es,.$newline.=.true,.$size.=.80) |
5720 | 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 | .{.}.....public.function.ask($qu |
5740 | 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 | estion,.$default.=.null).{.retur |
5760 | 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | n.$default;.}.....public.functio |
5780 | 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 | n.askConfirmation($question,.$de |
57a0 | 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b | fault.=.true).{.return.$default; |
57c0 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 56 61 6c | .}.....public.function.askAndVal |
57e0 | 69 64 61 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 74 | idate($question,.$validator,.$at |
5800 | 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 | tempts.=.false,.$default.=.null) |
5820 | 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | .{.return.$default;.}.....public |
5840 | 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 24 71 75 65 73 | .function.askAndHideAnswer($ques |
5860 | 74 69 6f 6e 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | tion).{.return.null;.}.....publi |
5880 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 73 28 29 0a 7b | c.function.getAuthorizations().{ |
58a0 | 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | .return.array();.}.....public.fu |
58c0 | 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 | nction.hasAuthorization($reposit |
58e0 | 6f 72 79 4e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 | oryName).{.return.false;.}.....p |
5900 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 | ublic.function.getAuthorization( |
5920 | 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 | $repositoryName).{.return.array( |
5940 | 27 75 73 65 72 6e 61 6d 65 27 20 3d 3e 20 6e 75 6c 6c 2c 20 27 70 61 73 73 77 6f 72 64 27 20 3d | 'username'.=>.null,.'password'.= |
5960 | 3e 20 6e 75 6c 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | >.null);.}.....public.function.s |
5980 | 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 2c | etAuthorization($repositoryName, |
59a0 | 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | .$username,.$password.=.null).{. |
59c0 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 | }.}.<?php............namespace.C |
59e0 | 6f 6d 70 6f 73 65 72 5c 49 4f 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 4f 49 6e | omposer\IO;.......interface.IOIn |
5a00 | 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 | terface.{......public.function.i |
5a20 | 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | sInteractive();.......public.fun |
5a40 | 63 74 69 6f 6e 20 69 73 56 65 72 62 6f 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ction.isVerbose();.......public. |
5a60 | 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 | function.isDecorated();........p |
5a80 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 | ublic.function.write($messages,. |
5aa0 | 24 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | $newline.=.true);.........public |
5ac0 | 20 66 75 6e 63 74 69 6f 6e 20 6f 76 65 72 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 2c 20 24 | .function.overwrite($messages,.$ |
5ae0 | 6e 65 77 6c 69 6e 65 20 3d 20 74 72 75 65 2c 20 24 73 69 7a 65 20 3d 20 38 30 29 3b 0a 0a 0a 0a | newline.=.true,.$size.=.80);.... |
5b00 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 24 71 75 65 | ........public.function.ask($que |
5b20 | 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a | stion,.$default.=.null);........ |
5b40 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 | ....public.function.askConfirmat |
5b60 | 69 6f 6e 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 3b | ion($question,.$default.=.true); |
5b80 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | ..................public.functio |
5ba0 | 6e 20 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c | n.askAndValidate($question,.$val |
5bc0 | 69 64 61 74 6f 72 2c 20 24 61 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 64 65 66 61 | idator,.$attempts.=.false,.$defa |
5be0 | 75 6c 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ult.=.null);.........public.func |
5c00 | 74 69 6f 6e 20 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 24 71 75 65 73 74 69 6f 6e 29 | tion.askAndHideAnswer($question) |
5c20 | 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f | ;.......public.function.getAutho |
5c40 | 72 69 7a 61 74 69 6f 6e 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | rizations();.........public.func |
5c60 | 74 69 6f 6e 20 68 61 73 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 | tion.hasAuthorization($repositor |
5c80 | 79 4e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | yName);.........public.function. |
5ca0 | 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 | getAuthorization($repositoryName |
5cc0 | 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 | );.........public.function.setAu |
5ce0 | 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 72 65 70 6f 73 69 74 6f 72 79 4e 61 6d 65 2c 20 24 75 73 | thorization($repositoryName,.$us |
5d00 | 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 20 3d 20 6e 75 6c 6c 29 3b 0a 7d 0a 3c 3f 70 | ername,.$password.=.null);.}.<?p |
5d20 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
5d40 | 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 | \Command;..use.Composer\Composer |
5d60 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 | ;.use.Composer\Console\Applicati |
5d80 | 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b | on;.use.Composer\IO\IOInterface; |
5da0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 4e 75 6c 6c 49 4f 3b 0a 75 73 65 20 53 79 6d | .use.Composer\IO\NullIO;.use.Sym |
5dc0 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 | fony\Component\Console\Command\C |
5de0 | 6f 6d 6d 61 6e 64 20 61 73 20 42 61 73 65 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 61 62 | ommand.as.BaseCommand;........ab |
5e00 | 73 74 72 61 63 74 20 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 42 61 73 | stract.class.Command.extends.Bas |
5e20 | 65 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 6f 73 65 72 3b | eCommand.{....private.$composer; |
5e40 | 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | .....private.$io;......public.fu |
5e60 | 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 28 24 72 65 71 75 69 72 65 64 20 3d 20 74 | nction.getComposer($required.=.t |
5e80 | 72 75 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f | rue).{.if.(null.===.$this->compo |
5ea0 | 73 65 72 29 20 7b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 | ser).{.$application.=.$this->get |
5ec0 | 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 | Application();.if.($application. |
5ee0 | 69 6e 73 74 61 6e 63 65 6f 66 20 41 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 0a 24 74 68 69 73 | instanceof.Application).{..$this |
5f00 | 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 43 6f | ->composer.=.$application->getCo |
5f20 | 6d 70 6f 73 65 72 28 24 72 65 71 75 69 72 65 64 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 65 | mposer($required);.}.elseif.($re |
5f40 | 71 75 69 72 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 | quired).{.throw.new.\RuntimeExce |
5f60 | 70 74 69 6f 6e 28 0a 27 43 6f 75 6c 64 20 6e 6f 74 20 63 72 65 61 74 65 20 61 20 43 6f 6d 70 6f | ption(.'Could.not.create.a.Compo |
5f80 | 73 65 72 5c 43 6f 6d 70 6f 73 65 72 20 69 6e 73 74 61 6e 63 65 2c 20 79 6f 75 20 6d 75 73 74 20 | ser\Composer.instance,.you.must. |
5fa0 | 69 6e 6a 65 63 74 20 27 2e 0a 27 6f 6e 65 20 69 66 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 69 | inject.'..'one.if.this.command.i |
5fc0 | 73 20 6e 6f 74 20 75 73 65 64 20 77 69 74 68 20 61 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f | s.not.used.with.a.Composer\Conso |
5fe0 | 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 20 69 6e 73 74 61 6e 63 65 27 0a 29 3b 0a 7d 0a 7d 0a | le\Application.instance'.);.}.}. |
6000 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 | .return.$this->composer;.}.....p |
6020 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 70 6f 73 65 72 28 43 6f 6d 70 6f | ublic.function.setComposer(Compo |
6040 | 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 | ser.$composer).{.$this->composer |
6060 | 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | .=.$composer;.}.....public.funct |
6080 | 69 6f 6e 20 67 65 74 49 4f 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 | ion.getIO().{.if.(null.===.$this |
60a0 | 2d 3e 69 6f 29 20 7b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 | ->io).{.$application.=.$this->ge |
60c0 | 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 69 66 20 28 24 61 70 70 6c 69 63 61 74 69 6f 6e | tApplication();.if.($application |
60e0 | 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 0a 24 74 68 69 | .instanceof.Application).{..$thi |
6100 | 73 2d 3e 69 6f 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 49 4f 28 29 3b 0a 7d | s->io.=.$application->getIO();.} |
6120 | 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 6e 65 77 20 4e 75 6c 6c 49 4f 28 29 | .else.{.$this->io.=.new.NullIO() |
6140 | 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 | ;.}.}..return.$this->io;.}.....p |
6160 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 4f 28 49 4f 49 6e 74 65 72 66 61 63 65 | ublic.function.setIO(IOInterface |
6180 | 20 24 69 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 7d 0a 3c 3f 70 | .$io).{.$this->io.=.$io;.}.}.<?p |
61a0 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
61c0 | 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b | \Command;..use.Composer\Factory; |
61e0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d | .use.Composer\Installer;.use.Com |
6200 | 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 | poser\Installer\ProjectInstaller |
6220 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 | ;.use.Composer\IO\IOInterface;.u |
6240 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 65 72 52 | se.Composer\Repository\ComposerR |
6260 | 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f | epository;.use.Composer\Reposito |
6280 | 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 | ry\CompositeRepository;.use.Comp |
62a0 | 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 | oser\Repository\FilesystemReposi |
62c0 | 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 4e 6f | tory;.use.Composer\Repository\No |
62e0 | 74 69 66 69 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 | tifiableRepositoryInterface;.use |
6300 | 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 69 | .Composer\Repository\InstalledFi |
6320 | 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c | lesystemRepository;.use.Symfony\ |
6340 | 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 | Component\Console\Input\InputArg |
6360 | 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e | ument;.use.Symfony\Component\Con |
6380 | 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 | sole\Input\InputInterface;.use.S |
63a0 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 | ymfony\Component\Console\Input\I |
63c0 | 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e | nputOption;.use.Symfony\Componen |
63e0 | 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 | t\Console\Output\OutputInterface |
6400 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 | ;.use.Composer\Json\JsonFile;.us |
6420 | 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d | e.Composer\Util\RemoteFilesystem |
6440 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 | ;.use.Composer\Package\Version\V |
6460 | 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 72 65 61 74 65 | ersionParser;.......class.Create |
6480 | 50 72 6f 6a 65 63 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b | ProjectCommand.extends.Command.{ |
64a0 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a | .protected.function.configure(). |
64c0 | 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 | {.$this.->setName('create-projec |
64e0 | 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 72 65 61 74 65 20 6e 65 77 | t').->setDescription('Create.new |
6500 | 20 70 72 6f 6a 65 63 74 20 66 72 6f 6d 20 61 20 70 61 63 6b 61 67 65 20 69 6e 74 6f 20 67 69 76 | .project.from.a.package.into.giv |
6520 | 65 6e 20 64 69 72 65 63 74 6f 72 79 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 | en.directory.').->setDefinition( |
6540 | 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 | array(.new.InputArgument('packag |
6560 | 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 50 61 | e',.InputArgument::REQUIRED,.'Pa |
6580 | 63 6b 61 67 65 20 6e 61 6d 65 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 27 29 2c 0a 6e 65 | ckage.name.to.be.installed'),.ne |
65a0 | 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 64 69 72 65 63 74 6f 72 79 27 2c 20 49 6e 70 | w.InputArgument('directory',.Inp |
65c0 | 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 44 69 72 65 63 74 6f 72 79 | utArgument::OPTIONAL,.'Directory |
65e0 | 20 77 68 65 72 65 20 74 68 65 20 66 69 6c 65 73 20 73 68 6f 75 6c 64 20 62 65 20 63 72 65 61 74 | .where.the.files.should.be.creat |
6600 | 65 64 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e | ed'),.new.InputArgument('version |
6620 | 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 56 65 72 | ',.InputArgument::OPTIONAL,.'Ver |
6640 | 73 69 6f 6e 2c 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 6c 61 74 65 73 74 27 29 2c | sion,.will.defaults.to.latest'), |
6660 | 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 | .new.InputOption('prefer-source' |
6680 | 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c | ,.null,.InputOption::VALUE_NONE, |
66a0 | 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 | .'Forces.installation.from.packa |
66c0 | 67 65 20 73 6f 75 72 63 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 | ge.sources.when.possible,.includ |
66e0 | 69 6e 67 20 56 43 53 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 | ing.VCS.information.'),.new.Inpu |
6700 | 74 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 2d 75 72 6c 27 2c 20 6e 75 6c 6c 2c 20 | tOption('repository-url',.null,. |
6720 | 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 50 69 | InputOption::VALUE_REQUIRED,.'Pi |
6740 | 63 6b 20 61 20 64 69 66 66 65 72 65 6e 74 20 72 65 70 6f 73 69 74 6f 72 79 20 75 72 6c 20 74 6f | ck.a.different.repository.url.to |
6760 | 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 70 61 63 6b 61 67 65 2e 27 29 2c 0a 6e 65 77 20 49 6e | .look.for.the.package.'),.new.In |
6780 | 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 | putOption('dev',.null,.InputOpti |
67a0 | 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 57 68 65 74 68 65 72 20 74 6f 20 69 6e 73 74 | on::VALUE_NONE,.'Whether.to.inst |
67c0 | 61 6c 6c 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 | all.dependencies.for.development |
67e0 | 2e 27 29 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 | .').)).->setHelp(<<<EOT.The.<inf |
6800 | 6f 3e 63 72 65 61 74 65 2d 70 72 6f 6a 65 63 74 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 | o>create-project</info>.command. |
6820 | 63 72 65 61 74 65 73 20 61 20 6e 65 77 20 70 72 6f 6a 65 63 74 20 66 72 6f 6d 20 61 20 67 69 76 | creates.a.new.project.from.a.giv |
6840 | 65 6e 0a 70 61 63 6b 61 67 65 20 69 6e 74 6f 20 61 20 6e 65 77 20 64 69 72 65 63 74 6f 72 79 2e | en.package.into.a.new.directory. |
6860 | 20 59 6f 75 20 63 61 6e 20 75 73 65 20 74 68 69 73 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 6f 6f | .You.can.use.this.command.to.boo |
6880 | 74 73 74 72 61 70 20 6e 65 77 0a 70 72 6f 6a 65 63 74 73 20 6f 72 20 73 65 74 75 70 20 61 20 63 | tstrap.new.projects.or.setup.a.c |
68a0 | 6c 65 61 6e 20 76 65 72 73 69 6f 6e 2d 63 6f 6e 74 72 6f 6c 6c 65 64 20 69 6e 73 74 61 6c 6c 61 | lean.version-controlled.installa |
68c0 | 74 69 6f 6e 0a 66 6f 72 20 64 65 76 65 6c 6f 70 65 72 73 20 6f 66 20 79 6f 75 72 20 70 72 6f 6a | tion.for.developers.of.your.proj |
68e0 | 65 63 74 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 63 72 | ect...<info>php.composer.phar.cr |
6900 | 65 61 74 65 2d 70 72 6f 6a 65 63 74 20 76 65 6e 64 6f 72 2f 70 72 6f 6a 65 63 74 20 74 61 72 67 | eate-project.vendor/project.targ |
6920 | 65 74 2d 64 69 72 65 63 74 6f 72 79 20 5b 76 65 72 73 69 6f 6e 5d 3c 2f 69 6e 66 6f 3e 0a 0a 54 | et-directory.[version]</info>..T |
6940 | 6f 20 73 65 74 75 70 20 61 20 64 65 76 65 6c 6f 70 65 72 20 77 6f 72 6b 61 62 6c 65 20 76 65 72 | o.setup.a.developer.workable.ver |
6960 | 73 69 6f 6e 20 79 6f 75 20 73 68 6f 75 6c 64 20 63 72 65 61 74 65 20 74 68 65 20 70 72 6f 6a 65 | sion.you.should.create.the.proje |
6980 | 63 74 20 75 73 69 6e 67 20 74 68 65 20 73 6f 75 72 63 65 0a 63 6f 6e 74 72 6f 6c 6c 65 64 20 63 | ct.using.the.source.controlled.c |
69a0 | 6f 64 65 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 70 72 | ode.by.appending.the.<info>'--pr |
69c0 | 65 66 65 72 2d 73 6f 75 72 63 65 27 3c 2f 69 6e 66 6f 3e 20 66 6c 61 67 2e 20 41 6c 73 6f 2c 20 | efer-source'</info>.flag..Also,. |
69e0 | 69 74 20 69 73 0a 61 64 76 69 73 61 62 6c 65 20 74 6f 20 69 6e 73 74 61 6c 6c 20 61 6c 6c 20 64 | it.is.advisable.to.install.all.d |
6a00 | 65 70 65 6e 64 65 6e 63 69 65 73 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 64 65 76 65 6c 6f 70 | ependencies.required.for.develop |
6a20 | 6d 65 6e 74 20 62 79 20 61 70 70 65 6e 64 69 6e 67 20 74 68 65 0a 3c 69 6e 66 6f 3e 27 2d 2d 64 | ment.by.appending.the.<info>'--d |
6a40 | 65 76 27 3c 2f 69 6e 66 6f 3e 20 66 6c 61 67 2e 0a 0a 54 6f 20 69 6e 73 74 61 6c 6c 20 61 20 70 | ev'</info>.flag...To.install.a.p |
6a60 | 61 63 6b 61 67 65 20 66 72 6f 6d 20 61 6e 6f 74 68 65 72 20 72 65 70 6f 73 69 74 6f 72 79 20 72 | ackage.from.another.repository.r |
6a80 | 65 70 6f 73 69 74 6f 72 79 20 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 6f 6e 65 20 79 | epository.than.the.default.one.y |
6aa0 | 6f 75 0a 63 61 6e 20 70 61 73 73 20 74 68 65 20 3c 69 6e 66 6f 3e 27 2d 2d 72 65 70 6f 73 69 74 | ou.can.pass.the.<info>'--reposit |
6ac0 | 6f 72 79 2d 75 72 6c 3d 68 74 74 70 3a 2f 2f 6d 79 72 65 70 6f 73 69 74 6f 72 79 2e 6f 72 67 27 | ory-url=http://myrepository.org' |
6ae0 | 3c 2f 69 6e 66 6f 3e 20 66 6c 61 67 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 | </info>.flag...EOT.).;.}..protec |
6b00 | 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 | ted.function.execute(InputInterf |
6b20 | 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 | ace.$input,.OutputInterface.$out |
6b40 | 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 72 6f 6a | put).{.return.$this->installProj |
6b60 | 65 63 74 28 0a 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 | ect(.$this->getIO(),.$input->get |
6b80 | 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 | Argument('package'),.$input->get |
6ba0 | 41 72 67 75 6d 65 6e 74 28 27 64 69 72 65 63 74 6f 72 79 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 | Argument('directory'),.$input->g |
6bc0 | 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 | etArgument('version'),.$input->g |
6be0 | 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 2c 0a 24 69 6e 70 75 | etOption('prefer-source'),.$inpu |
6c00 | 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 2c 0a 24 69 6e 70 75 74 2d 3e 67 65 74 | t->getOption('dev'),.$input->get |
6c20 | 4f 70 74 69 6f 6e 28 27 72 65 70 6f 73 69 74 6f 72 79 2d 75 72 6c 27 29 0a 29 3b 0a 7d 0a 0a 70 | Option('repository-url').);.}..p |
6c40 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 50 72 6f 6a 65 63 74 28 49 4f | ublic.function.installProject(IO |
6c60 | 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 64 69 | Interface.$io,.$packageName,.$di |
6c80 | 72 65 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 2c | rectory.=.null,.$version.=.null, |
6ca0 | 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 2c 20 24 69 6e 73 74 61 6c 6c | .$preferSource.=.false,.$install |
6cc0 | 44 65 76 50 61 63 6b 61 67 65 73 20 3d 20 66 61 6c 73 65 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 | DevPackages.=.false,.$repository |
6ce0 | 55 72 6c 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 64 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 | Url.=.null).{.$dm.=.$this->creat |
6d00 | 65 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 24 69 6f 29 3b 0a 69 66 20 28 24 70 72 65 66 | eDownloadManager($io);.if.($pref |
6d20 | 65 72 53 6f 75 72 63 65 29 20 7b 0a 24 64 6d 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 | erSource).{.$dm->setPreferSource |
6d40 | 28 74 72 75 65 29 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 | (true);.}..$config.=.Factory::cr |
6d60 | 65 61 74 65 43 6f 6e 66 69 67 28 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 70 6f | eateConfig();.if.(null.===.$repo |
6d80 | 73 69 74 6f 72 79 55 72 6c 29 20 7b 0a 24 73 6f 75 72 63 65 52 65 70 6f 20 3d 20 6e 65 77 20 43 | sitoryUrl).{.$sourceRepo.=.new.C |
6da0 | 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 | ompositeRepository(Factory::crea |
6dc0 | 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 69 6f 2c 20 24 63 6f 6e 66 | teDefaultRepositories($io,.$conf |
6de0 | 69 67 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 22 6a 73 6f 6e 22 20 3d 3d 3d 20 70 61 74 68 69 | ig));.}.elseif.("json".===.pathi |
6e00 | 6e 66 6f 28 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 2c 20 50 41 54 48 49 4e 46 4f 5f 45 58 54 | nfo($repositoryUrl,.PATHINFO_EXT |
6e20 | 45 4e 53 49 4f 4e 29 29 20 7b 0a 24 73 6f 75 72 63 65 52 65 70 6f 20 3d 20 6e 65 77 20 46 69 6c | ENSION)).{.$sourceRepo.=.new.Fil |
6e40 | 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 | esystemRepository(new.JsonFile($ |
6e60 | 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 2c 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 | repositoryUrl,.new.RemoteFilesys |
6e80 | 74 65 6d 28 24 69 6f 29 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 | tem($io)));.}.elseif.(0.===.strp |
6ea0 | 6f 73 28 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c 2c 20 27 68 74 74 70 27 29 29 20 7b 0a 24 73 | os($repositoryUrl,.'http')).{.$s |
6ec0 | 6f 75 72 63 65 52 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 69 74 6f | ourceRepo.=.new.ComposerReposito |
6ee0 | 72 79 28 61 72 72 61 79 28 27 75 72 6c 27 20 3d 3e 20 24 72 65 70 6f 73 69 74 6f 72 79 55 72 6c | ry(array('url'.=>.$repositoryUrl |
6f00 | 29 2c 20 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 | ),.$io,.$config);.}.else.{.throw |
6f20 | 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 | .new.\InvalidArgumentException(" |
6f40 | 49 6e 76 61 6c 69 64 20 72 65 70 6f 73 69 74 6f 72 79 20 75 72 6c 20 67 69 76 65 6e 2e 20 48 61 | Invalid.repository.url.given..Ha |
6f60 | 73 20 74 6f 20 62 65 20 61 20 2e 6a 73 6f 6e 20 66 69 6c 65 20 6f 72 20 61 6e 20 68 74 74 70 20 | s.to.be.a..json.file.or.an.http. |
6f80 | 75 72 6c 2e 22 29 3b 0a 7d 0a 0a 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 24 73 6f 75 72 63 65 | url.");.}..$candidates.=.$source |
6fa0 | 52 65 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c | Repo->findPackages($packageName, |
6fc0 | 20 24 76 65 72 73 69 6f 6e 29 3b 0a 69 66 20 28 21 24 63 61 6e 64 69 64 61 74 65 73 29 20 7b 0a | .$version);.if.(!$candidates).{. |
6fe0 | 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 | throw.new.\InvalidArgumentExcept |
7000 | 69 6f 6e 28 22 43 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 70 61 63 6b 61 67 65 20 24 70 61 63 | ion("Could.not.find.package.$pac |
7020 | 6b 61 67 65 4e 61 6d 65 22 20 2e 20 28 24 76 65 72 73 69 6f 6e 20 3f 20 22 20 77 69 74 68 20 76 | kageName"...($version.?.".with.v |
7040 | 65 72 73 69 6f 6e 20 24 76 65 72 73 69 6f 6e 2e 22 20 3a 20 27 27 29 29 3b 0a 7d 0a 0a 69 66 20 | ersion.$version.".:.''));.}..if. |
7060 | 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 69 72 65 63 74 6f 72 79 29 20 7b 0a 24 70 61 72 74 73 20 3d | (null.===.$directory).{.$parts.= |
7080 | 20 65 78 70 6c 6f 64 65 28 22 2f 22 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 32 29 3b 0a | .explode("/",.$packageName,.2);. |
70a0 | 24 64 69 72 65 63 74 6f 72 79 20 3d 20 67 65 74 63 77 64 28 29 20 2e 20 44 49 52 45 43 54 4f 52 | $directory.=.getcwd()...DIRECTOR |
70c0 | 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 74 73 29 3b | Y_SEPARATOR...array_pop($parts); |
70e0 | 0a 7d 0a 0a 0a 20 24 70 61 63 6b 61 67 65 20 3d 20 24 63 61 6e 64 69 64 61 74 65 73 5b 30 5d 3b | .}....$package.=.$candidates[0]; |
7100 | 0a 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 61 6e 64 69 64 | .foreach.($candidates.as.$candid |
7120 | 61 74 65 29 20 7b 0a 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 70 61 63 6b | ate).{.if.(version_compare($pack |
7140 | 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 24 63 61 6e 64 69 64 61 74 65 2d 3e 67 | age->getVersion(),.$candidate->g |
7160 | 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 27 3c 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 | etVersion(),.'<')).{.$package.=. |
7180 | 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e | $candidate;.}.}..$io->write('<in |
71a0 | 66 6f 3e 49 6e 73 74 61 6c 6c 69 6e 67 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e | fo>Installing.'...$package->getN |
71c0 | 61 6d 65 28 29 20 2e 20 27 20 28 27 20 2e 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 66 6f | ame()...'.('...VersionParser::fo |
71e0 | 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 66 61 6c 73 65 29 20 2e 20 27 | rmatVersion($package,.false)...' |
7200 | 29 3c 2f 69 6e 66 6f 3e 27 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 | )</info>',.true);.if.(0.===.strp |
7220 | 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c | os($package->getPrettyVersion(), |
7240 | 20 27 64 65 76 2d 27 29 20 26 26 20 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 | .'dev-').&&.in_array($package->g |
7260 | 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 27 67 69 74 27 2c 20 27 68 67 | etSourceType(),.array('git',.'hg |
7280 | 27 29 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 | '))).{.$package->setSourceRefere |
72a0 | 6e 63 65 28 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 | nce(substr($package->getPrettyVe |
72c0 | 72 73 69 6f 6e 28 29 2c 20 34 29 29 3b 0a 7d 0a 0a 24 70 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c | rsion(),.4));.}..$projectInstall |
72e0 | 65 72 20 3d 20 6e 65 77 20 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 28 24 64 69 72 65 63 | er.=.new.ProjectInstaller($direc |
7300 | 74 6f 72 79 2c 20 24 64 6d 29 3b 0a 24 70 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 2d 3e 69 | tory,.$dm);.$projectInstaller->i |
7320 | 6e 73 74 61 6c 6c 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 64 46 69 6c 65 73 79 73 74 65 6d 52 65 | nstall(new.InstalledFilesystemRe |
7340 | 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 27 70 68 70 3a 2f 2f 6d 65 6d | pository(new.JsonFile('php://mem |
7360 | 6f 72 79 27 29 29 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d | ory')),.$package);.if.($package- |
7380 | 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 69 6e 73 74 61 6e 63 65 6f 66 20 4e 6f 74 69 | >getRepository().instanceof.Noti |
73a0 | 66 69 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 70 61 | fiableRepositoryInterface).{.$pa |
73c0 | 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 6e 6f 74 69 66 79 49 6e | ckage->getRepository()->notifyIn |
73e0 | 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 | stall($package);.}..$io->write(' |
7400 | 3c 69 6e 66 6f 3e 43 72 65 61 74 65 64 20 70 72 6f 6a 65 63 74 20 69 6e 20 27 20 2e 20 24 64 69 | <info>Created.project.in.'...$di |
7420 | 72 65 63 74 6f 72 79 20 2e 20 27 3c 2f 69 6e 66 6f 3e 27 2c 20 74 72 75 65 29 3b 0a 63 68 64 69 | rectory...'</info>',.true);.chdi |
7440 | 72 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 0a 70 75 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 | r($directory);..putenv('COMPOSER |
7460 | 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 3d 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 | _ROOT_VERSION='.$package->getPre |
7480 | 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 46 61 63 74 | ttyVersion());..$composer.=.Fact |
74a0 | 6f 72 79 3a 3a 63 72 65 61 74 65 28 24 69 6f 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 49 | ory::create($io);.$installer.=.I |
74c0 | 6e 73 74 61 6c 6c 65 72 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 | nstaller::create($io,.$composer) |
74e0 | 3b 0a 0a 24 69 6e 73 74 61 6c 6c 65 72 0a 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 | ;..$installer.->setPreferSource( |
7500 | 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 69 6e 73 | $preferSource).->setDevMode($ins |
7520 | 74 61 6c 6c 44 65 76 50 61 63 6b 61 67 65 73 29 0a 2d 3e 72 75 6e 28 29 3b 0a 7d 0a 0a 70 72 6f | tallDevPackages).->run();.}..pro |
7540 | 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d 61 | tected.function.createDownloadMa |
7560 | 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 66 61 63 74 6f 72 | nager(IOInterface.$io).{.$factor |
7580 | 79 20 3d 20 6e 65 77 20 46 61 63 74 6f 72 79 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 66 61 63 74 | y.=.new.Factory();..return.$fact |
75a0 | 6f 72 79 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 24 69 6f 29 3b | ory->createDownloadManager($io); |
75c0 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | .}.}.<?php............namespace. |
75e0 | 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 | Composer\Command;..use.Symfony\C |
7600 | 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 | omponent\Console\Input\InputInte |
7620 | 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e | rface;.use.Symfony\Component\Con |
7640 | 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a | sole\Output\OutputInterface;.... |
7660 | 0a 63 6c 61 73 73 20 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d | .class.AboutCommand.extends.Comm |
7680 | 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 | and.{.protected.function.configu |
76a0 | 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 61 62 6f 75 74 27 29 0a | re().{.$this.->setName('about'). |
76c0 | 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 72 74 20 69 6e 66 6f 72 6d 61 74 | ->setDescription('Short.informat |
76e0 | 69 6f 6e 20 61 62 6f 75 74 20 43 6f 6d 70 6f 73 65 72 27 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c | ion.about.Composer').->setHelp(< |
7700 | 3c 3c 45 4f 54 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 61 62 | <<EOT.<info>php.composer.phar.ab |
7720 | 6f 75 74 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 | out</info>.EOT.).;.}..protected. |
7740 | 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 | function.execute(InputInterface. |
7760 | 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 | $input,.OutputInterface.$output) |
7780 | 0a 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 3c 3c 3c 45 4f 54 0a 3c 69 6e 66 6f | .{.$output->writeln(<<<EOT.<info |
77a0 | 3e 43 6f 6d 70 6f 73 65 72 20 2d 20 50 61 63 6b 61 67 65 20 4d 61 6e 61 67 65 6d 65 6e 74 20 66 | >Composer.-.Package.Management.f |
77c0 | 6f 72 20 50 48 50 3c 2f 69 6e 66 6f 3e 0a 3c 63 6f 6d 6d 65 6e 74 3e 43 6f 6d 70 6f 73 65 72 20 | or.PHP</info>.<comment>Composer. |
77e0 | 69 73 20 61 20 70 61 63 6b 61 67 65 20 6d 61 6e 61 67 65 72 20 74 72 61 63 6b 69 6e 67 20 6c 6f | is.a.package.manager.tracking.lo |
7800 | 63 61 6c 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 66 20 79 6f 75 72 20 70 72 6f 6a 65 63 74 | cal.dependencies.of.your.project |
7820 | 73 20 61 6e 64 20 6c 69 62 72 61 72 69 65 73 2e 0a 53 65 65 20 68 74 74 70 3a 2f 2f 67 65 74 63 | s.and.libraries..See.http://getc |
7840 | 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66 6f 72 6d 61 74 69 6f | omposer.org/.for.more.informatio |
7860 | 6e 2e 3c 2f 63 6f 6d 6d 65 6e 74 3e 0a 45 4f 54 0a 29 3b 0a 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | n.</comment>.EOT.);..}.}.<?php.. |
7880 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d | ..........namespace.Composer\Com |
78a0 | 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 | mand;..use.Composer\Composer;.us |
78c0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | e.Composer\Factory;.use.Composer |
78e0 | 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 | \Package\PackageInterface;.use.S |
7900 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 | ymfony\Component\Console\Input\I |
7920 | 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | nputInterface;.use.Symfony\Compo |
7940 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 | nent\Console\Input\InputArgument |
7960 | 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c | ;.use.Symfony\Component\Console\ |
7980 | 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 | Input\InputOption;.use.Symfony\C |
79a0 | 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e | omponent\Console\Output\OutputIn |
79c0 | 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 | terface;.use.Composer\Repository |
79e0 | 5c 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 | \ArrayRepository;.use.Composer\R |
7a00 | 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 | epository\CompositeRepository;.u |
7a20 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 | se.Composer\Repository\PlatformR |
7a40 | 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f | epository;.use.Composer\Reposito |
7a60 | 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 | ry\RepositoryInterface;......cla |
7a80 | 73 73 20 53 68 6f 77 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b | ss.ShowCommand.extends.Command.{ |
7aa0 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a | .protected.function.configure(). |
7ac0 | 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 68 6f 77 27 29 0a 2d 3e 73 65 74 44 | {.$this.->setName('show').->setD |
7ae0 | 65 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f | escription('Show.information.abo |
7b00 | 75 74 20 70 61 63 6b 61 67 65 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 | ut.packages').->setDefinition(ar |
7b20 | 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 | ray(.new.InputArgument('package' |
7b40 | 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b | ,.InputArgument::OPTIONAL,.'Pack |
7b60 | 61 67 65 20 74 6f 20 69 6e 73 70 65 63 74 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d | age.to.inspect'),.new.InputArgum |
7b80 | 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 | ent('version',.InputArgument::OP |
7ba0 | 54 49 4f 4e 41 4c 2c 20 27 56 65 72 73 69 6f 6e 20 74 6f 20 69 6e 73 70 65 63 74 27 29 2c 0a 6e | TIONAL,.'Version.to.inspect'),.n |
7bc0 | 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 27 2c 20 6e 75 6c 6c | ew.InputOption('installed',.null |
7be0 | 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 | ,.InputOption::VALUE_NONE,.'List |
7c00 | 20 69 6e 73 74 61 6c 6c 65 64 20 70 61 63 6b 61 67 65 73 20 6f 6e 6c 79 27 29 2c 0a 6e 65 77 20 | .installed.packages.only'),.new. |
7c20 | 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 6c 61 74 66 6f 72 6d 27 2c 20 6e 75 6c 6c 2c 20 49 6e | InputOption('platform',.null,.In |
7c40 | 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4c 69 73 74 20 70 6c 61 | putOption::VALUE_NONE,.'List.pla |
7c60 | 74 66 6f 72 6d 20 70 61 63 6b 61 67 65 73 20 6f 6e 6c 79 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 | tform.packages.only'),.new.Input |
7c80 | 4f 70 74 69 6f 6e 28 27 73 65 6c 66 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e | Option('self',.null,.InputOption |
7ca0 | 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 68 6f 77 20 74 68 65 20 72 6f 6f 74 20 70 61 63 | ::VALUE_NONE,.'Show.the.root.pac |
7cc0 | 6b 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 | kage.information'),.)).->setHelp |
7ce0 | 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 73 68 6f 77 20 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 | (<<<EOT.The.show.command.display |
7d00 | 73 20 64 65 74 61 69 6c 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 61 20 70 | s.detailed.information.about.a.p |
7d20 | 61 63 6b 61 67 65 2c 20 6f 72 0a 6c 69 73 74 73 20 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 76 | ackage,.or.lists.all.packages.av |
7d40 | 61 69 6c 61 62 6c 65 2e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 | ailable...EOT.).;.}..protected.f |
7d60 | 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 | unction.execute(InputInterface.$ |
7d80 | 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a | input,.OutputInterface.$output). |
7da0 | 7b 0a 0a 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d | {...$platformRepo.=.new.Platform |
7dc0 | 52 65 70 6f 73 69 74 6f 72 79 3b 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f | Repository;.if.($input->getOptio |
7de0 | 6e 28 27 73 65 6c 66 27 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 67 | n('self')).{.$package.=.$this->g |
7e00 | 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b | etComposer(false)->getPackage(); |
7e20 | 0a 24 72 65 70 6f 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 6e 65 77 20 41 | .$repos.=.$installedRepo.=.new.A |
7e40 | 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 29 29 3b | rrayRepository(array($package)); |
7e60 | 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 6c | .}.elseif.($input->getOption('pl |
7e80 | 61 74 66 6f 72 6d 27 29 29 20 7b 0a 24 72 65 70 6f 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 | atform')).{.$repos.=.$installedR |
7ea0 | 65 70 6f 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 | epo.=.$platformRepo;.}.elseif.($ |
7ec0 | 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 69 6e 73 74 61 6c 6c 65 64 27 29 29 20 7b | input->getOption('installed')).{ |
7ee0 | 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 | .$composer.=.$this->getComposer( |
7f00 | 29 3b 0a 24 72 65 70 6f 73 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 63 6f | );.$repos.=.$installedRepo.=.$co |
7f20 | 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e | mposer->getRepositoryManager()-> |
7f40 | 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 | getLocalRepository();.}.elseif.( |
7f60 | 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 66 | $composer.=.$this->getComposer(f |
7f80 | 61 6c 73 65 29 29 20 7b 0a 24 6c 6f 63 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d | alse)).{.$localRepo.=.$composer- |
7fa0 | 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 | >getRepositoryManager()->getLoca |
7fc0 | 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 | lRepository();.$installedRepo.=. |
7fe0 | 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 6c | new.CompositeRepository(array($l |
8000 | 6f 63 61 6c 52 65 70 6f 2c 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 29 3b 0a 24 72 65 70 6f | ocalRepo,.$platformRepo));.$repo |
8020 | 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 | s.=.new.CompositeRepository(arra |
8040 | 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 2c 20 24 | y_merge(array($installedRepo),.$ |
8060 | 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 | composer->getRepositoryManager() |
8080 | 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a | ->getRepositories()));.}.else.{. |
80a0 | 24 64 65 66 61 75 6c 74 52 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 | $defaultRepos.=.Factory::createD |
80c0 | 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 | efaultRepositories($this->getIO( |
80e0 | 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 4e 6f 20 63 6f 6d 70 6f 73 65 | ));.$output->writeln('No.compose |
8100 | 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 | r.json.found.in.the.current.dire |
8120 | 63 74 6f 72 79 2c 20 73 68 6f 77 69 6e 67 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 27 20 2e | ctory,.showing.packages.from.'.. |
8140 | 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 64 65 66 61 75 | .implode(',.',.array_keys($defau |
8160 | 6c 74 52 65 70 6f 73 29 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 70 6c | ltRepos)));.$installedRepo.=.$pl |
8180 | 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 | atformRepo;.$repos.=.new.Composi |
81a0 | 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 | teRepository(array_merge(array($ |
81c0 | 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 2c 20 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 3b | installedRepo),.$defaultRepos)); |
81e0 | 0a 7d 0a 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 | .}....if.($input->getArgument('p |
8200 | 61 63 6b 61 67 65 27 29 20 7c 7c 20 21 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a | ackage').||.!empty($package)).{. |
8220 | 69 66 20 28 65 6d 70 74 79 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 | if.(empty($package)).{.$package. |
8240 | 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 | =.$this->getPackage($input,.$out |
8260 | 70 75 74 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 29 3b 0a 7d 0a | put,.$installedRepo,.$repos);.}. |
8280 | 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 | if.(!$package).{.throw.new.\Inva |
82a0 | 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e | lidArgumentException('Package.'. |
82c0 | 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 2e 27 | $input->getArgument('package').' |
82e0 | 20 6e 6f 74 20 66 6f 75 6e 64 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4d 65 74 | .not.found');.}..$this->printMet |
8300 | 61 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 69 6e | a($input,.$output,.$package,.$in |
8320 | 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 | stalledRepo,.$repos);.$this->pri |
8340 | 6e 74 4c 69 6e 6b 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 | ntLinks($input,.$output,.$packag |
8360 | 65 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b | e,.'requires');.$this->printLink |
8380 | 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 27 64 65 | s($input,.$output,.$package,.'de |
83a0 | 76 52 65 71 75 69 72 65 73 27 2c 20 27 72 65 71 75 69 72 65 73 20 28 64 65 76 29 27 29 3b 0a 69 | vRequires',.'requires.(dev)');.i |
83c0 | 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 29 20 7b 0a 24 6f | f.($package->getSuggests()).{.$o |
83e0 | 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 3c 69 6e 66 6f 3e 73 75 67 67 65 73 74 73 | utput->writeln("\n<info>suggests |
8400 | 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | </info>");.foreach.($package->ge |
8420 | 74 53 75 67 67 65 73 74 73 28 29 20 61 73 20 24 73 75 67 67 65 73 74 65 64 20 3d 3e 20 24 72 65 | tSuggests().as.$suggested.=>.$re |
8440 | 61 73 6f 6e 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 73 75 67 67 65 73 | ason).{.$output->writeln($sugges |
8460 | 74 65 64 20 2e 20 27 20 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 72 65 61 73 6f 6e 20 2e 20 27 | ted...'.<comment>'...$reason...' |
8480 | 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 | </comment>');.}.}.$this->printLi |
84a0 | 6e 6b 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 27 | nks($input,.$output,.$package,.' |
84c0 | 70 72 6f 76 69 64 65 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 24 69 | provides');.$this->printLinks($i |
84e0 | 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 27 63 6f 6e 66 6c 69 | nput,.$output,.$package,.'confli |
8500 | 63 74 73 27 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 4c 69 6e 6b 73 28 24 69 6e 70 75 74 2c | cts');.$this->printLinks($input, |
8520 | 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b | .$output,.$package,.'replaces'); |
8540 | 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 | ..return;.}....$packages.=.array |
8560 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 | ();.foreach.($repos->getPackages |
8580 | 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 6c 61 74 66 6f 72 6d 52 | ().as.$package).{.if.($platformR |
85a0 | 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 74 79 | epo->hasPackage($package)).{.$ty |
85c0 | 70 65 20 3d 20 27 3c 69 6e 66 6f 3e 70 6c 61 74 66 6f 72 6d 3c 2f 69 6e 66 6f 3e 3a 27 3b 0a 7d | pe.=.'<info>platform</info>:';.} |
85e0 | 20 65 6c 73 65 69 66 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 68 61 73 50 61 63 6b | .elseif.($installedRepo->hasPack |
8600 | 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 74 79 70 65 20 3d 20 27 3c 69 6e 66 6f 3e | age($package)).{.$type.=.'<info> |
8620 | 69 6e 73 74 61 6c 6c 65 64 3c 2f 69 6e 66 6f 3e 3a 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 79 | installed</info>:';.}.else.{.$ty |
8640 | 70 65 20 3d 20 27 3c 63 6f 6d 6d 65 6e 74 3e 61 76 61 69 6c 61 62 6c 65 3c 2f 63 6f 6d 6d 65 6e | pe.=.'<comment>available</commen |
8660 | 74 3e 3a 27 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 | t>:';.}.if.(isset($packages[$typ |
8680 | 65 5d 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 0a 26 26 20 76 65 72 73 | e][$package->getName()]).&&.vers |
86a0 | 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b 24 70 61 | ion_compare($packages[$type][$pa |
86c0 | 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c | ckage->getName()]->getVersion(), |
86e0 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 20 27 3e 3d 27 29 0a 29 | .$package->getVersion(),.'>=').) |
8700 | 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 5b | .{.continue;.}.$packages[$type][ |
8720 | 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b | $package->getName()].=.$package; |
8740 | 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 3c 69 6e 66 6f 3e 70 6c 61 74 66 6f | .}..foreach.(array('<info>platfo |
8760 | 72 6d 3c 2f 69 6e 66 6f 3e 3a 27 20 3d 3e 20 74 72 75 65 2c 20 27 3c 63 6f 6d 6d 65 6e 74 3e 61 | rm</info>:'.=>.true,.'<comment>a |
8780 | 76 61 69 6c 61 62 6c 65 3c 2f 63 6f 6d 6d 65 6e 74 3e 3a 27 20 3d 3e 20 66 61 6c 73 65 2c 20 27 | vailable</comment>:'.=>.false,.' |
87a0 | 3c 69 6e 66 6f 3e 69 6e 73 74 61 6c 6c 65 64 3c 2f 69 6e 66 6f 3e 3a 27 20 3d 3e 20 74 72 75 65 | <info>installed</info>:'.=>.true |
87c0 | 29 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 73 68 6f 77 56 65 72 73 69 6f 6e 29 20 7b 0a 69 66 | ).as.$type.=>.$showVersion).{.if |
87e0 | 20 28 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 24 6f 75 | .(isset($packages[$type])).{.$ou |
8800 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 79 70 65 29 3b 0a 6b 73 6f 72 74 28 24 70 61 63 | tput->writeln($type);.ksort($pac |
8820 | 6b 61 67 65 73 5b 24 74 79 70 65 5d 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 | kages[$type]);.foreach.($package |
8840 | 73 5b 24 74 79 70 65 5d 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d | s[$type].as.$package).{.$output- |
8860 | 3e 77 72 69 74 65 6c 6e 28 27 20 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 | >writeln('..'.$package->getPrett |
8880 | 79 4e 61 6d 65 28 29 20 2e 27 20 27 2e 28 24 73 68 6f 77 56 65 72 73 69 6f 6e 20 3f 20 27 5b 27 | yName()..'.'.($showVersion.?.'[' |
88a0 | 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2e 27 5d | .$package->getPrettyVersion().'] |
88c0 | 27 20 3a 20 27 27 29 2e 27 20 3c 63 6f 6d 6d 65 6e 74 3e 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 27 | '.:.'').'.<comment>:</comment>.' |
88e0 | 2e 20 73 74 72 74 6f 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f | ..strtok($package->getDescriptio |
8900 | 6e 28 29 2c 20 22 5c 72 5c 6e 22 29 29 3b 0a 7d 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c | n(),."\r\n"));.}.$output->writel |
8920 | 6e 28 27 27 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 | n('');.}.}.}.........protected.f |
8940 | 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 | unction.getPackage(InputInterfac |
8960 | 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 | e.$input,.OutputInterface.$outpu |
8980 | 74 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 | t,.RepositoryInterface.$installe |
89a0 | 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f | dRepo,.RepositoryInterface.$repo |
89c0 | 73 29 0a 7b 0a 0a 20 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 | s).{...if.($input->getArgument(' |
89e0 | 76 65 72 73 69 6f 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 65 70 6f 73 2d 3e 66 69 6e 64 | version')).{.return.$repos->find |
8a00 | 50 61 63 6b 61 67 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 | Package($input->getArgument('pac |
8a20 | 6b 61 67 65 27 29 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 | kage'),.$input->getArgument('ver |
8a40 | 73 69 6f 6e 27 29 29 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c 6c 65 | sion'));.}....foreach.($installe |
8a60 | 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 | dRepo->getPackages().as.$package |
8a80 | 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 | ).{.if.($package->getName().===. |
8aa0 | 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 29 20 | $input->getArgument('package')). |
8ac0 | 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 0a 20 24 68 69 67 68 65 | {.return.$package;.}.}....$highe |
8ae0 | 73 74 56 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f | stVersion.=.null;.foreach.($repo |
8b00 | 73 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d | s->findPackages($input->getArgum |
8b20 | 65 6e 74 28 27 70 61 63 6b 61 67 65 27 29 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 | ent('package')).as.$package).{.i |
8b40 | 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 68 69 67 68 65 73 74 56 65 72 73 69 6f 6e 20 7c 7c 20 76 | f.(null.===.$highestVersion.||.v |
8b60 | 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 | ersion_compare($package->getVers |
8b80 | 69 6f 6e 28 29 2c 20 24 68 69 67 68 65 73 74 56 65 72 73 69 6f 6e 2d 3e 67 65 74 56 65 72 73 69 | ion(),.$highestVersion->getVersi |
8ba0 | 6f 6e 28 29 2c 20 27 3e 3d 27 29 29 20 7b 0a 24 68 69 67 68 65 73 74 56 65 72 73 69 6f 6e 20 3d | on(),.'>=')).{.$highestVersion.= |
8bc0 | 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 68 69 67 68 65 73 74 56 | .$package;.}.}..return.$highestV |
8be0 | 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | ersion;.}.....protected.function |
8c00 | 20 70 72 69 6e 74 4d 65 74 61 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 | .printMeta(InputInterface.$input |
8c20 | 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 50 61 63 6b 61 | ,.OutputInterface.$output,.Packa |
8c40 | 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 | geInterface.$package,.Repository |
8c60 | 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 52 65 70 6f 73 69 | Interface.$installedRepo,.Reposi |
8c80 | 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 29 0a 7b 0a 24 6f 75 74 70 75 74 2d | toryInterface.$repos).{.$output- |
8ca0 | 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 6e 61 6d 65 3c 2f 69 6e 66 6f 3e 20 20 20 20 20 | >writeln('<info>name</info>..... |
8cc0 | 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 29 | :.'...$package->getPrettyName()) |
8ce0 | 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 64 65 73 63 72 69 | ;.$output->writeln('<info>descri |
8d00 | 70 2e 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 | p.</info>.:.'...$package->getDes |
8d20 | 63 72 69 70 74 69 6f 6e 28 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c | cription());.$output->writeln('< |
8d40 | 69 6e 66 6f 3e 6b 65 79 77 6f 72 64 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 6a 6f 69 6e 28 | info>keywords</info>.:.'...join( |
8d60 | 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4b 65 79 77 6f 72 64 73 28 29 20 3f 3a | ',.',.$package->getKeywords().?: |
8d80 | 20 61 72 72 61 79 28 29 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 69 6e 74 56 65 72 73 69 6f 6e 73 | .array()));.$this->printVersions |
8da0 | 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 | ($input,.$output,.$package,.$ins |
8dc0 | 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 72 65 70 6f 73 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 | talledRepo,.$repos);.$output->wr |
8de0 | 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 74 79 70 65 3c 2f 69 6e 66 6f 3e 20 20 20 20 20 3a 20 27 | iteln('<info>type</info>.....:.' |
8e00 | 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 24 6f 75 74 70 75 74 | ...$package->getType());.$output |
8e20 | 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 6c 69 63 65 6e 73 65 3c 2f 69 6e 66 6f 3e 20 | ->writeln('<info>license</info>. |
8e40 | 20 3a 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 | .:.'...implode(',.',.$package->g |
8e60 | 65 74 4c 69 63 65 6e 73 65 28 29 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 | etLicense()));.$output->writeln( |
8e80 | 27 3c 69 6e 66 6f 3e 73 6f 75 72 63 65 3c 2f 69 6e 66 6f 3e 20 20 20 3a 20 27 20 2e 20 73 70 72 | '<info>source</info>...:.'...spr |
8ea0 | 69 6e 74 66 28 27 5b 25 73 5d 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e | intf('[%s].<comment>%s</comment> |
8ec0 | 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c | .%s',.$package->getSourceType(), |
8ee0 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 2c 20 24 70 61 63 6b | .$package->getSourceUrl(),.$pack |
8f00 | 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 29 3b 0a 24 6f 75 | age->getSourceReference()));.$ou |
8f20 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 64 69 73 74 3c 2f 69 6e 66 6f 3e | tput->writeln('<info>dist</info> |
8f40 | 20 20 20 20 20 3a 20 27 20 2e 20 73 70 72 69 6e 74 66 28 27 5b 25 73 5d 20 3c 63 6f 6d 6d 65 6e | .....:.'...sprintf('[%s].<commen |
8f60 | 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 | t>%s</comment>.%s',.$package->ge |
8f80 | 74 44 69 73 74 54 79 70 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 | tDistType(),.$package->getDistUr |
8fa0 | 6c 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 | l(),.$package->getDistReference( |
8fc0 | 29 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 6e 61 6d | )));.$output->writeln('<info>nam |
8fe0 | 65 73 3c 2f 69 6e 66 6f 3e 20 20 20 20 3a 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c | es</info>....:.'...implode(',.', |
9000 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 28 29 29 29 3b 0a 0a 69 66 20 28 24 70 | .$package->getNames()));..if.($p |
9020 | 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 70 70 6f 72 74 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d | ackage->getSupport()).{.$output- |
9040 | 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 3c 69 6e 66 6f 3e 73 75 70 70 6f 72 74 3c 2f 69 6e 66 6f 3e | >writeln("\n<info>support</info> |
9060 | 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 70 70 6f 72 | ");.foreach.($package->getSuppor |
9080 | 74 28 29 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 6f 75 74 70 75 | t().as.$type.=>.$value).{.$outpu |
90a0 | 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 74 79 70 65 20 2e | t->writeln('<comment>'...$type.. |
90c0 | 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 3a 20 27 2e 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d 0a 0a 69 | .'</comment>.:.'.$value);.}.}..i |
90e0 | 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 29 20 7b 0a 24 6f | f.($package->getAutoload()).{.$o |
9100 | 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 3c 69 6e 66 6f 3e 61 75 74 6f 6c 6f 61 64 | utput->writeln("\n<info>autoload |
9120 | 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | </info>");.foreach.($package->ge |
9140 | 74 41 75 74 6f 6c 6f 61 64 28 29 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 61 75 74 6f 6c 6f 61 | tAutoload().as.$type.=>.$autoloa |
9160 | 64 73 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 | ds).{.$output->writeln('<comment |
9180 | 3e 27 20 2e 20 24 74 79 70 65 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 0a 69 66 20 | >'...$type...'</comment>');..if. |
91a0 | 28 24 74 79 70 65 20 3d 3d 3d 20 27 70 73 72 2d 30 27 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 | ($type.===.'psr-0').{.foreach.($ |
91c0 | 61 75 74 6f 6c 6f 61 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 | autoloads.as.$name.=>.$path).{.$ |
91e0 | 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 28 24 6e 61 6d 65 20 3f 3a 20 27 2a 27 29 20 2e | output->writeln(($name.?:.'*').. |
9200 | 20 27 20 3d 3e 20 27 20 2e 20 28 24 70 61 74 68 20 3f 3a 20 27 2e 27 29 29 3b 0a 7d 0a 7d 20 65 | .'.=>.'...($path.?:.'.'));.}.}.e |
9220 | 6c 73 65 69 66 20 28 24 74 79 70 65 20 3d 3d 3d 20 27 63 6c 61 73 73 6d 61 70 27 29 20 7b 0a 24 | lseif.($type.===.'classmap').{.$ |
9240 | 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 61 | output->writeln(implode(',.',.$a |
9260 | 75 74 6f 6c 6f 61 64 73 29 29 3b 0a 7d 0a 7d 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | utoloads));.}.}.if.($package->ge |
9280 | 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 | tIncludePaths()).{.$output->writ |
92a0 | 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e 69 6e 63 6c 75 64 65 2d 70 61 74 68 3c 2f 63 6f 6d 6d | eln('<comment>include-path</comm |
92c0 | 65 6e 74 3e 27 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 69 6d 70 6c 6f 64 65 | ent>');.$output->writeln(implode |
92e0 | 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 | (',.',.$package->getIncludePaths |
9300 | 28 29 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | ()));.}.}.}.....protected.functi |
9320 | 6f 6e 20 70 72 69 6e 74 56 65 72 73 69 6f 6e 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 | on.printVersions(InputInterface. |
9340 | 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c | $input,.OutputInterface.$output, |
9360 | 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 52 65 70 6f | .PackageInterface.$package,.Repo |
9380 | 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 | sitoryInterface.$installedRepo,. |
93a0 | 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 29 0a 7b 0a 69 66 | RepositoryInterface.$repos).{.if |
93c0 | 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 76 65 72 73 69 6f 6e 27 29 | .($input->getArgument('version') |
93e0 | 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 76 65 72 73 | ).{.$output->writeln('<info>vers |
9400 | 69 6f 6e 3c 2f 69 6e 66 6f 3e 20 20 3a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 | ion</info>..:.'...$package->getP |
9420 | 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 76 65 | rettyVersion());..return;.}..$ve |
9440 | 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 | rsions.=.array();..foreach.($rep |
9460 | 6f 73 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 | os->findPackages($package->getNa |
9480 | 6d 65 28 29 29 20 61 73 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 24 | me()).as.$version).{.$versions[$ |
94a0 | 76 65 72 73 69 6f 6e 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 5d 20 3d 20 24 | version->getPrettyVersion()].=.$ |
94c0 | 76 65 72 73 69 6f 6e 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 75 61 73 6f 72 74 | version->getVersion();.}..uasort |
94e0 | 28 24 76 65 72 73 69 6f 6e 73 2c 20 27 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 27 29 3b 0a | ($versions,.'version_compare');. |
9500 | 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 | .$versions.=.implode(',.',.array |
9520 | 5f 6b 65 79 73 28 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 76 65 72 73 69 6f 6e 73 29 29 29 | _keys(array_reverse($versions))) |
9540 | 3b 0a 0a 0a 20 69 66 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 68 61 73 50 61 63 6b | ;....if.($installedRepo->hasPack |
9560 | 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 73 74 72 | age($package)).{.$versions.=.str |
9580 | 5f 72 65 70 6c 61 63 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 | _replace($package->getPrettyVers |
95a0 | 69 6f 6e 28 29 2c 20 27 3c 69 6e 66 6f 3e 2a 20 27 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 | ion(),.'<info>*.'...$package->ge |
95c0 | 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 3c 2f 69 6e 66 6f 3e 27 2c 20 24 76 | tPrettyVersion()...'</info>',.$v |
95e0 | 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c | ersions);.}..$output->writeln('< |
9600 | 69 6e 66 6f 3e 76 65 72 73 69 6f 6e 73 3c 2f 69 6e 66 6f 3e 20 3a 20 27 20 2e 20 24 76 65 72 73 | info>versions</info>.:.'...$vers |
9620 | 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f | ions);.}.......protected.functio |
9640 | 6e 20 70 72 69 6e 74 4c 69 6e 6b 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 | n.printLinks(InputInterface.$inp |
9660 | 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 50 61 63 | ut,.OutputInterface.$output,.Pac |
9680 | 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 6c 69 6e 6b 54 79 70 | kageInterface.$package,.$linkTyp |
96a0 | 65 2c 20 24 74 69 74 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 69 74 6c 65 20 3d 20 24 74 69 | e,.$title.=.null).{.$title.=.$ti |
96c0 | 74 6c 65 20 3f 3a 20 24 6c 69 6e 6b 54 79 70 65 3b 0a 69 66 20 28 24 6c 69 6e 6b 73 20 3d 20 24 | tle.?:.$linkType;.if.($links.=.$ |
96e0 | 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6c 69 6e 6b 54 79 70 | package->{'get'.ucfirst($linkTyp |
9700 | 65 29 7d 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 3c 69 6e | e)}()).{.$output->writeln("\n<in |
9720 | 66 6f 3e 22 20 2e 20 24 74 69 74 6c 65 20 2e 20 22 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 0a 66 6f 72 | fo>"...$title..."</info>");..for |
9740 | 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6f 75 74 70 75 74 | each.($links.as.$link).{.$output |
9760 | 2d 3e 77 72 69 74 65 6c 6e 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2e 20 27 | ->writeln($link->getTarget()...' |
9780 | 20 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f | .<comment>'...$link->getPrettyCo |
97a0 | 6e 73 74 72 61 69 6e 74 28 29 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 7d 0a 7d 0a | nstraint()...'</comment>');.}.}. |
97c0 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 | }.}.<?php............namespace.C |
97e0 | 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 | omposer\Command;..use.Composer\I |
9800 | 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c | nstaller;.use.Symfony\Component\ |
9820 | 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 | Console\Input\InputInterface;.us |
9840 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 | e.Symfony\Component\Console\Inpu |
9860 | 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | t\InputOption;.use.Symfony\Compo |
9880 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 | nent\Console\Input\InputArgument |
98a0 | 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c | ;.use.Symfony\Component\Console\ |
98c0 | 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 | Output\OutputInterface;.....clas |
98e0 | 73 20 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a | s.UpdateCommand.extends.Command. |
9900 | 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 | {.protected.function.configure() |
9920 | 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 75 70 64 61 74 65 27 29 0a 2d 3e 73 | .{.$this.->setName('update').->s |
9940 | 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 55 70 64 61 74 65 73 20 79 6f 75 72 20 64 65 70 65 | etDescription('Updates.your.depe |
9960 | 6e 64 65 6e 63 69 65 73 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 2c 20 | ndencies.to.the.latest.version,. |
9980 | 61 6e 64 20 75 70 64 61 74 65 73 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6c 6f 63 6b 20 66 69 | and.updates.the.composer.lock.fi |
99a0 | 6c 65 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 | le.').->setDefinition(array(.new |
99c0 | 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 2c 20 49 6e 70 75 74 | .InputArgument('packages',.Input |
99e0 | 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 | Argument::IS_ARRAY.|.InputArgume |
9a00 | 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 50 61 63 6b 61 67 65 73 20 74 68 61 74 20 73 68 6f | nt::OPTIONAL,.'Packages.that.sho |
9a20 | 75 6c 64 20 62 65 20 75 70 64 61 74 65 64 2c 20 69 66 20 6e 6f 74 20 70 72 6f 76 69 64 65 64 20 | uld.be.updated,.if.not.provided. |
9a40 | 61 6c 6c 20 70 61 63 6b 61 67 65 73 20 61 72 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 | all.packages.are.'),.new.InputOp |
9a60 | 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 | tion('prefer-source',.null,.Inpu |
9a80 | 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 | tOption::VALUE_NONE,.'Forces.ins |
9aa0 | 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 73 20 77 | tallation.from.package.sources.w |
9ac0 | 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 56 43 53 20 69 6e 66 6f | hen.possible,.including.VCS.info |
9ae0 | 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 72 79 | rmation.'),.new.InputOption('dry |
9b00 | 2d 72 75 6e 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f | -run',.null,.InputOption::VALUE_ |
9b20 | 4e 4f 4e 45 2c 20 27 4f 75 74 70 75 74 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 62 75 | NONE,.'Outputs.the.operations.bu |
9b40 | 74 20 77 69 6c 6c 20 6e 6f 74 20 65 78 65 63 75 74 65 20 61 6e 79 74 68 69 6e 67 20 28 69 6d 70 | t.will.not.execute.anything.(imp |
9b60 | 6c 69 63 69 74 6c 79 20 65 6e 61 62 6c 65 73 20 2d 2d 76 65 72 62 6f 73 65 29 2e 27 29 2c 0a 6e | licitly.enables.--verbose).'),.n |
9b80 | 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 | ew.InputOption('dev',.null,.Inpu |
9ba0 | 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 45 6e 61 62 6c 65 73 20 69 6e | tOption::VALUE_NONE,.'Enables.in |
9bc0 | 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 64 65 76 2d 72 65 71 75 69 72 65 20 70 61 63 6b 61 67 | stallation.of.dev-require.packag |
9be0 | 65 73 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 | es.'),.new.InputOption('no-scrip |
9c00 | 74 73 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f | ts',.null,.InputOption::VALUE_NO |
9c20 | 4e 45 2c 20 27 53 6b 69 70 73 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 | NE,.'Skips.the.execution.of.all. |
9c40 | 73 63 72 69 70 74 73 20 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e | scripts.defined.in.composer.json |
9c60 | 20 66 69 6c 65 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 | .file.'),.)).->setHelp(<<<EOT.Th |
9c80 | 65 20 3c 69 6e 66 6f 3e 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 65 | e.<info>update</info>.command.re |
9ca0 | 61 64 73 20 74 68 65 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 66 72 6f 6d 20 | ads.the.composer.json.file.from. |
9cc0 | 74 68 65 0a 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 70 72 6f 63 65 73 73 65 73 | the.current.directory,.processes |
9ce0 | 20 69 74 2c 20 61 6e 64 20 75 70 64 61 74 65 73 2c 20 72 65 6d 6f 76 65 73 20 6f 72 20 69 6e 73 | .it,.and.updates,.removes.or.ins |
9d00 | 74 61 6c 6c 73 20 61 6c 6c 20 74 68 65 0a 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 0a 0a 3c 69 6e | talls.all.the.dependencies...<in |
9d20 | 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 75 70 64 61 74 65 3c 2f 69 6e 66 | fo>php.composer.phar.update</inf |
9d40 | 6f 3e 0a 0a 54 6f 20 6c 69 6d 69 74 20 74 68 65 20 75 70 64 61 74 65 20 6f 70 65 72 61 74 69 6f | o>..To.limit.the.update.operatio |
9d60 | 6e 20 74 6f 20 61 20 66 65 77 20 70 61 63 6b 61 67 65 73 2c 20 79 6f 75 20 63 61 6e 20 6c 69 73 | n.to.a.few.packages,.you.can.lis |
9d80 | 74 20 74 68 65 20 70 61 63 6b 61 67 65 28 73 29 0a 79 6f 75 20 77 61 6e 74 20 74 6f 20 75 70 64 | t.the.package(s).you.want.to.upd |
9da0 | 61 74 65 20 61 73 20 73 75 63 68 3a 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 | ate.as.such:..<info>php.composer |
9dc0 | 2e 70 68 61 72 20 75 70 64 61 74 65 20 76 65 6e 64 6f 72 2f 70 61 63 6b 61 67 65 31 20 66 6f 6f | .phar.update.vendor/package1.foo |
9de0 | 2f 6d 79 70 61 63 6b 61 67 65 20 5b 2e 2e 2e 5d 3c 2f 69 6e 66 6f 3e 0a 45 4f 54 0a 29 0a 3b 0a | /mypackage.[...]</info>.EOT.).;. |
9e00 | 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e | }..protected.function.execute(In |
9e20 | 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 | putInterface.$input,.OutputInter |
9e40 | 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 | face.$output).{.$composer.=.$thi |
9e60 | 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 | s->getComposer();.$io.=.$this->g |
9e80 | 65 74 49 4f 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e 73 74 61 6c 6c 65 72 3a 3a 63 72 | etIO();.$install.=.Installer::cr |
9ea0 | 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 0a | eate($io,.$composer);..$install. |
9ec0 | 2d 3e 73 65 74 44 72 79 52 75 6e 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 | ->setDryRun($input->getOption('d |
9ee0 | 72 79 2d 72 75 6e 27 29 29 0a 2d 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e 67 | ry-run')).->setVerbose($input->g |
9f00 | 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 | etOption('verbose')).->setPrefer |
9f20 | 53 6f 75 72 63 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 | Source($input->getOption('prefer |
9f40 | 2d 73 6f 75 72 63 65 27 29 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 69 6e 70 75 74 2d 3e | -source')).->setDevMode($input-> |
9f60 | 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 29 0a 2d 3e 73 65 74 52 75 6e 53 63 72 69 70 74 | getOption('dev')).->setRunScript |
9f80 | 73 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 | s(!$input->getOption('no-scripts |
9fa0 | 27 29 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 28 74 72 75 65 29 0a 2d 3e 73 65 74 55 70 64 61 74 | ')).->setUpdate(true).->setUpdat |
9fc0 | 65 57 68 69 74 65 6c 69 73 74 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 | eWhitelist($input->getArgument(' |
9fe0 | 70 61 63 6b 61 67 65 73 27 29 29 0a 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 2d 3e | packages')).;..return.$install-> |
a000 | 72 75 6e 28 29 20 3f 20 30 20 3a 20 31 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | run().?.0.:.1;.}.}.<?php........ |
a020 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a | ....namespace.Composer\Command;. |
a040 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 53 79 6d | .use.Composer\Installer;.use.Sym |
a060 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 | fony\Component\Console\Input\Inp |
a080 | 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 | utInterface;.use.Symfony\Compone |
a0a0 | 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 | nt\Console\Input\InputOption;.us |
a0c0 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 | e.Symfony\Component\Console\Outp |
a0e0 | 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 | ut\OutputInterface;.......class. |
a100 | 49 6e 73 74 61 6c 6c 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b | InstallCommand.extends.Command.{ |
a120 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a | .protected.function.configure(). |
a140 | 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 69 6e 73 74 61 6c 6c 27 29 0a 2d 3e 73 | {.$this.->setName('install').->s |
a160 | 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 50 61 72 73 65 73 20 74 68 65 20 63 6f 6d 70 6f 73 | etDescription('Parses.the.compos |
a180 | 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 61 6e 64 20 64 6f 77 6e 6c 6f 61 64 73 20 74 68 65 20 6e | er.json.file.and.downloads.the.n |
a1a0 | 65 65 64 65 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e | eeded.dependencies.').->setDefin |
a1c0 | 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 | ition(array(.new.InputOption('pr |
a1e0 | 65 66 65 72 2d 73 6f 75 72 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a | efer-source',.null,.InputOption: |
a200 | 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f | :VALUE_NONE,.'Forces.installatio |
a220 | 6e 20 66 72 6f 6d 20 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 73 20 77 68 65 6e 20 70 6f 73 73 | n.from.package.sources.when.poss |
a240 | 69 62 6c 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 56 43 53 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e | ible,.including.VCS.information. |
a260 | 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 72 79 2d 72 75 6e 27 2c 20 6e | '),.new.InputOption('dry-run',.n |
a280 | 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 4f | ull,.InputOption::VALUE_NONE,.'O |
a2a0 | 75 74 70 75 74 73 20 74 68 65 20 6f 70 65 72 61 74 69 6f 6e 73 20 62 75 74 20 77 69 6c 6c 20 6e | utputs.the.operations.but.will.n |
a2c0 | 6f 74 20 65 78 65 63 75 74 65 20 61 6e 79 74 68 69 6e 67 20 28 69 6d 70 6c 69 63 69 74 6c 79 20 | ot.execute.anything.(implicitly. |
a2e0 | 65 6e 61 62 6c 65 73 20 2d 2d 76 65 72 62 6f 73 65 29 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 | enables.--verbose).'),.new.Input |
a300 | 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a | Option('dev',.null,.InputOption: |
a320 | 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 45 6e 61 62 6c 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 | :VALUE_NONE,.'Enables.installati |
a340 | 6f 6e 20 6f 66 20 64 65 76 2d 72 65 71 75 69 72 65 20 70 61 63 6b 61 67 65 73 2e 27 29 2c 0a 6e | on.of.dev-require.packages.'),.n |
a360 | 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 69 70 74 73 27 2c 20 6e 75 6c | ew.InputOption('no-scripts',.nul |
a380 | 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 53 6b 69 | l,.InputOption::VALUE_NONE,.'Ski |
a3a0 | 70 73 20 74 68 65 20 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 6c 6c 20 73 63 72 69 70 74 73 20 | ps.the.execution.of.all.scripts. |
a3c0 | 64 65 66 69 6e 65 64 20 69 6e 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 2e 27 29 | defined.in.composer.json.file.') |
a3e0 | 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e | ,.)).->setHelp(<<<EOT.The.<info> |
a400 | 69 6e 73 74 61 6c 6c 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 72 65 61 64 73 20 74 68 65 | install</info>.command.reads.the |
a420 | 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 66 72 6f 6d 20 74 68 65 0a 63 75 72 | .composer.json.file.from.the.cur |
a440 | 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 70 72 6f 63 65 73 73 65 73 20 69 74 2c 20 61 6e | rent.directory,.processes.it,.an |
a460 | 64 20 64 6f 77 6e 6c 6f 61 64 73 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 61 6c 6c 20 74 68 65 | d.downloads.and.installs.all.the |
a480 | 0a 6c 69 62 72 61 72 69 65 73 20 61 6e 64 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 6f 75 74 6c | .libraries.and.dependencies.outl |
a4a0 | 69 6e 65 64 20 69 6e 20 74 68 61 74 20 66 69 6c 65 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f | ined.in.that.file...<info>php.co |
a4c0 | 6d 70 6f 73 65 72 2e 70 68 61 72 20 69 6e 73 74 61 6c 6c 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a | mposer.phar.install</info>..EOT. |
a4e0 | 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 | ).;.}..protected.function.execut |
a500 | 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 | e(InputInterface.$input,.OutputI |
a520 | 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 | nterface.$output).{.$composer.=. |
a540 | 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 | $this->getComposer();.$io.=.$thi |
a560 | 73 2d 3e 67 65 74 49 4f 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e 73 74 61 6c 6c 65 72 | s->getIO();.$install.=.Installer |
a580 | 3a 3a 63 72 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 24 69 6e 73 74 | ::create($io,.$composer);..$inst |
a5a0 | 61 6c 6c 0a 2d 3e 73 65 74 44 72 79 52 75 6e 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f | all.->setDryRun($input->getOptio |
a5c0 | 6e 28 27 64 72 79 2d 72 75 6e 27 29 29 0a 2d 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 | n('dry-run')).->setVerbose($inpu |
a5e0 | 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 | t->getOption('verbose')).->setPr |
a600 | 65 66 65 72 53 6f 75 72 63 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 | eferSource($input->getOption('pr |
a620 | 65 66 65 72 2d 73 6f 75 72 63 65 27 29 29 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 69 6e 70 | efer-source')).->setDevMode($inp |
a640 | 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 29 29 0a 2d 3e 73 65 74 52 75 6e 53 63 | ut->getOption('dev')).->setRunSc |
a660 | 72 69 70 74 73 28 21 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 73 63 72 | ripts(!$input->getOption('no-scr |
a680 | 69 70 74 73 27 29 29 0a 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e 28 | ipts')).;..return.$install->run( |
a6a0 | 29 20 3f 20 30 20 3a 20 31 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ).?.0.:.1;.}.}.<?php............ |
a6c0 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 | namespace.Composer\Command;..use |
a6e0 | 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 | .Symfony\Component\Console\Input |
a700 | 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d | \InputInterface;.use.Symfony\Com |
a720 | 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 | ponent\Console\Input\InputArgume |
a740 | 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c | nt;.use.Symfony\Component\Consol |
a760 | 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f | e\Output\OutputInterface;.use.Co |
a780 | 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | mposer\Json\JsonFile;.use.Compos |
a7a0 | 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 3b | er\Json\JsonValidationException; |
a7c0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 56 61 6c | .use.Composer\Package\Loader\Val |
a7e0 | 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | idatingArrayLoader;.use.Composer |
a800 | 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 | \Package\Loader\ArrayLoader;.use |
a820 | 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b | .Composer\Util\RemoteFilesystem; |
a840 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 70 64 78 4c 69 63 65 6e 73 65 49 64 | .use.Composer\Util\SpdxLicenseId |
a860 | 65 6e 74 69 66 69 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 65 43 | entifier;........class.ValidateC |
a880 | 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 | ommand.extends.Command.{....prot |
a8a0 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 | ected.function.configure().{.$th |
a8c0 | 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 76 61 6c 69 64 61 74 65 27 29 0a 2d 3e 73 65 74 44 65 | is.->setName('validate').->setDe |
a8e0 | 73 63 72 69 70 74 69 6f 6e 28 27 56 61 6c 69 64 61 74 65 73 20 61 20 63 6f 6d 70 6f 73 65 72 2e | scription('Validates.a.composer. |
a900 | 6a 73 6f 6e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 | json').->setDefinition(array(.ne |
a920 | 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 66 69 6c 65 27 2c 20 49 6e 70 75 74 41 72 67 | w.InputArgument('file',.InputArg |
a940 | 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 70 61 74 68 20 74 6f 20 63 6f 6d 70 6f 73 | ument::OPTIONAL,.'path.to.compos |
a960 | 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 27 2c 20 27 2e 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 | er.json.file',.'./composer.json' |
a980 | 29 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 76 61 6c 69 64 61 | ).)).->setHelp(<<<EOT.The.valida |
a9a0 | 74 65 20 63 6f 6d 6d 61 6e 64 20 76 61 6c 69 64 61 74 65 73 20 61 20 67 69 76 65 6e 20 63 6f 6d | te.command.validates.a.given.com |
a9c0 | 70 6f 73 65 72 2e 6a 73 6f 6e 0a 0a 45 4f 54 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 | poser.json..EOT.);.}........prot |
a9e0 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 | ected.function.execute(InputInte |
aa00 | 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f | rface.$input,.OutputInterface.$o |
aa20 | 75 74 70 75 74 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 | utput).{.$file.=.$input->getArgu |
aa40 | 6d 65 6e 74 28 27 66 69 6c 65 27 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 | ment('file');..if.(!file_exists( |
aa60 | 24 66 69 6c 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 | $file)).{.$output->writeln('<err |
aa80 | 6f 72 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 6e 6f 74 20 66 6f 75 6e 64 2e 3c 2f 65 72 72 | or>'...$file...'.not.found.</err |
aaa0 | 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 | or>');..return.1;.}.if.(!is_read |
aac0 | 61 62 6c 65 28 24 66 69 6c 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 | able($file)).{.$output->writeln( |
aae0 | 27 3c 65 72 72 6f 72 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 69 73 20 6e 6f 74 20 72 65 61 | '<error>'...$file...'.is.not.rea |
ab00 | 64 61 62 6c 65 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a | dable.</error>');..return.1;.}.. |
ab20 | 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 70 75 62 6c 69 73 68 45 72 72 6f 72 | $errors.=.array();.$publishError |
ab40 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 77 61 72 6e 69 6e 67 73 20 3d 20 61 72 72 61 79 28 29 | s.=.array();.$warnings.=.array() |
ab60 | 3b 0a 0a 0a 20 24 6c 61 78 56 61 6c 69 64 20 3d 20 66 61 6c 73 65 3b 0a 24 76 61 6c 69 64 20 3d | ;....$laxValid.=.false;.$valid.= |
ab80 | 20 66 61 6c 73 65 3b 0a 74 72 79 20 7b 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 | .false;.try.{.$json.=.new.JsonFi |
aba0 | 6c 65 28 24 66 69 6c 65 2c 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 | le($file,.new.RemoteFilesystem($ |
abc0 | 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 29 3b 0a 24 6d 61 6e 69 66 65 73 74 20 3d 20 24 6a 73 | this->getIO()));.$manifest.=.$js |
abe0 | 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 0a 24 6a 73 6f 6e 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 | on->read();..$json->validateSche |
ac00 | 6d 61 28 4a 73 6f 6e 46 69 6c 65 3a 3a 4c 41 58 5f 53 43 48 45 4d 41 29 3b 0a 24 6c 61 78 56 61 | ma(JsonFile::LAX_SCHEMA);.$laxVa |
ac20 | 6c 69 64 20 3d 20 74 72 75 65 3b 0a 24 6a 73 6f 6e 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 65 6d | lid.=.true;.$json->validateSchem |
ac40 | 61 28 29 3b 0a 24 76 61 6c 69 64 20 3d 20 74 72 75 65 3b 0a 7d 20 63 61 74 63 68 20 28 4a 73 6f | a();.$valid.=.true;.}.catch.(Jso |
ac60 | 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 66 6f 72 65 61 | nValidationException.$e).{.forea |
ac80 | 63 68 20 28 24 65 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 20 61 73 20 24 6d 65 73 73 61 67 65 29 | ch.($e->getErrors().as.$message) |
aca0 | 20 7b 0a 69 66 20 28 24 6c 61 78 56 61 6c 69 64 29 20 7b 0a 24 70 75 62 6c 69 73 68 45 72 72 6f | .{.if.($laxValid).{.$publishErro |
acc0 | 72 73 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 50 75 62 6c 69 73 68 20 45 72 72 6f 72 3a 20 27 20 | rs[].=.'<error>Publish.Error:.'. |
ace0 | 2e 20 24 6d 65 73 73 61 67 65 20 2e 20 27 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 20 65 6c 73 65 20 | ..$message...'</error>';.}.else. |
ad00 | 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 27 3c 65 72 72 6f 72 3e 27 20 2e 20 24 6d 65 73 73 61 | {.$errors[].=.'<error>'...$messa |
ad20 | 67 65 20 2e 20 27 3c 2f 65 72 72 6f 72 3e 27 3b 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 | ge...'</error>';.}.}.}.catch.(\E |
ad40 | 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 | xception.$e).{.$output->writeln( |
ad60 | 27 3c 65 72 72 6f 72 3e 27 20 2e 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 20 2e 20 27 | '<error>'...$e->getMessage()...' |
ad80 | 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 0a 20 69 66 20 28 | </error>');..return.1;.}....if.( |
ada0 | 21 65 6d 70 74 79 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a | !empty($manifest['license'])).{. |
adc0 | 24 6c 69 63 65 6e 73 65 56 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 53 70 64 78 4c 69 63 65 | $licenseValidator.=.new.SpdxLice |
ade0 | 6e 73 65 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 69 66 20 28 21 24 6c 69 63 65 6e 73 65 56 61 | nseIdentifier();.if.(!$licenseVa |
ae00 | 6c 69 64 61 74 6f 72 2d 3e 76 61 6c 69 64 61 74 65 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 | lidator->validate($manifest['lic |
ae20 | 65 6e 73 65 27 5d 29 29 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 | ense'])).{.$warnings[].=.sprintf |
ae40 | 28 0a 27 4c 69 63 65 6e 73 65 20 25 73 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 53 50 44 | (.'License.%s.is.not.a.valid.SPD |
ae60 | 58 20 6c 69 63 65 6e 73 65 20 69 64 65 6e 74 69 66 69 65 72 2c 20 73 65 65 20 68 74 74 70 3a 2f | X.license.identifier,.see.http:/ |
ae80 | 2f 77 77 77 2e 73 70 64 78 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 20 69 66 20 79 6f 75 20 75 | /www.spdx.org/licenses/.if.you.u |
aea0 | 73 65 20 61 6e 20 6f 70 65 6e 20 6c 69 63 65 6e 73 65 27 2c 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 | se.an.open.license',.json_encode |
aec0 | 28 24 6d 61 6e 69 66 65 73 74 5b 27 6c 69 63 65 6e 73 65 27 5d 29 0a 29 3b 0a 7d 0a 7d 20 65 6c | ($manifest['license']).);.}.}.el |
aee0 | 73 65 20 7b 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 27 4e 6f 20 6c 69 63 65 6e 73 65 20 73 | se.{.$warnings[].=.'No.license.s |
af00 | 70 65 63 69 66 69 65 64 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 20 74 6f 20 64 | pecified,.it.is.recommended.to.d |
af20 | 6f 20 73 6f 27 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 6e 69 66 65 73 74 5b 27 | o.so';.}..if.(!empty($manifest[' |
af40 | 6e 61 6d 65 27 5d 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 41 2d 5a 5d 7d 27 2c | name']).&&.preg_match('{[A-Z]}', |
af60 | 20 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 24 73 75 67 67 65 73 74 4e | .$manifest['name'])).{.$suggestN |
af80 | 61 6d 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 3f 3a 28 5b 61 2d 7a 5d 29 28 | ame.=.preg_replace('{(?:([a-z])( |
afa0 | 5b 41 2d 5a 5d 29 7c 28 5b 41 2d 5a 5d 29 28 5b 41 2d 5a 5d 5b 61 2d 7a 5d 29 29 7d 27 2c 20 27 | [A-Z])|([A-Z])([A-Z][a-z]))}',.' |
afc0 | 5c 5c 31 5c 5c 33 2d 5c 5c 32 5c 5c 34 27 2c 20 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 | \\1\\3-\\2\\4',.$manifest['name' |
afe0 | 5d 29 3b 0a 24 73 75 67 67 65 73 74 4e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 | ]);.$suggestName.=.strtolower($s |
b000 | 75 67 67 65 73 74 4e 61 6d 65 29 3b 0a 0a 24 77 61 72 6e 69 6e 67 73 5b 5d 20 3d 20 73 70 72 69 | uggestName);..$warnings[].=.spri |
b020 | 6e 74 66 28 0a 27 4e 61 6d 65 20 22 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 | ntf(.'Name."%s".does.not.match.t |
b040 | 68 65 20 62 65 73 74 20 70 72 61 63 74 69 63 65 20 28 65 2e 67 2e 20 6c 6f 77 65 72 2d 63 61 73 | he.best.practice.(e.g..lower-cas |
b060 | 65 64 2f 77 69 74 68 2d 64 61 73 68 65 73 29 2e 20 57 65 20 73 75 67 67 65 73 74 20 75 73 69 6e | ed/with-dashes)..We.suggest.usin |
b080 | 67 20 22 25 73 22 20 69 6e 73 74 65 61 64 2e 20 41 73 20 73 75 63 68 20 79 6f 75 20 77 69 6c 6c | g."%s".instead..As.such.you.will |
b0a0 | 20 6e 6f 74 20 62 65 20 61 62 6c 65 20 74 6f 20 73 75 62 6d 69 74 20 69 74 20 74 6f 20 50 61 63 | .not.be.able.to.submit.it.to.Pac |
b0c0 | 6b 61 67 69 73 74 2e 27 2c 0a 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 2c 0a 24 73 75 | kagist.',.$manifest['name'],.$su |
b0e0 | 67 67 65 73 74 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a 0a 20 74 72 79 20 7b 0a 24 6c 6f 61 64 65 72 20 | ggestName.);.}....try.{.$loader. |
b100 | 3d 20 6e 65 77 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 72 28 6e 65 77 20 | =.new.ValidatingArrayLoader(new. |
b120 | 41 72 72 61 79 4c 6f 61 64 65 72 28 29 2c 20 66 61 6c 73 65 29 3b 0a 69 66 20 28 21 69 73 73 65 | ArrayLoader(),.false);.if.(!isse |
b140 | 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 6d 61 6e 69 | t($manifest['version'])).{.$mani |
b160 | 66 65 73 74 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 7d 0a 69 66 20 | fest['version'].=.'1.0.0';.}.if. |
b180 | 28 21 69 73 73 65 74 28 24 6d 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a 24 6d | (!isset($manifest['name'])).{.$m |
b1a0 | 61 6e 69 66 65 73 74 5b 27 6e 61 6d 65 27 5d 20 3d 20 27 64 75 6d 6d 79 2f 64 75 6d 6d 79 27 3b | anifest['name'].=.'dummy/dummy'; |
b1c0 | 0a 7d 0a 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 6d 61 6e 69 66 65 73 74 29 3b 0a 7d 20 63 | .}.$loader->load($manifest);.}.c |
b1e0 | 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 65 72 72 6f 72 73 20 3d | atch.(\Exception.$e).{.$errors.= |
b200 | 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c 20 65 78 70 6c 6f 64 65 28 22 5c | .array_merge($errors,.explode("\ |
b220 | 6e 22 2c 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 29 3b 0a 7d 0a 0a 0a 20 69 66 20 | n",.$e->getMessage()));.}....if. |
b240 | 28 21 24 65 72 72 6f 72 73 20 26 26 20 21 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 20 26 26 20 | (!$errors.&&.!$publishErrors.&&. |
b260 | 21 24 77 61 72 6e 69 6e 67 73 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 | !$warnings).{.$output->writeln(' |
b280 | 3c 69 6e 66 6f 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 69 73 20 76 61 6c 69 64 3c 2f 69 6e | <info>'...$file...'.is.valid</in |
b2a0 | 66 6f 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 65 72 72 6f 72 73 20 26 26 20 21 24 70 | fo>');.}.elseif.(!$errors.&&.!$p |
b2c0 | 75 62 6c 69 73 68 45 72 72 6f 72 73 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e | ublishErrors).{.$output->writeln |
b2e0 | 28 27 3c 69 6e 66 6f 3e 27 20 2e 20 24 66 69 6c 65 20 2e 20 27 20 69 73 20 76 61 6c 69 64 2c 20 | ('<info>'...$file...'.is.valid,. |
b300 | 62 75 74 20 77 69 74 68 20 61 20 66 65 77 20 77 61 72 6e 69 6e 67 73 3c 2f 69 6e 66 6f 3e 27 29 | but.with.a.few.warnings</info>') |
b320 | 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 77 61 72 6e 69 6e 67 3e 53 65 65 | ;.$output->writeln('<warning>See |
b340 | 20 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f 63 2f 30 34 2d 73 | .http://getcomposer.org/doc/04-s |
b360 | 63 68 65 6d 61 2e 6d 64 20 66 6f 72 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 65 20 73 63 68 65 | chema.md.for.details.on.the.sche |
b380 | 6d 61 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 65 72 72 6f | ma</warning>');.}.elseif.(!$erro |
b3a0 | 72 73 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 27 20 | rs).{.$output->writeln('<info>'. |
b3c0 | 2e 20 24 66 69 6c 65 20 2e 20 27 20 69 73 20 76 61 6c 69 64 20 66 6f 72 20 73 69 6d 70 6c 65 20 | ..$file...'.is.valid.for.simple. |
b3e0 | 75 73 61 67 65 20 77 69 74 68 20 63 6f 6d 70 6f 73 65 72 20 62 75 74 20 68 61 73 3c 2f 69 6e 66 | usage.with.composer.but.has</inf |
b400 | 6f 3e 27 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 73 74 | o>');.$output->writeln('<info>st |
b420 | 72 69 63 74 20 65 72 72 6f 72 73 20 74 68 61 74 20 6d 61 6b 65 20 69 74 20 75 6e 61 62 6c 65 20 | rict.errors.that.make.it.unable. |
b440 | 74 6f 20 62 65 20 70 75 62 6c 69 73 68 65 64 20 61 73 20 61 20 70 61 63 6b 61 67 65 3a 3c 2f 69 | to.be.published.as.a.package:</i |
b460 | 6e 66 6f 3e 27 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 77 61 72 6e 69 | nfo>');.$output->writeln('<warni |
b480 | 6e 67 3e 53 65 65 20 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 64 6f | ng>See.http://getcomposer.org/do |
b4a0 | 63 2f 30 34 2d 73 63 68 65 6d 61 2e 6d 64 20 66 6f 72 20 64 65 74 61 69 6c 73 20 6f 6e 20 74 68 | c/04-schema.md.for.details.on.th |
b4c0 | 65 20 73 63 68 65 6d 61 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 | e.schema</warning>');.}.else.{.$ |
b4e0 | 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 6f 72 3e 27 20 2e 20 24 66 69 6c | output->writeln('<error>'...$fil |
b500 | 65 20 2e 20 27 20 69 73 20 69 6e 76 61 6c 69 64 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 | e...'.is.invalid,.the.following. |
b520 | 65 72 72 6f 72 73 2f 77 61 72 6e 69 6e 67 73 20 77 65 72 65 20 66 6f 75 6e 64 3a 3c 2f 65 72 72 | errors/warnings.were.found:</err |
b540 | 6f 72 3e 27 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 0a 27 65 72 | or>');.}..$messages.=.array(.'er |
b560 | 72 6f 72 27 20 3d 3e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 65 72 72 6f 72 73 2c 20 24 70 75 | ror'.=>.array_merge($errors,.$pu |
b580 | 62 6c 69 73 68 45 72 72 6f 72 73 29 2c 0a 27 77 61 72 6e 69 6e 67 27 20 3d 3e 20 24 77 61 72 6e | blishErrors),.'warning'.=>.$warn |
b5a0 | 69 6e 67 73 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 | ings,.);..foreach.($messages.as. |
b5c0 | 24 73 74 79 6c 65 20 3d 3e 20 24 6d 73 67 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6d 73 67 | $style.=>.$msgs).{.foreach.($msg |
b5e0 | 73 20 61 73 20 24 6d 73 67 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c | s.as.$msg).{.$output->writeln('< |
b600 | 27 20 2e 20 24 73 74 79 6c 65 20 2e 20 27 3e 27 20 2e 20 24 6d 73 67 20 2e 20 27 3c 2f 27 20 2e | '...$style...'>'...$msg...'</'.. |
b620 | 20 24 73 74 79 6c 65 20 2e 20 27 3e 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 65 72 72 | .$style...'>');.}.}..return.$err |
b640 | 6f 72 73 20 7c 7c 20 24 70 75 62 6c 69 73 68 45 72 72 6f 72 73 20 3f 20 31 20 3a 20 30 3b 0a 7d | ors.||.$publishErrors.?.1.:.0;.} |
b660 | 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f | .}.<?php............namespace.Co |
b680 | 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f | mposer\Command;..use.Composer\Co |
b6a0 | 6d 70 6f 73 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f | mposer;.use.Symfony\Component\Co |
b6c0 | 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 | nsole\Input\InputInterface;.use. |
b6e0 | 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c | Symfony\Component\Console\Input\ |
b700 | 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | InputArgument;.use.Symfony\Compo |
b720 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a | nent\Console\Input\InputOption;. |
b740 | 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 | use.Symfony\Component\Console\Ou |
b760 | 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 | tput\OutputInterface;......class |
b780 | 20 44 65 70 65 6e 64 73 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a | .DependsCommand.extends.Command. |
b7a0 | 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 69 6e 6b 54 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a | {.protected.$linkTypes.=.array(. |
b7c0 | 27 72 65 71 75 69 72 65 27 20 3d 3e 20 27 72 65 71 75 69 72 65 73 27 2c 0a 27 72 65 71 75 69 72 | 'require'.=>.'requires',.'requir |
b7e0 | 65 2d 64 65 76 27 20 3d 3e 20 27 64 65 76 52 65 71 75 69 72 65 73 27 2c 0a 29 3b 0a 0a 70 72 6f | e-dev'.=>.'devRequires',.);..pro |
b800 | 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 | tected.function.configure().{.$t |
b820 | 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 64 65 70 65 6e 64 73 27 29 0a 2d 3e 73 65 74 44 65 | his.->setName('depends').->setDe |
b840 | 73 63 72 69 70 74 69 6f 6e 28 27 53 68 6f 77 73 20 77 68 69 63 68 20 70 61 63 6b 61 67 65 73 20 | scription('Shows.which.packages. |
b860 | 64 65 70 65 6e 64 20 6f 6e 20 74 68 65 20 67 69 76 65 6e 20 70 61 63 6b 61 67 65 27 29 0a 2d 3e | depend.on.the.given.package').-> |
b880 | 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 | setDefinition(array(.new.InputAr |
b8a0 | 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a | gument('package',.InputArgument: |
b8c0 | 3a 52 45 51 55 49 52 45 44 2c 20 27 50 61 63 6b 61 67 65 20 74 6f 20 69 6e 73 70 65 63 74 27 29 | :REQUIRED,.'Package.to.inspect') |
b8e0 | 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6c 69 6e 6b 2d 74 79 70 65 27 2c 20 27 | ,.new.InputOption('link-type',.' |
b900 | 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 7c | ',.InputOption::VALUE_OPTIONAL.| |
b920 | 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 2c 20 27 4c | .InputOption::VALUE_IS_ARRAY,.'L |
b940 | 69 6e 6b 20 74 79 70 65 73 20 74 6f 20 73 68 6f 77 20 28 72 65 71 75 69 72 65 2c 20 72 65 71 75 | ink.types.to.show.(require,.requ |
b960 | 69 72 65 2d 64 65 76 29 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 6c 69 6e | ire-dev)',.array_keys($this->lin |
b980 | 6b 54 79 70 65 73 29 29 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 44 69 73 | kTypes)).)).->setHelp(<<<EOT.Dis |
b9a0 | 70 6c 61 79 73 20 64 65 74 61 69 6c 65 64 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 | plays.detailed.information.about |
b9c0 | 20 77 68 65 72 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 72 65 66 65 72 65 6e 63 65 64 2e 0a | .where.a.package.is.referenced.. |
b9e0 | 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 64 65 70 65 6e 64 73 | .<info>php.composer.phar.depends |
ba00 | 20 63 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 | .composer/composer</info>..EOT.) |
ba20 | 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 | .;.}..protected.function.execute |
ba40 | 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e | (InputInterface.$input,.OutputIn |
ba60 | 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 | terface.$output).{.$composer.=.$ |
ba80 | 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 | this->getComposer();.$references |
baa0 | 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 24 69 6e 70 75 74 2c 20 | .=.$this->getReferences($input,. |
bac0 | 24 6f 75 74 70 75 74 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 | $output,.$composer);..if.($input |
bae0 | 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 29 20 7b 0a 24 74 68 69 73 2d | ->getOption('verbose')).{.$this- |
bb00 | 3e 70 72 69 6e 74 52 65 66 65 72 65 6e 63 65 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 | >printReferences($input,.$output |
bb20 | 2c 20 24 72 65 66 65 72 65 6e 63 65 73 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e | ,.$references);.}.else.{.$this-> |
bb40 | 70 72 69 6e 74 50 61 63 6b 61 67 65 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 | printPackages($input,.$output,.$ |
bb60 | 72 65 66 65 72 65 6e 63 65 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 | references);.}.}...........priva |
bb80 | 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 49 6e 70 75 74 49 | te.function.getReferences(InputI |
bba0 | 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 | nterface.$input,.OutputInterface |
bbc0 | 20 24 6f 75 74 70 75 74 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 29 0a 7b 0a | .$output,.Composer.$composer).{. |
bbe0 | 24 6e 65 65 64 6c 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 | $needle.=.$input->getArgument('p |
bc00 | 61 63 6b 61 67 65 27 29 3b 0a 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 61 72 72 61 79 28 29 | ackage');..$references.=.array() |
bc20 | 3b 0a 24 76 65 72 62 6f 73 65 20 3d 20 28 62 6f 6f 6c 29 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f | ;.$verbose.=.(bool).$input->getO |
bc40 | 70 74 69 6f 6e 28 27 76 65 72 62 6f 73 65 27 29 3b 0a 0a 24 72 65 70 6f 73 20 3d 20 24 63 6f 6d | ption('verbose');..$repos.=.$com |
bc60 | 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 | poser->getRepositoryManager()->g |
bc80 | 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 24 74 79 70 65 73 20 3d 20 24 69 6e 70 75 | etRepositories();.$types.=.$inpu |
bca0 | 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6c 69 6e 6b 2d 74 79 70 65 27 29 3b 0a 0a 66 6f 72 65 | t->getOption('link-type');..fore |
bcc0 | 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 66 6f | ach.($repos.as.$repository).{.fo |
bce0 | 72 65 61 63 68 20 28 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 | reach.($repository->getPackages( |
bd00 | 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 73 | ).as.$package).{.foreach.($types |
bd20 | 20 61 73 20 24 74 79 70 65 29 20 7b 0a 24 74 79 70 65 20 3d 20 72 74 72 69 6d 28 24 74 79 70 65 | .as.$type).{.$type.=.rtrim($type |
bd40 | 2c 20 27 73 27 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6c 69 6e 6b 54 79 | ,.'s');.if.(!isset($this->linkTy |
bd60 | 70 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 | pes[$type])).{.throw.new.\Invali |
bd80 | 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 65 78 70 65 63 74 65 64 20 6c | dArgumentException('Unexpected.l |
bda0 | 69 6e 6b 20 74 79 70 65 3a 20 27 2e 24 74 79 70 65 2e 27 2c 20 76 61 6c 69 64 20 74 79 70 65 73 | ink.type:.'.$type.',.valid.types |
bdc0 | 3a 20 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 | :.'.implode(',.',.array_keys($th |
bde0 | 69 73 2d 3e 6c 69 6e 6b 54 79 70 65 73 29 29 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 70 61 | is->linkTypes)));.}.foreach.($pa |
be00 | 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 24 74 68 69 73 2d 3e 6c 69 6e 6b 54 79 70 65 73 5b 24 | ckage->{'get'.$this->linkTypes[$ |
be20 | 74 79 70 65 5d 7d 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e | type]}().as.$link).{.if.($link-> |
be40 | 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 65 65 64 6c 65 29 20 7b 0a 69 66 20 28 24 | getTarget().===.$needle).{.if.($ |
be60 | 76 65 72 62 6f 73 65 29 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 73 5b 5d 20 3d 20 61 72 72 61 79 | verbose).{.$references[].=.array |
be80 | 28 24 74 79 70 65 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 6c 69 6e 6b 29 3b 0a 7d 20 65 6c 73 65 | ($type,.$package,.$link);.}.else |
bea0 | 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 | .{.$references[$package->getName |
bec0 | 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b | ()].=.$package->getPrettyName(); |
bee0 | 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 66 65 72 65 6e 63 65 73 | .}.}.}.}.}.}..return.$references |
bf00 | 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 52 65 66 65 72 | ;.}..private.function.printRefer |
bf20 | 65 6e 63 65 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 | ences(InputInterface.$input,.Out |
bf40 | 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 61 72 72 61 79 20 24 72 65 66 | putInterface.$output,.array.$ref |
bf60 | 65 72 65 6e 63 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 66 65 72 65 6e 63 65 73 20 | erences).{.foreach.($references. |
bf80 | 61 73 20 24 72 65 66 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 72 65 66 | as.$ref).{.$output->writeln($ref |
bfa0 | 5b 31 5d 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 20 2e 20 27 20 27 20 2e 20 24 72 65 | [1]->getPrettyName()...'.'...$re |
bfc0 | 66 5b 31 5d 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 3c 69 6e | f[1]->getPrettyVersion()...'.<in |
bfe0 | 66 6f 3e 27 20 2e 20 24 72 65 66 5b 30 5d 20 2e 20 27 3c 2f 69 6e 66 6f 3e 20 27 20 2e 20 24 72 | fo>'...$ref[0]...'</info>.'...$r |
c000 | 65 66 5b 32 5d 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d | ef[2]->getPrettyConstraint());.} |
c020 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 50 61 63 6b 61 67 | .}..private.function.printPackag |
c040 | 65 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 | es(InputInterface.$input,.Output |
c060 | 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 | Interface.$output,.array.$packag |
c080 | 65 73 29 0a 7b 0a 6b 73 6f 72 74 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 66 6f 72 65 61 63 68 20 | es).{.ksort($packages);.foreach. |
c0a0 | 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6f 75 74 70 75 | ($packages.as.$package).{.$outpu |
c0c0 | 74 2d 3e 77 72 69 74 65 6c 6e 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 | t->writeln($package);.}.}.}.<?ph |
c0e0 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
c100 | 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c | Command;..use.Symfony\Component\ |
c120 | 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 | Console\Input\InputInterface;.us |
c140 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 | e.Symfony\Component\Console\Inpu |
c160 | 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d | t\InputArgument;.use.Symfony\Com |
c180 | 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 | ponent\Console\Output\OutputInte |
c1a0 | 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 | rface;.use.Composer\Repository\C |
c1c0 | 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | ompositeRepository;.use.Composer |
c1e0 | 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a | \Repository\PlatformRepository;. |
c200 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 | use.Composer\Package\PackageInte |
c220 | 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 | rface;.use.Composer\Package\Alia |
c240 | 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 79 3b 0a | sPackage;.use.Composer\Factory;. |
c260 | 0a 0a 0a 0a 63 6c 61 73 73 20 53 65 61 72 63 68 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 | ....class.SearchCommand.extends. |
c280 | 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e | Command.{.protected.function.con |
c2a0 | 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 65 61 72 | figure().{.$this.->setName('sear |
c2c0 | 63 68 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 53 65 61 72 63 68 20 66 6f | ch').->setDescription('Search.fo |
c2e0 | 72 20 70 61 63 6b 61 67 65 73 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 | r.packages').->setDefinition(arr |
c300 | 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 74 6f 6b 65 6e 73 27 2c 20 | ay(.new.InputArgument('tokens',. |
c320 | 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 | InputArgument::IS_ARRAY.|.InputA |
c340 | 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 74 6f 6b 65 6e 73 20 74 6f 20 73 65 | rgument::REQUIRED,.'tokens.to.se |
c360 | 61 72 63 68 20 66 6f 72 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a | arch.for'),.)).->setHelp(<<<EOT. |
c380 | 54 68 65 20 73 65 61 72 63 68 20 63 6f 6d 6d 61 6e 64 20 73 65 61 72 63 68 65 73 20 66 6f 72 20 | The.search.command.searches.for. |
c3a0 | 70 61 63 6b 61 67 65 73 20 62 79 20 69 74 73 20 6e 61 6d 65 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 | packages.by.its.name.<info>php.c |
c3c0 | 6f 6d 70 6f 73 65 72 2e 70 68 61 72 20 73 65 61 72 63 68 20 73 79 6d 66 6f 6e 79 20 63 6f 6d 70 | omposer.phar.search.symfony.comp |
c3e0 | 6f 73 65 72 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 | oser</info>..EOT.).;.}..protecte |
c400 | 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 | d.function.execute(InputInterfac |
c420 | 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 | e.$input,.OutputInterface.$outpu |
c440 | 74 29 0a 7b 0a 0a 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 | t).{...$platformRepo.=.new.Platf |
c460 | 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 | ormRepository;.if.($composer.=.$ |
c480 | 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 66 61 6c 73 65 29 29 20 7b 0a 24 6c 6f 63 | this->getComposer(false)).{.$loc |
c4a0 | 61 6c 52 65 70 6f 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 | alRepo.=.$composer->getRepositor |
c4c0 | 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 | yManager()->getLocalRepository() |
c4e0 | 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 | ;.$installedRepo.=.new.Composite |
c500 | 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 70 6c | Repository(array($localRepo,.$pl |
c520 | 61 74 66 6f 72 6d 52 65 70 6f 29 29 3b 0a 24 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f | atformRepo));.$repos.=.new.Compo |
c540 | 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 | siteRepository(array_merge(array |
c560 | 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 2c 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 | ($installedRepo),.$composer->get |
c580 | 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f | RepositoryManager()->getReposito |
c5a0 | 72 69 65 73 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 | ries()));.}.else.{.$defaultRepos |
c5c0 | 20 3d 20 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 | .=.Factory::createDefaultReposit |
c5e0 | 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e | ories($this->getIO());.$output-> |
c600 | 77 72 69 74 65 6c 6e 28 27 4e 6f 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 6f 75 6e 64 20 | writeln('No.composer.json.found. |
c620 | 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2c 20 73 68 6f 77 69 6e | in.the.current.directory,.showin |
c640 | 67 20 70 61 63 6b 61 67 65 73 20 66 72 6f 6d 20 27 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 | g.packages.from.'...implode(',.' |
c660 | 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 29 3b 0a 24 | ,.array_keys($defaultRepos)));.$ |
c680 | 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 3b 0a 24 | installedRepo.=.$platformRepo;.$ |
c6a0 | 72 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 | repos.=.new.CompositeRepository( |
c6c0 | 61 72 72 61 79 5f 6d 65 72 67 65 28 61 72 72 61 79 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f | array_merge(array($installedRepo |
c6e0 | 29 2c 20 24 64 65 66 61 75 6c 74 52 65 70 6f 73 29 29 3b 0a 7d 0a 0a 24 74 6f 6b 65 6e 73 20 3d | ),.$defaultRepos));.}..$tokens.= |
c700 | 20 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 74 6f 6b 65 6e 73 27 29 3b 0a | .$input->getArgument('tokens');. |
c720 | 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 6d 61 78 50 61 63 6b 61 67 | $packages.=.array();..$maxPackag |
c740 | 65 4c 65 6e 67 74 68 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 2d 3e 67 65 | eLength.=.0;.foreach.($repos->ge |
c760 | 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 | tPackages().as.$package).{.if.($ |
c780 | 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 | package.instanceof.AliasPackage. |
c7a0 | 7c 7c 20 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 | ||.isset($packages[$package->get |
c7c0 | 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 | Name()])).{.continue;.}..foreach |
c7e0 | 20 28 24 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 21 24 73 63 6f | .($tokens.as.$token).{.if.(!$sco |
c800 | 72 65 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 | re.=.$this->matchPackage($packag |
c820 | 65 2c 20 24 74 6f 6b 65 6e 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 | e,.$token)).{.continue;.}..if.(f |
c840 | 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 20 3d 20 73 74 72 69 70 6f 73 28 24 70 61 63 6b 61 67 | alse.!==.($pos.=.stripos($packag |
c860 | 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 74 6f 6b 65 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 20 | e->getName(),.$token))).{.$name. |
c880 | 3d 20 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 | =.substr($package->getPrettyName |
c8a0 | 28 29 2c 20 30 2c 20 24 70 6f 73 29 0a 2e 20 27 3c 68 69 67 68 6c 69 67 68 74 3e 27 20 2e 20 73 | (),.0,.$pos)...'<highlight>'...s |
c8c0 | 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c | ubstr($package->getPrettyName(), |
c8e0 | 20 24 70 6f 73 2c 20 73 74 72 6c 65 6e 28 24 74 6f 6b 65 6e 29 29 20 2e 20 27 3c 2f 68 69 67 68 | .$pos,.strlen($token))...'</high |
c900 | 6c 69 67 68 74 3e 27 0a 2e 20 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 | light>'...substr($package->getPr |
c920 | 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 70 6f 73 20 2b 20 73 74 72 6c 65 6e 28 24 74 6f 6b 65 6e | ettyName(),.$pos.+.strlen($token |
c940 | 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 | ));.}.else.{.$name.=.$package->g |
c960 | 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 | etPrettyName();.}..$description. |
c980 | 3d 20 73 74 72 74 6f 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f | =.strtok($package->getDescriptio |
c9a0 | 6e 28 29 2c 20 22 5c 72 5c 6e 22 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f | n(),."\r\n");.if.(false.!==.($po |
c9c0 | 73 20 3d 20 73 74 72 69 70 6f 73 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 74 6f 6b 65 6e | s.=.stripos($description,.$token |
c9e0 | 29 29 29 20 7b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 73 75 62 73 74 72 28 24 64 65 73 | ))).{.$description.=.substr($des |
ca00 | 63 72 69 70 74 69 6f 6e 2c 20 30 2c 20 24 70 6f 73 29 0a 2e 20 27 3c 68 69 67 68 6c 69 67 68 74 | cription,.0,.$pos)...'<highlight |
ca20 | 3e 27 20 2e 20 73 75 62 73 74 72 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 70 6f 73 2c 20 | >'...substr($description,.$pos,. |
ca40 | 73 74 72 6c 65 6e 28 24 74 6f 6b 65 6e 29 29 20 2e 20 27 3c 2f 68 69 67 68 6c 69 67 68 74 3e 27 | strlen($token))...'</highlight>' |
ca60 | 0a 2e 20 73 75 62 73 74 72 28 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 70 6f 73 20 2b 20 73 | ...substr($description,.$pos.+.s |
ca80 | 74 72 6c 65 6e 28 24 74 6f 6b 65 6e 29 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 5b 24 70 61 | trlen($token));.}..$packages[$pa |
caa0 | 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 | ckage->getName()].=.array(.'name |
cac0 | 27 20 3d 3e 20 24 6e 61 6d 65 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 24 64 65 | '.=>.$name,.'description'.=>.$de |
cae0 | 73 63 72 69 70 74 69 6f 6e 2c 0a 27 6c 65 6e 67 74 68 27 20 3d 3e 20 24 6c 65 6e 67 74 68 20 3d | scription,.'length'.=>.$length.= |
cb00 | 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 | .strlen($package->getPrettyName( |
cb20 | 29 29 2c 0a 27 73 63 6f 72 65 27 20 3d 3e 20 24 73 63 6f 72 65 2c 0a 29 3b 0a 0a 24 6d 61 78 50 | )),.'score'.=>.$score,.);..$maxP |
cb40 | 61 63 6b 61 67 65 4c 65 6e 67 74 68 20 3d 20 6d 61 78 28 24 6d 61 78 50 61 63 6b 61 67 65 4c 65 | ackageLength.=.max($maxPackageLe |
cb60 | 6e 67 74 68 2c 20 24 6c 65 6e 67 74 68 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 7d | ngth,.$length);..continue.2;.}.} |
cb80 | 0a 0a 75 73 6f 72 74 28 24 70 61 63 6b 61 67 65 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c | ..usort($packages,.function.($a, |
cba0 | 20 24 62 29 20 7b 0a 69 66 20 28 24 61 5b 27 73 63 6f 72 65 27 5d 20 3d 3d 3d 20 24 62 5b 27 73 | .$b).{.if.($a['score'].===.$b['s |
cbc0 | 63 6f 72 65 27 5d 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 | core']).{.return.0;.}..return.$a |
cbe0 | 5b 27 73 63 6f 72 65 27 5d 20 3e 20 24 62 5b 27 73 63 6f 72 65 27 5d 20 3f 20 2d 31 20 3a 20 31 | ['score'].>.$b['score'].?.-1.:.1 |
cc00 | 3b 0a 7d 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 64 65 | ;.});..foreach.($packages.as.$de |
cc20 | 74 61 69 6c 73 29 20 7b 0a 24 65 78 74 72 61 53 70 61 63 65 73 20 3d 20 24 6d 61 78 50 61 63 6b | tails).{.$extraSpaces.=.$maxPack |
cc40 | 61 67 65 4c 65 6e 67 74 68 20 2d 20 24 64 65 74 61 69 6c 73 5b 27 6c 65 6e 67 74 68 27 5d 3b 0a | ageLength.-.$details['length'];. |
cc60 | 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 64 65 74 61 69 6c 73 5b 27 6e 61 6d 65 27 | $output->writeln($details['name' |
cc80 | 5d 20 2e 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 65 78 74 72 61 53 70 61 63 65 73 | ]...str_repeat('.',.$extraSpaces |
cca0 | 29 20 2e 27 20 3c 63 6f 6d 6d 65 6e 74 3e 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 27 2e 20 24 64 65 | )..'.<comment>:</comment>.'..$de |
ccc0 | 74 61 69 6c 73 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a | tails['description']);.}.}...... |
cce0 | 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 50 61 63 6b 61 67 65 | ...private.function.matchPackage |
cd00 | 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 74 6f 6b | (PackageInterface.$package,.$tok |
cd20 | 65 6e 29 0a 7b 0a 24 73 63 6f 72 65 20 3d 20 30 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d | en).{.$score.=.0;..if.(false.!== |
cd40 | 20 73 74 72 69 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 74 | .stripos($package->getName(),.$t |
cd60 | 6f 6b 65 6e 29 29 20 7b 0a 24 73 63 6f 72 65 20 2b 3d 20 35 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c | oken)).{.$score.+=.5;.}..if.(fal |
cd80 | 73 65 20 21 3d 3d 20 73 74 72 69 70 6f 73 28 6a 6f 69 6e 28 27 2c 27 2c 20 24 70 61 63 6b 61 67 | se.!==.stripos(join(',',.$packag |
cda0 | 65 2d 3e 67 65 74 4b 65 79 77 6f 72 64 73 28 29 20 3f 3a 20 61 72 72 61 79 28 29 29 2c 20 24 74 | e->getKeywords().?:.array()),.$t |
cdc0 | 6f 6b 65 6e 29 29 20 7b 0a 24 73 63 6f 72 65 20 2b 3d 20 33 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c | oken)).{.$score.+=.3;.}..if.(fal |
cde0 | 73 65 20 21 3d 3d 20 73 74 72 69 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 73 63 | se.!==.stripos($package->getDesc |
ce00 | 72 69 70 74 69 6f 6e 28 29 2c 20 24 74 6f 6b 65 6e 29 29 20 7b 0a 24 73 63 6f 72 65 20 2b 3d 20 | ription(),.$token)).{.$score.+=. |
ce20 | 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 63 6f 72 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | 1;.}..return.$score;.}.}.<?php.. |
ce40 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d | ..........namespace.Composer\Com |
ce60 | 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 | mand;..use.Composer\Composer;.us |
ce80 | 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d | e.Composer\Util\RemoteFilesystem |
cea0 | 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c | ;.use.Symfony\Component\Console\ |
cec0 | 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e | Input\InputInterface;.use.Symfon |
cee0 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 | y\Component\Console\Output\Outpu |
cf00 | 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 65 6c 66 55 70 64 61 74 65 | tInterface;.....class.SelfUpdate |
cf20 | 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 | Command.extends.Command.{.protec |
cf40 | 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 | ted.function.configure().{.$this |
cf60 | 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 73 65 6c 66 2d 75 70 64 61 74 65 27 29 0a 2d 3e 73 65 74 41 | .->setName('self-update').->setA |
cf80 | 6c 69 61 73 65 73 28 61 72 72 61 79 28 27 73 65 6c 66 75 70 64 61 74 65 27 29 29 0a 2d 3e 73 65 | liases(array('selfupdate')).->se |
cfa0 | 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 55 70 64 61 74 65 73 20 63 6f 6d 70 6f 73 65 72 2e 70 | tDescription('Updates.composer.p |
cfc0 | 68 61 72 20 74 6f 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 2e 27 29 0a 2d 3e 73 | har.to.the.latest.version.').->s |
cfe0 | 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 73 65 6c 66 2d 75 70 64 | etHelp(<<<EOT.The.<info>self-upd |
d000 | 61 74 65 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 68 65 63 6b 73 20 67 65 74 63 6f 6d | ate</info>.command.checks.getcom |
d020 | 70 6f 73 65 72 2e 6f 72 67 20 66 6f 72 20 6e 65 77 65 72 0a 76 65 72 73 69 6f 6e 73 20 6f 66 20 | poser.org.for.newer.versions.of. |
d040 | 63 6f 6d 70 6f 73 65 72 20 61 6e 64 20 69 66 20 66 6f 75 6e 64 2c 20 69 6e 73 74 61 6c 6c 73 20 | composer.and.if.found,.installs. |
d060 | 74 68 65 20 6c 61 74 65 73 74 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e | the.latest...<info>php.composer. |
d080 | 70 68 61 72 20 73 65 6c 66 2d 75 70 64 61 74 65 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b | phar.self-update</info>..EOT.).; |
d0a0 | 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 | .}..protected.function.execute(I |
d0c0 | 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 | nputInterface.$input,.OutputInte |
d0e0 | 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 72 66 73 20 3d 20 6e 65 77 20 52 65 6d 6f | rface.$output).{.$rfs.=.new.Remo |
d100 | 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 3b 0a 24 6c | teFilesystem($this->getIO());.$l |
d120 | 61 74 65 73 74 20 3d 20 74 72 69 6d 28 24 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 27 | atest.=.trim($rfs->getContents(' |
d140 | 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 27 2c 20 27 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d | getcomposer.org',.'http://getcom |
d160 | 70 6f 73 65 72 2e 6f 72 67 2f 76 65 72 73 69 6f 6e 27 2c 20 66 61 6c 73 65 29 29 3b 0a 0a 69 66 | poser.org/version',.false));..if |
d180 | 20 28 43 6f 6d 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 20 21 3d 3d 20 24 6c 61 74 65 73 74 29 | .(Composer::VERSION.!==.$latest) |
d1a0 | 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 22 55 70 64 | .{.$output->writeln(sprintf("Upd |
d1c0 | 61 74 69 6e 67 20 74 6f 20 76 65 72 73 69 6f 6e 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e | ating.to.version.<info>%s</info> |
d1e0 | 2e 22 2c 20 24 6c 61 74 65 73 74 29 29 3b 0a 0a 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 6d 65 20 | .",.$latest));..$remoteFilename. |
d200 | 3d 20 27 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 2f 63 6f 6d 70 6f 73 | =.'http://getcomposer.org/compos |
d220 | 65 72 2e 70 68 61 72 27 3b 0a 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 20 3d 20 24 5f 53 45 52 | er.phar';.$localFilename.=.$_SER |
d240 | 56 45 52 5b 27 61 72 67 76 27 5d 5b 30 5d 3b 0a 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 20 3d 20 | VER['argv'][0];.$tempFilename.=. |
d260 | 62 61 73 65 6e 61 6d 65 28 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 2c 20 27 2e 70 68 61 72 27 | basename($localFilename,.'.phar' |
d280 | 29 2e 27 2d 74 65 6d 70 2e 70 68 61 72 27 3b 0a 0a 24 72 66 73 2d 3e 63 6f 70 79 28 27 67 65 74 | ).'-temp.phar';..$rfs->copy('get |
d2a0 | 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 27 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 6e 61 6d 65 2c 20 | composer.org',.$remoteFilename,. |
d2c0 | 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 3b 0a 0a 74 72 79 20 7b 0a 63 68 6d 6f 64 28 24 74 65 | $tempFilename);..try.{.chmod($te |
d2e0 | 6d 70 46 69 6c 65 6e 61 6d 65 2c 20 30 37 37 37 20 26 20 7e 75 6d 61 73 6b 28 29 29 3b 0a 0a 20 | mpFilename,.0777.&.~umask());... |
d300 | 24 70 68 61 72 20 3d 20 6e 65 77 20 5c 50 68 61 72 28 24 74 65 6d 70 46 69 6c 65 6e 61 6d 65 29 | $phar.=.new.\Phar($tempFilename) |
d320 | 3b 0a 0a 20 75 6e 73 65 74 28 24 70 68 61 72 29 3b 0a 72 65 6e 61 6d 65 28 24 74 65 6d 70 46 69 | ;...unset($phar);.rename($tempFi |
d340 | 6c 65 6e 61 6d 65 2c 20 24 6c 6f 63 61 6c 46 69 6c 65 6e 61 6d 65 29 3b 0a 7d 20 63 61 74 63 68 | lename,.$localFilename);.}.catch |
d360 | 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 65 20 69 6e 73 74 61 | .(\Exception.$e).{.if.(!$e.insta |
d380 | 6e 63 65 6f 66 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 | nceof.\UnexpectedValueException. |
d3a0 | 26 26 20 21 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 50 68 61 72 45 78 63 65 70 74 69 6f 6e | &&.!$e.instanceof.\PharException |
d3c0 | 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 75 6e 6c 69 6e 6b 28 24 74 65 6d 70 46 69 6c 65 | ).{.throw.$e;.}.unlink($tempFile |
d3e0 | 6e 61 6d 65 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 6f 72 3e | name);.$output->writeln('<error> |
d400 | 54 68 65 20 64 6f 77 6e 6c 6f 61 64 20 69 73 20 63 6f 72 72 75 70 74 65 64 20 28 27 2e 24 65 2d | The.download.is.corrupted.('.$e- |
d420 | 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 29 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 24 6f 75 | >getMessage().').</error>');.$ou |
d440 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 6f 72 3e 50 6c 65 61 73 65 20 72 65 2d | tput->writeln('<error>Please.re- |
d460 | 72 75 6e 20 74 68 65 20 73 65 6c 66 2d 75 70 64 61 74 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 74 | run.the.self-update.command.to.t |
d480 | 72 79 20 61 67 61 69 6e 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a | ry.again.</error>');.}.}.else.{. |
d4a0 | 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 3c 69 6e 66 6f 3e 59 6f 75 20 61 72 65 20 | $output->writeln("<info>You.are. |
d4c0 | 75 73 69 6e 67 20 74 68 65 20 6c 61 74 65 73 74 20 63 6f 6d 70 6f 73 65 72 20 76 65 72 73 69 6f | using.the.latest.composer.versio |
d4e0 | 6e 2e 3c 2f 69 6e 66 6f 3e 22 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | n.</info>");.}.}.}.<?php........ |
d500 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a | ....namespace.Composer\Command;. |
d520 | 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 | .use.Symfony\Component\Console\I |
d540 | 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 | nput\InputInterface;.use.Symfony |
d560 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 | \Component\Console\Input\InputAr |
d580 | 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f | gument;.use.Symfony\Component\Co |
d5a0 | 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d | nsole\Input\InputOption;.use.Sym |
d5c0 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 | fony\Component\Console\Output\Ou |
d5e0 | 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 | tputInterface;.use.Composer\Fact |
d600 | 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 | ory;.use.Composer\Installer;.use |
d620 | 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d | .Composer\Json\JsonFile;.use.Com |
d640 | 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 3b 0a 0a 0a 0a 0a | poser\Json\JsonManipulator;..... |
d660 | 0a 63 6c 61 73 73 20 52 65 71 75 69 72 65 43 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 49 6e | .class.RequireCommand.extends.In |
d680 | 69 74 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 | itCommand.{.protected.function.c |
d6a0 | 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 72 65 | onfigure().{.$this.->setName('re |
d6c0 | 71 75 69 72 65 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 41 64 64 73 20 72 | quire').->setDescription('Adds.r |
d6e0 | 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 73 20 74 6f 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 | equired.packages.to.your.compose |
d700 | 72 2e 6a 73 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 6d 27 29 0a 2d 3e 73 65 74 | r.json.and.installs.them').->set |
d720 | 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d | Definition(array(.new.InputArgum |
d740 | 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 49 | ent('packages',.InputArgument::I |
d760 | 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 | S_ARRAY.|.InputArgument::OPTIONA |
d780 | 4c 2c 20 27 52 65 71 75 69 72 65 64 20 70 61 63 6b 61 67 65 20 77 69 74 68 20 61 20 76 65 72 73 | L,.'Required.package.with.a.vers |
d7a0 | 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 2c 20 65 2e 67 2e 20 66 6f 6f 2f 62 61 72 3a 31 2e 30 | ion.constraint,.e.g..foo/bar:1.0 |
d7c0 | 2e 30 20 6f 72 20 66 6f 6f 2f 62 61 72 3d 31 2e 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 61 72 20 | .0.or.foo/bar=1.0.0.or."foo/bar. |
d7e0 | 31 2e 30 2e 30 22 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 76 27 2c | 1.0.0"'),.new.InputOption('dev', |
d800 | 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 | .null,.InputOption::VALUE_NONE,. |
d820 | 27 41 64 64 20 72 65 71 75 69 72 65 6d 65 6e 74 20 74 6f 20 72 65 71 75 69 72 65 2d 64 65 76 2e | 'Add.requirement.to.require-dev. |
d840 | 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 | '),.new.InputOption('prefer-sour |
d860 | 63 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f | ce',.null,.InputOption::VALUE_NO |
d880 | 4e 45 2c 20 27 46 6f 72 63 65 73 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 66 72 6f 6d 20 70 61 | NE,.'Forces.installation.from.pa |
d8a0 | 63 6b 61 67 65 20 73 6f 75 72 63 65 73 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2c 20 69 6e 63 | ckage.sources.when.possible,.inc |
d8c0 | 6c 75 64 69 6e 67 20 56 43 53 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 27 29 2c 0a 6e 65 77 20 49 | luding.VCS.information.'),.new.I |
d8e0 | 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e | nputOption('no-update',.null,.In |
d900 | 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 73 | putOption::VALUE_NONE,.'Disables |
d920 | 20 74 68 65 20 61 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 20 6f 66 20 74 68 65 20 64 65 70 | .the.automatic.update.of.the.dep |
d940 | 65 6e 64 65 6e 63 69 65 73 2e 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f | endencies.'),.)).->setHelp(<<<EO |
d960 | 54 0a 54 68 65 20 72 65 71 75 69 72 65 20 63 6f 6d 6d 61 6e 64 20 61 64 64 73 20 72 65 71 75 69 | T.The.require.command.adds.requi |
d980 | 72 65 64 20 70 61 63 6b 61 67 65 73 20 74 6f 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 | red.packages.to.your.composer.js |
d9a0 | 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 73 20 74 68 65 6d 0a 0a 49 66 20 79 6f 75 20 64 6f 20 | on.and.installs.them..If.you.do. |
d9c0 | 6e 6f 74 20 77 61 6e 74 20 74 6f 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 6e 65 77 20 64 65 70 65 | not.want.to.install.the.new.depe |
d9e0 | 6e 64 65 6e 63 69 65 73 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 79 6f 75 20 63 61 6e 20 63 61 6c | ndencies.immediately.you.can.cal |
da00 | 6c 20 69 74 20 77 69 74 68 20 2d 2d 6e 6f 2d 75 70 64 61 74 65 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d | l.it.with.--no-update..EOT.).;.} |
da20 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 | ..protected.function.execute(Inp |
da40 | 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 | utInterface.$input,.OutputInterf |
da60 | 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 46 61 | ace.$output).{.$factory.=.new.Fa |
da80 | 63 74 6f 72 79 3b 0a 24 66 69 6c 65 20 3d 20 24 66 61 63 74 6f 72 79 2d 3e 67 65 74 43 6f 6d 70 | ctory;.$file.=.$factory->getComp |
daa0 | 6f 73 65 72 46 69 6c 65 28 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 66 | oserFile();..if.(!file_exists($f |
dac0 | 69 6c 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 6f 72 | ile)).{.$output->writeln('<error |
dae0 | 3e 27 2e 24 66 69 6c 65 2e 27 20 6e 6f 74 20 66 6f 75 6e 64 2e 3c 2f 65 72 72 6f 72 3e 27 29 3b | >'.$file.'.not.found.</error>'); |
db00 | 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 | ..return.1;.}.if.(!is_readable($ |
db20 | 66 69 6c 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 72 6f | file)).{.$output->writeln('<erro |
db40 | 72 3e 27 2e 24 66 69 6c 65 2e 27 20 69 73 20 6e 6f 74 20 72 65 61 64 61 62 6c 65 2e 3c 2f 65 72 | r>'.$file.'.is.not.readable.</er |
db60 | 72 6f 72 3e 27 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 24 64 69 61 6c 6f 67 20 3d 20 | ror>');..return.1;.}..$dialog.=. |
db80 | 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 64 69 61 6c | $this->getHelperSet()->get('dial |
dba0 | 6f 67 27 29 3b 0a 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 66 69 6c | og');..$json.=.new.JsonFile($fil |
dbc0 | 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 0a | e);.$composer.=.$json->read();.. |
dbe0 | 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 | $requirements.=.$this->determine |
dc00 | 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 69 | Requirements($input,.$output,.$i |
dc20 | 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 70 61 63 6b 61 67 65 73 27 29 29 3b 0a | nput->getArgument('packages'));. |
dc40 | 0a 24 72 65 71 75 69 72 65 4b 65 79 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e | .$requireKey.=.$input->getOption |
dc60 | 28 27 64 65 76 27 29 20 3f 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 20 3a 20 27 72 65 71 75 69 | ('dev').?.'require-dev'.:.'requi |
dc80 | 72 65 27 3b 0a 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 5f 6b | re';.$baseRequirements.=.array_k |
dca0 | 65 79 5f 65 78 69 73 74 73 28 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 63 6f 6d 70 6f 73 65 72 | ey_exists($requireKey,.$composer |
dcc0 | 29 20 3f 20 24 63 6f 6d 70 6f 73 65 72 5b 24 72 65 71 75 69 72 65 4b 65 79 5d 20 3a 20 61 72 72 | ).?.$composer[$requireKey].:.arr |
dce0 | 61 79 28 29 3b 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 | ay();.$requirements.=.$this->for |
dd00 | 6d 61 74 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a | matRequirements($requirements);. |
dd20 | 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 46 69 6c 65 43 6c 65 61 6e 6c 79 28 24 | .if.(!$this->updateFileCleanly($ |
dd40 | 6a 73 6f 6e 2c 20 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 24 72 65 71 75 69 72 | json,.$baseRequirements,.$requir |
dd60 | 65 6d 65 6e 74 73 2c 20 24 72 65 71 75 69 72 65 4b 65 79 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 | ements,.$requireKey)).{.foreach. |
dd80 | 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 | ($requirements.as.$package.=>.$v |
dda0 | 65 72 73 69 6f 6e 29 20 7b 0a 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 5b 24 70 61 63 | ersion).{.$baseRequirements[$pac |
ddc0 | 6b 61 67 65 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 5b 24 | kage].=.$version;.}..$composer[$ |
dde0 | 72 65 71 75 69 72 65 4b 65 79 5d 20 3d 20 24 62 61 73 65 52 65 71 75 69 72 65 6d 65 6e 74 73 3b | requireKey].=.$baseRequirements; |
de00 | 0a 24 6a 73 6f 6e 2d 3e 77 72 69 74 65 28 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 7d 0a 0a 24 6f 75 | .$json->write($composer);.}..$ou |
de20 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 69 6e 66 6f 3e 27 2e 24 66 69 6c 65 2e 27 20 68 | tput->writeln('<info>'.$file.'.h |
de40 | 61 73 20 62 65 65 6e 20 75 70 64 61 74 65 64 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 24 | as.been.updated</info>');..if.($ |
de60 | 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 6f 2d 75 70 64 61 74 65 27 29 29 20 7b | input->getOption('no-update')).{ |
de80 | 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 74 68 69 | .return.0;.}....$composer.=.$thi |
dea0 | 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 28 29 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 67 | s->getComposer();.$io.=.$this->g |
dec0 | 65 74 49 4f 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 20 3d 20 49 6e 73 74 61 6c 6c 65 72 3a 3a 63 72 | etIO();.$install.=.Installer::cr |
dee0 | 65 61 74 65 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 0a | eate($io,.$composer);..$install. |
df00 | 2d 3e 73 65 74 56 65 72 62 6f 73 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 | ->setVerbose($input->getOption(' |
df20 | 76 65 72 62 6f 73 65 27 29 29 0a 2d 3e 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 69 6e | verbose')).->setPreferSource($in |
df40 | 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 70 72 65 66 65 72 2d 73 6f 75 72 63 65 27 29 29 | put->getOption('prefer-source')) |
df60 | 0a 2d 3e 73 65 74 44 65 76 4d 6f 64 65 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 | .->setDevMode($input->getOption( |
df80 | 27 64 65 76 27 29 29 0a 2d 3e 73 65 74 55 70 64 61 74 65 28 74 72 75 65 29 0a 2d 3e 73 65 74 55 | 'dev')).->setUpdate(true).->setU |
dfa0 | 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 28 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 3b | pdateWhitelist($requirements);.; |
dfc0 | 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 2d 3e 72 75 6e 28 29 20 3f 20 30 20 3a 20 31 | ..return.$install->run().?.0.:.1 |
dfe0 | 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 46 69 6c 65 | ;.}..private.function.updateFile |
e000 | 43 6c 65 61 6e 6c 79 28 24 6a 73 6f 6e 2c 20 61 72 72 61 79 20 24 62 61 73 65 2c 20 61 72 72 61 | Cleanly($json,.array.$base,.arra |
e020 | 79 20 24 6e 65 77 2c 20 24 72 65 71 75 69 72 65 4b 65 79 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 | y.$new,.$requireKey).{.$contents |
e040 | 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 | .=.file_get_contents($json->getP |
e060 | 61 74 68 28 29 29 3b 0a 0a 24 6d 61 6e 69 70 75 6c 61 74 6f 72 20 3d 20 6e 65 77 20 4a 73 6f 6e | ath());..$manipulator.=.new.Json |
e080 | 4d 61 6e 69 70 75 6c 61 74 6f 72 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 0a 66 6f 72 65 61 63 68 | Manipulator($contents);..foreach |
e0a0 | 20 28 24 6e 65 77 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e | .($new.as.$package.=>.$constrain |
e0c0 | 74 29 20 7b 0a 69 66 20 28 21 24 6d 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 61 64 64 4c 69 6e 6b 28 | t).{.if.(!$manipulator->addLink( |
e0e0 | 24 72 65 71 75 69 72 65 4b 65 79 2c 20 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 | $requireKey,.$package,.$constrai |
e100 | 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 66 69 6c 65 5f 70 | nt)).{.return.false;.}.}..file_p |
e120 | 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 2d 3e 67 65 74 50 61 74 68 28 29 2c 20 24 6d | ut_contents($json->getPath(),.$m |
e140 | 61 6e 69 70 75 6c 61 74 6f 72 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 29 3b 0a 0a 72 65 74 | anipulator->getContents());..ret |
e160 | 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | urn.true;.}..protected.function. |
e180 | 69 6e 74 65 72 61 63 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 | interact(InputInterface.$input,. |
e1a0 | 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 72 65 74 75 72 | OutputInterface.$output).{.retur |
e1c0 | 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | n;.}.}.<?php............namespac |
e1e0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 | e.Composer\Command\Helper;..use. |
e200 | 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 | Symfony\Component\Console\Helper |
e220 | 5c 44 69 61 6c 6f 67 48 65 6c 70 65 72 20 61 73 20 42 61 73 65 44 69 61 6c 6f 67 48 65 6c 70 65 | \DialogHelper.as.BaseDialogHelpe |
e240 | 72 3b 0a 0a 63 6c 61 73 73 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 42 | r;..class.DialogHelper.extends.B |
e260 | 61 73 65 44 69 61 6c 6f 67 48 65 6c 70 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | aseDialogHelper.{............pub |
e280 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 51 75 65 73 74 69 6f 6e 28 24 71 75 65 73 74 69 | lic.function.getQuestion($questi |
e2a0 | 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 24 73 65 70 20 3d 20 27 3a 27 29 | on,.$default.=.null,.$sep.=.':') |
e2c0 | 0a 7b 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 20 21 3d 3d 20 6e 75 6c 6c 20 3f 0a 73 70 | .{.return.$default.!==.null.?.sp |
e2e0 | 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 | rintf('<info>%s</info>.[<comment |
e300 | 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 5d 25 73 20 27 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 | >%s</comment>]%s.',.$question,.$ |
e320 | 64 65 66 61 75 6c 74 2c 20 24 73 65 70 29 20 3a 0a 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e | default,.$sep).:.sprintf('<info> |
e340 | 25 73 3c 2f 69 6e 66 6f 3e 25 73 20 27 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 73 65 70 29 3b | %s</info>%s.',.$question,.$sep); |
e360 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | .}.}.<?php............namespace. |
e380 | 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | Composer\Command;..use.Composer\ |
e3a0 | 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 | Json\JsonFile;.use.Composer\Fact |
e3c0 | 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d | ory;.use.Composer\Repository\Com |
e3e0 | 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 | positeRepository;.use.Composer\R |
e400 | 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 | epository\PlatformRepository;.us |
e420 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 | e.Symfony\Component\Console\Inpu |
e440 | 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | t\InputInterface;.use.Symfony\Co |
e460 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f | mponent\Console\Input\InputOptio |
e480 | 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | n;.use.Symfony\Component\Console |
e4a0 | 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d | \Output\OutputInterface;.use.Sym |
e4c0 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a | fony\Component\Process\Process;. |
e4e0 | 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 | use.Symfony\Component\Process\Ex |
e500 | 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 69 74 43 | ecutableFinder;......class.InitC |
e520 | 6f 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 | ommand.extends.Command.{.private |
e540 | 20 24 67 69 74 43 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 3b 0a 0a 70 75 | .$gitConfig;.private.$repos;..pu |
e560 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 | blic.function.parseAuthorString( |
e580 | 24 61 75 74 68 6f 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 28 3f 50 | $author).{.if.(preg_match('/^(?P |
e5a0 | 3c 6e 61 6d 65 3e 5b 2d 20 5c 2e 2c 5c 77 5c 27 e2 80 99 5d 2b 29 20 3c 28 3f 50 3c 65 6d 61 69 | <name>[-.\.,\w\'...]+).<(?P<emai |
e5c0 | 6c 3e 2e 2b 3f 29 3e 24 2f 75 27 2c 20 24 61 75 74 68 6f 72 2c 20 24 6d 61 74 63 68 29 29 20 7b | l>.+?)>$/u',.$author,.$match)).{ |
e5e0 | 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 66 69 6c 74 65 72 5f 76 61 | .if.(!function_exists('filter_va |
e600 | 72 27 29 20 7c 7c 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 50 48 50 5f 56 45 52 53 49 | r').||.version_compare(PHP_VERSI |
e620 | 4f 4e 2c 20 27 35 2e 33 2e 33 27 2c 20 27 3c 27 29 20 7c 7c 20 24 6d 61 74 63 68 5b 27 65 6d 61 | ON,.'5.3.3',.'<').||.$match['ema |
e640 | 69 6c 27 5d 20 3d 3d 3d 20 66 69 6c 74 65 72 5f 76 61 72 28 24 6d 61 74 63 68 5b 27 65 6d 61 69 | il'].===.filter_var($match['emai |
e660 | 6c 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 29 29 20 7b 0a 72 | l'],.FILTER_VALIDATE_EMAIL)).{.r |
e680 | 65 74 75 72 6e 20 61 72 72 61 79 28 0a 27 6e 61 6d 65 27 20 3d 3e 20 74 72 69 6d 28 24 6d 61 74 | eturn.array(.'name'.=>.trim($mat |
e6a0 | 63 68 5b 27 6e 61 6d 65 27 5d 29 2c 0a 27 65 6d 61 69 6c 27 20 3d 3e 20 24 6d 61 74 63 68 5b 27 | ch['name']),.'email'.=>.$match[' |
e6c0 | 65 6d 61 69 6c 27 5d 0a 29 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c | email'].);.}.}..throw.new.\Inval |
e6e0 | 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 0a 27 49 6e 76 61 6c 69 64 20 61 75 | idArgumentException(.'Invalid.au |
e700 | 74 68 6f 72 20 73 74 72 69 6e 67 2e 20 20 4d 75 73 74 20 62 65 20 69 6e 20 74 68 65 20 66 6f 72 | thor.string...Must.be.in.the.for |
e720 | 6d 61 74 3a 20 27 2e 0a 27 4a 6f 68 6e 20 53 6d 69 74 68 20 3c 6a 6f 68 6e 40 65 78 61 6d 70 6c | mat:.'..'John.Smith.<john@exampl |
e740 | 65 2e 63 6f 6d 3e 27 0a 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | e.com>'.);.}..protected.function |
e760 | 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 28 27 | .configure().{.$this.->setName(' |
e780 | 69 6e 69 74 27 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 43 72 65 61 74 65 73 | init').->setDescription('Creates |
e7a0 | 20 61 20 62 61 73 69 63 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 69 6e 20 63 | .a.basic.composer.json.file.in.c |
e7c0 | 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 2e 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 | urrent.directory.').->setDefinit |
e7e0 | 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 | ion(array(.new.InputOption('name |
e800 | 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 | ',.null,.InputOption::VALUE_NONE |
e820 | 2c 20 27 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e | ,.'Name.of.the.package'),.new.In |
e840 | 70 75 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 2c 20 6e 75 6c 6c 2c 20 49 | putOption('description',.null,.I |
e860 | 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 65 73 63 72 69 70 | nputOption::VALUE_NONE,.'Descrip |
e880 | 74 69 6f 6e 20 6f 66 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 | tion.of.package'),.new.InputOpti |
e8a0 | 6f 6e 28 27 61 75 74 68 6f 72 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a | on('author',.null,.InputOption:: |
e8c0 | 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 41 75 74 68 6f 72 20 6e 61 6d 65 20 6f 66 20 70 61 63 6b | VALUE_NONE,.'Author.name.of.pack |
e8e0 | 61 67 65 27 29 2c 0a 0a 20 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 68 6f 6d 65 70 61 | age'),...new.InputOption('homepa |
e900 | 67 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f | ge',.null,.InputOption::VALUE_NO |
e920 | 4e 45 2c 20 27 48 6f 6d 65 70 61 67 65 20 6f 66 20 70 61 63 6b 61 67 65 27 29 2c 0a 6e 65 77 20 | NE,.'Homepage.of.package'),.new. |
e940 | 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 | InputOption('require',.null,.Inp |
e960 | 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 7c 20 49 6e 70 75 74 | utOption::VALUE_IS_ARRAY.|.Input |
e980 | 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c 20 27 50 61 63 6b 61 67 65 | Option::VALUE_REQUIRED,.'Package |
e9a0 | 20 74 6f 20 72 65 71 75 69 72 65 20 77 69 74 68 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 | .to.require.with.a.version.const |
e9c0 | 72 61 69 6e 74 2c 20 65 2e 67 2e 20 66 6f 6f 2f 62 61 72 3a 31 2e 30 2e 30 20 6f 72 20 66 6f 6f | raint,.e.g..foo/bar:1.0.0.or.foo |
e9e0 | 2f 62 61 72 3d 31 2e 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 61 72 20 31 2e 30 2e 30 22 27 29 2c | /bar=1.0.0.or."foo/bar.1.0.0"'), |
ea00 | 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 2d 64 65 76 27 2c 20 | .new.InputOption('require-dev',. |
ea20 | 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 | null,.InputOption::VALUE_IS_ARRA |
ea40 | 59 20 7c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 2c | Y.|.InputOption::VALUE_REQUIRED, |
ea60 | 20 27 50 61 63 6b 61 67 65 20 74 6f 20 72 65 71 75 69 72 65 20 66 6f 72 20 64 65 76 65 6c 6f 70 | .'Package.to.require.for.develop |
ea80 | 6d 65 6e 74 20 77 69 74 68 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 2c 20 | ment.with.a.version.constraint,. |
eaa0 | 65 2e 67 2e 20 66 6f 6f 2f 62 61 72 3a 31 2e 30 2e 30 20 6f 72 20 66 6f 6f 2f 62 61 72 3d 31 2e | e.g..foo/bar:1.0.0.or.foo/bar=1. |
eac0 | 30 2e 30 20 6f 72 20 22 66 6f 6f 2f 62 61 72 20 31 2e 30 2e 30 22 27 29 2c 0a 29 29 0a 2d 3e 73 | 0.0.or."foo/bar.1.0.0"'),.)).->s |
eae0 | 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 54 0a 54 68 65 20 3c 69 6e 66 6f 3e 69 6e 69 74 3c 2f 69 6e | etHelp(<<<EOT.The.<info>init</in |
eb00 | 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 63 72 65 61 74 65 73 20 61 20 62 61 73 69 63 20 63 6f 6d 70 | fo>.command.creates.a.basic.comp |
eb20 | 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 0a 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 | oser.json.file.in.the.current.di |
eb40 | 72 65 63 74 6f 72 79 2e 0a 0a 3c 69 6e 66 6f 3e 70 68 70 20 63 6f 6d 70 6f 73 65 72 2e 70 68 61 | rectory...<info>php.composer.pha |
eb60 | 72 20 69 6e 69 74 3c 2f 69 6e 66 6f 3e 0a 0a 45 4f 54 0a 29 0a 3b 0a 7d 0a 0a 70 72 6f 74 65 63 | r.init</info>..EOT.).;.}..protec |
eb80 | 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 | ted.function.execute(InputInterf |
eba0 | 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 | ace.$input,.OutputInterface.$out |
ebc0 | 70 75 74 29 0a 7b 0a 24 64 69 61 6c 6f 67 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 | put).{.$dialog.=.$this->getHelpe |
ebe0 | 72 53 65 74 28 29 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 3b 0a 0a 24 77 68 69 74 65 6c 69 | rSet()->get('dialog');..$whiteli |
ec00 | 73 74 20 3d 20 61 72 72 61 79 28 27 6e 61 6d 65 27 2c 20 27 64 65 73 63 72 69 70 74 69 6f 6e 27 | st.=.array('name',.'description' |
ec20 | 2c 20 27 61 75 74 68 6f 72 27 2c 20 27 72 65 71 75 69 72 65 27 29 3b 0a 0a 24 6f 70 74 69 6f 6e | ,.'author',.'require');..$option |
ec40 | 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 | s.=.array_filter(array_intersect |
ec60 | 5f 6b 65 79 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 2c 20 61 72 72 61 79 | _key($input->getOptions(),.array |
ec80 | 5f 66 6c 69 70 28 24 77 68 69 74 65 6c 69 73 74 29 29 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 | _flip($whitelist)));..if.(isset( |
eca0 | 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b | $options['author'])).{.$options[ |
ecc0 | 27 61 75 74 68 6f 72 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 41 75 74 68 6f 72 | 'authors'].=.$this->formatAuthor |
ece0 | 73 28 24 6f 70 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 3b 0a 75 6e 73 65 74 28 24 6f 70 | s($options['author']);.unset($op |
ed00 | 74 69 6f 6e 73 5b 27 61 75 74 68 6f 72 27 5d 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 5b 27 72 | tions['author']);.}..$options['r |
ed20 | 65 71 75 69 72 65 27 5d 20 3d 20 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 | equire'].=.isset($options['requi |
ed40 | 72 65 27 5d 29 20 3f 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 52 65 71 75 69 72 65 6d 65 6e 74 | re']).?.$this->formatRequirement |
ed60 | 73 28 24 6f 70 74 69 6f 6e 73 5b 27 72 65 71 75 69 72 65 27 5d 29 20 3a 0a 6e 65 77 20 5c 73 74 | s($options['require']).:.new.\st |
ed80 | 64 43 6c 61 73 73 3b 0a 0a 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 27 63 | dClass;..$file.=.new.JsonFile('c |
eda0 | 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 3b 0a 0a 24 6a 73 6f 6e 20 3d 20 24 66 69 6c 65 2d 3e | omposer.json');..$json.=.$file-> |
edc0 | 65 6e 63 6f 64 65 28 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 69 | encode($options);..if.($input->i |
ede0 | 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 | sInteractive()).{.$output->write |
ee00 | 6c 6e 28 61 72 72 61 79 28 0a 27 27 2c 0a 24 6a 73 6f 6e 2c 0a 27 27 0a 29 29 3b 0a 69 66 20 28 | ln(array(.'',.$json,.''.));.if.( |
ee20 | 21 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 6f 75 74 70 75 | !$dialog->askConfirmation($outpu |
ee40 | 74 2c 20 24 64 69 61 6c 6f 67 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 27 44 6f 20 79 6f 75 20 | t,.$dialog->getQuestion('Do.you. |
ee60 | 63 6f 6e 66 69 72 6d 20 67 65 6e 65 72 61 74 69 6f 6e 27 2c 20 27 79 65 73 27 2c 20 27 3f 27 29 | confirm.generation',.'yes',.'?') |
ee80 | 2c 20 74 72 75 65 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 65 72 | ,.true)).{.$output->writeln('<er |
eea0 | 72 6f 72 3e 43 6f 6d 6d 61 6e 64 20 61 62 6f 72 74 65 64 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 0a | ror>Command.aborted</error>');.. |
eec0 | 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 7d 0a 0a 24 66 69 6c 65 2d 3e 77 72 69 74 65 28 24 6f 70 74 | return.1;.}.}..$file->write($opt |
eee0 | 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 | ions);..if.($input->isInteractiv |
ef00 | 65 28 29 29 20 7b 0a 24 69 67 6e 6f 72 65 46 69 6c 65 20 3d 20 72 65 61 6c 70 61 74 68 28 27 2e | e()).{.$ignoreFile.=.realpath('. |
ef20 | 67 69 74 69 67 6e 6f 72 65 27 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 69 67 6e | gitignore');..if.(false.===.$ign |
ef40 | 6f 72 65 46 69 6c 65 29 20 7b 0a 24 69 67 6e 6f 72 65 46 69 6c 65 20 3d 20 72 65 61 6c 70 61 74 | oreFile).{.$ignoreFile.=.realpat |
ef60 | 68 28 27 2e 27 29 20 2e 20 27 2f 2e 67 69 74 69 67 6e 6f 72 65 27 3b 0a 7d 0a 0a 69 66 20 28 21 | h('.')...'/.gitignore';.}..if.(! |
ef80 | 24 74 68 69 73 2d 3e 68 61 73 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 46 69 | $this->hasVendorIgnore($ignoreFi |
efa0 | 6c 65 29 29 20 7b 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 27 57 6f 75 6c 64 20 79 6f 75 20 6c 69 | le)).{.$question.=.'Would.you.li |
efc0 | 6b 65 20 74 68 65 20 3c 69 6e 66 6f 3e 76 65 6e 64 6f 72 3c 2f 69 6e 66 6f 3e 20 64 69 72 65 63 | ke.the.<info>vendor</info>.direc |
efe0 | 74 6f 72 79 20 61 64 64 65 64 20 74 6f 20 79 6f 75 72 20 3c 69 6e 66 6f 3e 2e 67 69 74 69 67 6e | tory.added.to.your.<info>.gitign |
f000 | 6f 72 65 3c 2f 69 6e 66 6f 3e 20 5b 3c 63 6f 6d 6d 65 6e 74 3e 79 65 73 3c 2f 63 6f 6d 6d 65 6e | ore</info>.[<comment>yes</commen |
f020 | 74 3e 5d 3f 27 3b 0a 0a 69 66 20 28 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 | t>]?';..if.($dialog->askConfirma |
f040 | 74 69 6f 6e 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 74 72 75 65 29 29 20 | tion($output,.$question,.true)). |
f060 | 7b 0a 24 74 68 69 73 2d 3e 61 64 64 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 | {.$this->addVendorIgnore($ignore |
f080 | 46 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | File);.}.}.}.}..protected.functi |
f0a0 | 6f 6e 20 69 6e 74 65 72 61 63 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 | on.interact(InputInterface.$inpu |
f0c0 | 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 67 | t,.OutputInterface.$output).{.$g |
f0e0 | 69 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 47 69 74 43 6f 6e 66 69 67 28 29 3b 0a 0a 24 64 69 | it.=.$this->getGitConfig();..$di |
f100 | 61 6c 6f 67 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 | alog.=.$this->getHelperSet()->ge |
f120 | 74 28 27 64 69 61 6c 6f 67 27 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 74 68 69 73 2d | t('dialog');.$formatter.=.$this- |
f140 | 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 | >getHelperSet()->get('formatter' |
f160 | 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 79 28 0a 27 27 2c 0a 24 | );.$output->writeln(array(.'',.$ |
f180 | 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 27 57 65 6c 63 6f 6d 65 20 | formatter->formatBlock('Welcome. |
f1a0 | 74 6f 20 74 68 65 20 43 6f 6d 70 6f 73 65 72 20 63 6f 6e 66 69 67 20 67 65 6e 65 72 61 74 6f 72 | to.the.Composer.config.generator |
f1c0 | 27 2c 20 27 62 67 3d 62 6c 75 65 3b 66 67 3d 77 68 69 74 65 27 2c 20 74 72 75 65 29 2c 0a 27 27 | ',.'bg=blue;fg=white',.true),.'' |
f1e0 | 0a 29 29 3b 0a 0a 0a 20 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 79 28 0a | .));....$output->writeln(array(. |
f200 | 27 27 2c 0a 27 54 68 69 73 20 63 6f 6d 6d 61 6e 64 20 77 69 6c 6c 20 67 75 69 64 65 20 79 6f 75 | '',.'This.command.will.guide.you |
f220 | 20 74 68 72 6f 75 67 68 20 63 72 65 61 74 69 6e 67 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e | .through.creating.your.composer. |
f240 | 6a 73 6f 6e 20 63 6f 6e 66 69 67 2e 27 2c 0a 27 27 2c 0a 29 29 3b 0a 0a 24 63 77 64 20 3d 20 72 | json.config.',.'',.));..$cwd.=.r |
f260 | 65 61 6c 70 61 74 68 28 22 2e 22 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6e 61 | ealpath(".");..if.(false.===.$na |
f280 | 6d 65 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 6e 61 6d 65 27 29 29 20 | me.=.$input->getOption('name')). |
f2a0 | 7b 0a 24 6e 61 6d 65 20 3d 20 62 61 73 65 6e 61 6d 65 28 24 63 77 64 29 3b 0a 69 66 20 28 69 73 | {.$name.=.basename($cwd);.if.(is |
f2c0 | 73 65 74 28 24 67 69 74 5b 27 67 69 74 68 75 62 2e 75 73 65 72 27 5d 29 29 20 7b 0a 24 6e 61 6d | set($git['github.user'])).{.$nam |
f2e0 | 65 20 3d 20 24 67 69 74 5b 27 67 69 74 68 75 62 2e 75 73 65 72 27 5d 20 2e 20 27 2f 27 20 2e 20 | e.=.$git['github.user']...'/'... |
f300 | 24 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 65 6d 70 74 79 28 24 5f 53 45 52 56 45 52 | $name;.}.elseif.(!empty($_SERVER |
f320 | 5b 27 55 53 45 52 4e 41 4d 45 27 5d 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 5f 53 45 52 56 45 | ['USERNAME'])).{.$name.=.$_SERVE |
f340 | 52 5b 27 55 53 45 52 4e 41 4d 45 27 5d 20 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 20 65 | R['USERNAME']...'/'...$name;.}.e |
f360 | 6c 73 65 69 66 20 28 67 65 74 5f 63 75 72 72 65 6e 74 5f 75 73 65 72 28 29 29 20 7b 0a 24 6e 61 | lseif.(get_current_user()).{.$na |
f380 | 6d 65 20 3d 20 67 65 74 5f 63 75 72 72 65 6e 74 5f 75 73 65 72 28 29 20 2e 20 27 2f 27 20 2e 20 | me.=.get_current_user()...'/'... |
f3a0 | 24 6e 61 6d 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 20 | $name;.}.else.{...$name.=.$name. |
f3c0 | 2e 20 27 2f 27 20 2e 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 0a 24 6e 61 6d 65 20 3d 20 24 64 69 61 | ..'/'...$name;.}.}..$name.=.$dia |
f3e0 | 6c 6f 67 2d 3e 61 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 0a 24 6f 75 74 70 75 74 2c 0a 24 64 | log->askAndValidate(.$output,.$d |
f400 | 69 61 6c 6f 67 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 6e 61 6d 65 | ialog->getQuestion('Package.name |
f420 | 20 28 3c 76 65 6e 64 6f 72 3e 2f 3c 6e 61 6d 65 3e 29 27 2c 20 24 6e 61 6d 65 29 2c 0a 66 75 6e | .(<vendor>/<name>)',.$name),.fun |
f440 | 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 6e 61 6d 65 29 20 7b 0a 69 66 20 | ction.($value).use.($name).{.if. |
f460 | 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 | (null.===.$value).{.return.$name |
f480 | 3b 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a 30 2d 39 5f | ;.}..if.(!preg_match('{^[a-z0-9_ |
f4a0 | 2e 2d 5d 2b 2f 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 24 7d 69 27 2c 20 24 76 61 6c 75 65 29 29 20 | .-]+/[a-z0-9_.-]+$}i',.$value)). |
f4c0 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 | {.throw.new.\InvalidArgumentExce |
f4e0 | 70 74 69 6f 6e 28 0a 27 54 68 65 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 27 2e 24 76 61 6c 75 | ption(.'The.package.name.'.$valu |
f500 | 65 2e 27 20 69 73 20 69 6e 76 61 6c 69 64 2c 20 69 74 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 | e.'.is.invalid,.it.should.have.a |
f520 | 20 76 65 6e 64 6f 72 20 6e 61 6d 65 2c 20 61 20 66 6f 72 77 61 72 64 20 73 6c 61 73 68 2c 20 61 | .vendor.name,.a.forward.slash,.a |
f540 | 6e 64 20 61 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 2c 20 6d 61 74 63 68 69 6e 67 3a 20 5b 61 2d | nd.a.package.name,.matching:.[a- |
f560 | 7a 30 2d 39 5f 2e 2d 5d 2b 2f 5b 61 2d 7a 30 2d 39 5f 2e 2d 5d 2b 27 0a 29 3b 0a 7d 0a 0a 72 65 | z0-9_.-]+/[a-z0-9_.-]+'.);.}..re |
f580 | 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 | turn.$value;.}.);.$input->setOpt |
f5a0 | 69 6f 6e 28 27 6e 61 6d 65 27 2c 20 24 6e 61 6d 65 29 3b 0a 0a 24 64 65 73 63 72 69 70 74 69 6f | ion('name',.$name);..$descriptio |
f5c0 | 6e 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 64 65 73 63 72 69 70 74 69 | n.=.$input->getOption('descripti |
f5e0 | 6f 6e 27 29 20 3f 3a 20 66 61 6c 73 65 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 | on').?:.false;.$description.=.$d |
f600 | 69 61 6c 6f 67 2d 3e 61 73 6b 28 0a 24 6f 75 74 70 75 74 2c 0a 24 64 69 61 6c 6f 67 2d 3e 67 65 | ialog->ask(.$output,.$dialog->ge |
f620 | 74 51 75 65 73 74 69 6f 6e 28 27 44 65 73 63 72 69 70 74 69 6f 6e 27 2c 20 24 64 65 73 63 72 69 | tQuestion('Description',.$descri |
f640 | 70 74 69 6f 6e 29 0a 29 3b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 64 65 73 | ption).);.$input->setOption('des |
f660 | 63 72 69 70 74 69 6f 6e 27 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 29 3b 0a 0a 69 66 20 28 66 | cription',.$description);..if.(f |
f680 | 61 6c 73 65 20 3d 3d 3d 20 24 61 75 74 68 6f 72 20 3d 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 | alse.===.$author.=.$input->getOp |
f6a0 | 74 69 6f 6e 28 27 61 75 74 68 6f 72 27 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 67 69 74 | tion('author')).{.if.(isset($git |
f6c0 | 5b 27 75 73 65 72 2e 6e 61 6d 65 27 5d 29 20 26 26 20 69 73 73 65 74 28 24 67 69 74 5b 27 75 73 | ['user.name']).&&.isset($git['us |
f6e0 | 65 72 2e 65 6d 61 69 6c 27 5d 29 29 20 7b 0a 24 61 75 74 68 6f 72 20 3d 20 73 70 72 69 6e 74 66 | er.email'])).{.$author.=.sprintf |
f700 | 28 27 25 73 20 3c 25 73 3e 27 2c 20 24 67 69 74 5b 27 75 73 65 72 2e 6e 61 6d 65 27 5d 2c 20 24 | ('%s.<%s>',.$git['user.name'],.$ |
f720 | 67 69 74 5b 27 75 73 65 72 2e 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 73 65 6c 66 20 3d | git['user.email']);.}.}..$self.= |
f740 | 20 24 74 68 69 73 3b 0a 24 61 75 74 68 6f 72 20 3d 20 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 41 6e | .$this;.$author.=.$dialog->askAn |
f760 | 64 56 61 6c 69 64 61 74 65 28 0a 24 6f 75 74 70 75 74 2c 0a 24 64 69 61 6c 6f 67 2d 3e 67 65 74 | dValidate(.$output,.$dialog->get |
f780 | 51 75 65 73 74 69 6f 6e 28 27 41 75 74 68 6f 72 27 2c 20 24 61 75 74 68 6f 72 29 2c 0a 66 75 6e | Question('Author',.$author),.fun |
f7a0 | 63 74 69 6f 6e 20 28 24 76 61 6c 75 65 29 20 75 73 65 20 28 24 73 65 6c 66 2c 20 24 61 75 74 68 | ction.($value).use.($self,.$auth |
f7c0 | 6f 72 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 72 65 74 | or).{.if.(null.===.$value).{.ret |
f7e0 | 75 72 6e 20 24 61 75 74 68 6f 72 3b 0a 7d 0a 0a 24 61 75 74 68 6f 72 20 3d 20 24 73 65 6c 66 2d | urn.$author;.}..$author.=.$self- |
f800 | 3e 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 0a 72 65 74 | >parseAuthorString($value);..ret |
f820 | 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 73 20 3c 25 73 3e 27 2c 20 24 61 75 74 68 6f 72 5b 27 | urn.sprintf('%s.<%s>',.$author[' |
f840 | 6e 61 6d 65 27 5d 2c 20 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 29 3b 0a 7d 0a 29 3b 0a | name'],.$author['email']);.}.);. |
f860 | 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 61 75 74 68 6f 72 27 2c 20 24 61 75 74 | $input->setOption('author',.$aut |
f880 | 68 6f 72 29 3b 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 61 72 72 61 79 28 0a 27 | hor);..$output->writeln(array(.' |
f8a0 | 27 2c 0a 27 44 65 66 69 6e 65 20 79 6f 75 72 20 64 65 70 65 6e 64 65 6e 63 69 65 73 2e 27 2c 0a | ',.'Define.your.dependencies.',. |
f8c0 | 27 27 0a 29 29 3b 0a 0a 24 72 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b | ''.));..$requirements.=.array(); |
f8e0 | 0a 69 66 20 28 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 6f | .if.($dialog->askConfirmation($o |
f900 | 75 74 70 75 74 2c 20 24 64 69 61 6c 6f 67 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 27 57 6f 75 | utput,.$dialog->getQuestion('Wou |
f920 | 6c 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 6e 65 20 79 6f 75 72 20 64 65 70 65 6e | ld.you.like.to.define.your.depen |
f940 | 64 65 6e 63 69 65 73 20 28 72 65 71 75 69 72 65 29 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 27 | dencies.(require).interactively' |
f960 | 2c 20 27 79 65 73 27 2c 20 27 3f 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 24 72 65 71 75 69 72 65 | ,.'yes',.'?'),.true)).{.$require |
f980 | 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 6e 65 52 65 71 75 69 72 65 6d | ments.=.$this->determineRequirem |
f9a0 | 65 6e 74 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 69 6e 70 75 74 2d 3e 67 65 | ents($input,.$output,.$input->ge |
f9c0 | 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 27 29 29 3b 0a 7d 0a 24 69 6e 70 75 74 2d 3e 73 | tOption('require'));.}.$input->s |
f9e0 | 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 27 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 | etOption('require',.$requirement |
fa00 | 73 29 3b 0a 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | s);.$devRequirements.=.array();. |
fa20 | 69 66 20 28 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 24 6f 75 | if.($dialog->askConfirmation($ou |
fa40 | 74 70 75 74 2c 20 24 64 69 61 6c 6f 67 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 27 57 6f 75 6c | tput,.$dialog->getQuestion('Woul |
fa60 | 64 20 79 6f 75 20 6c 69 6b 65 20 74 6f 20 64 65 66 69 6e 65 20 79 6f 75 72 20 64 65 76 20 64 65 | d.you.like.to.define.your.dev.de |
fa80 | 70 65 6e 64 65 6e 63 69 65 73 20 28 72 65 71 75 69 72 65 2d 64 65 76 29 20 69 6e 74 65 72 61 63 | pendencies.(require-dev).interac |
faa0 | 74 69 76 65 6c 79 27 2c 20 27 79 65 73 27 2c 20 27 3f 27 29 2c 20 74 72 75 65 29 29 20 7b 0a 24 | tively',.'yes',.'?'),.true)).{.$ |
fac0 | 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 74 65 72 6d 69 | devRequirements.=.$this->determi |
fae0 | 6e 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 | neRequirements($input,.$output,. |
fb00 | 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 2d 64 65 76 27 29 | $input->getOption('require-dev') |
fb20 | 29 3b 0a 7d 0a 24 69 6e 70 75 74 2d 3e 73 65 74 4f 70 74 69 6f 6e 28 27 72 65 71 75 69 72 65 2d | );.}.$input->setOption('require- |
fb40 | 64 65 76 27 2c 20 24 64 65 76 52 65 71 75 69 72 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 70 72 6f 74 | dev',.$devRequirements);.}..prot |
fb60 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d | ected.function.findPackages($nam |
fb80 | 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 69 66 20 | e).{.$packages.=.array();....if. |
fba0 | 28 21 24 74 68 69 73 2d 3e 72 65 70 6f 73 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 20 3d | (!$this->repos).{.$this->repos.= |
fbc0 | 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 5f 6d | .new.CompositeRepository(array_m |
fbe0 | 65 72 67 65 28 0a 61 72 72 61 79 28 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f | erge(.array(new.PlatformReposito |
fc00 | 72 79 29 2c 0a 46 61 63 74 6f 72 79 3a 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 | ry),.Factory::createDefaultRepos |
fc20 | 69 74 6f 72 69 65 73 28 24 74 68 69 73 2d 3e 67 65 74 49 4f 28 29 29 0a 29 29 3b 0a 7d 0a 0a 24 | itories($this->getIO()).));.}..$ |
fc40 | 74 6f 6b 65 6e 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 66 6f 72 65 61 | token.=.strtolower($name);.forea |
fc60 | 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 | ch.($this->repos->getPackages(). |
fc80 | 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 28 24 70 | as.$package).{.if.(false.===.($p |
fca0 | 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c | os.=.strpos($package->getName(), |
fcc0 | 20 24 74 6f 6b 65 6e 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 | .$token))).{.continue;.}..$packa |
fce0 | 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 | ges[].=.$package;.}..return.$pac |
fd00 | 6b 61 67 65 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 | kages;.}..protected.function.det |
fd20 | 65 72 6d 69 6e 65 52 65 71 75 69 72 65 6d 65 6e 74 73 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 | ermineRequirements(InputInterfac |
fd40 | 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 | e.$input,.OutputInterface.$outpu |
fd60 | 74 2c 20 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 64 69 61 6c 6f | t,.$requires.=.array()).{.$dialo |
fd80 | 67 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 | g.=.$this->getHelperSet()->get(' |
fda0 | 64 69 61 6c 6f 67 27 29 3b 0a 24 70 72 6f 6d 70 74 20 3d 20 24 64 69 61 6c 6f 67 2d 3e 67 65 74 | dialog');.$prompt.=.$dialog->get |
fdc0 | 51 75 65 73 74 69 6f 6e 28 27 53 65 61 72 63 68 20 66 6f 72 20 61 20 70 61 63 6b 61 67 65 27 2c | Question('Search.for.a.package', |
fde0 | 20 66 61 6c 73 65 2c 20 27 3a 27 29 3b 0a 0a 69 66 20 28 24 72 65 71 75 69 72 65 73 29 20 7b 0a | .false,.':');..if.($requires).{. |
fe00 | 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 72 | foreach.($requires.as.$key.=>.$r |
fe20 | 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 24 6b 65 79 5d 20 3d 20 | equirement).{.$requires[$key].=. |
fe40 | 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 52 65 71 75 69 72 65 6d 65 6e 74 28 24 72 65 71 | $this->normalizeRequirement($req |
fe60 | 75 69 72 65 6d 65 6e 74 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 | uirement);.if.(false.===.strpos( |
fe80 | 24 72 65 71 75 69 72 65 73 5b 24 6b 65 79 5d 2c 20 27 20 27 29 20 26 26 20 24 69 6e 70 75 74 2d | $requires[$key],.'.').&&.$input- |
fea0 | 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 71 75 65 73 74 69 6f 6e 20 3d 20 | >isInteractive()).{.$question.=. |
fec0 | 24 64 69 61 6c 6f 67 2d 3e 67 65 74 51 75 65 73 74 69 6f 6e 28 27 50 6c 65 61 73 65 20 70 72 6f | $dialog->getQuestion('Please.pro |
fee0 | 76 69 64 65 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 66 6f 72 20 74 68 | vide.a.version.constraint.for.th |
ff00 | 65 20 27 2e 24 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 20 72 65 71 75 69 72 65 6d 65 6e 74 27 29 | e.'.$requirement.'.requirement') |
ff20 | 3b 0a 69 66 20 28 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 64 69 61 6c 6f 67 2d 3e 61 73 6b | ;.if.($constraint.=.$dialog->ask |
ff40 | 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 29 20 7b 0a 24 72 65 71 75 69 72 65 | ($output,.$question)).{.$require |
ff60 | 73 5b 24 6b 65 79 5d 20 2e 3d 20 27 20 27 20 2e 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a | s[$key]..=.'.'...$constraint;.}. |
ff80 | 7d 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 72 65 71 75 69 72 65 73 | }.if.(false.===.strpos($requires |
ffa0 | 5b 24 6b 65 79 5d 2c 20 27 20 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c | [$key],.'.')).{.throw.new.\Inval |
ffc0 | 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 72 65 71 75 69 72 65 | idArgumentException('The.require |
ffe0 | 6d 65 6e 74 20 27 2e 24 72 65 71 75 69 72 65 6d 65 6e 74 2e 27 20 6d 75 73 74 20 63 6f 6e 74 61 | ment.'.$requirement.'.must.conta |
10000 | 69 6e 20 61 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 27 29 3b 0a 7d 0a 7d 0a 0a | in.a.version.constraint');.}.}.. |
10020 | 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 6e 75 6c 6c | return.$requires;.}..while.(null |
10040 | 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 20 3d 20 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 28 24 6f 75 | .!==.$package.=.$dialog->ask($ou |
10060 | 74 70 75 74 2c 20 24 70 72 6f 6d 70 74 29 29 20 7b 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 74 68 | tput,.$prompt)).{.$matches.=.$th |
10080 | 69 73 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 | is->findPackages($package);..if. |
100a0 | 28 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 | (count($matches)).{.$output->wri |
100c0 | 74 65 6c 6e 28 61 72 72 61 79 28 0a 27 27 2c 0a 73 70 72 69 6e 74 66 28 27 46 6f 75 6e 64 20 3c | teln(array(.'',.sprintf('Found.< |
100e0 | 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 70 61 63 6b 61 67 65 73 20 6d 61 74 63 68 69 6e 67 | info>%s</info>.packages.matching |
10100 | 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 63 6f 75 6e 74 28 24 6d 61 74 63 68 65 | .<info>%s</info>',.count($matche |
10120 | 73 29 2c 20 24 70 61 63 6b 61 67 65 29 2c 0a 27 27 0a 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 | s),.$package),.''.));..foreach.( |
10140 | 24 6d 61 74 63 68 65 73 20 61 73 20 24 70 6f 73 69 74 69 6f 6e 20 3d 3e 20 24 70 61 63 6b 61 67 | $matches.as.$position.=>.$packag |
10160 | 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 20 | e).{.$output->writeln(sprintf('. |
10180 | 3c 69 6e 66 6f 3e 25 35 73 3c 2f 69 6e 66 6f 3e 20 25 73 20 3c 63 6f 6d 6d 65 6e 74 3e 25 73 3c | <info>%5s</info>.%s.<comment>%s< |
101a0 | 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 22 5b 24 70 6f 73 69 74 69 6f 6e 5d 22 2c 20 24 70 61 63 6b | /comment>',."[$position]",.$pack |
101c0 | 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e | age->getPrettyName(),.$package-> |
101e0 | 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 | getPrettyVersion()));.}..$output |
10200 | 2d 3e 77 72 69 74 65 6c 6e 28 27 27 29 3b 0a 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 66 75 6e | ->writeln('');..$validator.=.fun |
10220 | 63 74 69 6f 6e 20 28 24 73 65 6c 65 63 74 69 6f 6e 29 20 75 73 65 20 28 24 6d 61 74 63 68 65 73 | ction.($selection).use.($matches |
10240 | 29 20 7b 0a 69 66 20 28 27 27 20 3d 3d 3d 20 24 73 65 6c 65 63 74 69 6f 6e 29 20 7b 0a 72 65 74 | ).{.if.(''.===.$selection).{.ret |
10260 | 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 | urn.false;.}..if.(!is_numeric($s |
10280 | 65 6c 65 63 74 69 6f 6e 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c | election).&&.preg_match('{^\s*(\ |
102a0 | 53 2b 29 20 2b 28 5c 53 2e 2a 29 5c 73 2a 7d 27 2c 20 24 73 65 6c 65 63 74 69 6f 6e 2c 20 24 6d | S+).+(\S.*)\s*}',.$selection,.$m |
102c0 | 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b 31 5d 2e 27 20 | atches)).{.return.$matches[1].'. |
102e0 | 27 2e 24 6d 61 74 63 68 65 73 5b 32 5d 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 6d 61 | '.$matches[2];.}..if.(!isset($ma |
10300 | 74 63 68 65 73 5b 28 69 6e 74 29 20 24 73 65 6c 65 63 74 69 6f 6e 5d 29 29 20 7b 0a 74 68 72 6f | tches[(int).$selection])).{.thro |
10320 | 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 74 20 61 20 76 61 6c 69 64 20 73 65 | w.new.\Exception('Not.a.valid.se |
10340 | 6c 65 63 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6d 61 74 63 68 65 | lection');.}..$package.=.$matche |
10360 | 73 5b 28 69 6e 74 29 20 24 73 65 6c 65 63 74 69 6f 6e 5d 3b 0a 0a 72 65 74 75 72 6e 20 73 70 72 | s[(int).$selection];..return.spr |
10380 | 69 6e 74 66 28 27 25 73 20 25 73 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 | intf('%s.%s',.$package->getName( |
103a0 | 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 | ),.$package->getPrettyVersion()) |
103c0 | 3b 0a 7d 3b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 64 69 61 6c 6f 67 2d 3e 61 73 6b 41 6e 64 | ;.};..$package.=.$dialog->askAnd |
103e0 | 56 61 6c 69 64 61 74 65 28 24 6f 75 74 70 75 74 2c 20 24 64 69 61 6c 6f 67 2d 3e 67 65 74 51 75 | Validate($output,.$dialog->getQu |
10400 | 65 73 74 69 6f 6e 28 27 45 6e 74 65 72 20 70 61 63 6b 61 67 65 20 23 20 74 6f 20 61 64 64 2c 20 | estion('Enter.package.#.to.add,. |
10420 | 6f 72 20 61 20 22 5b 70 61 63 6b 61 67 65 5d 20 5b 76 65 72 73 69 6f 6e 5d 22 20 63 6f 75 70 6c | or.a."[package].[version]".coupl |
10440 | 65 20 69 66 20 69 74 20 69 73 20 6e 6f 74 20 6c 69 73 74 65 64 27 2c 20 66 61 6c 73 65 2c 20 27 | e.if.it.is.not.listed',.false,.' |
10460 | 3a 27 29 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 33 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 | :'),.$validator,.3);..if.(false. |
10480 | 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 70 | !==.$package).{.$requires[].=.$p |
104a0 | 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 71 75 69 72 65 73 3b | ackage;.}.}.}..return.$requires; |
104c0 | 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 41 75 74 | .}..protected.function.formatAut |
104e0 | 68 6f 72 73 28 24 61 75 74 68 6f 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 74 68 | hors($author).{.return.array($th |
10500 | 69 73 2d 3e 70 61 72 73 65 41 75 74 68 6f 72 53 74 72 69 6e 67 28 24 61 75 74 68 6f 72 29 29 3b | is->parseAuthorString($author)); |
10520 | 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 52 65 71 | .}..protected.function.formatReq |
10540 | 75 69 72 65 6d 65 6e 74 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 6d 65 6e 74 73 29 0a 7b | uirements(array.$requirements).{ |
10560 | 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 | .$requires.=.array();.foreach.($ |
10580 | 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 73 20 24 72 65 71 75 69 72 65 6d 65 6e 74 29 20 7b 0a | requirements.as.$requirement).{. |
105a0 | 24 72 65 71 75 69 72 65 6d 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 52 | $requirement.=.$this->normalizeR |
105c0 | 65 71 75 69 72 65 6d 65 6e 74 28 24 72 65 71 75 69 72 65 6d 65 6e 74 29 3b 0a 6c 69 73 74 28 24 | equirement($requirement);.list($ |
105e0 | 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 29 20 3d 20 | packageName,.$packageVersion).=. |
10600 | 65 78 70 6c 6f 64 65 28 22 20 22 2c 20 24 72 65 71 75 69 72 65 6d 65 6e 74 2c 20 32 29 3b 0a 0a | explode(".",.$requirement,.2);.. |
10620 | 24 72 65 71 75 69 72 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 20 3d 20 24 70 61 63 6b 61 | $requires[$packageName].=.$packa |
10640 | 67 65 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 65 6d 70 74 79 28 24 72 65 71 75 | geVersion;.}..return.empty($requ |
10660 | 69 72 65 73 29 20 3f 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 20 3a 20 24 72 65 71 75 69 72 65 | ires).?.new.\stdClass.:.$require |
10680 | 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 | s;.}..protected.function.normali |
106a0 | 7a 65 52 65 71 75 69 72 65 6d 65 6e 74 28 24 72 65 71 75 69 72 65 6d 65 6e 74 29 0a 7b 0a 72 65 | zeRequirement($requirement).{.re |
106c0 | 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5b 5e 3d 3a 20 5d 2b 29 5b 3d | turn.preg_replace('{^([^=:.]+)[= |
106e0 | 3a 20 5d 28 2e 2a 29 24 7d 27 2c 20 27 24 31 20 24 32 27 2c 20 24 72 65 71 75 69 72 65 6d 65 6e | :.](.*)$}',.'$1.$2',.$requiremen |
10700 | 74 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 47 69 74 | t);.}..protected.function.getGit |
10720 | 43 6f 6e 66 69 67 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 | Config().{.if.(null.!==.$this->g |
10740 | 69 74 43 6f 6e 66 69 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e | itConfig).{.return.$this->gitCon |
10760 | 66 69 67 3b 0a 7d 0a 0a 24 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 45 78 65 63 75 74 61 62 6c 65 | fig;.}..$finder.=.new.Executable |
10780 | 46 69 6e 64 65 72 28 29 3b 0a 24 67 69 74 42 69 6e 20 3d 20 24 66 69 6e 64 65 72 2d 3e 66 69 6e | Finder();.$gitBin.=.$finder->fin |
107a0 | 64 28 27 67 69 74 27 29 3b 0a 0a 24 63 6d 64 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 73 70 | d('git');..$cmd.=.new.Process(sp |
107c0 | 72 69 6e 74 66 28 27 25 73 20 63 6f 6e 66 69 67 20 2d 6c 27 2c 20 65 73 63 61 70 65 73 68 65 6c | rintf('%s.config.-l',.escapeshel |
107e0 | 6c 61 72 67 28 24 67 69 74 42 69 6e 29 29 29 3b 0a 24 63 6d 64 2d 3e 72 75 6e 28 29 3b 0a 0a 69 | larg($gitBin)));.$cmd->run();..i |
10800 | 66 20 28 24 63 6d 64 2d 3e 69 73 53 75 63 63 65 73 73 66 75 6c 28 29 29 20 7b 0a 24 74 68 69 73 | f.($cmd->isSuccessful()).{.$this |
10820 | 2d 3e 67 69 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 65 67 5f 6d 61 74 63 | ->gitConfig.=.array();.preg_matc |
10840 | 68 5f 61 6c 6c 28 27 7b 5e 28 5b 5e 3d 5d 2b 29 3d 28 2e 2a 29 24 7d 6d 27 2c 20 24 63 6d 64 2d | h_all('{^([^=]+)=(.*)$}m',.$cmd- |
10860 | 3e 67 65 74 4f 75 74 70 75 74 28 29 2c 20 24 6d 61 74 63 68 65 73 2c 20 50 52 45 47 5f 53 45 54 | >getOutput(),.$matches,.PREG_SET |
10880 | 5f 4f 52 44 45 52 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 65 73 20 61 73 20 24 6d | _ORDER);.foreach.($matches.as.$m |
108a0 | 61 74 63 68 29 20 7b 0a 24 74 68 69 73 2d 3e 67 69 74 43 6f 6e 66 69 67 5b 24 6d 61 74 63 68 5b | atch).{.$this->gitConfig[$match[ |
108c0 | 31 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | 1]].=.$match[2];.}..return.$this |
108e0 | 2d 3e 67 69 74 43 6f 6e 66 69 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 | ->gitConfig;.}..return.$this->gi |
10900 | 74 43 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | tConfig.=.array();.}............ |
10920 | 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 56 65 6e 64 | ......protected.function.hasVend |
10940 | 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 24 76 65 6e 64 6f 72 20 3d 20 | orIgnore($ignoreFile,.$vendor.=. |
10960 | 27 76 65 6e 64 6f 72 27 29 0a 7b 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 67 | 'vendor').{.if.(!file_exists($ig |
10980 | 6e 6f 72 65 46 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 | noreFile)).{.return.false;.}..$p |
109a0 | 61 74 74 65 72 6e 20 3d 20 73 70 72 69 6e 74 66 28 0a 27 7e 5e 2f 3f 25 73 28 2f 7c 2f 5c 2a 29 | attern.=.sprintf(.'~^/?%s(/|/\*) |
109c0 | 3f 24 7e 27 2c 0a 70 72 65 67 5f 71 75 6f 74 65 28 24 76 65 6e 64 6f 72 2c 20 27 7e 27 29 0a 29 | ?$~',.preg_quote($vendor,.'~').) |
109e0 | 3b 0a 0a 24 6c 69 6e 65 73 20 3d 20 66 69 6c 65 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 46 49 | ;..$lines.=.file($ignoreFile,.FI |
10a00 | 4c 45 5f 49 47 4e 4f 52 45 5f 4e 45 57 5f 4c 49 4e 45 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 | LE_IGNORE_NEW_LINES);.foreach.($ |
10a20 | 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 | lines.as.$line).{.if.(preg_match |
10a40 | 28 24 70 61 74 74 65 72 6e 2c 20 24 6c 69 6e 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 | ($pattern,.$line)).{.return.true |
10a60 | 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 | ;.}.}..return.false;.}..protecte |
10a80 | 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 56 65 6e 64 6f 72 49 67 6e 6f 72 65 28 24 69 67 6e 6f | d.function.addVendorIgnore($igno |
10aa0 | 72 65 46 69 6c 65 2c 20 24 76 65 6e 64 6f 72 20 3d 20 27 76 65 6e 64 6f 72 27 29 0a 7b 0a 24 63 | reFile,.$vendor.=.'vendor').{.$c |
10ac0 | 6f 6e 74 65 6e 74 73 20 3d 20 22 22 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 | ontents.=."";.if.(file_exists($i |
10ae0 | 67 6e 6f 72 65 46 69 6c 65 29 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 66 69 6c 65 5f 67 | gnoreFile)).{.$contents.=.file_g |
10b00 | 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 29 3b 0a 0a 69 66 20 28 22 | et_contents($ignoreFile);..if.(" |
10b20 | 5c 6e 22 20 21 3d 3d 20 73 75 62 73 74 72 28 24 63 6f 6e 74 65 6e 74 73 2c 20 30 2c 20 2d 31 29 | \n".!==.substr($contents,.0,.-1) |
10b40 | 29 20 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 2e 3d 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a 0a 66 69 6c 65 | ).{.$contents..=."\n";.}.}..file |
10b60 | 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 69 67 6e 6f 72 65 46 69 6c 65 2c 20 24 63 6f 6e 74 | _put_contents($ignoreFile,.$cont |
10b80 | 65 6e 74 73 20 2e 20 24 76 65 6e 64 6f 72 2e 20 22 5c 6e 22 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 | ents...$vendor.."\n");.}.}.<?php |
10ba0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 | ............namespace.Composer\D |
10bc0 | 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | ownloader;..use.Composer\Package |
10be0 | 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | \PackageInterface;.use.Composer\ |
10c00 | 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | Util\ProcessExecutor;.use.Compos |
10c20 | 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | er\IO\IOInterface;.use.Composer\ |
10c40 | 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c | Util\Filesystem;.....abstract.cl |
10c60 | 61 73 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 44 6f 77 | ass.VcsDownloader.implements.Dow |
10c80 | 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f | nloaderInterface.{.protected.$io |
10ca0 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 | ;.protected.$process;.protected. |
10cc0 | 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | $filesystem;..public.function.__ |
10ce0 | 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 50 72 6f 63 65 | construct(IOInterface.$io,.Proce |
10d00 | 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 2c 20 46 69 6c 65 | ssExecutor.$process.=.null,.File |
10d20 | 73 79 73 74 65 6d 20 24 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d | system.$fs.=.null).{.$this->io.= |
10d40 | 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 | .$io;.$this->process.=.$process. |
10d60 | 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 24 74 68 69 73 2d 3e 66 | ?:.new.ProcessExecutor;.$this->f |
10d80 | 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 73 20 3f 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 | ilesystem.=.$fs.?:.new.Filesyste |
10da0 | 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 | m;.}.....public.function.getInst |
10dc0 | 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 73 6f 75 72 63 | allationSource().{.return.'sourc |
10de0 | 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f | e';.}.....public.function.downlo |
10e00 | 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 | ad(PackageInterface.$package,.$p |
10e20 | 61 74 68 29 0a 7b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 | ath).{.if.(!$package->getSourceR |
10e40 | 65 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 | eference()).{.throw.new.\Invalid |
10e60 | 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 70 61 | ArgumentException('Package.'.$pa |
10e80 | 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 69 73 20 6d 69 73 73 | ckage->getPrettyName().'.is.miss |
10ea0 | 69 6e 67 20 72 65 66 65 72 65 6e 63 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a | ing.reference.information');.}.. |
10ec0 | 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 2d 20 49 6e 73 74 61 6c 6c 69 6e 67 | $this->io->write("..-.Installing |
10ee0 | 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e | .<info>"...$package->getName().. |
10f00 | 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 | ."</info>.(<comment>"...$package |
10f20 | 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e | ->getPrettyVersion()..."</commen |
10f40 | 74 3e 29 22 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 | t>)");.$this->filesystem->remove |
10f60 | 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 44 6f 77 6e 6c | Directory($path);.$this->doDownl |
10f80 | 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d | oad($package,.$path);.$this->io- |
10fa0 | 3e 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | >write('');.}.....public.functio |
10fc0 | 6e 20 75 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 | n.update(PackageInterface.$initi |
10fe0 | 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 | al,.PackageInterface.$target,.$p |
11000 | 61 74 68 29 0a 7b 0a 69 66 20 28 21 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 | ath).{.if.(!$target->getSourceRe |
11020 | 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 | ference()).{.throw.new.\InvalidA |
11040 | 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 74 61 72 | rgumentException('Package.'.$tar |
11060 | 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 69 73 20 6d 69 73 73 69 6e | get->getPrettyName().'.is.missin |
11080 | 67 20 72 65 66 65 72 65 6e 63 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 | g.reference.information');.}..$t |
110a0 | 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 2d 20 55 70 64 61 74 69 6e 67 20 3c 69 6e | his->io->write("..-.Updating.<in |
110c0 | 66 6f 3e 22 20 2e 20 24 74 61 72 67 65 74 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 | fo>"...$target->getName()..."</i |
110e0 | 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 74 61 72 67 65 74 2d 3e 67 65 74 50 | nfo>.(<comment>"...$target->getP |
11100 | 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b | rettyVersion()..."</comment>)"); |
11120 | 0a 24 74 68 69 73 2d 3e 65 6e 66 6f 72 63 65 43 6c 65 61 6e 44 69 72 65 63 74 6f 72 79 28 24 70 | .$this->enforceCleanDirectory($p |
11140 | 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 55 70 64 61 74 65 28 24 69 6e 69 74 69 61 6c 2c 20 | ath);.$this->doUpdate($initial,. |
11160 | 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 | $target,.$path);.$this->io->writ |
11180 | 65 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d | e('');.}.....public.function.rem |
111a0 | 6f 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 | ove(PackageInterface.$package,.$ |
111c0 | 70 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 66 6f 72 63 65 43 6c 65 61 6e 44 69 72 65 63 | path).{.$this->enforceCleanDirec |
111e0 | 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 | tory($path);.$this->io->write(". |
11200 | 20 2d 20 52 65 6d 6f 76 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e | .-.Removing.<info>"...$package-> |
11220 | 67 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 | getName()..."</info>.(<comment>" |
11240 | 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 | ...$package->getPrettyVersion(). |
11260 | 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 | .."</comment>)");.if.(!$this->fi |
11280 | 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 | lesystem->removeDirectory($path) |
112a0 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 | ).{.throw.new.\RuntimeException( |
112c0 | 27 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6d 70 6c 65 74 65 6c 79 20 64 65 6c 65 74 65 20 27 2e 24 | 'Could.not.completely.delete.'.$ |
112e0 | 70 61 74 68 2e 27 2c 20 61 62 6f 72 74 69 6e 67 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | path.',.aborting.');.}.}........ |
11300 | 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f | abstract.protected.function.doDo |
11320 | 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 | wnload(PackageInterface.$package |
11340 | 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 | ,.$path);.........abstract.prote |
11360 | 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e | cted.function.doUpdate(PackageIn |
11380 | 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | terface.$initial,.PackageInterfa |
113a0 | 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 | ce.$target,.$path);.......abstra |
113c0 | 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 6e 66 6f 72 63 65 43 6c 65 | ct.protected.function.enforceCle |
113e0 | 61 6e 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | anDirectory($path);.}.<?php..... |
11400 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f | .......namespace.Composer\Downlo |
11420 | 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 | ader;..use.Composer\IO\IOInterfa |
11440 | 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 | ce;.use.Composer\Package\Package |
11460 | 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c | Interface;.use.Composer\Util\Fil |
11480 | 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 | esystem;.use.Composer\Util\Remot |
114a0 | 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 44 | eFilesystem;.........class.FileD |
114c0 | 6f 77 6e 6c 6f 61 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 44 6f 77 6e 6c 6f 61 64 65 72 49 | ownloader.implements.DownloaderI |
114e0 | 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 | nterface.{.protected.$io;.protec |
11500 | 74 65 64 20 24 72 66 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 65 73 79 73 74 65 6d 3b | ted.$rfs;.protected.$filesystem; |
11520 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 | .......public.function.__constru |
11540 | 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 | ct(IOInterface.$io,.RemoteFilesy |
11560 | 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 | stem.$rfs.=.null,.Filesystem.$fi |
11580 | 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 | lesystem.=.null).{.$this->io.=.$ |
115a0 | 69 6f 3b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 73 20 3f 3a 20 6e 65 77 20 52 65 6d | io;.$this->rfs.=.$rfs.?:.new.Rem |
115c0 | 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 | oteFilesystem($io);.$this->files |
115e0 | 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3f 3a 20 6e 65 77 20 46 69 6c 65 73 | ystem.=.$filesystem.?:.new.Files |
11600 | 79 73 74 65 6d 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | ystem();.}.....public.function.g |
11620 | 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | etInstallationSource().{.return. |
11640 | 27 64 69 73 74 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f | 'dist';.}.....public.function.do |
11660 | 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 | wnload(PackageInterface.$package |
11680 | 2c 20 24 70 61 74 68 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 | ,.$path).{.$url.=.$package->getD |
116a0 | 69 73 74 55 72 6c 28 29 3b 0a 69 66 20 28 21 24 75 72 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 | istUrl();.if.(!$url).{.throw.new |
116c0 | 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 | .\InvalidArgumentException('The. |
116e0 | 67 69 76 65 6e 20 70 61 63 6b 61 67 65 20 69 73 20 6d 69 73 73 69 6e 67 20 75 72 6c 20 69 6e 66 | given.package.is.missing.url.inf |
11700 | 6f 72 6d 61 74 69 6f 6e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d | ormation');.}..$this->filesystem |
11720 | 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 70 61 74 68 29 3b 0a | ->ensureDirectoryExists($path);. |
11740 | 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 4e 61 6d 65 28 | .$fileName.=.$this->getFileName( |
11760 | 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 | $package,.$path);..$this->io->wr |
11780 | 69 74 65 28 22 20 20 2d 20 49 6e 73 74 61 6c 6c 69 6e 67 20 3c 69 6e 66 6f 3e 22 20 2e 20 24 70 | ite("..-.Installing.<info>"...$p |
117a0 | 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 6e 66 6f 3e 20 28 3c 63 | ackage->getName()..."</info>.(<c |
117c0 | 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 | omment>"...$package->getPrettyVe |
117e0 | 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b 0a 0a 24 70 72 6f 63 | rsion()..."</comment>)");..$proc |
11800 | 65 73 73 55 72 6c 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 55 72 6c 28 24 75 72 6c 29 | essUrl.=.$this->processUrl($url) |
11820 | 3b 0a 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 72 66 73 2d 3e 63 6f 70 79 28 24 70 61 63 6b 61 | ;..try.{.$this->rfs->copy($packa |
11840 | 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 2c 20 24 70 72 6f 63 65 73 73 55 72 6c 2c | ge->getSourceUrl(),.$processUrl, |
11860 | 20 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 0a 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 | .$fileName);..if.(!file_exists($ |
11880 | 66 69 6c 65 4e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 | fileName)).{.throw.new.\Unexpect |
118a0 | 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 24 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f | edValueException($url.'.could.no |
118c0 | 74 20 62 65 20 73 61 76 65 64 20 74 6f 20 27 2e 24 66 69 6c 65 4e 61 6d 65 2e 27 2c 20 6d 61 6b | t.be.saved.to.'.$fileName.',.mak |
118e0 | 65 20 73 75 72 65 20 74 68 65 27 0a 2e 27 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 77 72 69 74 | e.sure.the'..'.directory.is.writ |
11900 | 61 62 6c 65 20 61 6e 64 20 79 6f 75 20 68 61 76 65 20 69 6e 74 65 72 6e 65 74 20 63 6f 6e 6e 65 | able.and.you.have.internet.conne |
11920 | 63 74 69 76 69 74 79 27 29 3b 0a 7d 0a 0a 24 63 68 65 63 6b 73 75 6d 20 3d 20 24 70 61 63 6b 61 | ctivity');.}..$checksum.=.$packa |
11940 | 67 65 2d 3e 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 69 66 20 28 24 | ge->getDistSha1Checksum();.if.($ |
11960 | 63 68 65 63 6b 73 75 6d 20 26 26 20 68 61 73 68 5f 66 69 6c 65 28 27 73 68 61 31 27 2c 20 24 66 | checksum.&&.hash_file('sha1',.$f |
11980 | 69 6c 65 4e 61 6d 65 29 20 21 3d 3d 20 24 63 68 65 63 6b 73 75 6d 29 20 7b 0a 74 68 72 6f 77 20 | ileName).!==.$checksum).{.throw. |
119a0 | 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 54 | new.\UnexpectedValueException('T |
119c0 | 68 65 20 63 68 65 63 6b 73 75 6d 20 76 65 72 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 | he.checksum.verification.of.the. |
119e0 | 66 69 6c 65 20 66 61 69 6c 65 64 20 28 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 20 27 2e 24 | file.failed.(downloaded.from.'.$ |
11a00 | 75 72 6c 2e 27 29 27 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 | url.')');.}.}.catch.(\Exception. |
11a20 | 24 65 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 | $e).{...$this->filesystem->remov |
11a40 | 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d | eDirectory($path);.throw.$e;.}.} |
11a60 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 50 61 63 6b | .....public.function.update(Pack |
11a80 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e | ageInterface.$initial,.PackageIn |
11aa0 | 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d | terface.$target,.$path).{.$this- |
11ac0 | 3e 72 65 6d 6f 76 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d | >remove($initial,.$path);.$this- |
11ae0 | 3e 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a | >download($target,.$path);.}.... |
11b00 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 50 61 63 6b 61 67 65 49 | .public.function.remove(PackageI |
11b20 | 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 | nterface.$package,.$path).{.$thi |
11b40 | 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 2d 20 52 65 6d 6f 76 69 6e 67 20 3c 69 6e 66 6f | s->io->write("..-.Removing.<info |
11b60 | 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 2e 20 22 3c 2f 69 6e | >"...$package->getName()..."</in |
11b80 | 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 22 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 | fo>.(<comment>"...$package->getP |
11ba0 | 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 22 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 22 29 3b | rettyVersion()..."</comment>)"); |
11bc0 | 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 | .if.(!$this->filesystem->removeD |
11be0 | 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 | irectory($path)).{.throw.new.\Ru |
11c00 | 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6d 70 6c 65 | ntimeException('Could.not.comple |
11c20 | 74 65 6c 79 20 64 65 6c 65 74 65 20 27 2e 24 70 61 74 68 2e 27 2c 20 61 62 6f 72 74 69 6e 67 2e | tely.delete.'.$path.',.aborting. |
11c40 | 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | ');.}.}.........protected.functi |
11c60 | 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | on.getFileName(PackageInterface. |
11c80 | 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 74 68 2e | $package,.$path).{.return.$path. |
11ca0 | 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 | '/'.pathinfo($package->getDistUr |
11cc0 | 6c 28 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 53 45 4e 41 4d 45 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | l(),.PATHINFO_BASENAME);.}...... |
11ce0 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 55 72 | ....protected.function.processUr |
11d00 | 6c 28 24 75 72 6c 29 0a 7b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 | l($url).{.if.(!extension_loaded( |
11d20 | 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 75 72 6c 2c | 'openssl').&&.0.===.strpos($url, |
11d40 | 20 27 68 74 74 70 73 3a 27 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 | .'https:')).{.throw.new.\Runtime |
11d60 | 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f | Exception('You.must.enable.the.o |
11d80 | 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 66 69 6c | penssl.extension.to.download.fil |
11da0 | 65 73 20 76 69 61 20 68 74 74 70 73 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 3b 0a | es.via.https');.}..return.$url;. |
11dc0 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 | }.}.<?php............namespace.C |
11de0 | 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | omposer\Downloader;..use.Compose |
11e00 | 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 | r\Package\PackageInterface;.use. |
11e20 | 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 76 6e 20 61 73 20 53 76 6e 55 74 69 6c 3b 0a 0a 0a | Composer\Util\Svn.as.SvnUtil;... |
11e40 | 0a 0a 0a 63 6c 61 73 73 20 53 76 6e 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 | ...class.SvnDownloader.extends.V |
11e60 | 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | csDownloader.{....public.functio |
11e80 | 6e 20 64 6f 44 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 | n.doDownload(PackageInterface.$p |
11ea0 | 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 70 61 63 6b 61 67 65 | ackage,.$path).{.$url.=.$package |
11ec0 | 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 24 72 65 66 20 3d 20 24 70 61 63 6b 61 67 | ->getSourceUrl();.$ref.=.$packag |
11ee0 | 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 24 74 68 69 73 2d | e->getSourceReference();..$this- |
11f00 | 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 43 68 65 63 6b 69 6e 67 20 6f 75 74 20 22 2e 24 | >io->write("....Checking.out.".$ |
11f20 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a | package->getSourceReference());. |
11f40 | 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 75 72 6c 2c 20 22 73 76 6e 20 63 6f 22 2c 20 73 | $this->execute($url,."svn.co",.s |
11f60 | 70 72 69 6e 74 66 28 22 25 73 2f 25 73 22 2c 20 24 75 72 6c 2c 20 24 72 65 66 29 2c 20 6e 75 6c | printf("%s/%s",.$url,.$ref),.nul |
11f80 | 6c 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | l,.$path);.}.....public.function |
11fa0 | 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 | .doUpdate(PackageInterface.$init |
11fc0 | 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 | ial,.PackageInterface.$target,.$ |
11fe0 | 70 61 74 68 29 0a 7b 0a 24 75 72 6c 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 | path).{.$url.=.$target->getSourc |
12000 | 65 55 72 6c 28 29 3b 0a 24 72 65 66 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 | eUrl();.$ref.=.$target->getSourc |
12020 | 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 | eReference();..$this->io->write( |
12040 | 22 20 20 20 20 43 68 65 63 6b 69 6e 67 20 6f 75 74 20 22 20 2e 20 24 72 65 66 29 3b 0a 24 74 68 | "....Checking.out."...$ref);.$th |
12060 | 69 73 2d 3e 65 78 65 63 75 74 65 28 24 75 72 6c 2c 20 22 73 76 6e 20 73 77 69 74 63 68 22 2c 20 | is->execute($url,."svn.switch",. |
12080 | 73 70 72 69 6e 74 66 28 22 25 73 2f 25 73 22 2c 20 24 75 72 6c 2c 20 24 72 65 66 29 2c 20 24 70 | sprintf("%s/%s",.$url,.$ref),.$p |
120a0 | 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 | ath);.}.....protected.function.e |
120c0 | 6e 66 6f 72 63 65 43 6c 65 61 6e 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 24 74 | nforceCleanDirectory($path).{.$t |
120e0 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 73 74 61 74 75 | his->process->execute('svn.statu |
12100 | 73 20 2d 2d 69 67 6e 6f 72 65 2d 65 78 74 65 72 6e 61 6c 73 27 2c 20 24 6f 75 74 70 75 74 2c 20 | s.--ignore-externals',.$output,. |
12120 | 24 70 61 74 68 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 20 2a 5b 5e 58 20 | $path);.if.(preg_match('{^.*[^X. |
12140 | 5d 20 2b 7d 6d 27 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 | ].+}m',.$output)).{.throw.new.\R |
12160 | 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 53 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72 | untimeException('Source.director |
12180 | 79 20 27 20 2e 20 24 70 61 74 68 20 2e 20 27 20 68 61 73 20 75 6e 63 6f 6d 6d 69 74 74 65 64 20 | y.'...$path...'.has.uncommitted. |
121a0 | 63 68 61 6e 67 65 73 3a 27 2e 22 5c 6e 5c 6e 22 2e 72 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 | changes:'."\n\n".rtrim($output)) |
121c0 | 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e | ;.}.}..............protected.fun |
121e0 | 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 24 62 61 73 65 55 72 6c 2c 20 24 63 6f 6d 6d 61 6e 64 | ction.execute($baseUrl,.$command |
12200 | 2c 20 24 75 72 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c | ,.$url,.$cwd.=.null,.$path.=.nul |
12220 | 6c 29 0a 7b 0a 24 75 74 69 6c 20 3d 20 6e 65 77 20 53 76 6e 55 74 69 6c 28 24 62 61 73 65 55 72 | l).{.$util.=.new.SvnUtil($baseUr |
12240 | 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 75 74 69 | l,.$this->io);.try.{.return.$uti |
12260 | 6c 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 64 2c | l->execute($command,.$url,.$cwd, |
12280 | 20 24 70 61 74 68 2c 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 3b | .$path,.$this->io->isVerbose()); |
122a0 | 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 | .}.catch.(\RuntimeException.$e). |
122c0 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 | {.throw.new.\RuntimeException(.' |
122e0 | 50 61 63 6b 61 67 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 2c | Package.could.not.be.downloaded, |
12300 | 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 | .'.$e->getMessage().);.}.}.}.<?p |
12320 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
12340 | 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c | \Downloader;..use.Composer\Util\ |
12360 | 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 | Filesystem;...........class.Pear |
12380 | 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 | PackageExtractor.{.private.stati |
123a0 | 63 20 24 72 6f 6c 65 73 57 69 74 68 6f 75 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 66 69 78 | c.$rolesWithoutPackageNamePrefix |
123c0 | 20 3d 20 61 72 72 61 79 28 27 70 68 70 27 2c 20 27 73 63 72 69 70 74 27 2c 20 27 77 77 77 27 29 | .=.array('php',.'script',.'www') |
123e0 | 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 70 72 69 76 61 74 65 20 | ;..private.$filesystem;.private. |
12400 | 24 66 69 6c 65 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 | $file;..public.function.__constr |
12420 | 75 63 74 28 24 66 69 6c 65 29 0a 7b 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 29 | uct($file).{.if.(!is_file($file) |
12440 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 | ).{.throw.new.\UnexpectedValueEx |
12460 | 63 65 70 74 69 6f 6e 28 27 50 45 41 52 20 70 61 63 6b 61 67 65 20 66 69 6c 65 20 69 73 20 6e 6f | ception('PEAR.package.file.is.no |
12480 | 74 20 66 6f 75 6e 64 20 61 74 20 27 2e 24 66 69 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 | t.found.at.'.$file);.}..$this->f |
124a0 | 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 74 | ilesystem.=.new.Filesystem();.$t |
124c0 | 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 66 69 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | his->file.=.$file;.}............ |
124e0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 54 6f 28 24 74 61 72 67 65 | public.function.extractTo($targe |
12500 | 74 2c 20 61 72 72 61 79 20 24 72 6f 6c 65 73 20 3d 20 61 72 72 61 79 28 27 70 68 70 27 20 3d 3e | t,.array.$roles.=.array('php'.=> |
12520 | 20 27 2f 27 2c 20 27 73 63 72 69 70 74 27 20 3d 3e 20 27 2f 62 69 6e 27 29 2c 20 24 76 61 72 73 | .'/',.'script'.=>.'/bin'),.$vars |
12540 | 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 20 3d 20 | .=.array()).{.$extractionPath.=. |
12560 | 24 74 61 72 67 65 74 2e 27 2f 74 61 72 62 61 6c 6c 27 3b 0a 0a 74 72 79 20 7b 0a 24 61 72 63 68 | $target.'/tarball';..try.{.$arch |
12580 | 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 74 61 28 24 74 68 69 73 2d 3e 66 69 6c 65 29 | ive.=.new.\PharData($this->file) |
125a0 | 3b 0a 24 61 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 65 78 74 72 61 63 74 69 6f | ;.$archive->extractTo($extractio |
125c0 | 6e 50 61 74 68 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 0a 69 66 20 28 21 69 73 5f 66 69 6c | nPath,.null,.true);..if.(!is_fil |
125e0 | 65 28 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 | e($this->combine($extractionPath |
12600 | 2c 20 27 2f 70 61 63 6b 61 67 65 2e 78 6d 6c 27 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 | ,.'/package.xml'))).{.throw.new. |
12620 | 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 50 45 41 52 20 | \RuntimeException('Invalid.PEAR. |
12640 | 70 61 63 6b 61 67 65 2e 20 49 74 20 6d 75 73 74 20 63 6f 6e 74 61 69 6e 20 70 61 63 6b 61 67 65 | package..It.must.contain.package |
12660 | 2e 78 6d 6c 20 66 69 6c 65 2e 27 29 3b 0a 7d 0a 0a 24 66 69 6c 65 43 6f 70 79 41 63 74 69 6f 6e | .xml.file.');.}..$fileCopyAction |
12680 | 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 70 79 41 63 74 69 6f 6e 73 28 24 65 78 74 | s.=.$this->buildCopyActions($ext |
126a0 | 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 3b 0a 24 74 68 | ractionPath,.$roles,.$vars);.$th |
126c0 | 69 73 2d 3e 63 6f 70 79 46 69 6c 65 73 28 24 66 69 6c 65 43 6f 70 79 41 63 74 69 6f 6e 73 2c 20 | is->copyFiles($fileCopyActions,. |
126e0 | 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 2c 20 24 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 | $extractionPath,.$target,.$roles |
12700 | 2c 20 24 76 61 72 73 29 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d | ,.$vars);.$this->filesystem->rem |
12720 | 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 65 78 74 72 61 63 74 69 6f 6e 50 61 74 68 29 3b 0a 7d | oveDirectory($extractionPath);.} |
12740 | 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b | .catch.(\Exception.$exception).{ |
12760 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 | .throw.new.\UnexpectedValueExcep |
12780 | 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 74 72 61 63 74 20 | tion(sprintf('Failed.to.extract. |
127a0 | 50 45 41 52 20 70 61 63 6b 61 67 65 20 25 73 20 74 6f 20 25 73 2e 20 52 65 61 73 6f 6e 3a 20 25 | PEAR.package.%s.to.%s..Reason:.% |
127c0 | 73 27 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 2c 20 24 74 61 72 67 65 74 2c 20 24 65 78 63 65 70 | s',.$this->file,.$target,.$excep |
127e0 | 74 69 6f 6e 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 2c 20 30 2c 20 24 65 78 63 65 70 74 69 | tion->getMessage()),.0,.$excepti |
12800 | 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 | on);.}.}...........private.funct |
12820 | 69 6f 6e 20 63 6f 70 79 46 69 6c 65 73 28 24 66 69 6c 65 73 2c 20 24 73 6f 75 72 63 65 2c 20 24 | ion.copyFiles($files,.$source,.$ |
12840 | 74 61 72 67 65 74 2c 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 | target,.$roles,.$vars).{.foreach |
12860 | 20 28 24 66 69 6c 65 73 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 24 66 72 6f 6d 20 3d 20 24 74 68 | .($files.as.$file).{.$from.=.$th |
12880 | 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 24 66 69 6c 65 5b 27 66 72 6f 6d | is->combine($source,.$file['from |
128a0 | 27 5d 29 3b 0a 24 74 6f 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 74 61 72 67 65 | ']);.$to.=.$this->combine($targe |
128c0 | 74 2c 20 24 72 6f 6c 65 73 5b 24 66 69 6c 65 5b 27 72 6f 6c 65 27 5d 5d 29 3b 0a 24 74 6f 20 3d | t,.$roles[$file['role']]);.$to.= |
128e0 | 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 74 6f 2c 20 24 66 69 6c 65 5b 27 74 6f 27 5d | .$this->combine($to,.$file['to'] |
12900 | 29 3b 0a 24 74 61 73 6b 73 20 3d 20 24 66 69 6c 65 5b 27 74 61 73 6b 73 27 5d 3b 0a 24 74 68 69 | );.$tasks.=.$file['tasks'];.$thi |
12920 | 73 2d 3e 63 6f 70 79 46 69 6c 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 74 61 73 6b 73 2c 20 | s->copyFile($from,.$to,.$tasks,. |
12940 | 24 76 61 72 73 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f | $vars);.}.}..private.function.co |
12960 | 70 79 46 69 6c 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 74 61 73 6b 73 2c 20 24 76 61 72 73 | pyFile($from,.$to,.$tasks,.$vars |
12980 | 29 0a 7b 0a 69 66 20 28 21 69 73 5f 66 69 6c 65 28 24 66 72 6f 6d 29 29 20 7b 0a 74 68 72 6f 77 | ).{.if.(!is_file($from)).{.throw |
129a0 | 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 | .new.\RuntimeException('Invalid. |
129c0 | 50 45 41 52 20 70 61 63 6b 61 67 65 2e 20 70 61 63 6b 61 67 65 2e 78 6d 6c 20 64 65 66 69 6e 65 | PEAR.package..package.xml.define |
129e0 | 73 20 66 69 6c 65 20 74 68 61 74 20 69 73 20 6e 6f 74 20 6c 6f 63 61 74 65 64 20 69 6e 73 69 64 | s.file.that.is.not.located.insid |
12a00 | 65 20 74 61 72 62 61 6c 6c 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 | e.tarball.');.}..$this->filesyst |
12a20 | 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 64 69 72 6e 61 6d | em->ensureDirectoryExists(dirnam |
12a40 | 65 28 24 74 6f 29 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 20 63 6f 75 6e 74 28 24 74 61 73 6b 73 29 | e($to));..if.(0.==.count($tasks) |
12a60 | 29 20 7b 0a 24 63 6f 70 69 65 64 20 3d 20 63 6f 70 79 28 24 66 72 6f 6d 2c 20 24 74 6f 29 3b 0a | ).{.$copied.=.copy($from,.$to);. |
12a80 | 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e | }.else.{.$content.=.file_get_con |
12aa0 | 74 65 6e 74 73 28 24 66 72 6f 6d 29 3b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 3d 20 61 72 | tents($from);.$replacements.=.ar |
12ac0 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 73 6b 73 20 61 73 20 24 74 61 73 6b 29 | ray();.foreach.($tasks.as.$task) |
12ae0 | 20 7b 0a 24 70 61 74 74 65 72 6e 20 3d 20 24 74 61 73 6b 5b 27 66 72 6f 6d 27 5d 3b 0a 24 76 61 | .{.$pattern.=.$task['from'];.$va |
12b00 | 72 4e 61 6d 65 20 3d 20 24 74 61 73 6b 5b 27 74 6f 27 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 24 | rName.=.$task['to'];.if.(isset($ |
12b20 | 76 61 72 73 5b 24 76 61 72 4e 61 6d 65 5d 29 29 20 7b 0a 24 72 65 70 6c 61 63 65 6d 65 6e 74 73 | vars[$varName])).{.$replacements |
12b40 | 5b 24 70 61 74 74 65 72 6e 5d 20 3d 20 24 76 61 72 73 5b 24 76 61 72 4e 61 6d 65 5d 3b 0a 7d 0a | [$pattern].=.$vars[$varName];.}. |
12b60 | 7d 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 73 74 72 74 72 28 24 63 6f 6e 74 65 6e 74 2c 20 24 72 65 | }.$content.=.strtr($content,.$re |
12b80 | 70 6c 61 63 65 6d 65 6e 74 73 29 3b 0a 0a 24 63 6f 70 69 65 64 20 3d 20 66 69 6c 65 5f 70 75 74 | placements);..$copied.=.file_put |
12ba0 | 5f 63 6f 6e 74 65 6e 74 73 28 24 74 6f 2c 20 24 63 6f 6e 74 65 6e 74 29 3b 0a 7d 0a 0a 69 66 20 | _contents($to,.$content);.}..if. |
12bc0 | 28 66 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 70 69 65 64 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 | (false.===.$copied).{.throw.new. |
12be0 | 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 46 61 69 6c 65 | \RuntimeException(sprintf('Faile |
12c00 | 64 20 74 6f 20 63 6f 70 79 20 25 73 20 74 6f 20 25 73 27 2c 20 24 66 72 6f 6d 2c 20 24 74 6f 29 | d.to.copy.%s.to.%s',.$from,.$to) |
12c20 | 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f | );.}.}...........private.functio |
12c40 | 6e 20 62 75 69 6c 64 43 6f 70 79 41 63 74 69 6f 6e 73 28 24 73 6f 75 72 63 65 2c 20 61 72 72 61 | n.buildCopyActions($source,.arra |
12c60 | 79 20 24 72 6f 6c 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 73 | y.$roles,.$vars).{..$package.=.s |
12c80 | 69 6d 70 6c 65 78 6d 6c 5f 6c 6f 61 64 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e | implexml_load_file($this->combin |
12ca0 | 65 28 24 73 6f 75 72 63 65 2c 20 27 70 61 63 6b 61 67 65 2e 78 6d 6c 27 29 29 3b 0a 69 66 28 66 | e($source,.'package.xml'));.if(f |
12cc0 | 61 6c 73 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 | alse.===.$package).throw.new.\Ru |
12ce0 | 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 | ntimeException('Package.definiti |
12d00 | 6f 6e 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 2e 27 29 3b 0a 0a 24 70 61 63 6b 61 | on.file.is.not.valid.');..$packa |
12d20 | 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 5b 27 76 65 72 73 | geSchemaVersion.=.$package['vers |
12d40 | 69 6f 6e 27 5d 3b 0a 69 66 20 28 27 31 2e 30 27 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 | ion'];.if.('1.0'.==.$packageSche |
12d60 | 6d 61 56 65 72 73 69 6f 6e 29 20 7b 0a 24 63 68 69 6c 64 72 65 6e 20 3d 20 24 70 61 63 6b 61 67 | maVersion).{.$children.=.$packag |
12d80 | 65 2d 3e 72 65 6c 65 61 73 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 6c 64 72 65 6e 28 29 | e->release->filelist->children() |
12da0 | 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 | ;.$packageName.=.(string).$packa |
12dc0 | 67 65 2d 3e 6e 61 6d 65 3b 0a 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 | ge->name;.$packageVersion.=.(str |
12de0 | 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 72 65 6c 65 61 73 65 2d 3e 76 65 72 73 69 6f 6e 3b | ing).$package->release->version; |
12e00 | 0a 24 73 6f 75 72 63 65 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2d 27 | .$sourceDir.=.$packageName...'-' |
12e20 | 20 2e 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 | ...$packageVersion;.$result.=.$t |
12e40 | 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 69 6c 64 72 65 6e | his->buildSourceList10($children |
12e60 | 2c 20 24 72 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 44 69 72 2c 20 27 27 2c 20 6e 75 6c 6c 2c 20 | ,.$roles,.$sourceDir,.'',.null,. |
12e80 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 32 2e 30 27 20 3d | $packageName);.}.elseif.('2.0'.= |
12ea0 | 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 20 7c 7c 20 27 32 2e 31 27 | =.$packageSchemaVersion.||.'2.1' |
12ec0 | 20 3d 3d 20 24 70 61 63 6b 61 67 65 53 63 68 65 6d 61 56 65 72 73 69 6f 6e 29 20 7b 0a 24 63 68 | .==.$packageSchemaVersion).{.$ch |
12ee0 | 69 6c 64 72 65 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 63 6f 6e 74 65 6e 74 73 2d 3e 63 68 69 | ildren.=.$package->contents->chi |
12f00 | 6c 64 72 65 6e 28 29 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 | ldren();.$packageName.=.(string) |
12f20 | 20 24 70 61 63 6b 61 67 65 2d 3e 6e 61 6d 65 3b 0a 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e | .$package->name;.$packageVersion |
12f40 | 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 2d 3e 76 65 72 73 69 6f 6e 2d 3e 72 | .=.(string).$package->version->r |
12f60 | 65 6c 65 61 73 65 3b 0a 24 73 6f 75 72 63 65 44 69 72 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d | elease;.$sourceDir.=.$packageNam |
12f80 | 65 20 2e 20 27 2d 27 20 2e 20 24 70 61 63 6b 61 67 65 56 65 72 73 69 6f 6e 3b 0a 24 72 65 73 75 | e...'-'...$packageVersion;.$resu |
12fa0 | 6c 74 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 63 | lt.=.$this->buildSourceList20($c |
12fc0 | 68 69 6c 64 72 65 6e 2c 20 24 72 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 44 69 72 2c 20 27 27 2c | hildren,.$roles,.$sourceDir,.'', |
12fe0 | 20 6e 75 6c 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 | .null,.$packageName);..$namespac |
13000 | 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 3b 0a | es.=.$package->getNamespaces();. |
13020 | 24 70 61 63 6b 61 67 65 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 | $package->registerXPathNamespace |
13040 | 28 27 6e 73 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 5b 27 27 5d 29 3b 0a 24 72 65 6c 65 61 73 | ('ns',.$namespaces['']);.$releas |
13060 | 65 4e 6f 64 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 78 70 61 74 68 28 27 6e 73 3a 70 68 70 | eNodes.=.$package->xpath('ns:php |
13080 | 72 65 6c 65 61 73 65 27 29 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 79 52 65 6c 65 61 73 65 28 24 | release');.$this->applyRelease($ |
130a0 | 72 65 73 75 6c 74 2c 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 3b 0a 7d | result,.$releaseNodes,.$vars);.} |
130c0 | 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 | .else.{.throw.new.\RuntimeExcept |
130e0 | 69 6f 6e 28 27 55 6e 73 75 70 70 6f 72 74 65 64 20 73 63 68 65 6d 61 20 76 65 72 73 69 6f 6e 20 | ion('Unsupported.schema.version. |
13100 | 6f 66 20 70 61 63 6b 61 67 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 66 69 6c 65 2e 27 29 3b 0a 7d | of.package.definition.file.');.} |
13120 | 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e | ..return.$result;.}..private.fun |
13140 | 63 74 69 6f 6e 20 61 70 70 6c 79 52 65 6c 65 61 73 65 28 26 24 61 63 74 69 6f 6e 73 2c 20 24 72 | ction.applyRelease(&$actions,.$r |
13160 | 65 6c 65 61 73 65 4e 6f 64 65 73 2c 20 24 76 61 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 | eleaseNodes,.$vars).{.foreach.($ |
13180 | 72 65 6c 65 61 73 65 4e 6f 64 65 73 20 61 73 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 29 20 7b 0a | releaseNodes.as.$releaseNode).{. |
131a0 | 24 72 65 71 75 69 72 65 64 4f 73 20 3d 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 | $requiredOs.=.$releaseNode->inst |
131c0 | 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 20 26 26 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 | allconditions.&&.$releaseNode->i |
131e0 | 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 20 26 26 20 24 72 65 6c 65 61 73 65 | nstallconditions->os.&&.$release |
13200 | 4e 6f 64 65 2d 3e 69 6e 73 74 61 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 2d 3e 6e 61 6d | Node->installconditions->os->nam |
13220 | 65 20 3f 20 28 73 74 72 69 6e 67 29 20 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 69 6e 73 74 61 | e.?.(string).$releaseNode->insta |
13240 | 6c 6c 63 6f 6e 64 69 74 69 6f 6e 73 2d 3e 6f 73 2d 3e 6e 61 6d 65 20 3a 20 27 27 3b 0a 69 66 20 | llconditions->os->name.:.'';.if. |
13260 | 28 24 72 65 71 75 69 72 65 64 4f 73 20 26 26 20 24 76 61 72 73 5b 27 6f 73 27 5d 20 21 3d 20 24 | ($requiredOs.&&.$vars['os'].!=.$ |
13280 | 72 65 71 75 69 72 65 64 4f 73 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 | requiredOs).{.continue;.}..if.($ |
132a0 | 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 29 20 7b 0a 66 6f 72 65 61 63 68 | releaseNode->filelist).{.foreach |
132c0 | 20 28 24 72 65 6c 65 61 73 65 4e 6f 64 65 2d 3e 66 69 6c 65 6c 69 73 74 2d 3e 63 68 69 6c 64 72 | .($releaseNode->filelist->childr |
132e0 | 65 6e 28 29 20 61 73 20 24 61 63 74 69 6f 6e 29 20 7b 0a 69 66 20 28 27 69 6e 73 74 61 6c 6c 27 | en().as.$action).{.if.('install' |
13300 | 20 3d 3d 20 24 61 63 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 6e 61 6d 65 20 | .==.$action->getName()).{.$name. |
13320 | 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 6e 61 6d 65 27 5d 3b 0a 24 61 73 20 | =.(string).$action['name'];.$as. |
13340 | 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 61 73 27 5d 3b 0a 69 66 20 28 69 73 | =.(string).$action['as'];.if.(is |
13360 | 73 65 74 28 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 61 63 74 69 6f 6e 73 | set($actions[$name])).{.$actions |
13380 | 5b 24 6e 61 6d 65 5d 5b 27 74 6f 27 5d 20 3d 20 24 61 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 | [$name]['to'].=.$as;.}.}.elseif. |
133a0 | 28 27 69 67 6e 6f 72 65 27 20 3d 3d 20 24 61 63 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 | ('ignore'.==.$action->getName()) |
133c0 | 20 7b 0a 24 6e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 61 63 74 69 6f 6e 5b 27 6e 61 6d | .{.$name.=.(string).$action['nam |
133e0 | 65 27 5d 3b 0a 75 6e 73 65 74 28 24 61 63 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 20 65 | e'];.unset($actions[$name]);.}.e |
13400 | 6c 73 65 20 7b 0a 0a 20 7d 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 | lse.{...}.}.}.break;.}.}..privat |
13420 | 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 31 30 28 24 63 68 | e.function.buildSourceList10($ch |
13440 | 69 6c 64 72 65 6e 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 20 3d 20 | ildren,.$targetRoles,.$source.=. |
13460 | 27 27 2c 20 24 74 61 72 67 65 74 20 3d 20 27 27 2c 20 24 72 6f 6c 65 20 3d 20 6e 75 6c 6c 2c 20 | '',.$target.=.'',.$role.=.null,. |
13480 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 | $packageName).{.$result.=.array( |
134a0 | 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 68 69 6c 64 72 65 6e 20 61 73 20 24 63 68 69 | );....foreach.($children.as.$chi |
134c0 | 6c 64 29 20 7b 0a 0a 69 66 20 28 24 63 68 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 | ld).{..if.($child->getName().==. |
134e0 | 27 64 69 72 27 29 20 7b 0a 24 64 69 72 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d | 'dir').{.$dirSource.=.$this->com |
13500 | 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e | bine($source,.(string).$child['n |
13520 | 61 6d 65 27 5d 29 3b 0a 24 64 69 72 54 61 72 67 65 74 20 3d 20 24 63 68 69 6c 64 5b 27 62 61 73 | ame']);.$dirTarget.=.$child['bas |
13540 | 65 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 20 3a 20 24 74 61 72 67 65 74 3b 0a 24 64 69 72 52 | einstalldir'].?.:.$target;.$dirR |
13560 | 6f 6c 65 20 3d 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 20 3a 20 24 72 6f 6c 65 3b 0a | ole.=.$child['role'].?.:.$role;. |
13580 | 24 64 69 72 46 69 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 | $dirFiles.=.$this->buildSourceLi |
135a0 | 73 74 31 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 6e 28 29 2c 20 24 74 61 72 67 65 74 | st10($child->children(),.$target |
135c0 | 52 6f 6c 65 73 2c 20 24 64 69 72 53 6f 75 72 63 65 2c 20 24 64 69 72 54 61 72 67 65 74 2c 20 24 | Roles,.$dirSource,.$dirTarget,.$ |
135e0 | 64 69 72 52 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 72 65 73 75 6c 74 20 | dirRole,.$packageName);.$result. |
13600 | 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 69 72 46 69 6c 65 73 | =.array_merge($result,.$dirFiles |
13620 | 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 63 68 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d | );.}.elseif.($child->getName().= |
13640 | 3d 20 27 66 69 6c 65 27 29 20 7b 0a 24 66 69 6c 65 52 6f 6c 65 20 3d 20 28 73 74 72 69 6e 67 29 | =.'file').{.$fileRole.=.(string) |
13660 | 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 20 3a 20 24 72 6f 6c 65 3b 0a 69 66 20 28 69 | .$child['role'].?.:.$role;.if.(i |
13680 | 73 73 65 74 28 24 74 61 72 67 65 74 52 6f 6c 65 73 5b 24 66 69 6c 65 52 6f 6c 65 5d 29 29 20 7b | sset($targetRoles[$fileRole])).{ |
136a0 | 0a 24 66 69 6c 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 28 24 63 68 69 6c 64 5b 27 6e | .$fileName.=.(string).($child['n |
136c0 | 61 6d 65 27 5d 20 3f 20 3a 20 24 63 68 69 6c 64 5b 30 5d 29 3b 20 0a 20 24 66 69 6c 65 53 6f 75 | ame'].?.:.$child[0]);...$fileSou |
136e0 | 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 24 66 | rce.=.$this->combine($source,.$f |
13700 | 69 6c 65 4e 61 6d 65 29 3b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 74 68 69 73 2d 3e 63 | ileName);.$fileTarget.=.$this->c |
13720 | 6f 6d 62 69 6e 65 28 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 62 61 73 65 69 6e 73 74 | ombine((string).$child['baseinst |
13740 | 61 6c 6c 64 69 72 27 5d 20 3f 20 3a 20 24 74 61 72 67 65 74 2c 20 24 66 69 6c 65 4e 61 6d 65 29 | alldir'].?.:.$target,.$fileName) |
13760 | 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 66 69 6c 65 52 6f 6c 65 2c 20 73 65 6c 66 3a | ;.if.(!in_array($fileRole,.self: |
13780 | 3a 24 72 6f 6c 65 73 57 69 74 68 6f 75 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 66 69 78 29 | :$rolesWithoutPackageNamePrefix) |
137a0 | 29 20 7b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e | ).{.$fileTarget.=.$packageName.. |
137c0 | 20 27 2f 27 20 2e 20 24 66 69 6c 65 54 61 72 67 65 74 3b 0a 7d 0a 24 72 65 73 75 6c 74 5b 28 73 | .'/'...$fileTarget;.}.$result[(s |
137e0 | 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 61 72 72 61 79 28 27 | tring).$child['name']].=.array(' |
13800 | 66 72 6f 6d 27 20 3d 3e 20 24 66 69 6c 65 53 6f 75 72 63 65 2c 20 27 74 6f 27 20 3d 3e 20 24 66 | from'.=>.$fileSource,.'to'.=>.$f |
13820 | 69 6c 65 54 61 72 67 65 74 2c 20 27 72 6f 6c 65 27 20 3d 3e 20 24 66 69 6c 65 52 6f 6c 65 2c 20 | ileTarget,.'role'.=>.$fileRole,. |
13840 | 27 74 61 73 6b 73 27 20 3d 3e 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 | 'tasks'.=>.array());.}.}.}..retu |
13860 | 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 | rn.$result;.}..private.function. |
13880 | 62 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 63 68 69 6c 64 72 65 6e 2c 20 24 74 61 | buildSourceList20($children,.$ta |
138a0 | 72 67 65 74 52 6f 6c 65 73 2c 20 24 73 6f 75 72 63 65 20 3d 20 27 27 2c 20 24 74 61 72 67 65 74 | rgetRoles,.$source.=.'',.$target |
138c0 | 20 3d 20 27 27 2c 20 24 72 6f 6c 65 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d | .=.'',.$role.=.null,.$packageNam |
138e0 | 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 | e).{.$result.=.array();....forea |
13900 | 63 68 20 28 24 63 68 69 6c 64 72 65 6e 20 61 73 20 24 63 68 69 6c 64 29 20 7b 0a 0a 69 66 20 28 | ch.($children.as.$child).{..if.( |
13920 | 27 64 69 72 27 20 3d 3d 20 24 63 68 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 64 | 'dir'.==.$child->getName()).{.$d |
13940 | 69 72 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 | irSource.=.$this->combine($sourc |
13960 | 65 2c 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 64 69 72 54 61 72 67 65 74 20 3d | e,.$child['name']);.$dirTarget.= |
13980 | 20 24 63 68 69 6c 64 5b 27 62 61 73 65 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 20 3a 20 24 74 | .$child['baseinstalldir'].?.:.$t |
139a0 | 61 72 67 65 74 3b 0a 24 64 69 72 52 6f 6c 65 20 3d 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d | arget;.$dirRole.=.$child['role'] |
139c0 | 20 3f 20 3a 20 24 72 6f 6c 65 3b 0a 24 64 69 72 46 69 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 | .?.:.$role;.$dirFiles.=.$this->b |
139e0 | 75 69 6c 64 53 6f 75 72 63 65 4c 69 73 74 32 30 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c 64 72 65 | uildSourceList20($child->childre |
13a00 | 6e 28 29 2c 20 24 74 61 72 67 65 74 52 6f 6c 65 73 2c 20 24 64 69 72 53 6f 75 72 63 65 2c 20 24 | n(),.$targetRoles,.$dirSource,.$ |
13a20 | 64 69 72 54 61 72 67 65 74 2c 20 24 64 69 72 52 6f 6c 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d | dirTarget,.$dirRole,.$packageNam |
13a40 | 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c | e);.$result.=.array_merge($resul |
13a60 | 74 2c 20 24 64 69 72 46 69 6c 65 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 66 69 6c 65 27 20 | t,.$dirFiles);.}.elseif.('file'. |
13a80 | 3d 3d 20 24 63 68 69 6c 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 66 69 6c 65 52 6f 6c | ==.$child->getName()).{.$fileRol |
13aa0 | 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 6c 64 5b 27 72 6f 6c 65 27 5d 20 3f 20 3a 20 | e.=.(string).$child['role'].?.:. |
13ac0 | 24 72 6f 6c 65 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 61 72 67 65 74 52 6f 6c 65 73 5b 24 66 | $role;.if.(isset($targetRoles[$f |
13ae0 | 69 6c 65 52 6f 6c 65 5d 29 29 20 7b 0a 24 66 69 6c 65 53 6f 75 72 63 65 20 3d 20 24 74 68 69 73 | ileRole])).{.$fileSource.=.$this |
13b00 | 2d 3e 63 6f 6d 62 69 6e 65 28 24 73 6f 75 72 63 65 2c 20 28 73 74 72 69 6e 67 29 20 24 63 68 69 | ->combine($source,.(string).$chi |
13b20 | 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 74 68 69 73 | ld['name']);.$fileTarget.=.$this |
13b40 | 2d 3e 63 6f 6d 62 69 6e 65 28 28 73 74 72 69 6e 67 29 20 28 24 63 68 69 6c 64 5b 27 62 61 73 65 | ->combine((string).($child['base |
13b60 | 69 6e 73 74 61 6c 6c 64 69 72 27 5d 20 3f 20 3a 20 24 74 61 72 67 65 74 29 2c 20 28 73 74 72 69 | installdir'].?.:.$target),.(stri |
13b80 | 6e 67 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 29 3b 0a 24 66 69 6c 65 54 61 73 6b 73 20 | ng).$child['name']);.$fileTasks. |
13ba0 | 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 69 6c 64 2d 3e 63 68 69 6c | =.array();.foreach.($child->chil |
13bc0 | 64 72 65 6e 28 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 74 61 | dren('http://pear.php.net/dtd/ta |
13be0 | 73 6b 73 2d 31 2e 30 27 29 20 61 73 20 24 74 61 73 6b 4e 6f 64 65 29 20 7b 0a 69 66 20 28 27 72 | sks-1.0').as.$taskNode).{.if.('r |
13c00 | 65 70 6c 61 63 65 27 20 3d 3d 20 24 74 61 73 6b 4e 6f 64 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 | eplace'.==.$taskNode->getName()) |
13c20 | 20 7b 0a 24 66 69 6c 65 54 61 73 6b 73 5b 5d 20 3d 20 61 72 72 61 79 28 27 66 72 6f 6d 27 20 3d | .{.$fileTasks[].=.array('from'.= |
13c40 | 3e 20 28 73 74 72 69 6e 67 29 20 24 74 61 73 6b 4e 6f 64 65 2d 3e 61 74 74 72 69 62 75 74 65 73 | >.(string).$taskNode->attributes |
13c60 | 28 29 2d 3e 66 72 6f 6d 2c 20 27 74 6f 27 20 3d 3e 20 28 73 74 72 69 6e 67 29 20 24 74 61 73 6b | ()->from,.'to'.=>.(string).$task |
13c80 | 4e 6f 64 65 2d 3e 61 74 74 72 69 62 75 74 65 73 28 29 2d 3e 74 6f 29 3b 0a 7d 0a 7d 0a 69 66 20 | Node->attributes()->to);.}.}.if. |
13ca0 | 28 21 69 6e 5f 61 72 72 61 79 28 24 66 69 6c 65 52 6f 6c 65 2c 20 73 65 6c 66 3a 3a 24 72 6f 6c | (!in_array($fileRole,.self::$rol |
13cc0 | 65 73 57 69 74 68 6f 75 74 50 61 63 6b 61 67 65 4e 61 6d 65 50 72 65 66 69 78 29 29 20 7b 0a 24 | esWithoutPackageNamePrefix)).{.$ |
13ce0 | 66 69 6c 65 54 61 72 67 65 74 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 2e 20 27 2f 27 20 | fileTarget.=.$packageName...'/'. |
13d00 | 2e 20 24 66 69 6c 65 54 61 72 67 65 74 3b 0a 7d 0a 24 72 65 73 75 6c 74 5b 28 73 74 72 69 6e 67 | ..$fileTarget;.}.$result[(string |
13d20 | 29 20 24 63 68 69 6c 64 5b 27 6e 61 6d 65 27 5d 5d 20 3d 20 61 72 72 61 79 28 27 66 72 6f 6d 27 | ).$child['name']].=.array('from' |
13d40 | 20 3d 3e 20 24 66 69 6c 65 53 6f 75 72 63 65 2c 20 27 74 6f 27 20 3d 3e 20 24 66 69 6c 65 54 61 | .=>.$fileSource,.'to'.=>.$fileTa |
13d60 | 72 67 65 74 2c 20 27 72 6f 6c 65 27 20 3d 3e 20 24 66 69 6c 65 52 6f 6c 65 2c 20 27 74 61 73 6b | rget,.'role'.=>.$fileRole,.'task |
13d80 | 73 27 20 3d 3e 20 24 66 69 6c 65 54 61 73 6b 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e | s'.=>.$fileTasks);.}.}.}..return |
13da0 | 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 6f | .$result;.}..private.function.co |
13dc0 | 6d 62 69 6e 65 28 24 6c 65 66 74 2c 20 24 72 69 67 68 74 29 0a 7b 0a 72 65 74 75 72 6e 20 72 74 | mbine($left,.$right).{.return.rt |
13de0 | 72 69 6d 28 24 6c 65 66 74 2c 20 27 2f 27 29 20 2e 20 27 2f 27 20 2e 20 6c 74 72 69 6d 28 24 72 | rim($left,.'/')...'/'...ltrim($r |
13e00 | 69 67 68 74 2c 20 27 2f 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ight,.'/');.}.}.<?php........... |
13e20 | 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a | .namespace.Composer\Downloader;. |
13e40 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 | .use.Composer\Package\PackageInt |
13e60 | 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c | erface;.use.Composer\Downloader\ |
13e80 | 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | DownloaderInterface;.use.Compose |
13ea0 | 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 | r\Util\Filesystem;.......class.D |
13ec0 | 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 65 72 | ownloadManager.{.private.$prefer |
13ee0 | 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 73 79 73 | Source.=.false;.private.$filesys |
13f00 | 74 65 6d 3b 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 64 65 72 73 20 3d 20 61 72 72 61 | tem;.private.$downloaders.=.arra |
13f20 | 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f | y();........public.function.__co |
13f40 | 6e 73 74 72 75 63 74 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 66 61 6c 73 65 2c 20 46 | nstruct($preferSource.=.false,.F |
13f60 | 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | ilesystem.$filesystem.=.null).{. |
13f80 | 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 24 70 72 65 66 65 72 53 6f 75 | $this->preferSource.=.$preferSou |
13fa0 | 72 63 65 3b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 24 66 69 6c 65 73 79 | rce;.$this->filesystem.=.$filesy |
13fc0 | 73 74 65 6d 20 3f 3a 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 7d 0a 0a 0a 0a 0a | stem.?:.new.Filesystem();.}..... |
13fe0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 | ..public.function.setPreferSourc |
14000 | 65 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 | e($preferSource).{.$this->prefer |
14020 | 53 6f 75 72 63 65 20 3d 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 3b 0a 0a 72 65 74 75 72 6e 20 | Source.=.$preferSource;..return. |
14040 | 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | $this;.}........public.function. |
14060 | 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 74 79 70 65 2c 20 44 6f 77 6e 6c 6f 61 64 65 72 49 | setDownloader($type,.DownloaderI |
14080 | 6e 74 65 72 66 61 63 65 20 24 64 6f 77 6e 6c 6f 61 64 65 72 29 0a 7b 0a 24 74 79 70 65 20 3d 20 | nterface.$downloader).{.$type.=. |
140a0 | 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 79 70 65 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f | strtolower($type);.$this->downlo |
140c0 | 61 64 65 72 73 5b 24 74 79 70 65 5d 20 3d 20 24 64 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 72 65 74 | aders[$type].=.$downloader;..ret |
140e0 | 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | urn.$this;.}...........public.fu |
14100 | 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 74 79 70 65 29 0a 7b 0a 24 74 | nction.getDownloader($type).{.$t |
14120 | 79 70 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 79 70 65 29 3b 0a 69 66 20 28 21 69 73 | ype.=.strtolower($type);.if.(!is |
14140 | 73 65 74 28 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 65 72 73 5b 24 74 79 70 65 5d 29 29 20 | set($this->downloaders[$type])). |
14160 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 | {.throw.new.\InvalidArgumentExce |
14180 | 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 64 6f 77 6e 6c 6f 61 64 65 72 20 74 79 70 65 3a 20 | ption('Unknown.downloader.type:. |
141a0 | 27 2e 24 74 79 70 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 77 6e 6c | '.$type);.}..return.$this->downl |
141c0 | 6f 61 64 65 72 73 5b 24 74 79 70 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | oaders[$type];.}.............pub |
141e0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 | lic.function.getDownloaderForIns |
14200 | 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 | talledPackage(PackageInterface.$ |
14220 | 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 3d | package).{.$installationSource.= |
14240 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 | .$package->getInstallationSource |
14260 | 28 29 3b 0a 0a 69 66 20 28 27 64 69 73 74 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f | ();..if.('dist'.===.$installatio |
14280 | 6e 53 6f 75 72 63 65 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e | nSource).{.$downloader.=.$this-> |
142a0 | 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 | getDownloader($package->getDistT |
142c0 | 79 70 65 28 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 73 6f 75 72 63 65 27 20 3d 3d 3d 20 24 | ype());.}.elseif.('source'.===.$ |
142e0 | 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 | installationSource).{.$downloade |
14300 | 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 70 61 63 6b 61 67 | r.=.$this->getDownloader($packag |
14320 | 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 | e->getSourceType());.}.else.{.th |
14340 | 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f | row.new.\InvalidArgumentExceptio |
14360 | 6e 28 0a 27 50 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 73 65 65 6d 73 20 6e | n(.'Package.'.$package.'.seems.n |
14380 | 6f 74 20 62 65 65 6e 20 69 6e 73 74 61 6c 6c 65 64 20 70 72 6f 70 65 72 6c 79 27 0a 29 3b 0a 7d | ot.been.installed.properly'.);.} |
143a0 | 0a 0a 69 66 20 28 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 20 21 3d 3d 20 24 64 | ..if.($installationSource.!==.$d |
143c0 | 6f 77 6e 6c 6f 61 64 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 | ownloader->getInstallationSource |
143e0 | 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 | ()).{.throw.new.\LogicException( |
14400 | 73 70 72 69 6e 74 66 28 0a 27 44 6f 77 6e 6c 6f 61 64 65 72 20 22 25 73 22 20 69 73 20 61 20 25 | sprintf(.'Downloader."%s".is.a.% |
14420 | 73 20 74 79 70 65 20 64 6f 77 6e 6c 6f 61 64 65 72 20 61 6e 64 20 63 61 6e 20 6e 6f 74 20 62 65 | s.type.downloader.and.can.not.be |
14440 | 20 75 73 65 64 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 25 73 27 2c 0a 67 65 74 5f 63 6c 61 73 73 | .used.to.download.%s',.get_class |
14460 | 28 24 64 6f 77 6e 6c 6f 61 64 65 72 29 2c 20 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 67 65 74 49 | ($downloader),.$downloader->getI |
14480 | 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 2c 20 24 69 6e 73 74 61 6c 6c 61 74 69 | nstallationSource(),.$installati |
144a0 | 6f 6e 53 6f 75 72 63 65 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 6f 77 6e 6c 6f 61 64 | onSource.));.}..return.$download |
144c0 | 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | er;.}...........public.function. |
144e0 | 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 | download(PackageInterface.$packa |
14500 | 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 | ge,.$targetDir,.$preferSource.=. |
14520 | 6e 75 6c 6c 29 0a 7b 0a 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3d 20 6e 75 6c 6c 20 21 3d 3d | null).{.$preferSource.=.null.!== |
14540 | 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3f 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 3a | .$preferSource.?.$preferSource.: |
14560 | 20 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 3b 0a 24 73 6f 75 72 63 65 54 79 70 | .$this->preferSource;.$sourceTyp |
14580 | 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 | e.=.$package->getSourceType();.$ |
145a0 | 64 69 73 74 54 79 70 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 | distType.=.$package->getDistType |
145c0 | 28 29 3b 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 20 26 26 20 21 | ();..if.(!$package->isDev().&&.! |
145e0 | 28 24 70 72 65 66 65 72 53 6f 75 72 63 65 20 26 26 20 24 73 6f 75 72 63 65 54 79 70 65 29 20 26 | ($preferSource.&&.$sourceType).& |
14600 | 26 20 24 64 69 73 74 54 79 70 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e 73 74 | &.$distType).{.$package->setInst |
14620 | 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 27 64 69 73 74 27 29 3b 0a 7d 20 65 6c 73 65 69 66 | allationSource('dist');.}.elseif |
14640 | 20 28 24 73 6f 75 72 63 65 54 79 70 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e | .($sourceType).{.$package->setIn |
14660 | 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 27 73 6f 75 72 63 65 27 29 3b 0a 7d 20 65 6c | stallationSource('source');.}.el |
14680 | 73 65 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 29 20 7b 0a 74 68 72 6f 77 | seif.($package->isDev()).{.throw |
146a0 | 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 | .new.\InvalidArgumentException(' |
146c0 | 44 65 76 20 70 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 6d 75 73 74 20 68 61 | Dev.package.'.$package.'.must.ha |
146e0 | 76 65 20 61 20 73 6f 75 72 63 65 20 73 70 65 63 69 66 69 65 64 27 29 3b 0a 7d 20 65 6c 73 65 20 | ve.a.source.specified');.}.else. |
14700 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 | {.throw.new.\InvalidArgumentExce |
14720 | 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2e 27 20 6d 75 73 74 | ption('Package.'.$package.'.must |
14740 | 20 68 61 76 65 20 61 20 73 6f 75 72 63 65 20 6f 72 20 64 69 73 74 20 73 70 65 63 69 66 69 65 64 | .have.a.source.or.dist.specified |
14760 | 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 | ');.}..$this->filesystem->ensure |
14780 | 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 24 64 | DirectoryExists($targetDir);..$d |
147a0 | 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 | ownloader.=.$this->getDownloader |
147c0 | 46 6f 72 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 | ForInstalledPackage($package);.$ |
147e0 | 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 | downloader->download($package,.$ |
14800 | 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | targetDir);.}...........public.f |
14820 | 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | unction.update(PackageInterface. |
14840 | 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 | $initial,.PackageInterface.$targ |
14860 | 65 74 2c 20 24 74 61 72 67 65 74 44 69 72 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 | et,.$targetDir).{.$downloader.=. |
14880 | 24 74 68 69 73 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 74 61 6c 6c 65 64 | $this->getDownloaderForInstalled |
148a0 | 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e | Package($initial);.$installation |
148c0 | 53 6f 75 72 63 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 | Source.=.$initial->getInstallati |
148e0 | 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 0a 69 66 20 28 27 64 69 73 74 27 20 3d 3d 3d 20 24 69 6e 73 | onSource();..if.('dist'.===.$ins |
14900 | 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 20 7b 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 | tallationSource).{.$initialType. |
14920 | 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 24 74 61 72 67 | =.$initial->getDistType();.$targ |
14940 | 65 74 54 79 70 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b | etType.=.$target->getDistType(); |
14960 | 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 | .}.else.{.$initialType.=.$initia |
14980 | 6c 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 74 61 72 67 65 74 54 79 70 65 20 | l->getSourceType();.$targetType. |
149a0 | 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 7d 0a 0a 0a | =.$target->getSourceType();.}... |
149c0 | 20 69 66 20 28 24 74 61 72 67 65 74 2d 3e 69 73 44 65 76 28 29 20 26 26 20 27 64 69 73 74 27 20 | .if.($target->isDev().&&.'dist'. |
149e0 | 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 20 7b 0a 24 64 6f 77 6e | ===.$installationSource).{.$down |
14a00 | 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f 76 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 | loader->remove($initial,.$target |
14a20 | 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c 20 24 | Dir);.$this->download($target,.$ |
14a40 | 74 61 72 67 65 74 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 69 | targetDir);..return;.}..if.($ini |
14a60 | 74 69 61 6c 54 79 70 65 20 3d 3d 3d 20 24 74 61 72 67 65 74 54 79 70 65 29 20 7b 0a 24 74 61 72 | tialType.===.$targetType).{.$tar |
14a80 | 67 65 74 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 69 6e 73 74 | get->setInstallationSource($inst |
14aa0 | 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 3b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 75 70 | allationSource);.$downloader->up |
14ac0 | 64 61 74 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 44 | date($initial,.$target,.$targetD |
14ae0 | 69 72 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f 76 | ir);.}.else.{.$downloader->remov |
14b00 | 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e | e($initial,.$targetDir);.$this-> |
14b20 | 64 6f 77 6e 6c 6f 61 64 28 24 74 61 72 67 65 74 2c 20 24 74 61 72 67 65 74 44 69 72 2c 20 27 73 | download($target,.$targetDir,.'s |
14b40 | 6f 75 72 63 65 27 20 3d 3d 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 29 3b | ource'.===.$installationSource); |
14b60 | 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f | .}.}........public.function.remo |
14b80 | 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 74 | ve(PackageInterface.$package,.$t |
14ba0 | 61 72 67 65 74 44 69 72 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 20 3d 20 24 74 68 69 73 2d | argetDir).{.$downloader.=.$this- |
14bc0 | 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 65 72 46 6f 72 49 6e 73 74 61 6c 6c 65 64 50 61 63 6b 61 67 | >getDownloaderForInstalledPackag |
14be0 | 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 64 6f 77 6e 6c 6f 61 64 65 72 2d 3e 72 65 6d 6f 76 65 | e($package);.$downloader->remove |
14c00 | 28 24 70 61 63 6b 61 67 65 2c 20 24 74 61 72 67 65 74 44 69 72 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | ($package,.$targetDir);.}.}.<?ph |
14c20 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
14c40 | 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | Downloader;..use.Composer\Packag |
14c60 | 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 | e\PackageInterface;........inter |
14c80 | 66 61 63 65 20 44 6f 77 6e 6c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a | face.DownloaderInterface.{...... |
14ca0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 | public.function.getInstallationS |
14cc0 | 6f 75 72 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ource();........public.function. |
14ce0 | 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 | download(PackageInterface.$packa |
14d00 | 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | ge,.$path);.........public.funct |
14d20 | 69 6f 6e 20 75 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 | ion.update(PackageInterface.$ini |
14d40 | 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 | tial,.PackageInterface.$target,. |
14d60 | 24 70 61 74 68 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 | $path);........public.function.r |
14d80 | 65 6d 6f 76 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c | emove(PackageInterface.$package, |
14da0 | 20 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | .$path);.}.<?php............name |
14dc0 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 63 | space.Composer\Downloader;.....c |
14de0 | 6c 61 73 73 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 | lass.TransportException.extends. |
14e00 | 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | \Exception.{.}.<?php............ |
14e20 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a | namespace.Composer\Downloader;.. |
14e40 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 61 72 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 | .....class.PharDownloader.extend |
14e60 | 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 | s.ArchiveDownloader.{....protect |
14e80 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 | ed.function.extract($file,.$path |
14ea0 | 29 0a 7b 0a 0a 20 24 61 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 28 24 66 69 6c 65 | ).{...$archive.=.new.\Phar($file |
14ec0 | 29 3b 0a 24 61 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 70 61 74 68 2c 20 6e 75 | );.$archive->extractTo($path,.nu |
14ee0 | 6c 6c 2c 20 74 72 75 65 29 3b 0a 0a 0a 0a 0a 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a | ll,.true);......}.}.<?php....... |
14f00 | 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 | .....namespace.Composer\Download |
14f20 | 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 61 72 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 | er;.......class.TarDownloader.ex |
14f40 | 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 72 6f | tends.ArchiveDownloader.{....pro |
14f60 | 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c 20 24 | tected.function.extract($file,.$ |
14f80 | 70 61 74 68 29 0a 7b 0a 0a 20 24 61 72 63 68 69 76 65 20 3d 20 6e 65 77 20 5c 50 68 61 72 44 61 | path).{...$archive.=.new.\PharDa |
14fa0 | 74 61 28 24 66 69 6c 65 29 3b 0a 24 61 72 63 68 69 76 65 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 | ta($file);.$archive->extractTo($ |
14fc0 | 70 61 74 68 2c 20 6e 75 6c 6c 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a | path,.null,.true);.}.}.<?php.... |
14fe0 | 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c | ........namespace.Composer\Downl |
15000 | 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 | oader;..use.Composer\Package\Pac |
15020 | 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 44 6f 77 6e 6c | kageInterface;.....class.HgDownl |
15040 | 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a | oader.extends.VcsDownloader.{... |
15060 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e 6c 6f 61 64 28 50 61 63 6b | .public.function.doDownload(Pack |
15080 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a | ageInterface.$package,.$path).{. |
150a0 | 24 75 72 6c 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 63 6b 61 67 65 2d 3e | $url.=.escapeshellarg($package-> |
150c0 | 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 29 3b 0a 24 72 65 66 20 3d 20 65 73 63 61 70 65 73 68 | getSourceUrl());.$ref.=.escapesh |
150e0 | 65 6c 6c 61 72 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 | ellarg($package->getSourceRefere |
15100 | 6e 63 65 28 29 29 3b 0a 24 70 61 74 68 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 | nce());.$path.=.escapeshellarg($ |
15120 | 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 43 6c 6f | path);.$this->io->write("....Clo |
15140 | 6e 69 6e 67 20 22 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 | ning.".$package->getSourceRefere |
15160 | 6e 63 65 28 29 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 68 67 20 63 | nce());.$command.=.sprintf('hg.c |
15180 | 6c 6f 6e 65 20 25 73 20 25 73 20 26 26 20 63 64 20 25 32 24 73 20 26 26 20 68 67 20 75 70 20 25 | lone.%s.%s.&&.cd.%2$s.&&.hg.up.% |
151a0 | 73 27 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 2c 20 24 72 65 66 29 3b 0a 69 66 20 28 30 20 21 3d | s',.$url,.$path,.$ref);.if.(0.!= |
151c0 | 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 | =.$this->process->execute($comma |
151e0 | 6e 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 | nd,.$ignoredOutput)).{.throw.new |
15200 | 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 | .\RuntimeException('Failed.to.ex |
15220 | 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 | ecute.'...$command..."\n\n"...$t |
15240 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b | his->process->getErrorOutput()); |
15260 | 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 | .}.}.....public.function.doUpdat |
15280 | 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 | e(PackageInterface.$initial,.Pac |
152a0 | 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 0a 7b 0a | kageInterface.$target,.$path).{. |
152c0 | 24 75 72 6c 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 61 72 67 65 74 2d 3e 67 | $url.=.escapeshellarg($target->g |
152e0 | 65 74 53 6f 75 72 63 65 55 72 6c 28 29 29 3b 0a 24 72 65 66 20 3d 20 65 73 63 61 70 65 73 68 65 | etSourceUrl());.$ref.=.escapeshe |
15300 | 6c 6c 61 72 67 28 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 | llarg($target->getSourceReferenc |
15320 | 65 28 29 29 3b 0a 24 70 61 74 68 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 | e());.$path.=.escapeshellarg($pa |
15340 | 74 68 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 55 70 64 61 74 | th);.$this->io->write("....Updat |
15360 | 69 6e 67 20 74 6f 20 22 2e 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 | ing.to.".$target->getSourceRefer |
15380 | 65 6e 63 65 28 29 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 63 64 20 | ence());.$command.=.sprintf('cd. |
153a0 | 25 73 20 26 26 20 68 67 20 70 75 6c 6c 20 25 73 20 26 26 20 68 67 20 75 70 20 25 73 27 2c 20 24 | %s.&&.hg.pull.%s.&&.hg.up.%s',.$ |
153c0 | 70 61 74 68 2c 20 24 75 72 6c 2c 20 24 72 65 66 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 | path,.$url,.$ref);.if.(0.!==.$th |
153e0 | 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 | is->process->execute($command,.$ |
15400 | 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e | ignoredOutput)).{.throw.new.\Run |
15420 | 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 | timeException('Failed.to.execute |
15440 | 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e | .'...$command..."\n\n"...$this-> |
15460 | 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 7d 0a | process->getErrorOutput());.}.}. |
15480 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 6e 66 6f 72 63 65 43 6c | ....protected.function.enforceCl |
154a0 | 65 61 6e 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f | eanDirectory($path).{.$this->pro |
154c0 | 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 | cess->execute(sprintf('cd.%s.&&. |
154e0 | 68 67 20 73 74 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 74 68 29 29 2c 20 | hg.st',.escapeshellarg($path)),. |
15500 | 24 6f 75 74 70 75 74 29 3b 0a 69 66 20 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 7b 0a 74 | $output);.if.(trim($output)).{.t |
15520 | 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 53 6f 75 72 | hrow.new.\RuntimeException('Sour |
15540 | 63 65 20 64 69 72 65 63 74 6f 72 79 20 27 20 2e 20 24 70 61 74 68 20 2e 20 27 20 68 61 73 20 75 | ce.directory.'...$path...'.has.u |
15560 | 6e 63 6f 6d 6d 69 74 74 65 64 20 63 68 61 6e 67 65 73 27 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 | ncommitted.changes');.}.}.}.<?ph |
15580 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
155a0 | 44 6f 77 6e 6c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | Downloader;..use.Composer\Packag |
155c0 | 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 | e\PackageInterface;.........abst |
155e0 | 72 61 63 74 20 63 6c 61 73 73 20 41 72 63 68 69 76 65 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 | ract.class.ArchiveDownloader.ext |
15600 | 65 6e 64 73 20 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ends.FileDownloader.{....public. |
15620 | 66 75 6e 63 74 69 6f 6e 20 64 6f 77 6e 6c 6f 61 64 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | function.download(PackageInterfa |
15640 | 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 64 6f | ce.$package,.$path).{.parent::do |
15660 | 77 6e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 24 66 69 6c 65 4e | wnload($package,.$path);..$fileN |
15680 | 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 46 69 6c 65 4e 61 6d 65 28 24 70 61 63 6b 61 67 | ame.=.$this->getFileName($packag |
156a0 | 65 2c 20 24 70 61 74 68 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 | e,.$path);.if.($this->io->isVerb |
156c0 | 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 20 20 20 20 55 | ose()).{.$this->io->write('....U |
156e0 | 6e 70 61 63 6b 69 6e 67 20 61 72 63 68 69 76 65 27 29 3b 0a 7d 0a 74 72 79 20 7b 0a 24 74 68 69 | npacking.archive');.}.try.{.$thi |
15700 | 73 2d 3e 65 78 74 72 61 63 74 28 24 66 69 6c 65 4e 61 6d 65 2c 20 24 70 61 74 68 29 3b 0a 0a 69 | s->extract($fileName,.$path);..i |
15720 | 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 | f.($this->io->isVerbose()).{.$th |
15740 | 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 20 20 20 20 43 6c 65 61 6e 69 6e 67 20 75 70 27 29 | is->io->write('....Cleaning.up') |
15760 | 3b 0a 7d 0a 75 6e 6c 69 6e 6b 28 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 0a 0a 20 24 63 6f 6e 74 65 | ;.}.unlink($fileName);....$conte |
15780 | 6e 74 44 69 72 20 3d 20 67 6c 6f 62 28 24 70 61 74 68 20 2e 20 27 2f 2a 27 29 3b 0a 69 66 20 28 | ntDir.=.glob($path...'/*');.if.( |
157a0 | 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 63 6f 6e 74 65 6e 74 44 69 72 29 29 20 7b 0a 24 63 6f 6e | 1.===.count($contentDir)).{.$con |
157c0 | 74 65 6e 74 44 69 72 20 3d 20 24 63 6f 6e 74 65 6e 74 44 69 72 5b 30 5d 3b 0a 0a 0a 20 0a 20 24 | tentDir.=.$contentDir[0];......$ |
157e0 | 74 65 6d 70 6f 72 61 72 79 4e 61 6d 65 20 3d 20 6d 64 35 28 74 69 6d 65 28 29 2e 72 61 6e 64 28 | temporaryName.=.md5(time().rand( |
15800 | 29 29 3b 0a 72 65 6e 61 6d 65 28 24 63 6f 6e 74 65 6e 74 44 69 72 2c 20 24 74 65 6d 70 6f 72 61 | ));.rename($contentDir,.$tempora |
15820 | 72 79 4e 61 6d 65 29 3b 0a 24 63 6f 6e 74 65 6e 74 44 69 72 20 3d 20 24 74 65 6d 70 6f 72 61 72 | ryName);.$contentDir.=.$temporar |
15840 | 79 4e 61 6d 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 6d 65 72 67 65 28 67 6c 6f | yName;..foreach.(array_merge(glo |
15860 | 62 28 24 63 6f 6e 74 65 6e 74 44 69 72 20 2e 20 27 2f 2e 2a 27 29 2c 20 67 6c 6f 62 28 24 63 6f | b($contentDir...'/.*'),.glob($co |
15880 | 6e 74 65 6e 74 44 69 72 20 2e 20 27 2f 2a 27 29 29 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 | ntentDir...'/*')).as.$file).{.if |
158a0 | 20 28 74 72 69 6d 28 62 61 73 65 6e 61 6d 65 28 24 66 69 6c 65 29 2c 20 27 2e 27 29 29 20 7b 0a | .(trim(basename($file),.'.')).{. |
158c0 | 72 65 6e 61 6d 65 28 24 66 69 6c 65 2c 20 24 70 61 74 68 20 2e 20 27 2f 27 20 2e 20 62 61 73 65 | rename($file,.$path...'/'...base |
158e0 | 6e 61 6d 65 28 24 66 69 6c 65 29 29 3b 0a 7d 0a 7d 0a 72 6d 64 69 72 28 24 63 6f 6e 74 65 6e 74 | name($file));.}.}.rmdir($content |
15900 | 44 69 72 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 | Dir);.}.}.catch.(\Exception.$e). |
15920 | 7b 0a 0a 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 | {...$this->filesystem->removeDir |
15940 | 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 74 68 69 | ectory($path);.throw.$e;.}..$thi |
15960 | 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 | s->io->write('');.}.....protecte |
15980 | 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 6c 65 4e 61 6d 65 28 50 61 63 6b 61 67 65 49 6e | d.function.getFileName(PackageIn |
159a0 | 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 72 65 74 75 72 | terface.$package,.$path).{.retur |
159c0 | 6e 20 72 74 72 69 6d 28 24 70 61 74 68 2e 27 2f 27 2e 6d 64 35 28 24 70 61 74 68 2e 73 70 6c 5f | n.rtrim($path.'/'.md5($path.spl_ |
159e0 | 6f 62 6a 65 63 74 5f 68 61 73 68 28 24 70 61 63 6b 61 67 65 29 29 2e 27 2e 27 2e 70 61 74 68 69 | object_hash($package)).'.'.pathi |
15a00 | 6e 66 6f 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 41 54 48 | nfo($package->getDistUrl(),.PATH |
15a20 | 49 4e 46 4f 5f 45 58 54 45 4e 53 49 4f 4e 29 2c 20 27 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f | INFO_EXTENSION),.'.');.}.....pro |
15a40 | 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 55 72 6c 28 24 75 72 6c 29 | tected.function.processUrl($url) |
15a60 | 0a 7b 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 | .{.if.(!extension_loaded('openss |
15a80 | 6c 27 29 20 26 26 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 75 72 6c 2c 20 27 68 74 74 70 | l').&&.(0.===.strpos($url,.'http |
15aa0 | 73 3a 27 29 20 7c 7c 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 75 72 6c 2c 20 27 68 74 74 70 | s:').||.0.===.strpos($url,.'http |
15ac0 | 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 27 29 29 29 20 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d | ://github.com'))).{...if.(preg_m |
15ae0 | 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 28 67 69 74 68 75 62 2e 63 6f 6d 2f 5b 5e 2f | atch('{^https?://(github.com/[^/ |
15b00 | 5d 2b 2f 5b 5e 2f 5d 2b 2f 28 7a 69 70 7c 74 61 72 29 62 61 6c 6c 2f 5b 5e 2f 5d 2b 29 24 7d 69 | ]+/[^/]+/(zip|tar)ball/[^/]+)$}i |
15b20 | 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 | ',.$url,.$match)).{.$url.=.'http |
15b40 | 3a 2f 2f 6e 6f 64 65 6c 6f 61 64 2e 27 2e 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 | ://nodeload.'.$match[1];.}.else. |
15b60 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 | {.throw.new.\RuntimeException('Y |
15b80 | 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e | ou.must.enable.the.openssl.exten |
15ba0 | 73 69 6f 6e 20 74 6f 20 64 6f 77 6e 6c 6f 61 64 20 66 69 6c 65 73 20 76 69 61 20 68 74 74 70 73 | sion.to.download.files.via.https |
15bc0 | 27 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | ');.}.}..return.$url;.}......... |
15be0 | 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 | .abstract.protected.function.ext |
15c00 | 72 61 63 74 28 24 66 69 6c 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | ract($file,.$path);.}.<?php..... |
15c20 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f | .......namespace.Composer\Downlo |
15c40 | 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 | ader;..use.Composer\Util\Process |
15c60 | 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 | Executor;.use.Composer\IO\IOInte |
15c80 | 72 66 61 63 65 3b 0a 75 73 65 20 5a 69 70 41 72 63 68 69 76 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 | rface;.use.ZipArchive;.....class |
15ca0 | 20 5a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 41 72 63 68 69 76 65 44 6f | .ZipDownloader.extends.ArchiveDo |
15cc0 | 77 6e 6c 6f 61 64 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a | wnloader.{.protected.$process;.. |
15ce0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e | public.function.__construct(IOIn |
15d00 | 74 65 72 66 61 63 65 20 24 69 6f 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 | terface.$io,.ProcessExecutor.$pr |
15d20 | 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d | ocess.=.null).{.$this->process.= |
15d40 | 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 | .$process.?:.new.ProcessExecutor |
15d60 | 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 29 3b 0a 7d 0a 0a 70 | ;.parent::__construct($io);.}..p |
15d80 | 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 28 24 66 69 6c 65 2c | rotected.function.extract($file, |
15da0 | 20 24 70 61 74 68 29 0a 7b 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 5a 69 70 | .$path).{.if.(!class_exists('Zip |
15dc0 | 41 72 63 68 69 76 65 27 29 29 20 7b 0a 24 65 72 72 6f 72 20 3d 20 27 59 6f 75 20 6e 65 65 64 20 | Archive')).{.$error.=.'You.need. |
15de0 | 74 68 65 20 7a 69 70 20 65 78 74 65 6e 73 69 6f 6e 20 65 6e 61 62 6c 65 64 20 74 6f 20 75 73 65 | the.zip.extension.enabled.to.use |
15e00 | 20 74 68 65 20 5a 69 70 44 6f 77 6e 6c 6f 61 64 65 72 27 3b 0a 0a 0a 20 69 66 20 28 21 64 65 66 | .the.ZipDownloader';....if.(!def |
15e20 | 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 | ined('PHP_WINDOWS_VERSION_BUILD' |
15e40 | 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 75 6e 7a 69 70 20 27 2e 65 73 63 61 70 65 73 | )).{.$command.=.'unzip.'.escapes |
15e60 | 68 65 6c 6c 61 72 67 28 24 66 69 6c 65 29 2e 27 20 2d 64 20 27 2e 65 73 63 61 70 65 73 68 65 6c | hellarg($file).'.-d.'.escapeshel |
15e80 | 6c 61 72 67 28 24 70 61 74 68 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 | larg($path);.if.(0.===.$this->pr |
15ea0 | 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 69 67 6e 6f 72 65 | ocess->execute($command,.$ignore |
15ec0 | 64 4f 75 74 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 65 72 72 6f 72 20 3d 20 | dOutput)).{.return;.}..$error.=. |
15ee0 | 22 43 6f 75 6c 64 20 6e 6f 74 20 64 65 63 6f 6d 70 72 65 73 73 20 74 68 65 20 61 72 63 68 69 76 | "Could.not.decompress.the.archiv |
15f00 | 65 2c 20 65 6e 61 62 6c 65 20 74 68 65 20 50 48 50 20 7a 69 70 20 65 78 74 65 6e 73 69 6f 6e 20 | e,.enable.the.PHP.zip.extension. |
15f20 | 6f 72 20 69 6e 73 74 61 6c 6c 20 75 6e 7a 69 70 2e 5c 6e 22 2e 0a 27 46 61 69 6c 65 64 20 74 6f | or.install.unzip.\n"..'Failed.to |
15f40 | 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e | .execute.'...$command..."\n\n".. |
15f60 | 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 | .$this->process->getErrorOutput( |
15f80 | 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f | );.}..throw.new.\RuntimeExceptio |
15fa0 | 6e 28 24 65 72 72 6f 72 29 3b 0a 7d 0a 0a 24 7a 69 70 41 72 63 68 69 76 65 20 3d 20 6e 65 77 20 | n($error);.}..$zipArchive.=.new. |
15fc0 | 5a 69 70 41 72 63 68 69 76 65 28 29 3b 0a 0a 69 66 20 28 74 72 75 65 20 21 3d 3d 20 28 24 72 65 | ZipArchive();..if.(true.!==.($re |
15fe0 | 74 76 61 6c 20 3d 20 24 7a 69 70 41 72 63 68 69 76 65 2d 3e 6f 70 65 6e 28 24 66 69 6c 65 29 29 | tval.=.$zipArchive->open($file)) |
16000 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 | ).{.throw.new.\UnexpectedValueEx |
16020 | 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 | ception($this->getErrorMessage($ |
16040 | 72 65 74 76 61 6c 2c 20 24 66 69 6c 65 29 29 3b 0a 7d 0a 0a 24 7a 69 70 41 72 63 68 69 76 65 2d | retval,.$file));.}..$zipArchive- |
16060 | 3e 65 78 74 72 61 63 74 54 6f 28 24 70 61 74 68 29 3b 0a 24 7a 69 70 41 72 63 68 69 76 65 2d 3e | >extractTo($path);.$zipArchive-> |
16080 | 63 6c 6f 73 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e | close();.}.........protected.fun |
160a0 | 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4d 65 73 73 61 67 65 28 24 72 65 74 76 61 6c 2c 20 24 | ction.getErrorMessage($retval,.$ |
160c0 | 66 69 6c 65 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 72 65 74 76 61 6c 29 20 7b 0a 63 61 73 65 20 | file).{.switch.($retval).{.case. |
160e0 | 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 45 58 49 53 54 53 3a 0a 72 65 74 75 72 6e 20 73 70 | ZipArchive::ER_EXISTS:.return.sp |
16100 | 72 69 6e 74 66 28 22 46 69 6c 65 20 27 25 73 27 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e | rintf("File.'%s'.already.exists. |
16120 | 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 49 | ",.$file);.case.ZipArchive::ER_I |
16140 | 4e 43 4f 4e 53 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 61 72 63 68 69 | NCONS:.return.sprintf("Zip.archi |
16160 | 76 65 20 27 25 73 27 20 69 73 20 69 6e 63 6f 6e 73 69 73 74 65 6e 74 2e 22 2c 20 24 66 69 6c 65 | ve.'%s'.is.inconsistent.",.$file |
16180 | 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 49 4e 56 41 4c 3a 0a 72 65 | );.case.ZipArchive::ER_INVAL:.re |
161a0 | 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 49 6e 76 61 6c 69 64 20 61 72 67 75 6d 65 6e 74 20 28 | turn.sprintf("Invalid.argument.( |
161c0 | 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 | %s)",.$file);.case.ZipArchive::E |
161e0 | 52 5f 4d 45 4d 4f 52 59 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 4d 61 6c 6c 6f 63 | R_MEMORY:.return.sprintf("Malloc |
16200 | 20 66 61 69 6c 75 72 65 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 | .failure.(%s)",.$file);.case.Zip |
16220 | 41 72 63 68 69 76 65 3a 3a 45 52 5f 4e 4f 45 4e 54 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 | Archive::ER_NOENT:.return.sprint |
16240 | 66 28 22 4e 6f 20 73 75 63 68 20 7a 69 70 20 66 69 6c 65 3a 20 27 25 73 27 22 2c 20 24 66 69 6c | f("No.such.zip.file:.'%s'",.$fil |
16260 | 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 4e 4f 5a 49 50 3a 0a 72 | e);.case.ZipArchive::ER_NOZIP:.r |
16280 | 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 27 25 73 27 20 69 73 20 6e 6f 74 20 61 20 7a 69 70 | eturn.sprintf("'%s'.is.not.a.zip |
162a0 | 20 61 72 63 68 69 76 65 2e 22 2c 20 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 | .archive.",.$file);.case.ZipArch |
162c0 | 69 76 65 3a 3a 45 52 5f 4f 50 45 4e 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 43 61 | ive::ER_OPEN:.return.sprintf("Ca |
162e0 | 6e 27 74 20 6f 70 65 6e 20 7a 69 70 20 66 69 6c 65 3a 20 25 73 22 2c 20 24 66 69 6c 65 29 3b 0a | n't.open.zip.file:.%s",.$file);. |
16300 | 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 52 45 41 44 3a 0a 72 65 74 75 72 6e | case.ZipArchive::ER_READ:.return |
16320 | 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 72 65 61 64 20 65 72 72 6f 72 20 28 25 73 29 22 2c 20 | .sprintf("Zip.read.error.(%s)",. |
16340 | 24 66 69 6c 65 29 3b 0a 63 61 73 65 20 5a 69 70 41 72 63 68 69 76 65 3a 3a 45 52 5f 53 45 45 4b | $file);.case.ZipArchive::ER_SEEK |
16360 | 3a 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5a 69 70 20 73 65 65 6b 20 65 72 72 6f 72 | :.return.sprintf("Zip.seek.error |
16380 | 20 28 25 73 29 22 2c 20 24 66 69 6c 65 29 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 | .(%s)",.$file);.default:.return. |
163a0 | 73 70 72 69 6e 74 66 28 22 27 25 73 27 20 69 73 20 6e 6f 74 20 61 20 76 61 6c 69 64 20 7a 69 70 | sprintf("'%s'.is.not.a.valid.zip |
163c0 | 20 61 72 63 68 69 76 65 2c 20 67 6f 74 20 65 72 72 6f 72 20 63 6f 64 65 3a 20 25 73 22 2c 20 24 | .archive,.got.error.code:.%s",.$ |
163e0 | 66 69 6c 65 2c 20 24 72 65 74 76 61 6c 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | file,.$retval);.}.}.}.<?php..... |
16400 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f | .......namespace.Composer\Downlo |
16420 | 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b | ader;..use.Composer\Package\Pack |
16440 | 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 44 6f 77 6e 6c | ageInterface;.....class.GitDownl |
16460 | 6f 61 64 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 6f 77 6e 6c 6f 61 64 65 72 0a 7b 0a 0a 0a | oader.extends.VcsDownloader.{... |
16480 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 44 6f 77 6e 6c 6f 61 64 28 50 61 63 6b | .public.function.doDownload(Pack |
164a0 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a | ageInterface.$package,.$path).{. |
164c0 | 24 72 65 66 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 | $ref.=.$package->getSourceRefere |
164e0 | 6e 63 65 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 20 63 6c 6f 6e 65 20 25 73 20 | nce();.$command.=.'git.clone.%s. |
16500 | 25 73 20 26 26 20 63 64 20 25 32 24 73 20 26 26 20 67 69 74 20 72 65 6d 6f 74 65 20 61 64 64 20 | %s.&&.cd.%2$s.&&.git.remote.add. |
16520 | 63 6f 6d 70 6f 73 65 72 20 25 31 24 73 20 26 26 20 67 69 74 20 66 65 74 63 68 20 63 6f 6d 70 6f | composer.%1$s.&&.git.fetch.compo |
16540 | 73 65 72 27 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 43 6c 6f 6e | ser';.$this->io->write("....Clon |
16560 | 69 6e 67 20 22 2e 24 72 65 66 29 3b 0a 0a 0a 20 70 75 74 65 6e 76 28 27 47 49 54 5f 41 53 4b 50 | ing.".$ref);....putenv('GIT_ASKP |
16580 | 41 53 53 3d 65 63 68 6f 27 29 3b 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 66 | ASS=echo');.$commandCallable.=.f |
165a0 | 75 6e 63 74 69 6f 6e 28 24 75 72 6c 29 20 75 73 65 20 28 24 72 65 66 2c 20 24 70 61 74 68 2c 20 | unction($url).use.($ref,.$path,. |
165c0 | 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 24 63 6f 6d 6d | $command).{.return.sprintf($comm |
165e0 | 61 6e 64 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 75 72 6c 29 2c 20 65 73 63 61 70 | and,.escapeshellarg($url),.escap |
16600 | 65 73 68 65 6c 6c 61 72 67 28 24 70 61 74 68 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 | eshellarg($path),.escapeshellarg |
16620 | 28 24 72 65 66 29 29 3b 0a 7d 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 | ($ref));.};..$this->runCommand($ |
16640 | 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f | commandCallable,.$package->getSo |
16660 | 75 72 63 65 55 72 6c 28 29 2c 20 24 70 61 74 68 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 50 75 73 | urceUrl(),.$path);.$this->setPus |
16680 | 68 55 72 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 3b 0a 0a 24 74 68 69 73 2d 3e 75 | hUrl($package,.$path);..$this->u |
166a0 | 70 64 61 74 65 54 6f 43 6f 6d 6d 69 74 28 24 70 61 74 68 2c 20 24 72 65 66 2c 20 24 70 61 63 6b | pdateToCommit($path,.$ref,.$pack |
166c0 | 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 24 70 61 63 6b 61 67 | age->getPrettyVersion(),.$packag |
166e0 | 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | e->getReleaseDate());.}.....publ |
16700 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 55 70 64 61 74 65 28 50 61 63 6b 61 67 65 49 6e 74 65 | ic.function.doUpdate(PackageInte |
16720 | 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 | rface.$initial,.PackageInterface |
16740 | 20 24 74 61 72 67 65 74 2c 20 24 70 61 74 68 29 0a 7b 0a 24 72 65 66 20 3d 20 24 74 61 72 67 65 | .$target,.$path).{.$ref.=.$targe |
16760 | 74 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 24 74 68 69 73 2d 3e | t->getSourceReference();.$this-> |
16780 | 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 43 68 65 63 6b 69 6e 67 20 6f 75 74 20 22 2e 24 72 | io->write("....Checking.out.".$r |
167a0 | 65 66 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 63 64 20 25 73 20 26 26 20 67 69 74 20 72 65 | ef);.$command.=.'cd.%s.&&.git.re |
167c0 | 6d 6f 74 65 20 73 65 74 2d 75 72 6c 20 63 6f 6d 70 6f 73 65 72 20 25 73 20 26 26 20 67 69 74 20 | mote.set-url.composer.%s.&&.git. |
167e0 | 66 65 74 63 68 20 63 6f 6d 70 6f 73 65 72 20 26 26 20 67 69 74 20 66 65 74 63 68 20 2d 2d 74 61 | fetch.composer.&&.git.fetch.--ta |
16800 | 67 73 20 63 6f 6d 70 6f 73 65 72 27 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d | gs.composer';....$this->process- |
16820 | 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 67 69 74 20 72 | >execute(sprintf('cd.%s.&&.git.r |
16840 | 65 6d 6f 74 65 20 2d 76 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 74 68 29 | emote.-v',.escapeshellarg($path) |
16860 | 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 63 | ),.$output);.if.(preg_match('{^c |
16880 | 6f 6d 70 6f 73 65 72 5c 73 2b 68 74 74 70 73 3a 2f 2f 28 2e 2b 29 3a 28 2e 2b 29 40 67 69 74 68 | omposer\s+https://(.+):(.+)@gith |
168a0 | 75 62 2e 63 6f 6d 2f 7d 69 6d 27 2c 20 24 6f 75 74 70 75 74 2c 20 24 6d 61 74 63 68 29 29 20 7b | ub.com/}im',.$output,.$match)).{ |
168c0 | 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 27 67 69 | .$this->io->setAuthorization('gi |
168e0 | 74 68 75 62 2e 63 6f 6d 27 2c 20 24 6d 61 74 63 68 5b 31 5d 2c 20 24 6d 61 74 63 68 5b 32 5d 29 | thub.com',.$match[1],.$match[2]) |
16900 | 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 20 3d 20 66 75 6e 63 74 69 6f 6e | ;.}..$commandCallable.=.function |
16920 | 28 24 75 72 6c 29 20 75 73 65 20 28 24 72 65 66 2c 20 24 70 61 74 68 2c 20 24 63 6f 6d 6d 61 6e | ($url).use.($ref,.$path,.$comman |
16940 | 64 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 24 63 6f 6d 6d 61 6e 64 2c 20 65 73 | d).{.return.sprintf($command,.es |
16960 | 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 74 68 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c | capeshellarg($path),.escapeshell |
16980 | 61 72 67 28 24 75 72 6c 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 72 65 66 29 29 | arg($url),.escapeshellarg($ref)) |
169a0 | 3b 0a 7d 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 | ;.};..$this->runCommand($command |
169c0 | 43 61 6c 6c 61 62 6c 65 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 | Callable,.$target->getSourceUrl( |
169e0 | 29 29 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 54 6f 43 6f 6d 6d 69 74 28 24 70 61 74 68 2c | ));.$this->updateToCommit($path, |
16a00 | 20 24 72 65 66 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e | .$ref,.$target->getPrettyVersion |
16a20 | 28 29 2c 20 24 74 61 72 67 65 74 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 29 3b 0a | (),.$target->getReleaseDate());. |
16a40 | 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 54 6f 43 6f | }..protected.function.updateToCo |
16a60 | 6d 6d 69 74 28 24 70 61 74 68 2c 20 24 72 65 66 65 72 65 6e 63 65 2c 20 24 62 72 61 6e 63 68 2c | mmit($path,.$reference,.$branch, |
16a80 | 20 24 64 61 74 65 29 0a 7b 0a 24 74 65 6d 70 6c 61 74 65 20 3d 20 27 67 69 74 20 63 68 65 63 6b | .$date).{.$template.=.'git.check |
16aa0 | 6f 75 74 20 25 73 20 26 26 20 67 69 74 20 72 65 73 65 74 20 2d 2d 68 61 72 64 20 25 31 24 73 27 | out.%s.&&.git.reset.--hard.%1$s' |
16ac0 | 3b 0a 0a 0a 20 24 67 69 74 52 65 66 20 3d 20 24 72 65 66 65 72 65 6e 63 65 3b 0a 69 66 20 28 21 | ;....$gitRef.=.$reference;.if.(! |
16ae0 | 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 24 7d 27 2c 20 24 | preg_match('{^[a-f0-9]{40}$}',.$ |
16b00 | 72 65 66 65 72 65 6e 63 65 29 0a 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 | reference).&&.0.===.$this->proce |
16b20 | 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e 63 68 20 2d 72 27 2c 20 24 6f 75 | ss->execute('git.branch.-r',.$ou |
16b40 | 74 70 75 74 2c 20 24 70 61 74 68 29 0a 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 | tput,.$path).&&.preg_match('{^\s |
16b60 | 2b 63 6f 6d 70 6f 73 65 72 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 72 65 66 65 72 65 6e 63 | +composer/'.preg_quote($referenc |
16b80 | 65 29 2e 27 24 7d 6d 27 2c 20 24 6f 75 74 70 75 74 29 0a 29 20 7b 0a 24 67 69 74 52 65 66 20 3d | e).'$}m',.$output).).{.$gitRef.= |
16ba0 | 20 27 63 6f 6d 70 6f 73 65 72 2f 27 2e 24 72 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 24 63 6f 6d | .'composer/'.$reference;.}..$com |
16bc0 | 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 24 74 65 6d 70 6c 61 74 65 2c 20 65 73 63 61 70 65 | mand.=.sprintf($template,.escape |
16be0 | 73 68 65 6c 6c 61 72 67 28 24 67 69 74 52 65 66 29 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 | shellarg($gitRef));.if.(0.===.$t |
16c00 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 | his->process->execute($command,. |
16c20 | 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 | $output,.$path)).{.return;.}.... |
16c40 | 69 66 20 28 24 64 61 74 65 20 26 26 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 74 | if.($date.&&.false.!==.strpos($t |
16c60 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 | his->process->getErrorOutput(),. |
16c80 | 24 72 65 66 65 72 65 6e 63 65 29 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 | $reference)).{.$branch.=.preg_re |
16ca0 | 70 6c 61 63 65 28 27 7b 28 3f 3a 5e 64 65 76 2d 7c 28 3f 3a 5c 2e 78 29 3f 2d 64 65 76 24 29 7d | place('{(?:^dev-|(?:\.x)?-dev$)} |
16cc0 | 69 27 2c 20 27 27 2c 20 24 62 72 61 6e 63 68 29 3b 0a 24 64 61 74 65 20 3d 20 24 64 61 74 65 2d | i',.'',.$branch);.$date.=.$date- |
16ce0 | 3e 66 6f 72 6d 61 74 28 27 55 27 29 3b 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 27 67 69 74 | >format('U');....$command.=.'git |
16d00 | 20 62 72 61 6e 63 68 20 2d 72 27 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 | .branch.-r';.if.(0.!==.$this->pr |
16d20 | 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 74 70 75 74 | ocess->execute($command,.$output |
16d40 | 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 | ,.$path)).{.throw.new.\RuntimeEx |
16d60 | 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 | ception('Failed.to.execute.'...$ |
16d80 | 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 | command..."\n\n"...$this->proces |
16da0 | 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 24 67 75 65 73 73 54 | s->getErrorOutput());.}..$guessT |
16dc0 | 65 6d 70 6c 61 74 65 20 3d 20 27 67 69 74 20 6c 6f 67 20 2d 2d 75 6e 74 69 6c 3d 25 73 20 2d 2d | emplate.=.'git.log.--until=%s.-- |
16de0 | 64 61 74 65 3d 72 61 77 20 2d 6e 31 20 2d 2d 70 72 65 74 74 79 3d 25 25 48 20 25 73 27 3b 0a 66 | date=raw.-n1.--pretty=%%H.%s';.f |
16e00 | 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e | oreach.($this->process->splitLin |
16e20 | 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 28 70 72 65 67 | es($output).as.$line).{.if.(preg |
16e40 | 5f 6d 61 74 63 68 28 27 7b 5e 63 6f 6d 70 6f 73 65 72 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 | _match('{^composer/'.preg_quote( |
16e60 | 24 62 72 61 6e 63 68 29 2e 27 28 3f 3a 5c 2e 78 29 3f 24 7d 69 27 2c 20 74 72 69 6d 28 24 6c 69 | $branch).'(?:\.x)?$}i',.trim($li |
16e80 | 6e 65 29 29 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 | ne))).{...if.(0.===.$this->proce |
16ea0 | 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 24 67 75 65 73 73 54 65 6d 70 6c 61 | ss->execute(sprintf($guessTempla |
16ec0 | 74 65 2c 20 24 64 61 74 65 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 74 72 69 6d 28 24 | te,.$date,.escapeshellarg(trim($ |
16ee0 | 6c 69 6e 65 29 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 6e 65 77 | line))),.$output,.$path)).{.$new |
16f00 | 52 65 66 65 72 65 6e 63 65 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 62 72 | Reference.=.trim($output);.}..br |
16f20 | 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6e 65 77 52 65 66 65 72 65 6e 63 | eak;.}.}..if.(empty($newReferenc |
16f40 | 65 29 29 20 7b 0a 0a 20 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 | e)).{...if.(0.!==.$this->process |
16f60 | 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 24 67 75 65 73 73 54 65 6d 70 6c 61 74 65 | ->execute(sprintf($guessTemplate |
16f80 | 2c 20 24 64 61 74 65 2c 20 27 2d 2d 61 6c 6c 27 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 | ,.$date,.'--all'),.$output,.$pat |
16fa0 | 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f | h)).{.throw.new.\RuntimeExceptio |
16fc0 | 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e | n('Failed.to.execute.'...$comman |
16fe0 | 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 | d..."\n\n"...$this->process->get |
17000 | 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 24 6e 65 77 52 65 66 65 72 65 6e 63 65 20 | ErrorOutput());.}.$newReference. |
17020 | 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d | =.trim($output);.}....$command.= |
17040 | 20 73 70 72 69 6e 74 66 28 24 74 65 6d 70 6c 61 74 65 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 | .sprintf($template,.escapeshella |
17060 | 72 67 28 24 72 65 66 65 72 65 6e 63 65 29 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 | rg($reference));.if.(0.===.$this |
17080 | 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 6f 75 | ->process->execute($command,.$ou |
170a0 | 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 | tput,.$path)).{.$this->io->write |
170c0 | 28 27 20 20 20 20 27 2e 24 72 65 66 65 72 65 6e 63 65 2e 27 20 69 73 20 67 6f 6e 65 20 28 68 69 | ('....'.$reference.'.is.gone.(hi |
170e0 | 73 74 6f 72 79 20 77 61 73 20 72 65 77 72 69 74 74 65 6e 3f 29 2c 20 72 65 63 6f 76 65 72 65 64 | story.was.rewritten?),.recovered |
17100 | 20 62 79 20 63 68 65 63 6b 69 6e 67 20 6f 75 74 20 27 2e 24 6e 65 77 52 65 66 65 72 65 6e 63 65 | .by.checking.out.'.$newReference |
17120 | 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 | );..return;.}.}..throw.new.\Runt |
17140 | 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 | imeException('Failed.to.execute. |
17160 | 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 | '...$command..."\n\n"...$this->p |
17180 | 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 0a 0a | rocess->getErrorOutput());.}.... |
171a0 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 6e 66 6f 72 63 65 43 6c 65 61 6e | .protected.function.enforceClean |
171c0 | 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 | Directory($path).{.$command.=.sp |
171e0 | 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 67 69 74 20 73 74 61 74 75 73 20 2d 2d 70 6f 72 | rintf('cd.%s.&&.git.status.--por |
17200 | 63 65 6c 61 69 6e 20 2d 2d 75 6e 74 72 61 63 6b 65 64 2d 66 69 6c 65 73 3d 6e 6f 27 2c 20 65 73 | celain.--untracked-files=no',.es |
17220 | 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 70 61 74 68 29 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 | capeshellarg($path));.if.(0.!==. |
17240 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 | $this->process->execute($command |
17260 | 2c 20 24 6f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 | ,.$output)).{.throw.new.\Runtime |
17280 | 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 75 74 65 20 27 20 2e | Exception('Failed.to.execute.'.. |
172a0 | 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 | .$command..."\n\n"...$this->proc |
172c0 | 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 69 66 20 28 74 | ess->getErrorOutput());.}..if.(t |
172e0 | 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 | rim($output)).{.throw.new.\Runti |
17300 | 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 53 6f 75 72 63 65 20 64 69 72 65 63 74 6f 72 79 20 27 20 | meException('Source.directory.'. |
17320 | 2e 20 24 70 61 74 68 20 2e 20 27 20 68 61 73 20 75 6e 63 6f 6d 6d 69 74 74 65 64 20 63 68 61 6e | ..$path...'.has.uncommitted.chan |
17340 | 67 65 73 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 | ges');.}.}..........protected.fu |
17360 | 6e 63 74 69 6f 6e 20 72 75 6e 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 | nction.runCommand($commandCallab |
17380 | 6c 65 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 68 61 6e 64 6c | le,.$url,.$path.=.null).{.$handl |
173a0 | 65 72 20 3d 20 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6f 75 74 70 75 74 48 61 6e 64 6c 65 72 | er.=.array($this,.'outputHandler |
173c0 | 27 29 3b 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 68 74 74 70 | ');....if.(preg_match('{^(?:http |
173e0 | 73 3f 7c 67 69 74 29 28 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 2e 2a 29 7d 27 2c 20 24 75 72 | s?|git)(://github.com/.*)}',.$ur |
17400 | 6c 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 70 72 6f 74 6f 63 6f 6c 73 20 3d 20 61 72 72 61 79 | l,.$match)).{.$protocols.=.array |
17420 | 28 27 67 69 74 27 2c 20 27 68 74 74 70 73 27 2c 20 27 68 74 74 70 27 29 3b 0a 24 6d 65 73 73 61 | ('git',.'https',.'http');.$messa |
17440 | 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 74 6f 63 6f | ges.=.array();.foreach.($protoco |
17460 | 6c 73 20 61 73 20 24 70 72 6f 74 6f 63 6f 6c 29 20 7b 0a 24 75 72 6c 20 3d 20 24 70 72 6f 74 6f | ls.as.$protocol).{.$url.=.$proto |
17480 | 63 6f 6c 20 2e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 | col...$match[1];.if.(0.===.$this |
174a0 | 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e | ->process->execute(call_user_fun |
174c0 | 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 29 2c 20 24 68 61 6e 64 | c($commandCallable,.$url),.$hand |
174e0 | 6c 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 | ler)).{.return;.}.$messages[].=. |
17500 | 27 2d 20 27 20 2e 20 24 75 72 6c 20 2e 20 22 5c 6e 22 20 2e 20 70 72 65 67 5f 72 65 70 6c 61 63 | '-.'...$url..."\n"...preg_replac |
17520 | 65 28 27 23 5e 23 6d 27 2c 20 27 20 20 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e | e('#^#m',.'..',.$this->process-> |
17540 | 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 | getErrorOutput());.if.(null.!==. |
17560 | 24 70 61 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f | $path).{.$this->filesystem->remo |
17580 | 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 74 68 69 73 | veDirectory($path);.}.}....$this |
175a0 | 2d 3e 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6c 6f 6e | ->throwException('Failed.to.clon |
175c0 | 65 20 27 20 2e 20 24 75 72 6c 20 2e 27 20 76 69 61 20 67 69 74 2c 20 68 74 74 70 73 20 61 6e 64 | e.'...$url..'.via.git,.https.and |
175e0 | 20 68 74 74 70 20 70 72 6f 74 6f 63 6f 6c 73 2c 20 61 62 6f 72 74 69 6e 67 2e 27 20 2e 20 22 5c | .http.protocols,.aborting.'..."\ |
17600 | 6e 5c 6e 22 20 2e 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 67 65 73 29 2c | n\n"...implode("\n",.$messages), |
17620 | 20 24 75 72 6c 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f | .$url);.}..$command.=.call_user_ |
17640 | 66 75 6e 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 24 75 72 6c 29 3b 0a 69 66 | func($commandCallable,.$url);.if |
17660 | 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 | .(0.!==.$this->process->execute( |
17680 | 24 63 6f 6d 6d 61 6e 64 2c 20 24 68 61 6e 64 6c 65 72 29 29 20 7b 0a 69 66 20 28 70 72 65 67 5f | $command,.$handler)).{.if.(preg_ |
176a0 | 6d 61 74 63 68 28 27 7b 5e 67 69 74 40 67 69 74 68 75 62 2e 63 6f 6d 3a 28 2e 2b 3f 29 5c 2e 67 | match('{^git@github.com:(.+?)\.g |
176c0 | 69 74 24 7d 69 27 2c 20 24 75 72 6c 2c 20 24 6d 61 74 63 68 29 20 26 26 20 24 74 68 69 73 2d 3e | it$}i',.$url,.$match).&&.$this-> |
176e0 | 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 0a 20 24 72 65 74 72 69 65 | io->isInteractive()).{...$retrie |
17700 | 73 20 3d 20 33 3b 0a 24 72 65 74 72 79 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 64 6f 20 7b 0a 69 | s.=.3;.$retrying.=.false;.do.{.i |
17720 | 66 20 28 24 72 65 74 72 79 69 6e 67 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 | f.($retrying).{.$this->io->write |
17740 | 28 27 49 6e 76 61 6c 69 64 20 63 72 65 64 65 6e 74 69 61 6c 73 27 29 3b 0a 7d 0a 69 66 20 28 21 | ('Invalid.credentials');.}.if.(! |
17760 | 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 27 67 69 74 | $this->io->hasAuthorization('git |
17780 | 68 75 62 2e 63 6f 6d 27 29 20 7c 7c 20 24 72 65 74 72 79 69 6e 67 29 20 7b 0a 24 75 73 65 72 6e | hub.com').||.$retrying).{.$usern |
177a0 | 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 27 55 73 65 72 6e 61 6d 65 3a 20 | ame.=.$this->io->ask('Username:. |
177c0 | 27 29 3b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e | ');.$password.=.$this->io->askAn |
177e0 | 64 48 69 64 65 41 6e 73 77 65 72 28 27 50 61 73 73 77 6f 72 64 3a 20 27 29 3b 0a 24 74 68 69 73 | dHideAnswer('Password:.');.$this |
17800 | 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 27 67 69 74 68 75 62 2e 63 | ->io->setAuthorization('github.c |
17820 | 6f 6d 27 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 7d 0a 0a 24 | om',.$username,.$password);.}..$ |
17840 | 61 75 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 | auth.=.$this->io->getAuthorizati |
17860 | 6f 6e 28 27 67 69 74 68 75 62 2e 63 6f 6d 27 29 3b 0a 24 75 72 6c 20 3d 20 27 68 74 74 70 73 3a | on('github.com');.$url.=.'https: |
17880 | 2f 2f 27 2e 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 2e 20 27 3a 27 20 2e 20 24 61 | //'.$auth['username']...':'...$a |
178a0 | 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 2e 20 27 40 67 69 74 68 75 62 2e 63 6f 6d 2f 27 | uth['password']...'@github.com/' |
178c0 | 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 2e 67 69 74 27 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 63 | .$match[1].'.git';..$command.=.c |
178e0 | 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 6f 6d 6d 61 6e 64 43 61 6c 6c 61 62 6c 65 2c 20 | all_user_func($commandCallable,. |
17900 | 24 75 72 6c 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d | $url);.if.(0.===.$this->process- |
17920 | 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 68 61 6e 64 6c 65 72 29 29 20 7b 0a | >execute($command,.$handler)).{. |
17940 | 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 74 68 29 20 7b 0a | return;.}.if.(null.!==.$path).{. |
17960 | 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f | $this->filesystem->removeDirecto |
17980 | 72 79 28 24 70 61 74 68 29 3b 0a 7d 0a 24 72 65 74 72 79 69 6e 67 20 3d 20 74 72 75 65 3b 0a 7d | ry($path);.}.$retrying.=.true;.} |
179a0 | 20 77 68 69 6c 65 20 28 2d 2d 24 72 65 74 72 69 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c | .while.(--$retries);.}..if.(null |
179c0 | 20 21 3d 3d 20 24 70 61 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d | .!==.$path).{.$this->filesystem- |
179e0 | 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 70 61 74 68 29 3b 0a 7d 0a 24 74 68 69 73 | >removeDirectory($path);.}.$this |
17a00 | 2d 3e 74 68 72 6f 77 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 65 78 65 63 | ->throwException('Failed.to.exec |
17a20 | 75 74 65 20 27 20 2e 20 24 63 6f 6d 6d 61 6e 64 20 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 | ute.'...$command..."\n\n"...$thi |
17a40 | 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 20 24 75 | s->process->getErrorOutput(),.$u |
17a60 | 72 6c 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 75 74 70 75 74 | rl);.}.}..public.function.output |
17a80 | 48 61 6e 64 6c 65 72 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 29 0a 7b 0a 69 66 20 28 24 74 | Handler($type,.$buffer).{.if.($t |
17aa0 | 79 70 65 20 21 3d 3d 20 27 6f 75 74 27 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 24 | ype.!==.'out').{.return;.}.if.($ |
17ac0 | 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e | this->io->isVerbose()).{.$this-> |
17ae0 | 69 6f 2d 3e 77 72 69 74 65 28 24 62 75 66 66 65 72 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 0a | io->write($buffer,.false);.}.}.. |
17b00 | 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 68 72 6f 77 45 78 63 65 70 74 69 6f | protected.function.throwExceptio |
17b20 | 6e 28 24 6d 65 73 73 61 67 65 2c 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 | n($message,.$url).{.if.(0.!==.$t |
17b40 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 2d 2d 76 65 72 | his->process->execute('git.--ver |
17b60 | 73 69 6f 6e 27 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 | sion',.$ignoredOutput)).{.throw. |
17b80 | 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f | new.\RuntimeException('Failed.to |
17ba0 | 20 63 6c 6f 6e 65 20 27 2e 24 75 72 6c 2e 27 2c 20 67 69 74 20 77 61 73 20 6e 6f 74 20 66 6f 75 | .clone.'.$url.',.git.was.not.fou |
17bc0 | 6e 64 2c 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 20 61 | nd,.check.that.it.is.installed.a |
17be0 | 6e 64 20 69 6e 20 79 6f 75 72 20 50 41 54 48 20 65 6e 76 2e 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e | nd.in.your.PATH.env.'..."\n\n".. |
17c00 | 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 | .$this->process->getErrorOutput( |
17c20 | 29 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 | ));.}..throw.new.\RuntimeExcepti |
17c40 | 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 | on($message);.}..protected.funct |
17c60 | 69 6f 6e 20 73 65 74 50 75 73 68 55 72 6c 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | ion.setPushUrl(PackageInterface. |
17c80 | 24 70 61 63 6b 61 67 65 2c 20 24 70 61 74 68 29 0a 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 | $package,.$path).{...if.(preg_ma |
17ca0 | 74 63 68 28 27 7b 5e 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 67 69 74 68 75 62 2e 63 | tch('{^(?:https?|git)://github.c |
17cc0 | 6f 6d 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 3f 29 28 3f 3a 5c 2e 67 69 74 29 3f 24 7d 27 | om/([^/]+)/([^/]+?)(?:\.git)?$}' |
17ce0 | 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 2c 20 24 6d 61 74 | ,.$package->getSourceUrl(),.$mat |
17d00 | 63 68 29 29 20 7b 0a 24 70 75 73 68 55 72 6c 20 3d 20 27 67 69 74 40 67 69 74 68 75 62 2e 63 6f | ch)).{.$pushUrl.=.'git@github.co |
17d20 | 6d 3a 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 2f 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 27 2e 67 69 | m:'.$match[1].'/'.$match[2].'.gi |
17d40 | 74 27 3b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 72 65 6d 6f 74 65 20 73 | t';.$cmd.=.sprintf('git.remote.s |
17d60 | 65 74 2d 75 72 6c 20 2d 2d 70 75 73 68 20 6f 72 69 67 69 6e 20 25 73 27 2c 20 65 73 63 61 70 65 | et-url.--push.origin.%s',.escape |
17d80 | 73 68 65 6c 6c 61 72 67 28 24 70 75 73 68 55 72 6c 29 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 | shellarg($pushUrl));.$this->proc |
17da0 | 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6d 64 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 | ess->execute($cmd,.$ignoredOutpu |
17dc0 | 74 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | t,.$path);.}.}.}.<?php.......... |
17de0 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b | ..namespace.Composer\Repository; |
17e00 | 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b | ..use.Composer\Package\AliasPack |
17e20 | 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 | age;.use.Composer\Package\Packag |
17e40 | 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | eInterface;.use.Composer\Package |
17e60 | 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c | \Version\VersionParser;.......cl |
17e80 | 61 73 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 52 | ass.ArrayRepository.implements.R |
17ea0 | 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 | epositoryInterface.{.protected.$ |
17ec0 | 70 61 63 6b 61 67 65 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e | packages;..public.function.__con |
17ee0 | 73 74 72 75 63 74 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 | struct(array.$packages.=.array() |
17f00 | 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 | ).{.foreach.($packages.as.$packa |
17f20 | 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 | ge).{.$this->addPackage($package |
17f40 | 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 | );.}.}.....public.function.findP |
17f60 | 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 0a 20 24 76 65 72 | ackage($name,.$version).{...$ver |
17f80 | 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 | sionParser.=.new.VersionParser() |
17fa0 | 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 | ;.$version.=.$versionParser->nor |
17fc0 | 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c | malize($version);.$name.=.strtol |
17fe0 | 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 | ower($name);..foreach.($this->ge |
18000 | 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 | tPackages().as.$package).{.if.($ |
18020 | 6e 61 6d 65 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 26 26 20 | name.===.$package->getName().&&. |
18040 | 24 76 65 72 73 69 6f 6e 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f | $version.===.$package->getVersio |
18060 | 6e 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a | n()).{.return.$package;.}.}.}... |
18080 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 | ..public.function.findPackages($ |
180a0 | 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 24 6e 61 6d 65 | name,.$version.=.null).{...$name |
180c0 | 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 0a 0a 20 69 66 20 28 6e 75 6c | .=.strtolower($name);....if.(nul |
180e0 | 6c 20 21 3d 3d 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 | l.!==.$version).{.$versionParser |
18100 | 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 76 65 72 73 69 6f 6e | .=.new.VersionParser();.$version |
18120 | 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 | .=.$versionParser->normalize($ve |
18140 | 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | rsion);.}..$packages.=.array();. |
18160 | 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 | .foreach.($this->getPackages().a |
18180 | 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e | s.$package).{.if.($package->getN |
181a0 | 61 6d 65 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 65 | ame().===.$name.&&.(null.===.$ve |
181c0 | 72 73 69 6f 6e 20 7c 7c 20 24 76 65 72 73 69 6f 6e 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e | rsion.||.$version.===.$package-> |
181e0 | 67 65 74 56 65 72 73 69 6f 6e 28 29 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 | getVersion())).{.$packages[].=.$ |
18200 | 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a | package;.}.}..return.$packages;. |
18220 | 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 63 6b 61 67 65 | }.....public.function.hasPackage |
18240 | 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 70 | (PackageInterface.$package).{.$p |
18260 | 61 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 | ackageId.=.$package->getUniqueNa |
18280 | 6d 65 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 | me();..foreach.($this->getPackag |
182a0 | 65 73 28 29 20 61 73 20 24 72 65 70 6f 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 | es().as.$repoPackage).{.if.($pac |
182c0 | 6b 61 67 65 49 64 20 3d 3d 3d 20 24 72 65 70 6f 50 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 | kageId.===.$repoPackage->getUniq |
182e0 | 75 65 4e 61 6d 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 | ueName()).{.return.true;.}.}..re |
18300 | 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | turn.false;.}.......public.funct |
18320 | 69 6f 6e 20 61 64 64 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | ion.addPackage(PackageInterface. |
18340 | 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e | $package).{.if.(null.===.$this-> |
18360 | 70 61 63 6b 61 67 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b | packages).{.$this->initialize(); |
18380 | 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 24 74 68 69 73 | .}.$package->setRepository($this |
183a0 | 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b | );.$this->packages[].=.$package; |
183c0 | 0a 0a 0a 20 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 28 29 29 20 7b 0a | ....if.($package->getAlias()).{. |
183e0 | 24 61 6c 69 61 73 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 41 6c 69 61 73 50 61 63 6b 61 | $alias.=.$this->createAliasPacka |
18400 | 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 50 61 63 | ge($package);.if.(!$this->hasPac |
18420 | 6b 61 67 65 28 24 61 6c 69 61 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 | kage($alias)).{.$this->addPackag |
18440 | 65 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 | e($alias);.}.}.}..protected.func |
18460 | 74 69 6f 6e 20 63 72 65 61 74 65 41 6c 69 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 | tion.createAliasPackage(PackageI |
18480 | 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 73 20 3d 20 6e 75 6c 6c | nterface.$package,.$alias.=.null |
184a0 | 2c 20 24 70 72 65 74 74 79 41 6c 69 61 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 | ,.$prettyAlias.=.null).{.return. |
184c0 | 6e 65 77 20 41 6c 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 | new.AliasPackage($package,.$alia |
184e0 | 73 20 3f 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 28 29 2c 20 24 70 72 65 74 | s.?:.$package->getAlias(),.$pret |
18500 | 74 79 41 6c 69 61 73 20 3f 3a 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 41 6c | tyAlias.?:.$package->getPrettyAl |
18520 | 69 61 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ias());.}.......public.function. |
18540 | 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 | removePackage(PackageInterface.$ |
18560 | 70 61 63 6b 61 67 65 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 | package).{.$packageId.=.$package |
18580 | 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 | ->getUniqueName();..foreach.($th |
185a0 | 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 72 65 | is->getPackages().as.$key.=>.$re |
185c0 | 70 6f 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 3d 3d 3d 20 | poPackage).{.if.($packageId.===. |
185e0 | 24 72 65 70 6f 50 61 63 6b 61 67 65 2d 3e 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 29 20 7b | $repoPackage->getUniqueName()).{ |
18600 | 0a 61 72 72 61 79 5f 73 70 6c 69 63 65 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 2c 20 24 | .array_splice($this->packages,.$ |
18620 | 6b 65 79 2c 20 31 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | key,.1);..return;.}.}.}.....publ |
18640 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a 69 66 20 28 | ic.function.getPackages().{.if.( |
18660 | 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 20 7b 0a 24 74 68 69 | null.===.$this->packages).{.$thi |
18680 | 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | s->initialize();.}..return.$this |
186a0 | 2d 3e 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | ->packages;.}.......public.funct |
186c0 | 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 | ion.count().{.return.count($this |
186e0 | 2d 3e 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e | ->packages);.}.....protected.fun |
18700 | 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b | ction.initialize().{.$this->pack |
18720 | 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a | ages.=.array();.}.}.<?php....... |
18740 | 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f | .....namespace.Composer\Reposito |
18760 | 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b | ry;..use.Composer\Json\JsonFile; |
18780 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 | .use.Composer\Package\AliasPacka |
187a0 | 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c | ge;.use.Composer\Package\Loader\ |
187c0 | 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | ArrayLoader;.use.Composer\Packag |
187e0 | 65 5c 44 75 6d 70 65 72 5c 41 72 72 61 79 44 75 6d 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 | e\Dumper\ArrayDumper;........cla |
18800 | 73 73 20 46 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 | ss.FilesystemRepository.extends. |
18820 | 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 57 72 69 74 61 | ArrayRepository.implements.Writa |
18840 | 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 | bleRepositoryInterface.{.private |
18860 | 20 24 66 69 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | .$file;.......public.function.__ |
18880 | 63 6f 6e 73 74 72 75 63 74 28 4a 73 6f 6e 46 69 6c 65 20 24 72 65 70 6f 73 69 74 6f 72 79 46 69 | construct(JsonFile.$repositoryFi |
188a0 | 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 46 | le).{.$this->file.=.$repositoryF |
188c0 | 69 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e | ile;.}.....protected.function.in |
188e0 | 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 | itialize().{.parent::initialize( |
18900 | 29 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 | );..if.(!$this->file->exists()). |
18920 | 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e | {.return;.}..$packages.=.$this-> |
18940 | 66 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 70 61 | file->read();..if.(!is_array($pa |
18960 | 63 6b 61 67 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 | ckages)).{.throw.new.\Unexpected |
18980 | 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 | ValueException('Could.not.parse. |
189a0 | 70 61 63 6b 61 67 65 20 6c 69 73 74 20 66 72 6f 6d 20 74 68 65 20 27 2e 24 74 68 69 73 2d 3e 66 | package.list.from.the.'.$this->f |
189c0 | 69 6c 65 2d 3e 67 65 74 50 61 74 68 28 29 2e 27 20 72 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d | ile->getPath().'.repository');.} |
189e0 | 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 29 3b 0a 66 | ..$loader.=.new.ArrayLoader();.f |
18a00 | 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 44 61 74 | oreach.($packages.as.$packageDat |
18a20 | 61 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 | a).{.$package.=.$loader->load($p |
18a40 | 61 63 6b 61 67 65 44 61 74 61 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 | ackageData);.$this->addPackage($ |
18a60 | 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 | package);.}.}..public.function.r |
18a80 | 65 6c 6f 61 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 20 3d 20 6e 75 6c 6c | eload().{.$this->packages.=.null |
18aa0 | 3b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | ;.$this->initialize();.}.....pub |
18ac0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 | lic.function.write().{.$packages |
18ae0 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 75 6d 70 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 44 | .=.array();.$dumper.=.new.ArrayD |
18b00 | 75 6d 70 65 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b | umper();.foreach.($this->getPack |
18b20 | 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 24 70 61 63 6b | ages().as.$package).{.if.(!$pack |
18b40 | 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 | age.instanceof.AliasPackage).{.$ |
18b60 | 64 61 74 61 20 3d 20 24 64 75 6d 70 65 72 2d 3e 64 75 6d 70 28 24 70 61 63 6b 61 67 65 29 3b 0a | data.=.$dumper->dump($package);. |
18b80 | 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 64 61 74 61 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d | $packages[].=.$data;.}.}..$this- |
18ba0 | 3e 66 69 6c 65 2d 3e 77 72 69 74 65 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 | >file->write($packages);.}.}.<?p |
18bc0 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
18be0 | 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 | \Repository;..use.Composer\Packa |
18c00 | 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 | ge\PackageInterface;.......inter |
18c20 | 66 61 63 65 20 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 | face.WritableRepositoryInterface |
18c40 | 20 65 78 74 65 6e 64 73 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a | .extends.RepositoryInterface.{.. |
18c60 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 29 3b 0a 0a 0a 0a 0a 0a | ..public.function.write();...... |
18c80 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 50 61 63 6b 61 67 65 28 50 61 63 6b | .public.function.addPackage(Pack |
18ca0 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 | ageInterface.$package);.......pu |
18cc0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 50 61 63 6b | blic.function.removePackage(Pack |
18ce0 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 70 75 62 6c | ageInterface.$package);.....publ |
18d00 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6c 6f 61 64 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | ic.function.reload();.}.<?php... |
18d20 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f | .........namespace.Composer\Repo |
18d40 | 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 | sitory;..use.Composer\IO\IOInter |
18d60 | 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 | face;.use.Composer\Package\Versi |
18d80 | 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 | on\VersionParser;.use.Composer\R |
18da0 | 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 5c 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 3b 0a 75 73 | epository\Pear\ChannelReader;.us |
18dc0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4d 65 6d 6f 72 79 50 61 63 6b 61 67 65 | e.Composer\Package\MemoryPackage |
18de0 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 5c 43 | ;.use.Composer\Repository\Pear\C |
18e00 | 68 61 6e 6e 65 6c 49 6e 66 6f 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | hannelInfo;.use.Composer\Package |
18e20 | 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b | \Link;.use.Composer\Package\Link |
18e40 | 43 6f 6e 73 74 72 61 69 6e 74 5c 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 | Constraint\VersionConstraint;.us |
18e60 | 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d | e.Composer\Util\RemoteFilesystem |
18e80 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ;.use.Composer\Config;.......... |
18ea0 | 0a 63 6c 61 73 73 20 50 65 61 72 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 | .class.PearRepository.extends.Ar |
18ec0 | 72 61 79 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 70 72 69 76 61 74 65 20 24 75 72 6c 3b 0a 70 72 | rayRepository.{.private.$url;.pr |
18ee0 | 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 70 72 69 76 61 74 65 | ivate.$io;.private.$rfs;.private |
18f00 | 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 76 65 | .$versionParser;.....private.$ve |
18f20 | 6e 64 6f 72 41 6c 69 61 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f | ndorAlias;..public.function.__co |
18f40 | 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 | nstruct(array.$repoConfig,.IOInt |
18f60 | 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 52 65 6d 6f | erface.$io,.Config.$config,.Remo |
18f80 | 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 | teFilesystem.$rfs.=.null).{.if.( |
18fa0 | 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d 27 2c 20 24 72 65 70 | !preg_match('{^https?://}',.$rep |
18fc0 | 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 | oConfig['url'])).{.$repoConfig[' |
18fe0 | 75 72 6c 27 5d 20 3d 20 27 68 74 74 70 3a 2f 2f 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 | url'].=.'http://'.$repoConfig['u |
19000 | 72 6c 27 5d 3b 0a 7d 0a 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 66 69 | rl'];.}..if.(function_exists('fi |
19020 | 6c 74 65 72 5f 76 61 72 27 29 20 26 26 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 50 48 | lter_var').&&.version_compare(PH |
19040 | 50 5f 56 45 52 53 49 4f 4e 2c 20 27 35 2e 33 2e 33 27 2c 20 27 3e 3d 27 29 20 26 26 20 21 66 69 | P_VERSION,.'5.3.3',.'>=').&&.!fi |
19060 | 6c 74 65 72 5f 76 61 72 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 2c 20 46 49 4c | lter_var($repoConfig['url'],.FIL |
19080 | 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c | TER_VALIDATE_URL)).{.throw.new.\ |
190a0 | 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 | UnexpectedValueException('Invali |
190c0 | 64 20 75 72 6c 20 67 69 76 65 6e 20 66 6f 72 20 50 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 3a | d.url.given.for.PEAR.repository: |
190e0 | 20 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 | .'.$repoConfig['url']);.}..$this |
19100 | 2d 3e 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d | ->url.=.rtrim($repoConfig['url'] |
19120 | 2c 20 27 2f 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e | ,.'/');.$this->io.=.$io;.$this-> |
19140 | 72 66 73 20 3d 20 24 72 66 73 20 3f 3a 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 | rfs.=.$rfs.?:.new.RemoteFilesyst |
19160 | 65 6d 28 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 41 6c 69 61 | em($this->io);.$this->vendorAlia |
19180 | 73 20 3d 20 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 76 65 6e 64 6f 72 2d 61 6c | s.=.isset($repoConfig['vendor-al |
191a0 | 69 61 73 27 5d 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 76 65 6e 64 6f 72 2d 61 6c 69 | ias']).?.$repoConfig['vendor-ali |
191c0 | 61 73 27 5d 20 3a 20 6e 75 6c 6c 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 | as'].:.null;.$this->versionParse |
191e0 | 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 70 72 6f 74 | r.=.new.VersionParser();.}..prot |
19200 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 | ected.function.initialize().{.pa |
19220 | 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e | rent::initialize();..$this->io-> |
19240 | 77 72 69 74 65 28 27 49 6e 69 74 69 61 6c 69 7a 69 6e 67 20 50 45 41 52 20 72 65 70 6f 73 69 74 | write('Initializing.PEAR.reposit |
19260 | 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 0a 24 72 65 61 64 65 72 20 3d 20 6e 65 | ory.'.$this->url);..$reader.=.ne |
19280 | 77 20 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 28 24 74 68 69 73 2d 3e 72 66 73 29 3b 0a 74 72 79 | w.ChannelReader($this->rfs);.try |
192a0 | 20 7b 0a 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 20 3d 20 24 72 65 61 64 65 72 2d 3e 72 65 61 64 28 | .{.$channelInfo.=.$reader->read( |
192c0 | 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e | $this->url);.}.catch.(\Exception |
192e0 | 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 77 61 72 6e 69 6e | .$e).{.$this->io->write('<warnin |
19300 | 67 3e 50 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 20 66 72 6f 6d 20 27 2e 24 74 68 69 73 2d 3e | g>PEAR.repository.from.'.$this-> |
19320 | 75 72 6c 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 6c 6f 61 64 65 64 2e 20 27 2e 24 65 2d | url.'.could.not.be.loaded..'.$e- |
19340 | 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2e 27 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 0a 72 65 | >getMessage().'</warning>');..re |
19360 | 74 75 72 6e 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 | turn;.}.$packages.=.$this->build |
19380 | 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 73 28 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2c 20 24 | ComposerPackages($channelInfo,.$ |
193a0 | 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 | this->versionParser);.foreach.($ |
193c0 | 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 | packages.as.$package).{.$this->a |
193e0 | 64 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | ddPackage($package);.}.}........ |
19400 | 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 | private.function.buildComposerPa |
19420 | 63 6b 61 67 65 73 28 43 68 61 6e 6e 65 6c 49 6e 66 6f 20 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2c | ckages(ChannelInfo.$channelInfo, |
19440 | 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 0a 7b | .VersionParser.$versionParser).{ |
19460 | 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 68 | .$result.=.array();.foreach.($ch |
19480 | 61 6e 6e 65 6c 49 6e 66 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 | annelInfo->getPackages().as.$pac |
194a0 | 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b | kageDefinition).{.foreach.($pack |
194c0 | 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 52 65 6c 65 61 73 65 73 28 29 20 61 73 20 | ageDefinition->getReleases().as. |
194e0 | 24 76 65 72 73 69 6f 6e 20 3d 3e 20 24 72 65 6c 65 61 73 65 49 6e 66 6f 29 20 7b 0a 74 72 79 20 | $version.=>.$releaseInfo).{.try. |
19500 | 7b 0a 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 | {.$normalizedVersion.=.$versionP |
19520 | 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 | arser->normalize($version);.}.ca |
19540 | 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 | tch.(\UnexpectedValueException.$ |
19560 | 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 | e).{.if.($this->io->isVerbose()) |
19580 | 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 43 6f 75 6c 64 20 6e 6f 74 20 6c | .{.$this->io->write('Could.not.l |
195a0 | 6f 61 64 20 27 2e 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 | oad.'.$packageDefinition->getPac |
195c0 | 6b 61 67 65 4e 61 6d 65 28 29 2e 27 20 27 2e 24 76 65 72 73 69 6f 6e 2e 27 3a 20 27 2e 24 65 2d | kageName().'.'.$version.':.'.$e- |
195e0 | 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 | >getMessage());.}.continue;.}..$ |
19600 | 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 | composerPackageName.=.$this->bui |
19620 | 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 70 61 63 6b 61 67 65 44 65 | ldComposerPackageName($packageDe |
19640 | 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 2c 20 24 70 61 63 | finition->getChannelName(),.$pac |
19660 | 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 | kageDefinition->getPackageName() |
19680 | 29 3b 0a 0a 0a 20 0a 20 24 64 69 73 74 55 72 6c 20 3d 20 22 68 74 74 70 3a 2f 2f 7b 24 70 61 63 | );......$distUrl.=."http://{$pac |
196a0 | 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 | kageDefinition->getChannelName() |
196c0 | 7d 2f 67 65 74 2f 7b 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 50 61 | }/get/{$packageDefinition->getPa |
196e0 | 63 6b 61 67 65 4e 61 6d 65 28 29 7d 2d 7b 24 76 65 72 73 69 6f 6e 7d 2e 74 67 7a 22 3b 0a 0a 24 | ckageName()}-{$version}.tgz";..$ |
19700 | 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 73 75 67 67 65 73 74 73 20 3d 20 | requires.=.array();.$suggests.=. |
19720 | 61 72 72 61 79 28 29 3b 0a 24 63 6f 6e 66 6c 69 63 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 | array();.$conflicts.=.array();.$ |
19740 | 72 65 70 6c 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 0a 20 69 66 20 28 24 63 68 | replaces.=.array();......if.($ch |
19760 | 61 6e 6e 65 6c 49 6e 66 6f 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 20 24 70 61 63 6b 61 67 65 | annelInfo->getName().==.$package |
19780 | 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 29 20 7b 0a | Definition->getChannelName()).{. |
197a0 | 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 24 74 68 69 73 2d 3e 62 | $composerPackageAlias.=.$this->b |
197c0 | 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 63 68 61 6e 6e 65 6c | uildComposerPackageName($channel |
197e0 | 49 6e 66 6f 2d 3e 67 65 74 41 6c 69 61 73 28 29 2c 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 | Info->getAlias(),.$packageDefini |
19800 | 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a 24 61 6c 69 61 73 43 | tion->getPackageName());.$aliasC |
19820 | 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e | onstraint.=.new.VersionConstrain |
19840 | 74 28 27 3d 3d 27 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 29 3b 0a 24 72 65 | t('==',.$normalizedVersion);.$re |
19860 | 70 6c 61 63 65 73 5b 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 | places[].=.new.Link($composerPac |
19880 | 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 2c | kageName,.$composerPackageAlias, |
198a0 | 20 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 2c 20 27 72 65 70 6c 61 63 65 73 27 2c 20 28 | .$aliasConstraint,.'replaces',.( |
198c0 | 73 74 72 69 6e 67 29 20 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 0a 20 | string).$aliasConstraint);.}.... |
198e0 | 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 41 6c 69 61 73 29 0a 26 | if.(!empty($this->vendorAlias).& |
19900 | 26 20 28 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 41 6c 69 61 73 20 21 3d 20 27 70 65 61 72 2d 27 | &.($this->vendorAlias.!=.'pear-' |
19920 | 2e 24 63 68 61 6e 6e 65 6c 49 6e 66 6f 2d 3e 67 65 74 41 6c 69 61 73 28 29 20 7c 7c 20 24 63 68 | .$channelInfo->getAlias().||.$ch |
19940 | 61 6e 6e 65 6c 49 6e 66 6f 2d 3e 67 65 74 4e 61 6d 65 28 29 20 21 3d 20 24 70 61 63 6b 61 67 65 | annelInfo->getName().!=.$package |
19960 | 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 29 0a 29 20 | Definition->getChannelName()).). |
19980 | 7b 0a 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 22 7b 24 74 68 69 | {.$composerPackageAlias.=."{$thi |
199a0 | 73 2d 3e 76 65 6e 64 6f 72 41 6c 69 61 73 7d 2f 7b 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 | s->vendorAlias}/{$packageDefinit |
199c0 | 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 7d 22 3b 0a 24 61 6c 69 61 73 43 | ion->getPackageName()}";.$aliasC |
199e0 | 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e | onstraint.=.new.VersionConstrain |
19a00 | 74 28 27 3d 3d 27 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 29 3b 0a 24 72 65 | t('==',.$normalizedVersion);.$re |
19a20 | 70 6c 61 63 65 73 5b 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 | places[].=.new.Link($composerPac |
19a40 | 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 41 6c 69 61 73 2c | kageName,.$composerPackageAlias, |
19a60 | 20 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 2c 20 27 72 65 70 6c 61 63 65 73 27 2c 20 28 | .$aliasConstraint,.'replaces',.( |
19a80 | 73 74 72 69 6e 67 29 20 24 61 6c 69 61 73 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 66 6f | string).$aliasConstraint);.}..fo |
19aa0 | 72 65 61 63 68 20 28 24 72 65 6c 65 61 73 65 49 6e 66 6f 2d 3e 67 65 74 44 65 70 65 6e 64 65 6e | reach.($releaseInfo->getDependen |
19ac0 | 63 79 49 6e 66 6f 28 29 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 64 65 70 65 | cyInfo()->getRequires().as.$depe |
19ae0 | 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 64 65 70 65 6e 64 65 6e 63 79 50 | ndencyConstraint).{.$dependencyP |
19b00 | 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6d 70 6f 73 65 | ackageName.=.$this->buildCompose |
19b20 | 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 | rPackageName($dependencyConstrai |
19b40 | 6e 74 2d 3e 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 2c 20 24 64 65 70 65 6e 64 65 6e 63 | nt->getChannelName(),.$dependenc |
19b60 | 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a | yConstraint->getPackageName());. |
19b80 | 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 70 61 | $constraint.=.$versionParser->pa |
19ba0 | 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 | rseConstraints($dependencyConstr |
19bc0 | 61 69 6e 74 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 24 6c 69 6e 6b 20 3d 20 | aint->getConstraint());.$link.=. |
19be0 | 6e 65 77 20 4c 69 6e 6b 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 | new.Link($composerPackageName,.$ |
19c00 | 64 65 70 65 6e 64 65 6e 63 79 50 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 69 | dependencyPackageName,.$constrai |
19c20 | 6e 74 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 54 79 | nt,.$dependencyConstraint->getTy |
19c40 | 70 65 28 29 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 | pe(),.$dependencyConstraint->get |
19c60 | 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 73 77 69 74 63 68 20 28 24 64 65 70 65 6e 64 65 6e | Constraint());.switch.($dependen |
19c80 | 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 63 61 73 65 20 | cyConstraint->getType()).{.case. |
19ca0 | 27 72 65 71 75 69 72 65 64 27 3a 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 6c 69 6e 6b 3b | 'required':.$requires[].=.$link; |
19cc0 | 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 63 6f 6e 66 6c 69 63 74 73 27 3a 0a 24 63 6f 6e 66 6c | .break;.case.'conflicts':.$confl |
19ce0 | 69 63 74 73 5b 5d 20 3d 20 24 6c 69 6e 6b 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 72 65 70 | icts[].=.$link;.break;.case.'rep |
19d00 | 6c 61 63 65 73 27 3a 0a 24 72 65 70 6c 61 63 65 73 5b 5d 20 3d 20 24 6c 69 6e 6b 3b 0a 62 72 65 | laces':.$replaces[].=.$link;.bre |
19d20 | 61 6b 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 65 6c 65 61 73 65 49 6e 66 6f 2d 3e | ak;.}.}..foreach.($releaseInfo-> |
19d40 | 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 61 6c | getDependencyInfo()->getOptional |
19d60 | 73 28 29 20 61 73 20 24 67 72 6f 75 70 20 3d 3e 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 | s().as.$group.=>.$dependencyCons |
19d80 | 74 72 61 69 6e 74 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 65 6e 64 65 6e 63 79 43 | traints).{.foreach.($dependencyC |
19da0 | 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 | onstraints.as.$dependencyConstra |
19dc0 | 69 6e 74 29 20 7b 0a 24 64 65 70 65 6e 64 65 6e 63 79 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 | int).{.$dependencyPackageName.=. |
19de0 | 24 74 68 69 73 2d 3e 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 28 | $this->buildComposerPackageName( |
19e00 | 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 43 68 61 6e 6e 65 | $dependencyConstraint->getChanne |
19e20 | 6c 4e 61 6d 65 28 29 2c 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e | lName(),.$dependencyConstraint-> |
19e40 | 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 29 3b 0a 24 73 75 67 67 65 73 74 73 5b 24 67 72 | getPackageName());.$suggests[$gr |
19e60 | 6f 75 70 2e 27 2d 27 2e 24 64 65 70 65 6e 64 65 6e 63 79 50 61 63 6b 61 67 65 4e 61 6d 65 5d 20 | oup.'-'.$dependencyPackageName]. |
19e80 | 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 43 6f 6e 73 | =.$dependencyConstraint->getCons |
19ea0 | 74 72 61 69 6e 74 28 29 3b 0a 7d 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 4d 65 | traint();.}.}..$package.=.new.Me |
19ec0 | 6d 6f 72 79 50 61 63 6b 61 67 65 28 24 63 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 6d 65 | moryPackage($composerPackageName |
19ee0 | 2c 20 24 6e 6f 72 6d 61 6c 69 7a 65 64 56 65 72 73 69 6f 6e 2c 20 24 76 65 72 73 69 6f 6e 29 3b | ,.$normalizedVersion,.$version); |
19f00 | 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 79 70 65 28 27 70 65 61 72 2d 6c 69 62 72 61 72 79 | .$package->setType('pear-library |
19f20 | 27 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 70 61 | ');.$package->setDescription($pa |
19f40 | 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 | ckageDefinition->getDescription( |
19f60 | 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 54 79 70 65 28 27 66 69 6c 65 27 | ));.$package->setDistType('file' |
19f80 | 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 55 72 6c 28 24 64 69 73 74 55 72 6c | );.$package->setDistUrl($distUrl |
19fa0 | 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 75 74 6f 6c 6f 61 64 28 61 72 72 61 79 28 27 | );.$package->setAutoload(array(' |
19fc0 | 63 6c 61 73 73 6d 61 70 27 20 3d 3e 20 61 72 72 61 79 28 27 27 29 29 29 3b 0a 24 70 61 63 6b 61 | classmap'.=>.array('')));.$packa |
19fe0 | 67 65 2d 3e 73 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 61 72 72 61 79 28 27 2f 27 29 29 3b | ge->setIncludePaths(array('/')); |
1a000 | 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 71 75 69 72 65 73 28 24 72 65 71 75 69 72 65 73 | .$package->setRequires($requires |
1a020 | 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 24 63 6f 6e 66 6c | );.$package->setConflicts($confl |
1a040 | 69 63 74 73 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 75 67 67 65 73 74 73 28 24 73 75 | icts);.$package->setSuggests($su |
1a060 | 67 67 65 73 74 73 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6c 61 63 65 73 28 24 | ggests);.$package->setReplaces($ |
1a080 | 72 65 70 6c 61 63 65 73 29 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b | replaces);.$result[].=.$package; |
1a0a0 | 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 | .}.}..return.$result;.}..private |
1a0c0 | 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 6f 6d 70 6f 73 65 72 50 61 63 6b 61 67 65 4e 61 | .function.buildComposerPackageNa |
1a0e0 | 6d 65 28 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b | me($channelName,.$packageName).{ |
1a100 | 0a 69 66 20 28 27 70 68 70 27 20 3d 3d 3d 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 29 20 7b 0a 72 | .if.('php'.===.$channelName).{.r |
1a120 | 65 74 75 72 6e 20 22 70 68 70 22 3b 0a 7d 0a 69 66 20 28 27 65 78 74 27 20 3d 3d 3d 20 24 63 68 | eturn."php";.}.if.('ext'.===.$ch |
1a140 | 61 6e 6e 65 6c 4e 61 6d 65 29 20 7b 0a 72 65 74 75 72 6e 20 22 65 78 74 2d 7b 24 70 61 63 6b 61 | annelName).{.return."ext-{$packa |
1a160 | 67 65 4e 61 6d 65 7d 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 70 65 61 72 2d 7b 24 63 68 61 6e | geName}";.}..return."pear-{$chan |
1a180 | 6e 65 6c 4e 61 6d 65 7d 2f 7b 24 70 61 63 6b 61 67 65 4e 61 6d 65 7d 22 3b 0a 7d 0a 7d 0a 3c 3f | nelName}/{$packageName}";.}.}.<? |
1a1a0 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 | php............namespace.Compose |
1a1c0 | 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 | r\Repository;..use.Composer\IO\I |
1a1e0 | 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b | OInterface;.use.Composer\Config; |
1a200 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 | .........class.RepositoryManager |
1a220 | 0a 7b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 69 | .{.private.$localRepository;.pri |
1a240 | 76 61 74 65 20 24 6c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 69 76 61 74 | vate.$localDevRepository;.privat |
1a260 | 65 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 | e.$repositories.=.array();.priva |
1a280 | 74 65 20 24 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b | te.$repositoryClasses.=.array(); |
1a2a0 | 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 0a | .private.$io;.private.$config;.. |
1a2c0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e | public.function.__construct(IOIn |
1a2e0 | 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 | terface.$io,.Config.$config).{.$ |
1a300 | 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 | this->io.=.$io;.$this->config.=. |
1a320 | 24 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | $config;.}..........public.funct |
1a340 | 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 | ion.findPackage($name,.$version) |
1a360 | 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 | .{.foreach.($this->repositories. |
1a380 | 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 3d | as.$repository).{.if.($package.= |
1a3a0 | 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c | .$repository->findPackage($name, |
1a3c0 | 20 24 76 65 72 73 69 6f 6e 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d | .$version)).{.return.$package;.} |
1a3e0 | 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 | .}.}..........public.function.fi |
1a400 | 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 70 | ndPackages($name,.$version).{.$p |
1a420 | 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 | ackages.=.array();..foreach.($th |
1a440 | 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 | is->repositories.as.$repository) |
1a460 | 20 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 70 61 63 6b | .{.$packages.=.array_merge($pack |
1a480 | 61 67 65 73 2c 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 | ages,.$repository->findPackages( |
1a4a0 | 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 | $name,.$version));.}..return.$pa |
1a4c0 | 63 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ckages;.}.......public.function. |
1a4e0 | 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 | addRepository(RepositoryInterfac |
1a500 | 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f | e.$repository).{.$this->reposito |
1a520 | 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | ries[].=.$repository;.}......... |
1a540 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 | .public.function.createRepositor |
1a560 | 79 28 24 74 79 70 65 2c 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 | y($type,.$config).{.if.(!isset($ |
1a580 | 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 5b 24 74 79 70 65 5d 29 29 | this->repositoryClasses[$type])) |
1a5a0 | 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 | .{.throw.new.\InvalidArgumentExc |
1a5c0 | 65 70 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 74 79 70 65 20 69 73 20 6e 6f 74 20 72 | eption('Repository.type.is.not.r |
1a5e0 | 65 67 69 73 74 65 72 65 64 3a 20 27 2e 24 74 79 70 65 29 3b 0a 7d 0a 0a 24 63 6c 61 73 73 20 3d | egistered:.'.$type);.}..$class.= |
1a600 | 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 5b 24 74 79 70 65 5d | .$this->repositoryClasses[$type] |
1a620 | 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 24 63 6c 61 73 73 28 24 63 6f 6e 66 69 67 2c 20 24 74 | ;..return.new.$class($config,.$t |
1a640 | 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | his->io,.$this->config);.}...... |
1a660 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 | ..public.function.setRepositoryC |
1a680 | 6c 61 73 73 28 24 74 79 70 65 2c 20 24 63 6c 61 73 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 | lass($type,.$class).{.$this->rep |
1a6a0 | 6f 73 69 74 6f 72 79 43 6c 61 73 73 65 73 5b 24 74 79 70 65 5d 20 3d 20 24 63 6c 61 73 73 3b 0a | ositoryClasses[$type].=.$class;. |
1a6c0 | 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 | }.......public.function.getRepos |
1a6e0 | 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 | itories().{.return.$this->reposi |
1a700 | 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | tories;.}.......public.function. |
1a720 | 73 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 | setLocalRepository(RepositoryInt |
1a740 | 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 | erface.$repository).{.$this->loc |
1a760 | 61 6c 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a | alRepository.=.$repository;.}... |
1a780 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 52 65 70 6f | ....public.function.getLocalRepo |
1a7a0 | 73 69 74 6f 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 61 6c 52 65 | sitory().{.return.$this->localRe |
1a7c0 | 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | pository;.}.......public.functio |
1a7e0 | 6e 20 73 65 74 4c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f | n.setLocalDevRepository(Reposito |
1a800 | 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 | ryInterface.$repository).{.$this |
1a820 | 2d 3e 6c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 72 65 70 6f 73 69 74 6f | ->localDevRepository.=.$reposito |
1a840 | 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c | ry;.}.......public.function.getL |
1a860 | 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 6f 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | ocalDevRepository().{.return.$th |
1a880 | 69 73 2d 3e 6c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | is->localDevRepository;.}....... |
1a8a0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f | public.function.getLocalReposito |
1a8c0 | 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 6c 6f 63 | ries().{.return.array($this->loc |
1a8e0 | 61 6c 52 65 70 6f 73 69 74 6f 72 79 2c 20 24 74 68 69 73 2d 3e 6c 6f 63 61 6c 44 65 76 52 65 70 | alRepository,.$this->localDevRep |
1a900 | 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e | ository);.}.}.<?php............n |
1a920 | 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 | amespace.Composer\Repository\Vcs |
1a940 | 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 | ;..use.Composer\Downloader\Trans |
1a960 | 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e | portException;.use.Composer\Json |
1a980 | 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 | \JsonFile;.use.Composer\Cache;.u |
1a9a0 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 | se.Composer\IO\IOInterface;.use. |
1a9c0 | 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a | Composer\Util\RemoteFilesystem;. |
1a9e0 | 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 48 75 62 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 | ....class.GitHubDriver.extends.V |
1aa00 | 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 61 63 68 65 3b 0a 70 72 6f | csDriver.{.protected.$cache;.pro |
1aa20 | 74 65 63 74 65 64 20 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 | tected.$owner;.protected.$reposi |
1aa40 | 74 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 | tory;.protected.$tags;.protected |
1aa60 | 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 | .$branches;.protected.$rootIdent |
1aa80 | 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 68 61 73 49 73 73 75 65 73 3b 0a 70 72 6f | ifier;.protected.$hasIssues;.pro |
1aaa0 | 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f | tected.$infoCache.=.array();.pro |
1aac0 | 74 65 63 74 65 64 20 24 69 73 50 72 69 76 61 74 65 20 3d 20 66 61 6c 73 65 3b 0a 0a 0a 0a 0a 0a | tected.$isPrivate.=.false;...... |
1aae0 | 0a 70 72 6f 74 65 63 74 65 64 20 24 67 69 74 44 72 69 76 65 72 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 | .protected.$gitDriver;.....publi |
1ab00 | 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 72 65 67 5f 6d | c.function.initialize().{.preg_m |
1ab20 | 61 74 63 68 28 27 23 5e 28 3f 3a 28 3f 3a 68 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 67 69 74 68 | atch('#^(?:(?:https?|git)://gith |
1ab40 | 75 62 5c 2e 63 6f 6d 2f 7c 67 69 74 40 67 69 74 68 75 62 5c 2e 63 6f 6d 3a 29 28 5b 5e 2f 5d 2b | ub\.com/|git@github\.com:)([^/]+ |
1ab60 | 29 2f 28 2e 2b 3f 29 28 3f 3a 5c 2e 67 69 74 29 3f 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c | )/(.+?)(?:\.git)?$#',.$this->url |
1ab80 | 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 68 | ,.$match);.$this->owner.=.$match |
1aba0 | 5b 31 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 68 5b | [1];.$this->repository.=.$match[ |
1abc0 | 32 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 27 67 69 74 68 75 62 2e 63 | 2];.$this->originUrl.=.'github.c |
1abe0 | 6f 6d 27 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e 65 77 20 43 61 63 68 65 28 24 74 | om';.$this->cache.=.new.Cache($t |
1ac00 | 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d | his->io,.$this->config->get('hom |
1ac20 | 65 27 29 2e 27 2f 63 61 63 68 65 2e 67 69 74 68 75 62 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 | e').'/cache.github/'.$this->owne |
1ac40 | 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 0a 24 74 68 69 73 | r.'/'.$this->repository);..$this |
1ac60 | 2d 3e 66 65 74 63 68 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 | ->fetchRootIdentifier();.}.....p |
1ac80 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 | ublic.function.getRootIdentifier |
1aca0 | 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 | ().{.if.($this->gitDriver).{.ret |
1acc0 | 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 65 | urn.$this->gitDriver->getRootIde |
1ace0 | 6e 74 69 66 69 65 72 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 | ntifier();.}..return.$this->root |
1ad00 | 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | Identifier;.}.....public.functio |
1ad20 | 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 | n.getUrl().{.if.($this->gitDrive |
1ad40 | 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 | r).{.return.$this->gitDriver->ge |
1ad60 | 74 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a | tUrl();.}..return.$this->url;.}. |
1ad80 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 | ....public.function.getSource($i |
1ada0 | 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 | dentifier).{.if.($this->gitDrive |
1adc0 | 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 | r).{.return.$this->gitDriver->ge |
1ade0 | 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 24 6c 61 62 65 6c 20 3d | tSource($identifier);.}.$label.= |
1ae00 | 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 | .array_search($identifier,.$this |
1ae20 | 2d 3e 67 65 74 54 61 67 73 28 29 29 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 69 66 20 | ->getTags()).?:.$identifier;.if. |
1ae40 | 28 24 74 68 69 73 2d 3e 69 73 50 72 69 76 61 74 65 29 20 7b 0a 0a 20 0a 20 24 75 72 6c 20 3d 20 | ($this->isPrivate).{.....$url.=. |
1ae60 | 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 3b 0a 7d 20 65 6c 73 65 20 | $this->generateSshUrl();.}.else. |
1ae80 | 7b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 3b 0a 7d 0a 0a 72 65 74 | {.$url.=.$this->getUrl();.}..ret |
1aea0 | 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 67 69 74 27 2c 20 27 75 72 6c 27 | urn.array('type'.=>.'git',.'url' |
1aec0 | 20 3d 3e 20 24 75 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 29 | .=>.$url,.'reference'.=>.$label) |
1aee0 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 | ;.}.....public.function.getDist( |
1af00 | 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 | $identifier).{.if.($this->gitDri |
1af20 | 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e | ver).{.return.$this->gitDriver-> |
1af40 | 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 24 6c 61 62 65 6c 20 3d | getDist($identifier);.}.$label.= |
1af60 | 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 | .array_search($identifier,.$this |
1af80 | 2d 3e 67 65 74 54 61 67 73 28 29 29 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 75 72 | ->getTags()).?:.$identifier;.$ur |
1afa0 | 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 27 2e 24 74 68 69 73 2d | l.=.'https://github.com/'.$this- |
1afc0 | 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 7a | >owner.'/'.$this->repository.'/z |
1afe0 | 69 70 62 61 6c 6c 2f 27 2e 24 6c 61 62 65 6c 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 | ipball/'.$label;..return.array(' |
1b000 | 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 75 72 6c 2c 20 27 | type'.=>.'zip',.'url'.=>.$url,.' |
1b020 | 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 2c 20 27 73 68 61 73 75 6d 27 20 3d | reference'.=>.$label,.'shasum'.= |
1b040 | 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | >.'');.}.....public.function.get |
1b060 | 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 | ComposerInformation($identifier) |
1b080 | 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 75 72 | .{.if.($this->gitDriver).{.retur |
1b0a0 | 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 | n.$this->gitDriver->getComposerI |
1b0c0 | 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 | nformation($identifier);.}..if.( |
1b0e0 | 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 | preg_match('{[a-f0-9]{40}}i',.$i |
1b100 | 64 65 6e 74 69 66 69 65 72 29 20 26 26 20 24 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 | dentifier).&&.$res.=.$this->cach |
1b120 | 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 | e->read($identifier)).{.$this->i |
1b140 | 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 6c 65 | nfoCache[$identifier].=.JsonFile |
1b160 | 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 | ::parseJson($res);.}..if.(!isset |
1b180 | 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 | ($this->infoCache[$identifier])) |
1b1a0 | 20 7b 0a 74 72 79 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 27 68 74 74 70 73 3a 2f 2f 72 61 | .{.try.{.$resource.=.'https://ra |
1b1c0 | 77 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e | w.github.com/'.$this->owner.'/'. |
1b1e0 | 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 | $this->repository.'/'.$identifie |
1b200 | 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 | r.'/composer.json';.$composer.=. |
1b220 | 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 3b 0a 7d | $this->getContents($resource);.} |
1b240 | 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b | .catch.(TransportException.$e).{ |
1b260 | 0a 69 66 20 28 34 30 34 20 21 3d 3d 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 29 20 7b 0a 74 68 | .if.(404.!==.$e->getCode()).{.th |
1b280 | 72 6f 77 20 24 65 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a | row.$e;.}..$composer.=.false;.}. |
1b2a0 | 0a 69 66 20 28 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 | .if.($composer).{.$composer.=.Js |
1b2c0 | 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 72 65 | onFile::parseJson($composer,.$re |
1b2e0 | 73 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 | source);..if.(!isset($composer[' |
1b300 | 74 69 6d 65 27 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 27 68 74 74 70 73 3a 2f 2f | time'])).{.$resource.=.'https:// |
1b320 | 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 | api.github.com/repos/'.$this->ow |
1b340 | 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 63 6f 6d 6d | ner.'/'.$this->repository.'/comm |
1b360 | 69 74 73 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 63 6f 6d 6d 69 74 20 3d 20 4a 73 6f | its/'.$identifier;.$commit.=.Jso |
1b380 | 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 | nFile::parseJson($this->getConte |
1b3a0 | 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 63 6f 6d | nts($resource),.$resource);.$com |
1b3c0 | 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 63 6f 6d 6d 69 74 5b 27 63 6f 6d 6d 69 74 27 | poser['time'].=.$commit['commit' |
1b3e0 | 5d 5b 27 63 6f 6d 6d 69 74 74 65 72 27 5d 5b 27 64 61 74 65 27 5d 3b 0a 7d 0a 69 66 20 28 21 69 | ]['committer']['date'];.}.if.(!i |
1b400 | 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 73 6f 75 72 63 | sset($composer['support']['sourc |
1b420 | 65 27 5d 29 29 20 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 | e'])).{.$label.=.array_search($i |
1b440 | 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 29 20 3f 3a 20 | dentifier,.$this->getTags()).?:. |
1b460 | 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d | array_search($identifier,.$this- |
1b480 | 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 29 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a | >getBranches()).?:.$identifier;. |
1b4a0 | 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 73 6f 75 72 63 65 27 5d 20 3d | $composer['support']['source'].= |
1b4c0 | 20 73 70 72 69 6e 74 66 28 27 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 25 73 2f | .sprintf('https://github.com/%s/ |
1b4e0 | 25 73 2f 74 72 65 65 2f 25 73 27 2c 20 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2c 20 24 74 68 69 73 | %s/tree/%s',.$this->owner,.$this |
1b500 | 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2c 20 24 6c 61 62 65 6c 29 3b 0a 7d 0a 69 66 20 28 21 69 73 | ->repository,.$label);.}.if.(!is |
1b520 | 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 73 73 75 65 73 | set($composer['support']['issues |
1b540 | 27 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 68 61 73 49 73 73 75 65 73 29 20 7b 0a 24 63 6f 6d 70 | ']).&&.$this->hasIssues).{.$comp |
1b560 | 6f 73 65 72 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 73 73 75 65 73 27 5d 20 3d 20 73 70 72 69 | oser['support']['issues'].=.spri |
1b580 | 6e 74 66 28 27 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 25 73 2f 25 73 2f 69 73 | ntf('https://github.com/%s/%s/is |
1b5a0 | 73 75 65 73 27 2c 20 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f | sues',.$this->owner,.$this->repo |
1b5c0 | 73 69 74 6f 72 79 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5b | sitory);.}.}..if.(preg_match('{[ |
1b5e0 | 61 2d 66 30 2d 39 5d 7b 34 30 7d 7d 69 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a | a-f0-9]{40}}i',.$identifier)).{. |
1b600 | 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 64 65 6e 74 69 66 69 65 72 2c | $this->cache->write($identifier, |
1b620 | 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 7d 0a 0a 24 74 68 | .json_encode($composer));.}..$th |
1b640 | 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f | is->infoCache[$identifier].=.$co |
1b660 | 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 | mposer;.}..return.$this->infoCac |
1b680 | 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | he[$identifier];.}.....public.fu |
1b6a0 | 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 69 | nction.getTags().{.if.($this->gi |
1b6c0 | 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 | tDriver).{.return.$this->gitDriv |
1b6e0 | 65 72 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 | er->getTags();.}.if.(null.===.$t |
1b700 | 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 27 68 74 74 70 73 3a | his->tags).{.$resource.=.'https: |
1b720 | 2f 2f 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e | //api.github.com/repos/'.$this-> |
1b740 | 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 | owner.'/'.$this->repository.'/ta |
1b760 | 67 73 27 3b 0a 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 | gs';.$tagsData.=.JsonFile::parse |
1b780 | 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 | Json($this->getContents($resourc |
1b7a0 | 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 | e),.$resource);.$this->tags.=.ar |
1b7c0 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 61 74 61 20 61 73 20 24 74 61 | ray();.foreach.($tagsData.as.$ta |
1b7e0 | 67 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 24 74 61 67 5b 27 6e 61 6d 65 27 5d 5d 20 3d | g).{.$this->tags[$tag['name']].= |
1b800 | 20 24 74 61 67 5b 27 63 6f 6d 6d 69 74 27 5d 5b 27 73 68 61 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 | .$tag['commit']['sha'];.}.}..ret |
1b820 | 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | urn.$this->tags;.}.....public.fu |
1b840 | 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 | nction.getBranches().{.if.($this |
1b860 | 2d 3e 67 69 74 44 72 69 76 65 72 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 69 74 | ->gitDriver).{.return.$this->git |
1b880 | 44 72 69 76 65 72 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c | Driver->getBranches();.}.if.(nul |
1b8a0 | 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 72 65 73 6f 75 72 | l.===.$this->branches).{.$resour |
1b8c0 | 63 65 20 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 | ce.=.'https://api.github.com/rep |
1b8e0 | 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 | os/'.$this->owner.'/'.$this->rep |
1b900 | 6f 73 69 74 6f 72 79 2e 27 2f 67 69 74 2f 72 65 66 73 2f 68 65 61 64 73 27 3b 0a 24 62 72 61 6e | ository.'/git/refs/heads';.$bran |
1b920 | 63 68 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 | chData.=.JsonFile::parseJson($th |
1b940 | 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 | is->getContents($resource),.$res |
1b960 | 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 | ource);.$this->branches.=.array( |
1b980 | 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 44 61 74 61 20 61 73 20 24 62 72 61 6e | );.foreach.($branchData.as.$bran |
1b9a0 | 63 68 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 62 72 61 6e 63 68 5b 27 72 65 | ch).{.$name.=.substr($branch['re |
1b9c0 | 66 27 5d 2c 20 31 31 29 3b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 6e 61 6d 65 5d | f'],.11);.$this->branches[$name] |
1b9e0 | 20 3d 20 24 62 72 61 6e 63 68 5b 27 6f 62 6a 65 63 74 27 5d 5b 27 73 68 61 27 5d 3b 0a 7d 0a 7d | .=.$branch['object']['sha'];.}.} |
1ba00 | 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a | ..return.$this->branches;.}..... |
1ba20 | 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 | public.static.function.supports( |
1ba40 | 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 | IOInterface.$io,.$url,.$deep.=.f |
1ba60 | 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 28 28 3f 3a 68 | alse).{.if.(!preg_match('#^((?:h |
1ba80 | 74 74 70 73 3f 7c 67 69 74 29 3a 2f 2f 67 69 74 68 75 62 5c 2e 63 6f 6d 2f 7c 67 69 74 40 67 69 | ttps?|git)://github\.com/|git@gi |
1baa0 | 74 68 75 62 5c 2e 63 6f 6d 3a 29 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 28 3f 3a 5c 2e 67 69 74 | thub\.com:)([^/]+)/(.+?)(?:\.git |
1bac0 | 29 3f 24 23 27 2c 20 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a | )?$#',.$url)).{.return.false;.}. |
1bae0 | 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 | .if.(!extension_loaded('openssl' |
1bb00 | 29 29 20 7b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f | )).{.if.($io->isVerbose()).{.$io |
1bb20 | 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 69 6e 67 20 47 69 74 48 75 62 20 64 72 69 76 65 72 20 | ->write('Skipping.GitHub.driver. |
1bb40 | 66 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 65 20 74 68 65 20 4f 70 65 6e 53 53 4c | for.'.$url.'.because.the.OpenSSL |
1bb60 | 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 29 3b 0a 7d 0a | .PHP.extension.is.missing.');.}. |
1bb80 | 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d | .return.false;.}..return.true;.} |
1bba0 | 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 | .......protected.function.genera |
1bbc0 | 74 65 53 73 68 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 67 69 74 40 67 69 74 68 75 62 2e | teSshUrl().{.return.'git@github. |
1bbe0 | 63 6f 6d 3a 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 | com:'.$this->owner.'/'.$this->re |
1bc00 | 70 6f 73 69 74 6f 72 79 2e 27 2e 67 69 74 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | pository.'.git';.}.......protect |
1bc20 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 65 74 63 68 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 | ed.function.fetchRootIdentifier( |
1bc40 | 29 0a 7b 0a 24 72 65 70 6f 44 61 74 61 55 72 6c 20 3d 20 27 68 74 74 70 73 3a 2f 2f 61 70 69 2e | ).{.$repoDataUrl.=.'https://api. |
1bc60 | 67 69 74 68 75 62 2e 63 6f 6d 2f 72 65 70 6f 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e | github.com/repos/'.$this->owner. |
1bc80 | 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b 0a 24 61 74 74 65 6d 70 74 43 | '/'.$this->repository;.$attemptC |
1bca0 | 6f 75 6e 74 65 72 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 | ounter.=.0;.while.(null.===.$thi |
1bcc0 | 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 69 66 20 28 35 20 3d 3d 20 24 61 | s->rootIdentifier).{.if.(5.==.$a |
1bce0 | 74 74 65 6d 70 74 43 6f 75 6e 74 65 72 2b 2b 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 | ttemptCounter++).{.throw.new.\Ru |
1bd00 | 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 45 69 74 68 65 72 20 79 6f 75 20 68 61 76 65 20 | ntimeException("Either.you.have. |
1bd20 | 65 6e 74 65 72 65 64 20 69 6e 76 61 6c 69 64 20 63 72 65 64 65 6e 74 69 61 6c 73 20 6f 72 20 74 | entered.invalid.credentials.or.t |
1bd40 | 68 69 73 20 47 69 74 48 75 62 20 72 65 70 6f 73 69 74 6f 72 79 20 64 6f 65 73 20 6e 6f 74 20 65 | his.GitHub.repository.does.not.e |
1bd60 | 78 69 73 74 73 20 28 34 30 34 29 22 29 3b 0a 7d 0a 74 72 79 20 7b 0a 24 72 65 70 6f 44 61 74 61 | xists.(404)");.}.try.{.$repoData |
1bd80 | 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 | .=.JsonFile::parseJson($this->ge |
1bda0 | 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 70 6f 44 61 74 61 55 72 6c 29 2c 20 24 72 65 70 6f 44 61 | tContents($repoDataUrl),.$repoDa |
1bdc0 | 74 61 55 72 6c 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 44 61 74 61 5b 27 64 65 66 | taUrl);.if.(isset($repoData['def |
1bde0 | 61 75 6c 74 5f 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 | ault_branch'])).{.$this->rootIde |
1be00 | 6e 74 69 66 69 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 64 65 66 61 75 6c 74 5f 62 72 61 | ntifier.=.$repoData['default_bra |
1be20 | 6e 63 68 27 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 72 65 70 6f 44 61 74 61 | nch'];.}.elseif.(isset($repoData |
1be40 | 5b 27 6d 61 73 74 65 72 5f 62 72 61 6e 63 68 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f | ['master_branch'])).{.$this->roo |
1be60 | 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 73 74 65 72 5f | tIdentifier.=.$repoData['master_ |
1be80 | 62 72 61 6e 63 68 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 | branch'];.}.else.{.$this->rootId |
1bea0 | 65 6e 74 69 66 69 65 72 20 3d 20 27 6d 61 73 74 65 72 27 3b 0a 7d 0a 24 74 68 69 73 2d 3e 68 61 | entifier.=.'master';.}.$this->ha |
1bec0 | 73 49 73 73 75 65 73 20 3d 20 21 65 6d 70 74 79 28 24 72 65 70 6f 44 61 74 61 5b 27 68 61 73 5f | sIssues.=.!empty($repoData['has_ |
1bee0 | 69 73 73 75 65 73 27 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 | issues']);.}.catch.(TransportExc |
1bf00 | 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 65 2d 3e 67 65 74 43 6f 64 65 | eption.$e).{.switch.($e->getCode |
1bf20 | 28 29 29 20 7b 0a 63 61 73 65 20 34 30 31 3a 0a 63 61 73 65 20 34 30 34 3a 0a 24 74 68 69 73 2d | ()).{.case.401:.case.404:.$this- |
1bf40 | 3e 69 73 50 72 69 76 61 74 65 20 3d 20 74 72 75 65 3b 0a 0a 74 72 79 20 7b 0a 0a 20 0a 20 0a 20 | >isPrivate.=.true;..try.{....... |
1bf60 | 0a 20 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e 65 77 20 47 69 74 44 72 69 76 | ..$this->gitDriver.=.new.GitDriv |
1bf80 | 65 72 28 0a 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 2c 0a 24 74 68 | er(.$this->generateSshUrl(),.$th |
1bfa0 | 69 73 2d 3e 69 6f 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 0a 24 74 68 69 73 2d 3e 70 72 | is->io,.$this->config,.$this->pr |
1bfc0 | 6f 63 65 73 73 2c 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 0a 29 | ocess,.$this->remoteFilesystem.) |
1bfe0 | 3b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 | ;.$this->gitDriver->initialize() |
1c000 | 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 | ;..return;.}.catch.(\RuntimeExce |
1c020 | 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 67 69 74 44 72 69 76 65 72 20 3d 20 6e | ption.$e).{.$this->gitDriver.=.n |
1c040 | 75 6c 6c 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 | ull;.if.(!$this->io->isInteracti |
1c060 | 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 | ve()).{.$this->io->write('<error |
1c080 | 3e 46 61 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 74 68 65 20 27 2e 24 74 68 69 73 2d 3e 67 65 | >Failed.to.clone.the.'.$this->ge |
1c0a0 | 6e 65 72 61 74 65 53 73 68 55 72 6c 28 29 2e 27 20 72 65 70 6f 73 69 74 6f 72 79 2c 20 74 72 79 | nerateSshUrl().'.repository,.try |
1c0c0 | 20 72 75 6e 6e 69 6e 67 20 69 6e 20 69 6e 74 65 72 61 63 74 69 76 65 20 6d 6f 64 65 20 73 6f 20 | .running.in.interactive.mode.so. |
1c0e0 | 74 68 61 74 20 79 6f 75 20 63 61 6e 20 65 6e 74 65 72 20 79 6f 75 72 20 75 73 65 72 6e 61 6d 65 | that.you.can.enter.your.username |
1c100 | 20 61 6e 64 20 70 61 73 73 77 6f 72 64 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 74 68 72 6f 77 20 24 | .and.password</error>');.throw.$ |
1c120 | 65 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 41 75 74 68 65 6e 74 | e;.}.}.$this->io->write('Authent |
1c140 | 69 63 61 74 69 6f 6e 20 72 65 71 75 69 72 65 64 20 28 3c 69 6e 66 6f 3e 27 2e 24 74 68 69 73 2d | ication.required.(<info>'.$this- |
1c160 | 3e 75 72 6c 2e 27 3c 2f 69 6e 66 6f 3e 29 3a 27 29 3b 0a 24 75 73 65 72 6e 61 6d 65 20 3d 20 24 | >url.'</info>):');.$username.=.$ |
1c180 | 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 27 55 73 65 72 6e 61 6d 65 3a 20 27 29 3b 0a 24 70 61 | this->io->ask('Username:.');.$pa |
1c1a0 | 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e | ssword.=.$this->io->askAndHideAn |
1c1c0 | 73 77 65 72 28 27 50 61 73 73 77 6f 72 64 3a 20 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 | swer('Password:.');.$this->io->s |
1c1e0 | 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c | etAuthorization($this->originUrl |
1c200 | 2c 20 24 75 73 65 72 6e 61 6d 65 2c 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 62 72 65 61 6b 3b 0a | ,.$username,.$password);.break;. |
1c220 | 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 24 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d | .default:.throw.$e;.break;.}.}.} |
1c240 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | .}.}.<?php............namespace. |
1c260 | 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f | Composer\Repository\Vcs;..use.Co |
1c280 | 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | mposer\Json\JsonFile;.use.Compos |
1c2a0 | 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 | er\IO\IOInterface;.....class.Git |
1c2c0 | 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 | BitbucketDriver.extends.VcsDrive |
1c2e0 | 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a | r.implements.VcsDriverInterface. |
1c300 | 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 | {.protected.$owner;.protected.$r |
1c320 | 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 | epository;.protected.$tags;.prot |
1c340 | 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 | ected.$branches;.protected.$root |
1c360 | 49 64 65 6e 74 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 | Identifier;.protected.$infoCache |
1c380 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | .=.array();.....public.function. |
1c3a0 | 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 | initialize().{.preg_match('#^htt |
1c3c0 | 70 73 3a 2f 2f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f | ps://bitbucket\.org/([^/]+)/(.+? |
1c3e0 | 29 5c 2e 67 69 74 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 3b 0a | )\.git$#',.$this->url,.$match);. |
1c400 | 24 74 68 69 73 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 68 69 73 2d | $this->owner.=.$match[1];.$this- |
1c420 | 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 74 68 69 73 2d 3e | >repository.=.$match[2];.$this-> |
1c440 | 6f 72 69 67 69 6e 55 72 6c 20 3d 20 27 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 27 3b 0a 7d 0a 0a | originUrl.=.'bitbucket.org';.}.. |
1c460 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 | ...public.function.getRootIdenti |
1c480 | 66 69 65 72 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f | fier().{.if.(null.===.$this->roo |
1c4a0 | 74 49 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 | tIdentifier).{.$resource.=.$this |
1c4c0 | 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 | ->getScheme()...'://api.bitbucke |
1c4e0 | 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e | t.org/1.0/repositories/'.$this-> |
1c500 | 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 3b 0a 24 72 65 | owner.'/'.$this->repository;.$re |
1c520 | 70 6f 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 | poData.=.JsonFile::parseJson($th |
1c540 | 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 | is->getContents($resource),.$res |
1c560 | 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 | ource);.$this->rootIdentifier.=. |
1c580 | 21 65 6d 70 74 79 28 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e 63 68 27 5d 29 | !empty($repoData['main_branch']) |
1c5a0 | 20 3f 20 24 72 65 70 6f 44 61 74 61 5b 27 6d 61 69 6e 5f 62 72 61 6e 63 68 27 5d 20 3a 20 27 6d | .?.$repoData['main_branch'].:.'m |
1c5c0 | 61 73 74 65 72 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 | aster';.}..return.$this->rootIde |
1c5e0 | 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | ntifier;.}.....public.function.g |
1c600 | 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a | etUrl().{.return.$this->url;.}.. |
1c620 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 | ...public.function.getSource($id |
1c640 | 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 | entifier).{.$label.=.array_searc |
1c660 | 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 29 | h($identifier,.$this->getTags()) |
1c680 | 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 | .?:.$identifier;..return.array(' |
1c6a0 | 74 79 70 65 27 20 3d 3e 20 27 67 69 74 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 2d 3e | type'.=>.'git',.'url'.=>.$this-> |
1c6c0 | 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 29 | getUrl(),.'reference'.=>.$label) |
1c6e0 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 | ;.}.....public.function.getDist( |
1c700 | 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 | $identifier).{.$label.=.array_se |
1c720 | 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 | arch($identifier,.$this->getTags |
1c740 | 28 29 29 20 3f 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 | ()).?:.$identifier;.$url.=.$this |
1c760 | 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 | ->getScheme()...'://bitbucket.or |
1c780 | 67 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f | g/'.$this->owner.'/'.$this->repo |
1c7a0 | 73 69 74 6f 72 79 2e 27 2f 67 65 74 2f 27 2e 24 6c 61 62 65 6c 2e 27 2e 7a 69 70 27 3b 0a 0a 72 | sitory.'/get/'.$label.'.zip';..r |
1c7c0 | 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 | eturn.array('type'.=>.'zip',.'ur |
1c7e0 | 6c 27 20 3d 3e 20 24 75 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 | l'.=>.$url,.'reference'.=>.$labe |
1c800 | 6c 2c 20 27 73 68 61 73 75 6d 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | l,.'shasum'.=>.'');.}.....public |
1c820 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e | .function.getComposerInformation |
1c840 | 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 | ($identifier).{.if.(!isset($this |
1c860 | 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 72 65 | ->infoCache[$identifier])).{.$re |
1c880 | 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a | source.=.$this->getScheme()...': |
1c8a0 | 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 | //bitbucket.org/'.$this->owner.' |
1c8c0 | 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 72 61 77 2f 27 2e 24 69 64 | /'.$this->repository.'/raw/'.$id |
1c8e0 | 65 6e 74 69 66 69 65 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 63 6f 6d 70 | entifier.'/composer.json';.$comp |
1c900 | 6f 73 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 | oser.=.$this->getContents($resou |
1c920 | 72 63 65 29 3b 0a 69 66 20 28 21 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 6e 3b 0a | rce);.if.(!$composer).{.return;. |
1c940 | 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 | }..$composer.=.JsonFile::parseJs |
1c960 | 6f 6e 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 21 | on($composer,.$resource);..if.(! |
1c980 | 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 72 65 73 | isset($composer['time'])).{.$res |
1c9a0 | 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f | ource.=.$this->getScheme()...':/ |
1c9c0 | 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 | /api.bitbucket.org/1.0/repositor |
1c9e0 | 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 | ies/'.$this->owner.'/'.$this->re |
1ca00 | 70 6f 73 69 74 6f 72 79 2e 27 2f 63 68 61 6e 67 65 73 65 74 73 2f 27 2e 24 69 64 65 6e 74 69 66 | pository.'/changesets/'.$identif |
1ca20 | 69 65 72 3b 0a 24 63 68 61 6e 67 65 73 65 74 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 | ier;.$changeset.=.JsonFile::pars |
1ca40 | 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 | eJson($this->getContents($resour |
1ca60 | 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 | ce),.$resource);.$composer['time |
1ca80 | 27 5d 20 3d 20 24 63 68 61 6e 67 65 73 65 74 5b 27 74 69 6d 65 73 74 61 6d 70 27 5d 3b 0a 7d 0a | '].=.$changeset['timestamp'];.}. |
1caa0 | 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 | $this->infoCache[$identifier].=. |
1cac0 | 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f | $composer;.}..return.$this->info |
1cae0 | 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | Cache[$identifier];.}.....public |
1cb00 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d | .function.getTags().{.if.(null.= |
1cb20 | 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 | ==.$this->tags).{.$resource.=.$t |
1cb40 | 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 | his->getScheme()...'://api.bitbu |
1cb60 | 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 | cket.org/1.0/repositories/'.$thi |
1cb80 | 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 | s->owner.'/'.$this->repository.' |
1cba0 | 2f 74 61 67 73 27 3b 0a 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 | /tags';.$tagsData.=.JsonFile::pa |
1cbc0 | 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f | rseJson($this->getContents($reso |
1cbe0 | 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d | urce),.$resource);.$this->tags.= |
1cc00 | 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 61 74 61 20 61 73 20 | .array();.foreach.($tagsData.as. |
1cc20 | 24 74 61 67 20 3d 3e 20 24 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 24 74 61 | $tag.=>.$data).{.$this->tags[$ta |
1cc40 | 67 5d 20 3d 20 24 64 61 74 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 | g].=.$data['raw_node'];.}.}..ret |
1cc60 | 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | urn.$this->tags;.}.....public.fu |
1cc80 | 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 | nction.getBranches().{.if.(null. |
1cca0 | 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 | ===.$this->branches).{.$resource |
1ccc0 | 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e | .=.$this->getScheme()...'://api. |
1cce0 | 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 | bitbucket.org/1.0/repositories/' |
1cd00 | 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 | .$this->owner.'/'.$this->reposit |
1cd20 | 6f 72 79 2e 27 2f 62 72 61 6e 63 68 65 73 27 3b 0a 24 62 72 61 6e 63 68 44 61 74 61 20 3d 20 4a | ory.'/branches';.$branchData.=.J |
1cd40 | 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e | sonFile::parseJson($this->getCon |
1cd60 | 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 | tents($resource),.$resource);.$t |
1cd80 | 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 | his->branches.=.array();.foreach |
1cda0 | 20 28 24 62 72 61 6e 63 68 44 61 74 61 20 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 64 61 74 | .($branchData.as.$branch.=>.$dat |
1cdc0 | 61 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 62 72 61 6e 63 68 5d 20 3d 20 | a).{.$this->branches[$branch].=. |
1cde0 | 24 64 61 74 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | $data['raw_node'];.}.}..return.$ |
1ce00 | 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 | this->branches;.}.....public.sta |
1ce20 | 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 | tic.function.supports(IOInterfac |
1ce40 | 65 20 24 69 6f 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 | e.$io,.$url,.$deep.=.false).{.if |
1ce60 | 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3a 2f 2f 62 69 74 62 75 63 6b | .(!preg_match('#^https://bitbuck |
1ce80 | 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 2e 2b 3f 29 5c 2e 67 69 74 24 23 27 2c 20 24 | et\.org/([^/]+)/(.+?)\.git$#',.$ |
1cea0 | 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 78 | url)).{.return.false;.}..if.(!ex |
1cec0 | 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 69 66 20 | tension_loaded('openssl')).{.if. |
1cee0 | 28 24 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 | ($io->isVerbose()).{.$io->write( |
1cf00 | 27 53 6b 69 70 70 69 6e 67 20 42 69 74 62 75 63 6b 65 74 20 67 69 74 20 64 72 69 76 65 72 20 66 | 'Skipping.Bitbucket.git.driver.f |
1cf20 | 6f 72 20 27 2e 24 75 72 6c 2e 27 20 62 65 63 61 75 73 65 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 | or.'.$url.'.because.the.OpenSSL. |
1cf40 | 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 29 3b 0a 7d 0a 0a | PHP.extension.is.missing.');.}.. |
1cf60 | 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a | return.false;.}..return.true;.}. |
1cf80 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d | }.<?php............namespace.Com |
1cfa0 | 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f | poser\Repository\Vcs;..use.Compo |
1cfc0 | 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | ser\Json\JsonFile;.use.Composer\ |
1cfe0 | 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | Util\ProcessExecutor;.use.Compos |
1d000 | 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | er\Util\Filesystem;.use.Composer |
1d020 | 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 69 74 44 72 | \IO\IOInterface;.....class.GitDr |
1d040 | 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 | iver.extends.VcsDriver.{.protect |
1d060 | 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 | ed.$tags;.protected.$branches;.p |
1d080 | 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 | rotected.$rootIdentifier;.protec |
1d0a0 | 74 65 64 20 24 72 65 70 6f 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 | ted.$repoDir;.protected.$infoCac |
1d0c0 | 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | he.=.array();.....public.functio |
1d0e0 | 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 69 66 20 28 73 74 61 74 69 63 3a 3a 69 73 4c | n.initialize().{.if.(static::isL |
1d100 | 6f 63 61 6c 55 72 6c 28 24 74 68 69 73 2d 3e 75 72 6c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 | ocalUrl($this->url)).{.$this->re |
1d120 | 70 6f 44 69 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 66 69 6c 65 3a 2f 2f 27 2c 20 27 | poDir.=.str_replace('file://',.' |
1d140 | 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e | ',.$this->url);.}.else.{.$this-> |
1d160 | 72 65 70 6f 44 69 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f | repoDir.=.$this->config->get('ho |
1d180 | 6d 65 27 29 20 2e 20 27 2f 63 61 63 68 65 2e 67 69 74 2f 27 20 2e 20 70 72 65 67 5f 72 65 70 6c | me')...'/cache.git/'...preg_repl |
1d1a0 | 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d | ace('{[^a-z0-9.]}i',.'-',.$this- |
1d1c0 | 3e 75 72 6c 29 20 2e 20 27 2f 27 3b 0a 0a 0a 20 69 66 20 28 69 73 5f 64 69 72 28 24 74 68 69 73 | >url)...'/';....if.(is_dir($this |
1d1e0 | 2d 3e 72 65 70 6f 44 69 72 29 20 26 26 20 30 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 | ->repoDir).&&.0.===.$this->proce |
1d200 | 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 72 65 6d 6f 74 65 27 2c 20 24 6f 75 74 70 75 | ss->execute('git.remote',.$outpu |
1d220 | 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 20 7b 0a 69 66 20 28 30 20 21 3d 3d 20 | t,.$this->repoDir)).{.if.(0.!==. |
1d240 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 72 65 6d | $this->process->execute('git.rem |
1d260 | 6f 74 65 20 75 70 64 61 74 65 20 2d 2d 70 72 75 6e 65 20 6f 72 69 67 69 6e 27 2c 20 24 6f 75 74 | ote.update.--prune.origin',.$out |
1d280 | 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 | put,.$this->repoDir)).{.$this->i |
1d2a0 | 6f 2d 3e 77 72 69 74 65 28 27 3c 65 72 72 6f 72 3e 46 61 69 6c 65 64 20 74 6f 20 75 70 64 61 74 | o->write('<error>Failed.to.updat |
1d2c0 | 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d | e.'.$this->url.',.package.inform |
1d2e0 | 61 74 69 6f 6e 20 66 72 6f 6d 20 74 68 69 73 20 72 65 70 6f 73 69 74 6f 72 79 20 6d 61 79 20 62 | ation.from.this.repository.may.b |
1d300 | 65 20 6f 75 74 64 61 74 65 64 20 28 27 2e 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 | e.outdated.('.$this->process->ge |
1d320 | 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2e 27 29 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a 7d | tErrorOutput().')</error>');.}.} |
1d340 | 20 65 6c 73 65 20 7b 0a 0a 20 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 | .else.{...$fs.=.new.Filesystem() |
1d360 | 3b 0a 24 66 73 2d 3e 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 72 65 | ;.$fs->removeDirectory($this->re |
1d380 | 70 6f 44 69 72 29 3b 0a 0a 0a 20 70 75 74 65 6e 76 28 27 47 49 54 5f 41 53 4b 50 41 53 53 3d 65 | poDir);....putenv('GIT_ASKPASS=e |
1d3a0 | 63 68 6f 27 29 3b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 73 70 72 69 6e 74 66 28 27 67 69 74 20 63 | cho');.$command.=.sprintf('git.c |
1d3c0 | 6c 6f 6e 65 20 2d 2d 6d 69 72 72 6f 72 20 25 73 20 25 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c | lone.--mirror.%s.%s',.escapeshel |
1d3e0 | 6c 61 72 67 28 24 74 68 69 73 2d 3e 75 72 6c 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 | larg($this->url),.escapeshellarg |
1d400 | 28 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 29 3b 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 | ($this->repoDir));.if.(0.!==.$th |
1d420 | 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 | is->process->execute($command,.$ |
1d440 | 6f 75 74 70 75 74 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 | output)).{.$output.=.$this->proc |
1d460 | 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 0a 69 66 20 28 30 20 21 3d | ess->getErrorOutput();..if.(0.!= |
1d480 | 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 2d | =.$this->process->execute('git.- |
1d4a0 | 2d 76 65 72 73 69 6f 6e 27 2c 20 24 69 67 6e 6f 72 65 64 4f 75 74 70 75 74 29 29 20 7b 0a 74 68 | -version',.$ignoredOutput)).{.th |
1d4c0 | 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 | row.new.\RuntimeException('Faile |
1d4e0 | 64 20 74 6f 20 63 6c 6f 6e 65 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 67 69 74 20 77 | d.to.clone.'.$this->url.',.git.w |
1d500 | 61 73 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 63 68 65 63 6b 20 74 68 61 74 20 69 74 20 69 73 20 69 | as.not.found,.check.that.it.is.i |
1d520 | 6e 73 74 61 6c 6c 65 64 20 61 6e 64 20 69 6e 20 79 6f 75 72 20 50 41 54 48 20 65 6e 76 2e 27 20 | nstalled.and.in.your.PATH.env.'. |
1d540 | 2e 20 22 5c 6e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 | .."\n\n"...$this->process->getEr |
1d560 | 72 6f 72 4f 75 74 70 75 74 28 29 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 | rorOutput());.}..throw.new.\Runt |
1d580 | 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 46 61 69 6c 65 64 20 74 6f 20 63 6c 6f 6e 65 20 27 2e | imeException('Failed.to.clone.'. |
1d5a0 | 24 74 68 69 73 2d 3e 75 72 6c 2e 27 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 70 61 63 | $this->url.',.could.not.read.pac |
1d5c0 | 6b 61 67 65 73 20 66 72 6f 6d 20 69 74 27 20 2e 20 22 5c 6e 5c 6e 22 20 2e 24 6f 75 74 70 75 74 | kages.from.it'..."\n\n"..$output |
1d5e0 | 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 24 74 68 69 | );.}.}.}..$this->getTags();.$thi |
1d600 | 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | s->getBranches();.}.....public.f |
1d620 | 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 0a 7b 0a 69 66 | unction.getRootIdentifier().{.if |
1d640 | 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 | .(null.===.$this->rootIdentifier |
1d660 | 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 27 6d 61 73 | ).{.$this->rootIdentifier.=.'mas |
1d680 | 74 65 72 27 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 | ter';....$this->process->execute |
1d6a0 | 28 27 67 69 74 20 62 72 61 6e 63 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 27 2c 20 24 6f 75 74 70 75 | ('git.branch.--no-color',.$outpu |
1d6c0 | 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 | t,.$this->repoDir);.$branches.=. |
1d6e0 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 | $this->process->splitLines($outp |
1d700 | 75 74 29 3b 0a 69 66 20 28 21 69 6e 5f 61 72 72 61 79 28 27 2a 20 6d 61 73 74 65 72 27 2c 20 24 | ut);.if.(!in_array('*.master',.$ |
1d720 | 62 72 61 6e 63 68 65 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 68 65 73 20 | branches)).{.foreach.($branches. |
1d740 | 61 73 20 24 62 72 61 6e 63 68 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 | as.$branch).{.if.($branch.&&.pre |
1d760 | 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 2a 20 2b 28 5c 53 2b 29 7d 27 2c 20 24 62 72 61 6e 63 68 2c | g_match('{^\*.+(\S+)}',.$branch, |
1d780 | 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 | .$match)).{.$this->rootIdentifie |
1d7a0 | 72 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 | r.=.$match[1];.break;.}.}.}.}..r |
1d7c0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 7d 0a 0a | eturn.$this->rootIdentifier;.}.. |
1d7e0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 | ...public.function.getUrl().{.re |
1d800 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | turn.$this->url;.}.....public.fu |
1d820 | 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a | nction.getSource($identifier).{. |
1d840 | 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e 74 69 66 69 65 | $label.=.array_search($identifie |
1d860 | 72 2c 20 28 61 72 72 61 79 29 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 3f 3a 20 24 69 64 65 6e | r,.(array).$this->tags).?:.$iden |
1d880 | 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 | tifier;..return.array('type'.=>. |
1d8a0 | 27 67 69 74 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 2c | 'git',.'url'.=>.$this->getUrl(), |
1d8c0 | 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 | .'reference'.=>.$label);.}.....p |
1d8e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 | ublic.function.getDist($identifi |
1d900 | 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | er).{.return.null;.}.....public. |
1d920 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 | function.getComposerInformation( |
1d940 | 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d | $identifier).{.if.(!isset($this- |
1d960 | 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 72 65 73 | >infoCache[$identifier])).{.$res |
1d980 | 6f 75 72 63 65 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 3a 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f | ource.=.sprintf('%s:composer.jso |
1d9a0 | 6e 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 | n',.escapeshellarg($identifier)) |
1d9c0 | 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 | ;.$this->process->execute(sprint |
1d9e0 | 66 28 27 67 69 74 20 73 68 6f 77 20 25 73 27 2c 20 24 72 65 73 6f 75 72 63 65 29 2c 20 24 63 6f | f('git.show.%s',.$resource),.$co |
1da00 | 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 0a 69 66 20 28 21 74 | mposer,.$this->repoDir);..if.(!t |
1da20 | 72 69 6d 28 24 63 6f 6d 70 6f 73 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f | rim($composer)).{.return;.}..$co |
1da40 | 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f | mposer.=.JsonFile::parseJson($co |
1da60 | 6d 70 6f 73 65 72 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 | mposer,.$resource);..if.(!isset( |
1da80 | 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f | $composer['time'])).{.$this->pro |
1daa0 | 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 67 69 74 20 6c 6f 67 20 2d | cess->execute(sprintf('git.log.- |
1dac0 | 31 20 2d 2d 66 6f 72 6d 61 74 3d 25 25 61 74 20 25 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c | 1.--format=%%at.%s',.escapeshell |
1dae0 | 61 72 67 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 | arg($identifier)),.$output,.$thi |
1db00 | 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 | s->repoDir);.$date.=.new.\DateTi |
1db20 | 6d 65 28 27 40 27 2e 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 | me('@'.trim($output));.$composer |
1db40 | 5b 27 74 69 6d 65 27 5d 20 3d 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 | ['time'].=.$date->format('Y-m-d. |
1db60 | 48 3a 69 3a 73 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 | H:i:s');.}.$this->infoCache[$ide |
1db80 | 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | ntifier].=.$composer;.}..return. |
1dba0 | 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d | $this->infoCache[$identifier];.} |
1dbc0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a 7b | .....public.function.getTags().{ |
1dbe0 | 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 74 68 | .if.(null.===.$this->tags).{.$th |
1dc00 | 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 74 61 67 27 2c 20 | is->process->execute('git.tag',. |
1dc20 | 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 24 6f 75 74 70 75 | $output,.$this->repoDir);.$outpu |
1dc40 | 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 | t.=.$this->process->splitLines($ |
1dc60 | 6f 75 74 70 75 74 29 3b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 24 6f 75 74 70 75 74 20 3f | output);.$this->tags.=.$output.? |
1dc80 | 20 61 72 72 61 79 5f 63 6f 6d 62 69 6e 65 28 24 6f 75 74 70 75 74 2c 20 24 6f 75 74 70 75 74 29 | .array_combine($output,.$output) |
1dca0 | 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 | .:.array();.}..return.$this->tag |
1dcc0 | 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e | s;.}.....public.function.getBran |
1dce0 | 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 | ches().{.if.(null.===.$this->bra |
1dd00 | 6e 63 68 65 73 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 | nches).{.$branches.=.array();..$ |
1dd20 | 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e | this->process->execute('git.bran |
1dd40 | 63 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 20 2d 2d 6e 6f 2d 61 62 62 72 65 76 20 2d 76 27 2c 20 24 | ch.--no-color.--no-abbrev.-v',.$ |
1dd60 | 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 44 69 72 29 3b 0a 66 6f 72 65 61 63 68 | output,.$this->repoDir);.foreach |
1dd80 | 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 | .($this->process->splitLines($ou |
1dda0 | 74 70 75 74 29 20 61 73 20 24 62 72 61 6e 63 68 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 | tput).as.$branch).{.if.($branch. |
1ddc0 | 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 20 2a 5b 5e 2f 5d 2b 2f 48 45 41 44 20 7d | &&.!preg_match('{^.*[^/]+/HEAD.} |
1dde0 | 27 2c 20 24 62 72 61 6e 63 68 29 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b | ',.$branch)).{.if.(preg_match('{ |
1de00 | 5e 28 3f 3a 5c 2a 20 29 3f 20 2a 28 3f 3a 5b 5e 2f 20 5d 2b 3f 2f 29 3f 28 5c 53 2b 29 20 2a 28 | ^(?:\*.)?.*(?:[^/.]+?/)?(\S+).*( |
1de20 | 5b 61 2d 66 30 2d 39 5d 2b 29 20 2e 2a 24 7d 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 | [a-f0-9]+)..*$}',.$branch,.$matc |
1de40 | 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 | h)).{.$branches[$match[1]].=.$ma |
1de60 | 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d | tch[2];.}.}.}..$this->branches.= |
1de80 | 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 61 | .$branches;.}..return.$this->bra |
1dea0 | 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | nches;.}.....public.static.funct |
1dec0 | 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 75 | ion.supports(IOInterface.$io,.$u |
1dee0 | 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 | rl,.$deep.=.false).{.if.(preg_ma |
1df00 | 74 63 68 28 27 23 28 5e 67 69 74 3a 2f 2f 7c 5c 2e 67 69 74 24 7c 67 69 74 40 7c 2f 2f 67 69 74 | tch('#(^git://|\.git$|git@|//git |
1df20 | 5c 2e 7c 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 29 23 69 27 2c 20 24 75 72 6c 29 29 20 7b 0a 72 | \.|//github.com/)#i',.$url)).{.r |
1df40 | 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 73 74 61 74 69 63 3a 3a 69 73 4c | eturn.true;.}....if.(static::isL |
1df60 | 6f 63 61 6c 55 72 6c 28 24 75 72 6c 29 29 20 7b 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 | ocalUrl($url)).{.$process.=.new. |
1df80 | 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 | ProcessExecutor();.$url.=.str_re |
1dfa0 | 70 6c 61 63 65 28 27 66 69 6c 65 3a 2f 2f 27 2c 20 27 27 2c 20 24 75 72 6c 29 3b 0a 0a 20 69 66 | place('file://',.'',.$url);...if |
1dfc0 | 20 28 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 74 61 67 27 2c 20 24 | .($process->execute('git.tag',.$ |
1dfe0 | 6f 75 74 70 75 74 2c 20 24 75 72 6c 29 20 3d 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 | output,.$url).===.0).{.return.tr |
1e000 | 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 64 65 65 70 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 | ue;.}.}..if.(!$deep).{.return.fa |
1e020 | 6c 73 65 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | lse;.}....return.false;.}.}.<?ph |
1e040 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
1e060 | 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 | Repository\Vcs;..use.Composer\Ca |
1e080 | 63 68 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b | che;.use.Composer\Json\JsonFile; |
1e0a0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 | .use.Composer\Util\ProcessExecut |
1e0c0 | 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d | or;.use.Composer\Util\Filesystem |
1e0e0 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 53 76 6e 20 61 73 20 53 76 6e 55 74 | ;.use.Composer\Util\Svn.as.SvnUt |
1e100 | 69 6c 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b | il;.use.Composer\IO\IOInterface; |
1e120 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f | .use.Composer\Downloader\Transpo |
1e140 | 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 76 6e 44 72 69 76 65 | rtException;......class.SvnDrive |
1e160 | 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 | r.extends.VcsDriver.{.protected. |
1e180 | 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 61 73 65 55 72 6c 3b 0a 70 72 6f 74 | $cache;.protected.$baseUrl;.prot |
1e1a0 | 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 | ected.$tags;.protected.$branches |
1e1c0 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 | ;.protected.$infoCache.=.array() |
1e1e0 | 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 75 74 69 6c 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ;.....private.$util;.....public. |
1e200 | 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 | function.initialize().{.$this->u |
1e220 | 72 6c 20 3d 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 3d 20 72 74 72 69 6d 28 73 65 6c 66 | rl.=.$this->baseUrl.=.rtrim(self |
1e240 | 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 55 72 6c 28 24 74 68 69 73 2d 3e 75 72 6c 29 2c 20 27 2f 27 29 | ::normalizeUrl($this->url),.'/') |
1e260 | 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 28 24 70 6f 73 20 3d 20 73 74 72 72 70 6f 73 | ;..if.(false.!==.($pos.=.strrpos |
1e280 | 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 27 2f 74 72 75 6e 6b 27 29 29 29 20 7b 0a 24 74 68 69 73 | ($this->url,.'/trunk'))).{.$this |
1e2a0 | 2d 3e 62 61 73 65 55 72 6c 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 30 | ->baseUrl.=.substr($this->url,.0 |
1e2c0 | 2c 20 24 70 6f 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 6e 65 77 20 43 | ,.$pos);.}..$this->cache.=.new.C |
1e2e0 | 61 63 68 65 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 | ache($this->io,.$this->config->g |
1e300 | 65 74 28 27 68 6f 6d 65 27 29 2e 27 2f 63 61 63 68 65 2e 73 76 6e 2f 27 2e 70 72 65 67 5f 72 65 | et('home').'/cache.svn/'.preg_re |
1e320 | 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 | place('{[^a-z0-9.]}i',.'-',.$thi |
1e340 | 73 2d 3e 62 61 73 65 55 72 6c 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 | s->baseUrl));..$this->getBranche |
1e360 | 73 28 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | s();.$this->getTags();.}.....pub |
1e380 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 | lic.function.getRootIdentifier() |
1e3a0 | 0a 7b 0a 72 65 74 75 72 6e 20 27 74 72 75 6e 6b 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .{.return.'trunk';.}.....public. |
1e3c0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | function.getUrl().{.return.$this |
1e3e0 | 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ->url;.}.....public.function.get |
1e400 | 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 | Source($identifier).{.return.arr |
1e420 | 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 73 76 6e 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 | ay('type'.=>.'svn',.'url'.=>.$th |
1e440 | 69 73 2d 3e 62 61 73 65 55 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 69 64 65 | is->baseUrl,.'reference'.=>.$ide |
1e460 | 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ntifier);.}.....public.function. |
1e480 | 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 | getDist($identifier).{.return.nu |
1e4a0 | 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d | ll;.}.....public.function.getCom |
1e4c0 | 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a | poserInformation($identifier).{. |
1e4e0 | 24 69 64 65 6e 74 69 66 69 65 72 20 3d 20 27 2f 27 20 2e 20 74 72 69 6d 28 24 69 64 65 6e 74 69 | $identifier.=.'/'...trim($identi |
1e500 | 66 69 65 72 2c 20 27 2f 27 29 20 2e 20 27 2f 27 3b 0a 0a 69 66 20 28 24 72 65 73 20 3d 20 24 74 | fier,.'/')...'/';..if.($res.=.$t |
1e520 | 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 24 69 64 65 6e 74 69 66 69 65 72 2e 27 2e 6a | his->cache->read($identifier.'.j |
1e540 | 73 6f 6e 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 | son')).{.$this->infoCache[$ident |
1e560 | 69 66 69 65 72 5d 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 72 65 | ifier].=.JsonFile::parseJson($re |
1e580 | 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 | s);.}..if.(!isset($this->infoCac |
1e5a0 | 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 | he[$identifier])).{.preg_match(' |
1e5c0 | 7b 5e 28 2e 2b 3f 29 28 40 5c 64 2b 29 3f 2f 24 7d 27 2c 20 24 69 64 65 6e 74 69 66 69 65 72 2c | {^(.+?)(@\d+)?/$}',.$identifier, |
1e5e0 | 20 24 6d 61 74 63 68 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 32 5d 29 29 | .$match);.if.(!empty($match[2])) |
1e600 | 20 7b 0a 24 70 61 74 68 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 72 65 76 20 3d 20 24 6d 61 | .{.$path.=.$match[1];.$rev.=.$ma |
1e620 | 74 63 68 5b 32 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 27 27 3b 0a 24 72 65 | tch[2];.}.else.{.$path.=.'';.$re |
1e640 | 76 20 3d 20 27 27 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 70 61 | v.=.'';.}..try.{.$resource.=.$pa |
1e660 | 74 68 2e 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 | th.'composer.json';.$output.=.$t |
1e680 | 68 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 63 61 74 27 2c 20 24 74 68 69 73 2d 3e 62 | his->execute('svn.cat',.$this->b |
1e6a0 | 61 73 65 55 72 6c 20 2e 20 24 72 65 73 6f 75 72 63 65 20 2e 20 24 72 65 76 29 3b 0a 69 66 20 28 | aseUrl...$resource...$rev);.if.( |
1e6c0 | 21 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 7d 20 63 61 | !trim($output)).{.return;.}.}.ca |
1e6e0 | 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 | tch.(\RuntimeException.$e).{.thr |
1e700 | 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 24 65 2d 3e 67 65 | ow.new.TransportException($e->ge |
1e720 | 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 4a 73 6f 6e | tMessage());.}..$composer.=.Json |
1e740 | 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e | File::parseJson($output,.$this-> |
1e760 | 62 61 73 65 55 72 6c 20 2e 20 24 72 65 73 6f 75 72 63 65 20 2e 20 24 72 65 76 29 3b 0a 0a 69 66 | baseUrl...$resource...$rev);..if |
1e780 | 20 28 21 69 73 73 65 74 28 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 | .(!isset($composer['time'])).{.$ |
1e7a0 | 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 69 6e 66 | output.=.$this->execute('svn.inf |
1e7c0 | 6f 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 24 70 61 74 68 20 2e 20 24 72 65 | o',.$this->baseUrl...$path...$re |
1e7e0 | 76 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c | v);.foreach.($this->process->spl |
1e800 | 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 69 66 20 | itLines($output).as.$line).{.if. |
1e820 | 28 24 6c 69 6e 65 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 4c 61 73 74 20 43 68 61 | ($line.&&.preg_match('{^Last.Cha |
1e840 | 6e 67 65 64 20 44 61 74 65 3a 20 28 5b 5e 28 5d 2b 29 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 | nged.Date:.([^(]+)}',.$line,.$ma |
1e860 | 74 63 68 29 29 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 24 6d | tch)).{.$date.=.new.\DateTime($m |
1e880 | 61 74 63 68 5b 31 5d 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 64 | atch[1]);.$composer['time'].=.$d |
1e8a0 | 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 62 72 65 61 | ate->format('Y-m-d.H:i:s');.brea |
1e8c0 | 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 24 69 | k;.}.}.}..$this->cache->write($i |
1e8e0 | 64 65 6e 74 69 66 69 65 72 2e 27 2e 6a 73 6f 6e 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 | dentifier.'.json',.json_encode($ |
1e900 | 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 | composer));.$this->infoCache[$id |
1e920 | 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e | entifier].=.$composer;.}..return |
1e940 | 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 3b 0a | .$this->infoCache[$identifier];. |
1e960 | 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 0a | }.....public.function.getTags(). |
1e980 | 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b 0a 24 74 | {.if.(null.===.$this->tags).{.$t |
1e9a0 | 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 | his->tags.=.array();..$output.=. |
1e9c0 | 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 27 73 76 6e 20 6c 73 20 2d 2d 76 65 72 62 6f 73 65 | $this->execute('svn.ls.--verbose |
1e9e0 | 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 20 2e 20 27 2f 74 61 67 73 27 29 3b 0a 69 66 | ',.$this->baseUrl...'/tags');.if |
1ea00 | 20 28 24 6f 75 74 70 75 74 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f | .($output).{.foreach.($this->pro |
1ea20 | 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 | cess->splitLines($output).as.$li |
1ea40 | 6e 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 | ne).{.$line.=.trim($line);.if.($ |
1ea60 | 6c 69 6e 65 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a | line.&&.preg_match('{^\s*(\S+).* |
1ea80 | 3f 28 5c 53 2b 29 5c 73 2a 24 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a | ?(\S+)\s*$}',.$line,.$match)).{. |
1eaa0 | 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d | if.(isset($match[1]).&&.isset($m |
1eac0 | 61 74 63 68 5b 32 5d 29 20 26 26 20 24 6d 61 74 63 68 5b 32 5d 20 21 3d 3d 20 27 2e 2f 27 29 20 | atch[2]).&&.$match[2].!==.'./'). |
1eae0 | 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 72 74 72 69 6d 28 24 6d 61 74 63 68 5b 32 5d 2c 20 27 | {.$this->tags[rtrim($match[2],.' |
1eb00 | 2f 27 29 5d 20 3d 20 27 2f 74 61 67 73 2f 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 27 40 27 2e 24 6d | /')].=.'/tags/'.$match[2].'@'.$m |
1eb20 | 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | atch[1];.}.}.}.}.}..return.$this |
1eb40 | 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | ->tags;.}.....public.function.ge |
1eb60 | 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 | tBranches().{.if.(null.===.$this |
1eb80 | 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 | ->branches).{.$this->branches.=. |
1eba0 | 61 72 72 61 79 28 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 | array();..$output.=.$this->execu |
1ebc0 | 74 65 28 27 73 76 6e 20 6c 73 20 2d 2d 76 65 72 62 6f 73 65 27 2c 20 24 74 68 69 73 2d 3e 62 61 | te('svn.ls.--verbose',.$this->ba |
1ebe0 | 73 65 55 72 6c 20 2e 20 27 2f 27 29 3b 0a 69 66 20 28 24 6f 75 74 70 75 74 29 20 7b 0a 66 6f 72 | seUrl...'/');.if.($output).{.for |
1ec00 | 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 | each.($this->process->splitLines |
1ec20 | 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 74 72 | ($output).as.$line).{.$line.=.tr |
1ec40 | 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 69 6e 65 20 26 26 20 70 72 65 67 5f 6d 61 74 | im($line);.if.($line.&&.preg_mat |
1ec60 | 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a 3f 28 5c 53 2b 29 5c 73 2a 24 7d 27 2c 20 24 6c | ch('{^\s*(\S+).*?(\S+)\s*$}',.$l |
1ec80 | 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 | ine,.$match)).{.if.(isset($match |
1eca0 | 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 63 68 5b 32 5d 29 20 26 26 20 24 6d 61 74 | [1]).&&.isset($match[2]).&&.$mat |
1ecc0 | 63 68 5b 32 5d 20 3d 3d 3d 20 27 74 72 75 6e 6b 2f 27 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 | ch[2].===.'trunk/').{.$this->bra |
1ece0 | 6e 63 68 65 73 5b 27 74 72 75 6e 6b 27 5d 20 3d 20 27 2f 74 72 75 6e 6b 2f 40 27 2e 24 6d 61 74 | nches['trunk'].=.'/trunk/@'.$mat |
1ed00 | 63 68 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 75 6e 73 65 74 28 24 6f 75 74 | ch[1];.break;.}.}.}.}.unset($out |
1ed20 | 70 75 74 29 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 | put);..$output.=.$this->execute( |
1ed40 | 27 73 76 6e 20 6c 73 20 2d 2d 76 65 72 62 6f 73 65 27 2c 20 24 74 68 69 73 2d 3e 62 61 73 65 55 | 'svn.ls.--verbose',.$this->baseU |
1ed60 | 72 6c 20 2e 20 27 2f 62 72 61 6e 63 68 65 73 27 29 3b 0a 69 66 20 28 24 6f 75 74 70 75 74 29 20 | rl...'/branches');.if.($output). |
1ed80 | 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 | {.foreach.($this->process->split |
1eda0 | 4c 69 6e 65 73 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 20 61 73 20 24 6c 69 6e 65 29 20 7b | Lines(trim($output)).as.$line).{ |
1edc0 | 0a 24 6c 69 6e 65 20 3d 20 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 69 66 20 28 24 6c 69 6e 65 20 | .$line.=.trim($line);.if.($line. |
1ede0 | 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5c 73 2a 28 5c 53 2b 29 2e 2a 3f 28 5c 53 2b | &&.preg_match('{^\s*(\S+).*?(\S+ |
1ee00 | 29 5c 73 2a 24 7d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 69 | )\s*$}',.$line,.$match)).{.if.(i |
1ee20 | 73 73 65 74 28 24 6d 61 74 63 68 5b 31 5d 29 20 26 26 20 69 73 73 65 74 28 24 6d 61 74 63 68 5b | sset($match[1]).&&.isset($match[ |
1ee40 | 32 5d 29 20 26 26 20 24 6d 61 74 63 68 5b 32 5d 20 21 3d 3d 20 27 2e 2f 27 29 20 7b 0a 24 74 68 | 2]).&&.$match[2].!==.'./').{.$th |
1ee60 | 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 72 74 72 69 6d 28 24 6d 61 74 63 68 5b 32 5d 2c 20 27 2f | is->branches[rtrim($match[2],.'/ |
1ee80 | 27 29 5d 20 3d 20 27 2f 62 72 61 6e 63 68 65 73 2f 27 2e 24 6d 61 74 63 68 5b 32 5d 2e 27 40 27 | ')].=.'/branches/'.$match[2].'@' |
1eea0 | 2e 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 | .$match[1];.}.}.}.}.}..return.$t |
1eec0 | 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 | his->branches;.}.....public.stat |
1eee0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 | ic.function.supports(IOInterface |
1ef00 | 20 24 69 6f 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 75 72 | .$io,.$url,.$deep.=.false).{.$ur |
1ef20 | 6c 20 3d 20 73 65 6c 66 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 55 72 6c 28 24 75 72 6c 29 3b 0a 69 66 | l.=.self::normalizeUrl($url);.if |
1ef40 | 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 28 5e 73 76 6e 3a 2f 2f 7c 5e 73 76 6e 5c 2b 73 73 | .(preg_match('#(^svn://|^svn\+ss |
1ef60 | 68 3a 2f 2f 7c 73 76 6e 5c 2e 29 23 69 27 2c 20 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 | h://|svn\.)#i',.$url)).{.return. |
1ef80 | 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 64 65 65 70 20 26 26 20 21 73 74 61 74 69 63 | true;.}....if.(!$deep.&&.!static |
1efa0 | 3a 3a 69 73 4c 6f 63 61 6c 55 72 6c 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c | ::isLocalUrl($url)).{.return.fal |
1efc0 | 73 65 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 3d 20 6e 65 77 20 50 72 | se;.}..$processExecutor.=.new.Pr |
1efe0 | 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 0a 24 65 78 69 74 20 3d 20 24 70 72 6f 63 65 | ocessExecutor();..$exit.=.$proce |
1f000 | 73 73 45 78 65 63 75 74 6f 72 2d 3e 65 78 65 63 75 74 65 28 0a 22 73 76 6e 20 69 6e 66 6f 20 2d | ssExecutor->execute(."svn.info.- |
1f020 | 2d 6e 6f 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 7b 24 75 72 6c 7d 22 2c 0a 24 69 67 6e 6f 72 | -non-interactive.{$url}",.$ignor |
1f040 | 65 64 4f 75 74 70 75 74 0a 29 3b 0a 0a 69 66 20 28 24 65 78 69 74 20 3d 3d 3d 20 30 29 20 7b 0a | edOutput.);..if.($exit.===.0).{. |
1f060 | 0a 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 | ..return.true;.}..if.(false.!==. |
1f080 | 73 74 72 69 70 6f 73 28 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2d 3e 67 65 74 45 72 72 | stripos($processExecutor->getErr |
1f0a0 | 6f 72 4f 75 74 70 75 74 28 29 2c 20 27 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 20 66 61 69 6c 65 | orOutput(),.'authorization.faile |
1f0c0 | 64 3a 27 29 29 20 7b 0a 0a 20 0a 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 | d:')).{.....return.true;.}..retu |
1f0e0 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 | rn.false;.}.........protected.st |
1f100 | 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 55 72 6c 28 24 75 72 6c 29 | atic.function.normalizeUrl($url) |
1f120 | 0a 7b 0a 24 66 73 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 69 66 20 28 24 | .{.$fs.=.new.Filesystem();.if.($ |
1f140 | 66 73 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 75 72 6c 29 29 20 7b 0a 72 65 74 75 | fs->isAbsolutePath($url)).{.retu |
1f160 | 72 6e 20 27 66 69 6c 65 3a 2f 2f 27 20 2e 20 73 74 72 74 72 28 24 75 72 6c 2c 20 27 5c 5c 27 2c | rn.'file://'...strtr($url,.'\\', |
1f180 | 20 27 2f 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | .'/');.}..return.$url;.}........ |
1f1a0 | 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 24 63 | ...protected.function.execute($c |
1f1c0 | 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 | ommand,.$url).{.if.(null.===.$th |
1f1e0 | 69 73 2d 3e 75 74 69 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 75 74 69 6c 20 3d 20 6e 65 77 20 53 76 | is->util).{.$this->util.=.new.Sv |
1f200 | 6e 55 74 69 6c 28 24 74 68 69 73 2d 3e 62 61 73 65 55 72 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 2c | nUtil($this->baseUrl,.$this->io, |
1f220 | 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 72 65 74 75 72 | .$this->process);.}..try.{.retur |
1f240 | 6e 20 24 74 68 69 73 2d 3e 75 74 69 6c 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c | n.$this->util->execute($command, |
1f260 | 20 24 75 72 6c 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 | .$url);.}.catch.(\RuntimeExcepti |
1f280 | 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 | on.$e).{.throw.new.\RuntimeExcep |
1f2a0 | 74 69 6f 6e 28 0a 27 52 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 | tion(.'Repository.'.$this->url.' |
1f2c0 | 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 70 72 6f 63 65 73 73 65 64 2c 20 27 2e 24 65 2d 3e 67 | .could.not.be.processed,.'.$e->g |
1f2e0 | 65 74 4d 65 73 73 61 67 65 28 29 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a | etMessage().);.}.}.}.<?php...... |
1f300 | 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 | ......namespace.Composer\Reposit |
1f320 | 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 | ory\Vcs;..use.Composer\IO\IOInte |
1f340 | 72 66 61 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 56 63 73 44 72 69 76 65 72 49 6e | rface;.....interface.VcsDriverIn |
1f360 | 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 | terface.{....public.function.ini |
1f380 | 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | tialize();........public.functio |
1f3a0 | 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 | n.getComposerInformation($identi |
1f3c0 | 66 69 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | fier);.......public.function.get |
1f3e0 | 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | RootIdentifier();.......public.f |
1f400 | 75 6e 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 | unction.getBranches();.......pub |
1f420 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 28 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 | lic.function.getTags();......pub |
1f440 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 | lic.function.getDist($identifier |
1f460 | 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 | );......public.function.getSourc |
1f480 | 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | e($identifier);.......public.fun |
1f4a0 | 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | ction.getUrl();.........public.f |
1f4c0 | 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 64 65 6e 74 69 66 | unction.hasComposerFile($identif |
1f4e0 | 69 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e | ier);..........public.static.fun |
1f500 | 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 | ction.supports(IOInterface.$io,. |
1f520 | 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | $url,.$deep.=.false);.}.<?php... |
1f540 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f | .........namespace.Composer\Repo |
1f560 | 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a | sitory\Vcs;..use.Composer\Json\J |
1f580 | 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 | sonFile;.use.Composer\Util\Proce |
1f5a0 | 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e | ssExecutor;.use.Composer\IO\IOIn |
1f5c0 | 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 44 72 69 76 65 72 20 65 78 74 65 | terface;.....class.HgDriver.exte |
1f5e0 | 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b | nds.VcsDriver.{.protected.$tags; |
1f600 | 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 | .protected.$branches;.protected. |
1f620 | 24 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f | $rootIdentifier;.protected.$info |
1f640 | 43 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | Cache.=.array();.....public.func |
1f660 | 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 6d 70 44 69 | tion.initialize().{.$this->tmpDi |
1f680 | 72 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f 6d 65 27 29 20 2e | r.=.$this->config->get('home').. |
1f6a0 | 20 27 2f 63 61 63 68 65 2e 68 67 2f 27 20 2e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b | .'/cache.hg/'...preg_replace('{[ |
1f6c0 | 5e 61 2d 7a 30 2d 39 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 | ^a-z0-9]}i',.'-',.$this->url)... |
1f6e0 | 27 2f 27 3b 0a 0a 69 66 20 28 69 73 5f 64 69 72 28 24 74 68 69 73 2d 3e 74 6d 70 44 69 72 29 29 | '/';..if.(is_dir($this->tmpDir)) |
1f700 | 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e | .{.$this->process->execute(sprin |
1f720 | 74 66 28 27 63 64 20 25 73 20 26 26 20 68 67 20 70 75 6c 6c 20 2d 75 27 2c 20 65 73 63 61 70 65 | tf('cd.%s.&&.hg.pull.-u',.escape |
1f740 | 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 74 6d 70 44 69 72 29 29 2c 20 24 6f 75 74 70 75 | shellarg($this->tmpDir)),.$outpu |
1f760 | 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 74 68 69 | t);.}.else.{.$dir.=.dirname($thi |
1f780 | 73 2d 3e 74 6d 70 44 69 72 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 29 20 7b | s->tmpDir);.if.(!is_dir($dir)).{ |
1f7a0 | 0a 6d 6b 64 69 72 28 24 64 69 72 2c 20 30 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d 0a 24 74 68 69 | .mkdir($dir,.0777,.true);.}.$thi |
1f7c0 | 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 | s->process->execute(sprintf('cd. |
1f7e0 | 25 73 20 26 26 20 68 67 20 63 6c 6f 6e 65 20 25 73 20 25 73 27 2c 20 65 73 63 61 70 65 73 68 65 | %s.&&.hg.clone.%s.%s',.escapeshe |
1f800 | 6c 6c 61 72 67 28 24 64 69 72 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 | llarg($dir),.escapeshellarg($thi |
1f820 | 73 2d 3e 75 72 6c 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 74 | s->url),.escapeshellarg($this->t |
1f840 | 6d 70 44 69 72 29 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 67 65 74 | mpDir)),.$output);.}..$this->get |
1f860 | 54 61 67 73 28 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 3b 0a 7d 0a | Tags();.$this->getBranches();.}. |
1f880 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 | ....public.function.getRootIdent |
1f8a0 | 69 66 69 65 72 28 29 0a 7b 0a 24 74 6d 70 44 69 72 20 3d 20 65 73 63 61 70 65 73 68 65 6c 6c 61 | ifier().{.$tmpDir.=.escapeshella |
1f8c0 | 72 67 28 24 74 68 69 73 2d 3e 74 6d 70 44 69 72 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 | rg($this->tmpDir);.if.(null.===. |
1f8e0 | 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e | $this->rootIdentifier).{.$this-> |
1f900 | 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 | process->execute(sprintf('cd.%s. |
1f920 | 26 26 20 68 67 20 74 69 70 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 7b 6e 6f 64 65 7d 22 27 2c 20 | &&.hg.tip.--template."{node}"',. |
1f940 | 24 74 6d 70 44 69 72 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 | $tmpDir),.$output);.$output.=.$t |
1f960 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 | his->process->splitLines($output |
1f980 | 29 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 20 3d 20 24 6f 75 74 70 | );.$this->rootIdentifier.=.$outp |
1f9a0 | 75 74 5b 30 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e | ut[0];.}..return.$this->rootIden |
1f9c0 | 74 69 66 69 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | tifier;.}.....public.function.ge |
1f9e0 | 74 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a | tUrl().{.return.$this->url;.}... |
1fa00 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 | ..public.function.getSource($ide |
1fa20 | 6e 74 69 66 69 65 72 29 0a 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 | ntifier).{.$label.=.array_search |
1fa40 | 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 28 61 72 72 61 79 29 20 24 74 68 69 73 2d 3e 74 61 67 | ($identifier,.(array).$this->tag |
1fa60 | 73 29 20 3f 20 3a 20 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 | s).?.:.$identifier;..return.arra |
1fa80 | 79 28 27 74 79 70 65 27 20 3d 3e 20 27 68 67 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 | y('type'.=>.'hg',.'url'.=>.$this |
1faa0 | 2d 3e 67 65 74 55 72 6c 28 29 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 | ->getUrl(),.'reference'.=>.$labe |
1fac0 | 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 | l);.}.....public.function.getDis |
1fae0 | 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a | t($identifier).{.return.null;.}. |
1fb00 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 | ....public.function.getComposerI |
1fb20 | 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 | nformation($identifier).{.if.(!i |
1fb40 | 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 | sset($this->infoCache[$identifie |
1fb60 | 72 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 | r])).{.$this->process->execute(s |
1fb80 | 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 68 67 20 63 61 74 20 2d 72 20 25 73 20 63 6f | printf('cd.%s.&&.hg.cat.-r.%s.co |
1fba0 | 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 | mposer.json',.escapeshellarg($th |
1fbc0 | 69 73 2d 3e 74 6d 70 44 69 72 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 69 64 65 | is->tmpDir),.escapeshellarg($ide |
1fbe0 | 6e 74 69 66 69 65 72 29 29 2c 20 24 63 6f 6d 70 6f 73 65 72 29 3b 0a 0a 69 66 20 28 21 74 72 69 | ntifier)),.$composer);..if.(!tri |
1fc00 | 6d 28 24 63 6f 6d 70 6f 73 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 | m($composer)).{.return;.}..$comp |
1fc20 | 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 | oser.=.JsonFile::parseJson($comp |
1fc40 | 6f 73 65 72 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 | oser,.$identifier);..if.(!isset( |
1fc60 | 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f | $composer['time'])).{.$this->pro |
1fc80 | 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 | cess->execute(sprintf('cd.%s.&&. |
1fca0 | 68 67 20 6c 6f 67 20 2d 2d 74 65 6d 70 6c 61 74 65 20 22 7b 64 61 74 65 7c 72 66 63 38 32 32 64 | hg.log.--template."{date|rfc822d |
1fcc0 | 61 74 65 7d 22 20 2d 72 20 25 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 | ate}".-r.%s',.escapeshellarg($th |
1fce0 | 69 73 2d 3e 74 6d 70 44 69 72 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 69 64 65 | is->tmpDir),.escapeshellarg($ide |
1fd00 | 6e 74 69 66 69 65 72 29 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 24 64 61 74 65 20 3d 20 6e 65 77 | ntifier)),.$output);.$date.=.new |
1fd20 | 20 5c 44 61 74 65 54 69 6d 65 28 74 72 69 6d 28 24 6f 75 74 70 75 74 29 29 3b 0a 24 63 6f 6d 70 | .\DateTime(trim($output));.$comp |
1fd40 | 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 64 61 74 65 2d 3e 66 6f 72 6d 61 74 28 27 59 2d | oser['time'].=.$date->format('Y- |
1fd60 | 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b | m-d.H:i:s');.}.$this->infoCache[ |
1fd80 | 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 72 65 74 | $identifier].=.$composer;.}..ret |
1fda0 | 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 | urn.$this->infoCache[$identifier |
1fdc0 | 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 67 73 | ];.}.....public.function.getTags |
1fde0 | 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 61 67 73 29 20 7b | ().{.if.(null.===.$this->tags).{ |
1fe00 | 0a 24 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 | .$tags.=.array();..$this->proces |
1fe20 | 73 2d 3e 65 78 65 63 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 68 67 20 | s->execute(sprintf('cd.%s.&&.hg. |
1fe40 | 74 61 67 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 74 6d 70 | tags',.escapeshellarg($this->tmp |
1fe60 | 44 69 72 29 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d | Dir)),.$output);.foreach.($this- |
1fe80 | 3e 70 72 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 | >process->splitLines($output).as |
1fea0 | 20 24 74 61 67 29 20 7b 0a 69 66 20 28 24 74 61 67 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 | .$tag).{.if.($tag.&&.preg_match( |
1fec0 | 27 28 5e 28 5b 5e 5c 73 5d 2b 29 5c 73 2b 5c 64 2b 3a 28 2e 2a 29 24 29 27 2c 20 24 74 61 67 2c | '(^([^\s]+)\s+\d+:(.*)$)',.$tag, |
1fee0 | 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 61 67 73 5b 24 6d 61 74 63 68 5b 31 5d 5d 20 3d 20 24 | .$match)).{.$tags[$match[1]].=.$ |
1ff00 | 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 75 6e 73 65 74 28 24 74 61 67 73 5b 27 74 69 70 27 5d | match[2];.}.}.unset($tags['tip'] |
1ff20 | 29 3b 0a 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 24 74 61 67 73 3b 0a 7d 0a 0a 72 65 74 75 | );..$this->tags.=.$tags;.}..retu |
1ff40 | 72 6e 20 24 74 68 69 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | rn.$this->tags;.}.....public.fun |
1ff60 | 63 74 69 6f 6e 20 67 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d | ction.getBranches().{.if.(null.= |
1ff80 | 3d 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 | ==.$this->branches).{.$branches. |
1ffa0 | 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 | =.array();..$this->process->exec |
1ffc0 | 75 74 65 28 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 68 67 20 62 72 61 6e 63 68 65 | ute(sprintf('cd.%s.&&.hg.branche |
1ffe0 | 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 74 6d 70 44 69 72 | s',.escapeshellarg($this->tmpDir |
20000 | 29 29 2c 20 24 6f 75 74 70 75 74 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 | )),.$output);.foreach.($this->pr |
20020 | 6f 63 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 62 | ocess->splitLines($output).as.$b |
20040 | 72 61 6e 63 68 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 67 5f 6d 61 74 | ranch).{.if.($branch.&&.preg_mat |
20060 | 63 68 28 27 28 5e 28 5b 5e 5c 73 5d 2b 29 5c 73 2b 5c 64 2b 3a 28 2e 2a 29 24 29 27 2c 20 24 62 | ch('(^([^\s]+)\s+\d+:(.*)$)',.$b |
20080 | 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 5b 24 6d 61 74 | ranch,.$match)).{.$branches[$mat |
200a0 | 63 68 5b 31 5d 5d 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e | ch[1]].=.$match[2];.}.}..$this-> |
200c0 | 62 72 61 6e 63 68 65 73 20 3d 20 24 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | branches.=.$branches;.}..return. |
200e0 | 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 | $this->branches;.}.....public.st |
20100 | 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 | atic.function.supports(IOInterfa |
20120 | 63 65 20 24 69 6f 2c 20 24 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 | ce.$io,.$url,.$deep.=.false).{.i |
20140 | 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 28 5e 28 3f 3a 68 74 74 70 73 3f 7c 73 73 68 29 | f.(preg_match('#(^(?:https?|ssh) |
20160 | 3a 2f 2f 28 3f 3a 5b 5e 40 5d 40 29 3f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 7c 68 74 74 70 73 | ://(?:[^@]@)?bitbucket.org|https |
20180 | 3a 2f 2f 28 3f 3a 2e 2a 3f 29 5c 2e 6b 69 6c 6e 68 67 2e 63 6f 6d 29 23 69 27 2c 20 24 75 72 6c | ://(?:.*?)\.kilnhg.com)#i',.$url |
201a0 | 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 64 65 65 70 29 | )).{.return.true;.}..if.(!$deep) |
201c0 | 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 72 6f 63 65 73 73 45 78 65 63 | .{.return.false;.}..$processExec |
201e0 | 75 74 6f 72 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 24 65 | utor.=.new.ProcessExecutor();.$e |
20200 | 78 69 74 20 3d 20 24 70 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 2d 3e 65 78 65 63 75 74 65 28 | xit.=.$processExecutor->execute( |
20220 | 73 70 72 69 6e 74 66 28 27 63 64 20 25 73 20 26 26 20 68 67 20 69 64 65 6e 74 69 66 79 20 25 73 | sprintf('cd.%s.&&.hg.identify.%s |
20240 | 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 73 79 73 5f 67 65 74 5f 74 65 6d 70 5f 64 | ',.escapeshellarg(sys_get_temp_d |
20260 | 69 72 28 29 29 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 75 72 6c 29 29 2c 20 24 69 | ir()),.escapeshellarg($url)),.$i |
20280 | 67 6e 6f 72 65 64 29 3b 0a 0a 72 65 74 75 72 6e 20 24 65 78 69 74 20 3d 3d 3d 20 30 3b 0a 7d 0a | gnored);..return.$exit.===.0;.}. |
202a0 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d | }.<?php............namespace.Com |
202c0 | 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f | poser\Repository\Vcs;..use.Compo |
202e0 | 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f | ser\Downloader\TransportExceptio |
20300 | 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 | n;.use.Composer\Config;.use.Comp |
20320 | 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | oser\IO\IOInterface;.use.Compose |
20340 | 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 | r\Util\ProcessExecutor;.use.Comp |
20360 | 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a | oser\Util\RemoteFilesystem;..... |
20380 | 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 56 63 73 44 72 69 76 65 72 20 69 6d 70 6c 65 | ..abstract.class.VcsDriver.imple |
203a0 | 6d 65 6e 74 73 20 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 | ments.VcsDriverInterface.{.prote |
203c0 | 63 74 65 64 20 24 75 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 72 69 67 69 6e 55 72 6c 3b | cted.$url;.protected.$originUrl; |
203e0 | 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 | .protected.$io;.protected.$confi |
20400 | 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 6f 74 65 63 74 65 64 | g;.protected.$process;.protected |
20420 | 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 66 69 | .$remoteFilesystem;...........fi |
20440 | 6e 61 6c 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 | nal.public.function.__construct( |
20460 | 24 75 72 6c 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 | $url,.IOInterface.$io,.Config.$c |
20480 | 6f 6e 66 69 67 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 73 20 | onfig,.ProcessExecutor.$process. |
204a0 | 3d 20 6e 75 6c 6c 2c 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 75 6c 6c | =.null,.$remoteFilesystem.=.null |
204c0 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 75 72 6c 3b 0a 24 74 68 69 73 2d 3e 6f 72 | ).{.$this->url.=.$url;.$this->or |
204e0 | 69 67 69 6e 55 72 6c 20 3d 20 24 75 72 6c 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b | iginUrl.=.$url;.$this->io.=.$io; |
20500 | 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d | .$this->config.=.$config;.$this- |
20520 | 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 | >process.=.$process.?:.new.Proce |
20540 | 73 73 45 78 65 63 75 74 6f 72 3b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 | ssExecutor;.$this->remoteFilesys |
20560 | 74 65 6d 20 3d 20 24 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 3f 3a 20 6e 65 77 20 52 | tem.=.$remoteFilesystem.?:.new.R |
20580 | 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | emoteFilesystem($io);.}.....publ |
205a0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 69 64 65 | ic.function.hasComposerFile($ide |
205c0 | 6e 74 69 66 69 65 72 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 28 62 6f 6f 6c 29 20 24 | ntifier).{.try.{.return.(bool).$ |
205e0 | 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 | this->getComposerInformation($id |
20600 | 65 6e 74 69 66 69 65 72 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 | entifier);.}.catch.(TransportExc |
20620 | 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a | eption.$e).{.}..return.false;.}. |
20640 | 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 | ........protected.function.getSc |
20660 | 68 65 6d 65 28 29 0a 7b 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f | heme().{.if.(extension_loaded('o |
20680 | 70 65 6e 73 73 6c 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 68 74 74 70 73 27 3b 0a 7d 0a 0a 72 | penssl')).{.return.'https';.}..r |
206a0 | 65 74 75 72 6e 20 27 68 74 74 70 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 | eturn.'http';.}.........protecte |
206c0 | 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 75 72 6c 29 0a 7b 0a 72 | d.function.getContents($url).{.r |
206e0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 2d 3e 67 | eturn.$this->remoteFilesystem->g |
20700 | 65 74 43 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 75 72 | etContents($this->originUrl,.$ur |
20720 | 6c 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 69 63 20 66 | l,.false);.}..protected.static.f |
20740 | 75 6e 63 74 69 6f 6e 20 69 73 4c 6f 63 61 6c 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 72 65 74 75 72 | unction.isLocalUrl($url).{.retur |
20760 | 6e 20 28 62 6f 6f 6c 29 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 66 69 6c 65 3a 2f 2f 7c | n.(bool).preg_match('{^(file://| |
20780 | 2f 7c 5b 61 2d 7a 5d 3a 5b 5c 5c 5c 5c 2f 5d 29 7d 69 27 2c 20 24 75 72 6c 29 3b 0a 7d 0a 7d 0a | /|[a-z]:[\\\\/])}i',.$url);.}.}. |
207a0 | 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f | <?php............namespace.Compo |
207c0 | 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | ser\Repository\Vcs;..use.Compose |
207e0 | 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f | r\Json\JsonFile;.use.Composer\IO |
20800 | 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 67 42 69 74 62 75 63 | \IOInterface;.....class.HgBitbuc |
20820 | 6b 65 74 44 72 69 76 65 72 20 65 78 74 65 6e 64 73 20 56 63 73 44 72 69 76 65 72 0a 7b 0a 70 72 | ketDriver.extends.VcsDriver.{.pr |
20840 | 6f 74 65 63 74 65 64 20 24 6f 77 6e 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 | otected.$owner;.protected.$repos |
20860 | 69 74 6f 72 79 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 67 73 3b 0a 70 72 6f 74 65 63 74 65 | itory;.protected.$tags;.protecte |
20880 | 64 20 24 62 72 61 6e 63 68 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 6f 6f 74 49 64 65 6e | d.$branches;.protected.$rootIden |
208a0 | 74 69 66 69 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 66 6f 43 61 63 68 65 20 3d 20 61 | tifier;.protected.$infoCache.=.a |
208c0 | 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 | rray();.....public.function.init |
208e0 | 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3a 2f | ialize().{.preg_match('#^https:/ |
20900 | 2f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f | /bitbucket\.org/([^/]+)/([^/]+)/ |
20920 | 3f 24 23 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 6d 61 74 63 68 29 3b 0a 24 74 68 69 73 | ?$#',.$this->url,.$match);.$this |
20940 | 2d 3e 6f 77 6e 65 72 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f | ->owner.=.$match[1];.$this->repo |
20960 | 73 69 74 6f 72 79 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 | sitory.=.$match[2];.$this->origi |
20980 | 6e 55 72 6c 20 3d 20 27 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 | nUrl.=.'bitbucket.org';.}.....pu |
209a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 | blic.function.getRootIdentifier( |
209c0 | 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e | ).{.if.(null.===.$this->rootIden |
209e0 | 74 69 66 69 65 72 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 | tifier).{.$resource.=.$this->get |
20a00 | 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 | Scheme()...'://api.bitbucket.org |
20a20 | 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 | /1.0/repositories/'.$this->owner |
20a40 | 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 67 73 27 3b 0a | .'/'.$this->repository.'/tags';. |
20a60 | 24 72 65 70 6f 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 | $repoData.=.JsonFile::parseJson( |
20a80 | 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 | $this->getContents($resource),.$ |
20aa0 | 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 | resource);.$this->rootIdentifier |
20ac0 | 20 3d 20 24 72 65 70 6f 44 61 74 61 5b 27 74 69 70 27 5d 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b | .=.$repoData['tip']['raw_node']; |
20ae0 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 | .}..return.$this->rootIdentifier |
20b00 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 72 6c 28 29 | ;.}.....public.function.getUrl() |
20b20 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | .{.return.$this->url;.}.....publ |
20b40 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 | ic.function.getSource($identifie |
20b60 | 72 29 0a 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 65 6e | r).{.$label.=.array_search($iden |
20b80 | 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 29 20 3f 3a 20 24 69 64 | tifier,.$this->getTags()).?:.$id |
20ba0 | 65 6e 74 69 66 69 65 72 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 74 79 70 65 27 20 3d | entifier;..return.array('type'.= |
20bc0 | 3e 20 27 68 67 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 74 68 69 73 2d 3e 67 65 74 55 72 6c 28 29 | >.'hg',.'url'.=>.$this->getUrl() |
20be0 | 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 29 3b 0a 7d 0a 0a 0a 0a 0a | ,.'reference'.=>.$label);.}..... |
20c00 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 | public.function.getDist($identif |
20c20 | 69 65 72 29 0a 7b 0a 24 6c 61 62 65 6c 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 69 64 | ier).{.$label.=.array_search($id |
20c40 | 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 67 65 74 54 61 67 73 28 29 29 20 3f 3a 20 24 | entifier,.$this->getTags()).?:.$ |
20c60 | 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 75 72 6c 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 | identifier;.$url.=.$this->getSch |
20c80 | 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 2f 27 2e 24 74 68 69 | eme()...'://bitbucket.org/'.$thi |
20ca0 | 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 | s->owner.'/'.$this->repository.' |
20cc0 | 2f 67 65 74 2f 27 2e 24 6c 61 62 65 6c 2e 27 2e 7a 69 70 27 3b 0a 0a 72 65 74 75 72 6e 20 61 72 | /get/'.$label.'.zip';..return.ar |
20ce0 | 72 61 79 28 27 74 79 70 65 27 20 3d 3e 20 27 7a 69 70 27 2c 20 27 75 72 6c 27 20 3d 3e 20 24 75 | ray('type'.=>.'zip',.'url'.=>.$u |
20d00 | 72 6c 2c 20 27 72 65 66 65 72 65 6e 63 65 27 20 3d 3e 20 24 6c 61 62 65 6c 2c 20 27 73 68 61 73 | rl,.'reference'.=>.$label,.'shas |
20d20 | 75 6d 27 20 3d 3e 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | um'.=>.'');.}.....public.functio |
20d40 | 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 | n.getComposerInformation($identi |
20d60 | 66 69 65 72 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 | fier).{.if.(!isset($this->infoCa |
20d80 | 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d | che[$identifier])).{.$resource.= |
20da0 | 20 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 62 69 74 62 75 63 | .$this->getScheme()...'://bitbuc |
20dc0 | 6b 65 74 2e 6f 72 67 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 | ket.org/'.$this->owner.'/'.$this |
20de0 | 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 72 61 77 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 | ->repository.'/raw/'.$identifier |
20e00 | 2e 27 2f 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 24 63 6f 6d 70 6f 73 65 72 20 3d 20 24 | .'/composer.json';.$composer.=.$ |
20e20 | 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 3b 0a 69 66 | this->getContents($resource);.if |
20e40 | 20 28 21 24 63 6f 6d 70 6f 73 65 72 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 6f 6d 70 | .(!$composer).{.return;.}..$comp |
20e60 | 6f 73 65 72 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 63 6f 6d 70 | oser.=.JsonFile::parseJson($comp |
20e80 | 6f 73 65 72 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 | oser,.$resource);..if.(!isset($c |
20ea0 | 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 | omposer['time'])).{.$resource.=. |
20ec0 | 24 74 68 69 73 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 | $this->getScheme()...'://api.bit |
20ee0 | 62 75 63 6b 65 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 | bucket.org/1.0/repositories/'.$t |
20f00 | 68 69 73 2d 3e 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 | his->owner.'/'.$this->repository |
20f20 | 2e 27 2f 63 68 61 6e 67 65 73 65 74 73 2f 27 2e 24 69 64 65 6e 74 69 66 69 65 72 3b 0a 24 63 68 | .'/changesets/'.$identifier;.$ch |
20f40 | 61 6e 67 65 73 65 74 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 | angeset.=.JsonFile::parseJson($t |
20f60 | 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 72 65 | his->getContents($resource),.$re |
20f80 | 73 6f 75 72 63 65 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 5b 27 74 69 6d 65 27 5d 20 3d 20 24 63 68 | source);.$composer['time'].=.$ch |
20fa0 | 61 6e 67 65 73 65 74 5b 27 74 69 6d 65 73 74 61 6d 70 27 5d 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 | angeset['timestamp'];.}.$this->i |
20fc0 | 6e 66 6f 43 61 63 68 65 5b 24 69 64 65 6e 74 69 66 69 65 72 5d 20 3d 20 24 63 6f 6d 70 6f 73 65 | nfoCache[$identifier].=.$compose |
20fe0 | 72 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 66 6f 43 61 63 68 65 5b 24 69 | r;.}..return.$this->infoCache[$i |
21000 | 64 65 6e 74 69 66 69 65 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | dentifier];.}.....public.functio |
21020 | 6e 20 67 65 74 54 61 67 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 | n.getTags().{.if.(null.===.$this |
21040 | 2d 3e 74 61 67 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 | ->tags).{.$resource.=.$this->get |
21060 | 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 74 2e 6f 72 67 | Scheme()...'://api.bitbucket.org |
21080 | 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e 6f 77 6e 65 72 | /1.0/repositories/'.$this->owner |
210a0 | 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 74 61 67 73 27 3b 0a | .'/'.$this->repository.'/tags';. |
210c0 | 24 74 61 67 73 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 | $tagsData.=.JsonFile::parseJson( |
210e0 | 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 65 73 6f 75 72 63 65 29 2c 20 24 | $this->getContents($resource),.$ |
21100 | 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 74 61 67 73 20 3d 20 61 72 72 61 79 28 29 | resource);.$this->tags.=.array() |
21120 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 61 67 73 44 61 74 61 20 61 73 20 24 74 61 67 20 3d 3e 20 | ;.foreach.($tagsData.as.$tag.=>. |
21140 | 24 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 74 61 67 73 5b 24 74 61 67 5d 20 3d 20 24 64 61 | $data).{.$this->tags[$tag].=.$da |
21160 | 74 61 5b 27 72 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 | ta['raw_node'];.}.}..return.$thi |
21180 | 73 2d 3e 74 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | s->tags;.}.....public.function.g |
211a0 | 65 74 42 72 61 6e 63 68 65 73 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 | etBranches().{.if.(null.===.$thi |
211c0 | 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 7b 0a 24 72 65 73 6f 75 72 63 65 20 3d 20 24 74 68 69 73 | s->branches).{.$resource.=.$this |
211e0 | 2d 3e 67 65 74 53 63 68 65 6d 65 28 29 20 2e 20 27 3a 2f 2f 61 70 69 2e 62 69 74 62 75 63 6b 65 | ->getScheme()...'://api.bitbucke |
21200 | 74 2e 6f 72 67 2f 31 2e 30 2f 72 65 70 6f 73 69 74 6f 72 69 65 73 2f 27 2e 24 74 68 69 73 2d 3e | t.org/1.0/repositories/'.$this-> |
21220 | 6f 77 6e 65 72 2e 27 2f 27 2e 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 2e 27 2f 62 72 | owner.'/'.$this->repository.'/br |
21240 | 61 6e 63 68 65 73 27 3b 0a 24 62 72 61 6e 63 68 44 61 74 61 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a | anches';.$branchData.=.JsonFile: |
21260 | 3a 70 61 72 73 65 4a 73 6f 6e 28 24 74 68 69 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 72 | :parseJson($this->getContents($r |
21280 | 65 73 6f 75 72 63 65 29 2c 20 24 72 65 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 2d 3e 62 72 61 | esource),.$resource);.$this->bra |
212a0 | 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 6e 63 | nches.=.array();.foreach.($branc |
212c0 | 68 44 61 74 61 20 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 64 61 74 61 29 20 7b 0a 24 74 68 | hData.as.$branch.=>.$data).{.$th |
212e0 | 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 62 72 61 6e 63 68 5d 20 3d 20 24 64 61 74 61 5b 27 72 | is->branches[$branch].=.$data['r |
21300 | 61 77 5f 6e 6f 64 65 27 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 72 | aw_node'];.}.}..return.$this->br |
21320 | 61 6e 63 68 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 | anches;.}.....public.static.func |
21340 | 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 | tion.supports(IOInterface.$io,.$ |
21360 | 75 72 6c 2c 20 24 64 65 65 70 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f | url,.$deep.=.false).{.if.(!preg_ |
21380 | 6d 61 74 63 68 28 27 23 5e 68 74 74 70 73 3a 2f 2f 62 69 74 62 75 63 6b 65 74 5c 2e 6f 72 67 2f | match('#^https://bitbucket\.org/ |
213a0 | 28 5b 5e 2f 5d 2b 29 2f 28 5b 5e 2f 5d 2b 29 2f 3f 24 23 27 2c 20 24 75 72 6c 29 29 20 7b 0a 72 | ([^/]+)/([^/]+)/?$#',.$url)).{.r |
213c0 | 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 65 78 74 65 6e 73 69 6f 6e 5f 6c | eturn.false;.}..if.(!extension_l |
213e0 | 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 69 66 20 28 24 69 6f 2d 3e 69 73 56 | oaded('openssl')).{.if.($io->isV |
21400 | 65 72 62 6f 73 65 28 29 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 69 6e 67 | erbose()).{.$io->write('Skipping |
21420 | 20 42 69 74 62 75 63 6b 65 74 20 68 67 20 64 72 69 76 65 72 20 66 6f 72 20 27 2e 24 75 72 6c 2e | .Bitbucket.hg.driver.for.'.$url. |
21440 | 27 20 62 65 63 61 75 73 65 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 50 48 50 20 65 78 74 65 6e 73 | '.because.the.OpenSSL.PHP.extens |
21460 | 69 6f 6e 20 69 73 20 6d 69 73 73 69 6e 67 2e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c | ion.is.missing.');.}..return.fal |
21480 | 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | se;.}..return.true;.}.}.<?php... |
214a0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f | .........namespace.Composer\Repo |
214c0 | 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 64 41 | sitory;.........class.InstalledA |
214e0 | 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f | rrayRepository.extends.ArrayRepo |
21500 | 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 | sitory.implements.InstalledRepos |
21520 | 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | itoryInterface.{....public.funct |
21540 | 69 6f 6e 20 77 72 69 74 65 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | ion.write().{.}.....public.funct |
21560 | 69 6f 6e 20 72 65 6c 6f 61 64 28 29 0a 7b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | ion.reload().{.}.}.<?php........ |
21580 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 | ....namespace.Composer\Repositor |
215a0 | 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e | y;..use.Composer\Downloader\Tran |
215c0 | 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 | sportException;.use.Composer\Rep |
215e0 | 6f 73 69 74 6f 72 79 5c 56 63 73 5c 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 3b 0a | ository\Vcs\VcsDriverInterface;. |
21600 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 | use.Composer\Package\Version\Ver |
21620 | 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | sionParser;.use.Composer\Package |
21640 | 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | \Loader\ArrayLoader;.use.Compose |
21660 | 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 | r\Package\Loader\LoaderInterface |
21680 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 | ;.use.Composer\IO\IOInterface;.u |
216a0 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 63 | se.Composer\Config;.....class.Vc |
216c0 | 73 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 | sRepository.extends.ArrayReposit |
216e0 | 6f 72 79 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 | ory.{.protected.$url;.protected. |
21700 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 62 6f 73 65 | $packageName;.protected.$verbose |
21720 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 | ;.protected.$io;.protected.$conf |
21740 | 69 67 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 70 72 | ig;.protected.$versionParser;.pr |
21760 | 6f 74 65 63 74 65 64 20 24 74 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 65 72 | otected.$type;.protected.$loader |
21780 | 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 | ;..public.function.__construct(a |
217a0 | 72 72 61 79 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 | rray.$repoConfig,.IOInterface.$i |
217c0 | 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 61 72 72 61 79 20 24 64 72 69 76 65 72 | o,.Config.$config,.array.$driver |
217e0 | 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 20 3d 20 24 64 72 | s.=.null).{.$this->drivers.=.$dr |
21800 | 69 76 65 72 73 20 3f 3a 20 61 72 72 61 79 28 0a 27 67 69 74 68 75 62 27 20 3d 3e 20 27 43 6f 6d | ivers.?:.array(.'github'.=>.'Com |
21820 | 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 48 75 62 44 72 69 76 65 | poser\Repository\Vcs\GitHubDrive |
21840 | 72 27 2c 0a 27 67 69 74 2d 62 69 74 62 75 63 6b 65 74 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 | r',.'git-bitbucket'.=>.'Composer |
21860 | 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 47 69 74 42 69 74 62 75 63 6b 65 74 44 72 69 76 | \Repository\Vcs\GitBitbucketDriv |
21880 | 65 72 27 2c 0a 27 67 69 74 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f | er',.'git'.=>.'Composer\Reposito |
218a0 | 72 79 5c 56 63 73 5c 47 69 74 44 72 69 76 65 72 27 2c 0a 27 73 76 6e 27 20 3d 3e 20 27 43 6f 6d | ry\Vcs\GitDriver',.'svn'.=>.'Com |
218c0 | 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 5c 53 76 6e 44 72 69 76 65 72 27 2c | poser\Repository\Vcs\SvnDriver', |
218e0 | 0a 27 68 67 2d 62 69 74 62 75 63 6b 65 74 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 | .'hg-bitbucket'.=>.'Composer\Rep |
21900 | 6f 73 69 74 6f 72 79 5c 56 63 73 5c 48 67 42 69 74 62 75 63 6b 65 74 44 72 69 76 65 72 27 2c 0a | ository\Vcs\HgBitbucketDriver',. |
21920 | 27 68 67 27 20 3d 3e 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 | 'hg'.=>.'Composer\Repository\Vcs |
21940 | 5c 48 67 44 72 69 76 65 72 27 2c 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 72 65 | \HgDriver',.);..$this->url.=.$re |
21960 | 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f | poConfig['url'];.$this->io.=.$io |
21980 | 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 69 73 73 65 74 28 24 72 65 70 6f 43 6f 6e 66 69 | ;.$this->type.=.isset($repoConfi |
219a0 | 67 5b 27 74 79 70 65 27 5d 29 20 3f 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d | g['type']).?.$repoConfig['type'] |
219c0 | 20 3a 20 27 76 63 73 27 3b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 20 3d 20 24 69 6f 2d 3e | .:.'vcs';.$this->verbose.=.$io-> |
219e0 | 69 73 56 65 72 62 6f 73 65 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f | isVerbose();.$this->config.=.$co |
21a00 | 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 61 64 | nfig;.}..public.function.setLoad |
21a20 | 65 72 28 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 29 0a 7b 0a 24 74 | er(LoaderInterface.$loader).{.$t |
21a40 | 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 | his->loader.=.$loader;.}..public |
21a60 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 72 69 76 65 72 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 | .function.getDriver().{.if.(isse |
21a80 | 74 28 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 5b 24 74 68 69 73 2d 3e 74 79 70 65 5d 29 29 20 | t($this->drivers[$this->type])). |
21aa0 | 7b 0a 24 63 6c 61 73 73 20 3d 20 24 74 68 69 73 2d 3e 64 72 69 76 65 72 73 5b 24 74 68 69 73 2d | {.$class.=.$this->drivers[$this- |
21ac0 | 3e 74 79 70 65 5d 3b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 63 6c 61 73 73 28 24 74 68 | >type];.$driver.=.new.$class($th |
21ae0 | 69 73 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 | is->url,.$this->io,.$this->confi |
21b00 | 67 29 3b 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 72 65 74 75 | g);.$driver->initialize();..retu |
21b20 | 72 6e 20 24 64 72 69 76 65 72 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 | rn.$driver;.}..foreach.($this->d |
21b40 | 72 69 76 65 72 73 20 61 73 20 24 64 72 69 76 65 72 29 20 7b 0a 69 66 20 28 24 64 72 69 76 65 72 | rivers.as.$driver).{.if.($driver |
21b60 | 3a 3a 73 75 70 70 6f 72 74 73 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 75 72 6c | ::supports($this->io,.$this->url |
21b80 | 29 29 20 7b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 64 72 69 76 65 72 28 24 74 68 69 73 | )).{.$driver.=.new.$driver($this |
21ba0 | 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 | ->url,.$this->io,.$this->config) |
21bc0 | 3b 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 72 65 74 75 72 6e | ;.$driver->initialize();..return |
21be0 | 20 24 64 72 69 76 65 72 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 | .$driver;.}.}..foreach.($this->d |
21c00 | 72 69 76 65 72 73 20 61 73 20 24 64 72 69 76 65 72 29 20 7b 0a 69 66 20 28 24 64 72 69 76 65 72 | rivers.as.$driver).{.if.($driver |
21c20 | 3a 3a 73 75 70 70 6f 72 74 73 28 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 75 72 6c | ::supports($this->io,.$this->url |
21c40 | 2c 20 74 72 75 65 29 29 20 7b 0a 24 64 72 69 76 65 72 20 3d 20 6e 65 77 20 24 64 72 69 76 65 72 | ,.true)).{.$driver.=.new.$driver |
21c60 | 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 | ($this->url,.$this->io,.$this->c |
21c80 | 6f 6e 66 69 67 29 3b 0a 24 64 72 69 76 65 72 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a | onfig);.$driver->initialize();.. |
21ca0 | 72 65 74 75 72 6e 20 24 64 72 69 76 65 72 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 | return.$driver;.}.}.}..protected |
21cc0 | 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a | .function.initialize().{.parent: |
21ce0 | 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 76 65 72 62 6f 73 65 20 3d 20 24 74 68 69 73 | :initialize();..$verbose.=.$this |
21d00 | 2d 3e 76 65 72 62 6f 73 65 3b 0a 0a 24 64 72 69 76 65 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 | ->verbose;..$driver.=.$this->get |
21d20 | 44 72 69 76 65 72 28 29 3b 0a 69 66 20 28 21 24 64 72 69 76 65 72 29 20 7b 0a 74 68 72 6f 77 20 | Driver();.if.(!$driver).{.throw. |
21d40 | 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 4e | new.\InvalidArgumentException('N |
21d60 | 6f 20 64 72 69 76 65 72 20 66 6f 75 6e 64 20 74 6f 20 68 61 6e 64 6c 65 20 56 43 53 20 72 65 70 | o.driver.found.to.handle.VCS.rep |
21d80 | 6f 73 69 74 6f 72 79 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d | ository.'.$this->url);.}..$this- |
21da0 | 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 | >versionParser.=.new.VersionPars |
21dc0 | 65 72 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d | er;.if.(!$this->loader).{.$this- |
21de0 | 3e 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 28 24 74 68 69 73 2d | >loader.=.new.ArrayLoader($this- |
21e00 | 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 24 64 | >versionParser);.}..try.{.if.($d |
21e20 | 72 69 76 65 72 2d 3e 68 61 73 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 24 64 72 69 76 65 72 2d 3e | river->hasComposerFile($driver-> |
21e40 | 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 29 29 20 7b 0a 24 64 61 74 61 20 3d 20 | getRootIdentifier())).{.$data.=. |
21e60 | 24 64 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 | $driver->getComposerInformation( |
21e80 | 24 64 72 69 76 65 72 2d 3e 67 65 74 52 6f 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 29 3b 0a 24 | $driver->getRootIdentifier());.$ |
21ea0 | 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 21 65 6d 70 74 79 28 24 64 61 74 61 | this->packageName.=.!empty($data |
21ec0 | 5b 27 6e 61 6d 65 27 5d 29 20 3f 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3a 20 6e 75 6c 6c | ['name']).?.$data['name'].:.null |
21ee0 | 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 | ;.}.}.catch.(\Exception.$e).{.if |
21f00 | 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 | .($verbose).{.$this->io->write(' |
21f20 | 53 6b 69 70 70 65 64 20 70 61 72 73 69 6e 67 20 27 2e 24 64 72 69 76 65 72 2d 3e 67 65 74 52 6f | Skipped.parsing.'.$driver->getRo |
21f40 | 6f 74 49 64 65 6e 74 69 66 69 65 72 28 29 2e 27 2c 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 | otIdentifier().',.'.$e->getMessa |
21f60 | 67 65 28 29 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 72 69 76 65 72 2d 3e 67 65 | ge());.}.}..foreach.($driver->ge |
21f80 | 74 54 61 67 73 28 29 20 61 73 20 24 74 61 67 20 3d 3e 20 24 69 64 65 6e 74 69 66 69 65 72 29 20 | tTags().as.$tag.=>.$identifier). |
21fa0 | 7b 0a 24 6d 73 67 20 3d 20 27 52 65 61 64 69 6e 67 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 | {.$msg.=.'Reading.composer.json. |
21fc0 | 6f 66 20 3c 69 6e 66 6f 3e 27 20 2e 20 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 | of.<info>'...($this->packageName |
21fe0 | 20 3f 3a 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 3c 2f 69 6e 66 6f 3e 20 28 3c 63 6f 6d | .?:.$this->url)...'</info>.(<com |
22000 | 6d 65 6e 74 3e 27 20 2e 20 24 74 61 67 20 2e 20 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 27 3b 0a 69 | ment>'...$tag...'</comment>)';.i |
22020 | 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 | f.($verbose).{.$this->io->write( |
22040 | 24 6d 73 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 | $msg);.}.else.{.$this->io->overw |
22060 | 72 69 74 65 28 24 6d 73 67 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 0a 20 24 74 61 67 20 3d 20 73 | rite($msg,.false);.}....$tag.=.s |
22080 | 74 72 5f 72 65 70 6c 61 63 65 28 27 72 65 6c 65 61 73 65 2d 27 2c 20 27 27 2c 20 24 74 61 67 29 | tr_replace('release-',.'',.$tag) |
220a0 | 3b 0a 0a 69 66 20 28 21 24 70 61 72 73 65 64 54 61 67 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 | ;..if.(!$parsedTag.=.$this->vali |
220c0 | 64 61 74 65 54 61 67 28 24 74 61 67 29 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b | dateTag($tag)).{.if.($verbose).{ |
220e0 | 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 65 64 20 74 61 67 20 27 | .$this->io->write('Skipped.tag.' |
22100 | 2e 24 74 61 67 2e 27 2c 20 69 6e 76 61 6c 69 64 20 74 61 67 20 6e 61 6d 65 27 29 3b 0a 7d 0a 63 | .$tag.',.invalid.tag.name');.}.c |
22120 | 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 20 28 21 24 64 61 74 61 20 3d 20 24 | ontinue;.}..try.{.if.(!$data.=.$ |
22140 | 64 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 | driver->getComposerInformation($ |
22160 | 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 | identifier)).{.if.($verbose).{.$ |
22180 | 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e 24 | this->io->write('Skipped.tag.'.$ |
221a0 | 74 61 67 2e 27 2c 20 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 27 29 3b 0a 7d 0a 63 6f 6e | tag.',.no.composer.file');.}.con |
221c0 | 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 76 65 72 | tinue;.}....if.(isset($data['ver |
221e0 | 73 69 6f 6e 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c | sion'])).{.$data['version_normal |
22200 | 69 7a 65 64 27 5d 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e | ized'].=.$this->versionParser->n |
22220 | 6f 72 6d 61 6c 69 7a 65 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 20 65 6c | ormalize($data['version']);.}.el |
22240 | 73 65 20 7b 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 74 61 67 3b 0a | se.{...$data['version'].=.$tag;. |
22260 | 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 70 | $data['version_normalized'].=.$p |
22280 | 61 72 73 65 64 54 61 67 3b 0a 7d 0a 0a 0a 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 | arsedTag;.}....$data['version']. |
222a0 | 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 2e 2d 5d 3f 64 65 76 24 7d 69 27 2c 20 27 | =.preg_replace('{[.-]?dev$}i',.' |
222c0 | 27 2c 20 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 64 61 74 61 5b 27 76 65 72 | ',.$data['version']);.$data['ver |
222e0 | 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 | sion_normalized'].=.preg_replace |
22300 | 28 27 7b 28 5e 64 65 76 2d 7c 5b 2e 2d 5d 3f 64 65 76 24 29 7d 69 27 2c 20 27 27 2c 20 24 64 61 | ('{(^dev-|[.-]?dev$)}i',.'',.$da |
22320 | 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 3b 0a 0a 0a 20 69 66 | ta['version_normalized']);....if |
22340 | 20 28 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 21 3d | .($data['version_normalized'].!= |
22360 | 3d 20 24 70 61 72 73 65 64 54 61 67 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a | =.$parsedTag).{.if.($verbose).{. |
22380 | 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e | $this->io->write('Skipped.tag.'. |
223a0 | 24 74 61 67 2e 27 2c 20 74 61 67 20 28 27 2e 24 70 61 72 73 65 64 54 61 67 2e 27 29 20 64 6f 65 | $tag.',.tag.('.$parsedTag.').doe |
223c0 | 73 20 6e 6f 74 20 6d 61 74 63 68 20 76 65 72 73 69 6f 6e 20 28 27 2e 24 64 61 74 61 5b 27 76 65 | s.not.match.version.('.$data['ve |
223e0 | 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2e 27 29 20 69 6e 20 63 6f 6d 70 6f 73 65 | rsion_normalized'].').in.compose |
22400 | 72 2e 6a 73 6f 6e 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 76 65 | r.json');.}.continue;.}..if.($ve |
22420 | 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 49 6d 70 6f 72 | rbose).{.$this->io->write('Impor |
22440 | 74 69 6e 67 20 74 61 67 20 27 2e 24 74 61 67 2e 27 20 28 27 2e 24 64 61 74 61 5b 27 76 65 72 73 | ting.tag.'.$tag.'.('.$data['vers |
22460 | 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2e 27 29 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d | ion_normalized'].')');.}..$this- |
22480 | 3e 61 64 64 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 | >addPackage($this->loader->load( |
224a0 | 24 74 68 69 73 2d 3e 70 72 65 50 72 6f 63 65 73 73 28 24 64 72 69 76 65 72 2c 20 24 64 61 74 61 | $this->preProcess($driver,.$data |
224c0 | 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 | ,.$identifier)));.}.catch.(\Exce |
224e0 | 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 | ption.$e).{.if.($verbose).{.$thi |
22500 | 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 65 64 20 74 61 67 20 27 2e 24 74 61 67 | s->io->write('Skipped.tag.'.$tag |
22520 | 2e 27 2c 20 27 2e 28 24 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 54 72 61 6e 73 70 6f 72 74 45 78 | .',.'.($e.instanceof.TransportEx |
22540 | 63 65 70 74 69 6f 6e 20 3f 20 27 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 20 77 61 73 20 | ception.?.'no.composer.file.was. |
22560 | 66 6f 75 6e 64 27 20 3a 20 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 29 3b 0a 7d 0a 63 | found'.:.$e->getMessage()));.}.c |
22580 | 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 | ontinue;.}.}..$this->io->overwri |
225a0 | 74 65 28 27 27 2c 20 66 61 6c 73 65 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 72 69 76 65 72 | te('',.false);..foreach.($driver |
225c0 | 2d 3e 67 65 74 42 72 61 6e 63 68 65 73 28 29 20 61 73 20 24 62 72 61 6e 63 68 20 3d 3e 20 24 69 | ->getBranches().as.$branch.=>.$i |
225e0 | 64 65 6e 74 69 66 69 65 72 29 20 7b 0a 24 6d 73 67 20 3d 20 27 52 65 61 64 69 6e 67 20 63 6f 6d | dentifier).{.$msg.=.'Reading.com |
22600 | 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 66 20 3c 69 6e 66 6f 3e 27 20 2e 20 28 24 74 68 69 73 2d 3e | poser.json.of.<info>'...($this-> |
22620 | 70 61 63 6b 61 67 65 4e 61 6d 65 20 3f 3a 20 24 74 68 69 73 2d 3e 75 72 6c 29 20 2e 20 27 3c 2f | packageName.?:.$this->url)...'</ |
22640 | 69 6e 66 6f 3e 20 28 3c 63 6f 6d 6d 65 6e 74 3e 27 20 2e 20 24 62 72 61 6e 63 68 20 2e 20 27 3c | info>.(<comment>'...$branch...'< |
22660 | 2f 63 6f 6d 6d 65 6e 74 3e 29 27 3b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 | /comment>)';.if.($verbose).{.$th |
22680 | 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 24 6d 73 67 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 | is->io->write($msg);.}.else.{.$t |
226a0 | 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 28 24 6d 73 67 2c 20 66 61 6c 73 65 29 3b | his->io->overwrite($msg,.false); |
226c0 | 0a 7d 0a 0a 69 66 20 28 21 24 70 61 72 73 65 64 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e | .}..if.(!$parsedBranch.=.$this-> |
226e0 | 76 61 6c 69 64 61 74 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 29 20 7b 0a 69 66 20 28 24 | validateBranch($branch)).{.if.($ |
22700 | 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 | verbose).{.$this->io->write('Ski |
22720 | 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 69 6e 76 61 6c 69 64 | pped.branch.'.$branch.',.invalid |
22740 | 20 6e 61 6d 65 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 69 66 | .name');.}.continue;.}..try.{.if |
22760 | 20 28 21 24 64 61 74 61 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 49 | .(!$data.=.$driver->getComposerI |
22780 | 6e 66 6f 72 6d 61 74 69 6f 6e 28 24 69 64 65 6e 74 69 66 69 65 72 29 29 20 7b 0a 69 66 20 28 24 | nformation($identifier)).{.if.($ |
227a0 | 76 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 | verbose).{.$this->io->write('Ski |
227c0 | 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 6e 6f 20 63 6f 6d 70 | pped.branch.'.$branch.',.no.comp |
227e0 | 6f 73 65 72 20 66 69 6c 65 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 64 | oser.file');.}.continue;.}....$d |
22800 | 61 74 61 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 62 72 61 6e 63 68 3b 0a 24 64 61 74 61 5b | ata['version'].=.$branch;.$data[ |
22820 | 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 20 3d 20 24 70 61 72 73 65 64 42 | 'version_normalized'].=.$parsedB |
22840 | 72 61 6e 63 68 3b 0a 0a 0a 20 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 | ranch;....if.('dev-'.===.substr( |
22860 | 24 70 61 72 73 65 64 42 72 61 6e 63 68 2c 20 30 2c 20 34 29 20 7c 7c 20 27 39 39 39 39 39 39 39 | $parsedBranch,.0,.4).||.'9999999 |
22880 | 2d 64 65 76 27 20 3d 3d 3d 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 29 20 7b 0a 24 64 61 74 61 | -dev'.===.$parsedBranch).{.$data |
228a0 | 5b 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 27 64 65 76 2d 27 20 2e 20 24 64 61 74 61 5b 27 76 65 | ['version'].=.'dev-'...$data['ve |
228c0 | 72 73 69 6f 6e 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e | rsion'];.}.else.{.$data['version |
228e0 | 27 5d 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 5c 2e 39 7b 37 7d 29 2b 7d 27 2c | '].=.preg_replace('{(\.9{7})+}', |
22900 | 20 27 2e 78 27 2c 20 24 70 61 72 73 65 64 42 72 61 6e 63 68 29 3b 0a 7d 0a 0a 69 66 20 28 24 76 | .'.x',.$parsedBranch);.}..if.($v |
22920 | 65 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 49 6d 70 6f | erbose).{.$this->io->write('Impo |
22940 | 72 74 69 6e 67 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 20 28 27 2e 24 64 61 74 | rting.branch.'.$branch.'.('.$dat |
22960 | 61 5b 27 76 65 72 73 69 6f 6e 27 5d 2e 27 29 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 | a['version'].')');.}..$this->add |
22980 | 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 74 68 69 | Package($this->loader->load($thi |
229a0 | 73 2d 3e 70 72 65 50 72 6f 63 65 73 73 28 24 64 72 69 76 65 72 2c 20 24 64 61 74 61 2c 20 24 69 | s->preProcess($driver,.$data,.$i |
229c0 | 64 65 6e 74 69 66 69 65 72 29 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 | dentifier)));.}.catch.(Transport |
229e0 | 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 76 65 72 62 6f 73 65 29 20 7b 0a | Exception.$e).{.if.($verbose).{. |
22a00 | 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 6b 69 70 70 65 64 20 62 72 61 6e 63 68 | $this->io->write('Skipped.branch |
22a20 | 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 6e 6f 20 63 6f 6d 70 6f 73 65 72 20 66 69 6c 65 20 77 | .'.$branch.',.no.composer.file.w |
22a40 | 61 73 20 66 6f 75 6e 64 27 29 3b 0a 7d 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 63 61 74 63 68 20 | as.found');.}.continue;.}.catch. |
22a60 | 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 | (\Exception.$e).{.$this->io->wri |
22a80 | 74 65 28 27 53 6b 69 70 70 65 64 20 62 72 61 6e 63 68 20 27 2e 24 62 72 61 6e 63 68 2e 27 2c 20 | te('Skipped.branch.'.$branch.',. |
22aa0 | 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d | '.$e->getMessage());.continue;.} |
22ac0 | 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 28 27 27 2c 20 66 61 6c | .}..$this->io->overwrite('',.fal |
22ae0 | 73 65 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 72 65 50 72 6f 63 | se);.}..private.function.preProc |
22b00 | 65 73 73 28 56 63 73 44 72 69 76 65 72 49 6e 74 65 72 66 61 63 65 20 24 64 72 69 76 65 72 2c 20 | ess(VcsDriverInterface.$driver,. |
22b20 | 61 72 72 61 79 20 24 64 61 74 61 2c 20 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 0a 20 24 64 | array.$data,.$identifier).{...$d |
22b40 | 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 | ata['name'].=.$this->packageName |
22b60 | 20 3f 3a 20 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 | .?:.$data['name'];..if.(!isset($ |
22b80 | 64 61 74 61 5b 27 64 69 73 74 27 5d 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 20 3d | data['dist'])).{.$data['dist'].= |
22ba0 | 20 24 64 72 69 76 65 72 2d 3e 67 65 74 44 69 73 74 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a | .$driver->getDist($identifier);. |
22bc0 | 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 29 29 20 7b | }.if.(!isset($data['source'])).{ |
22be0 | 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 20 3d 20 24 64 72 69 76 65 72 2d 3e 67 65 74 53 | .$data['source'].=.$driver->getS |
22c00 | 6f 75 72 63 65 28 24 69 64 65 6e 74 69 66 69 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 | ource($identifier);.}..return.$d |
22c20 | 61 74 61 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 | ata;.}..private.function.validat |
22c40 | 65 42 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 | eBranch($branch).{.try.{.return. |
22c60 | 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 | $this->versionParser->normalizeB |
22c80 | 72 61 6e 63 68 28 24 62 72 61 6e 63 68 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 | ranch($branch);.}.catch.(\Except |
22ca0 | 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 | ion.$e).{.}..return.false;.}..pr |
22cc0 | 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 54 61 67 28 24 76 65 72 73 | ivate.function.validateTag($vers |
22ce0 | 69 6f 6e 29 0a 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 | ion).{.try.{.return.$this->versi |
22d00 | 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d | onParser->normalize($version);.} |
22d20 | 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 7d 0a 0a 72 65 74 75 | .catch.(\Exception.$e).{.}..retu |
22d40 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e | rn.false;.}.}.<?php............n |
22d60 | 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 | amespace.Composer\Repository;..u |
22d80 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4d 65 6d 6f 72 79 50 61 63 6b 61 67 | se.Composer\Package\MemoryPackag |
22da0 | 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c | e;.use.Composer\Package\Version\ |
22dc0 | 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6c 61 74 66 6f 72 | VersionParser;.....class.Platfor |
22de0 | 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 | mRepository.extends.ArrayReposit |
22e00 | 6f 72 79 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c | ory.{.protected.function.initial |
22e20 | 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 | ize().{.parent::initialize();..$ |
22e40 | 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 | versionParser.=.new.VersionParse |
22e60 | 72 28 29 3b 0a 0a 74 72 79 20 7b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 50 48 50 | r();..try.{.$prettyVersion.=.PHP |
22e80 | 5f 56 45 52 53 49 4f 4e 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 | _VERSION;.$version.=.$versionPar |
22ea0 | 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a | ser->normalize($prettyVersion);. |
22ec0 | 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 | }.catch.(\UnexpectedValueExcepti |
22ee0 | 6f 6e 20 24 65 29 20 7b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 | on.$e).{.$prettyVersion.=.preg_r |
22f00 | 65 70 6c 61 63 65 28 27 23 5e 28 2e 2b 3f 29 28 2d 2e 2b 29 3f 24 23 27 2c 20 27 24 31 27 2c 20 | eplace('#^(.+?)(-.+)?$#',.'$1',. |
22f20 | 50 48 50 5f 56 45 52 53 49 4f 4e 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f | PHP_VERSION);.$version.=.$versio |
22f40 | 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 69 6f | nParser->normalize($prettyVersio |
22f60 | 6e 29 3b 0a 7d 0a 0a 24 70 68 70 20 3d 20 6e 65 77 20 4d 65 6d 6f 72 79 50 61 63 6b 61 67 65 28 | n);.}..$php.=.new.MemoryPackage( |
22f80 | 27 70 68 70 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 | 'php',.$version,.$prettyVersion) |
22fa0 | 3b 0a 24 70 68 70 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 20 50 48 50 20 | ;.$php->setDescription('The.PHP. |
22fc0 | 69 6e 74 65 72 70 72 65 74 65 72 27 29 3b 0a 70 61 72 65 6e 74 3a 3a 61 64 64 50 61 63 6b 61 67 | interpreter');.parent::addPackag |
22fe0 | 65 28 24 70 68 70 29 3b 0a 0a 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 20 3d 20 67 65 | e($php);..$loadedExtensions.=.ge |
23000 | 74 5f 6c 6f 61 64 65 64 5f 65 78 74 65 6e 73 69 6f 6e 73 28 29 3b 0a 0a 0a 20 66 6f 72 65 61 63 | t_loaded_extensions();....foreac |
23020 | 68 20 28 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 20 61 73 20 24 6e 61 6d 65 29 20 7b | h.($loadedExtensions.as.$name).{ |
23040 | 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 28 27 73 74 61 6e | .if.(in_array($name,.array('stan |
23060 | 64 61 72 64 27 2c 20 27 43 6f 72 65 27 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a | dard',.'Core'))).{.continue;.}.. |
23080 | 24 72 65 66 6c 45 78 74 20 3d 20 6e 65 77 20 5c 52 65 66 6c 65 63 74 69 6f 6e 45 78 74 65 6e 73 | $reflExt.=.new.\ReflectionExtens |
230a0 | 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 74 72 79 20 7b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e | ion($name);.try.{.$prettyVersion |
230c0 | 20 3d 20 24 72 65 66 6c 45 78 74 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 24 76 65 72 73 | .=.$reflExt->getVersion();.$vers |
230e0 | 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 | ion.=.$versionParser->normalize( |
23100 | 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 | $prettyVersion);.}.catch.(\Unexp |
23120 | 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 70 72 65 74 74 | ectedValueException.$e).{.$prett |
23140 | 79 56 65 72 73 69 6f 6e 20 3d 20 27 30 27 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 | yVersion.=.'0';.$version.=.$vers |
23160 | 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 72 65 74 74 79 56 65 72 73 | ionParser->normalize($prettyVers |
23180 | 69 6f 6e 29 3b 0a 7d 0a 0a 24 65 78 74 20 3d 20 6e 65 77 20 4d 65 6d 6f 72 79 50 61 63 6b 61 67 | ion);.}..$ext.=.new.MemoryPackag |
231a0 | 65 28 27 65 78 74 2d 27 2e 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 | e('ext-'.$name,.$version,.$prett |
231c0 | 79 56 65 72 73 69 6f 6e 29 3b 0a 24 65 78 74 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 | yVersion);.$ext->setDescription( |
231e0 | 27 54 68 65 20 27 2e 24 6e 61 6d 65 2e 27 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 27 29 3b 0a | 'The.'.$name.'.PHP.extension');. |
23200 | 70 61 72 65 6e 74 3a 3a 61 64 64 50 61 63 6b 61 67 65 28 24 65 78 74 29 3b 0a 7d 0a 0a 0a 20 0a | parent::addPackage($ext);.}..... |
23220 | 20 0a 20 66 6f 72 65 61 63 68 20 28 24 6c 6f 61 64 65 64 45 78 74 65 6e 73 69 6f 6e 73 20 61 73 | ...foreach.($loadedExtensions.as |
23240 | 20 24 6e 61 6d 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 6e 61 6d 65 29 20 7b 0a 63 61 73 65 20 | .$name).{.switch.($name).{.case. |
23260 | 27 63 75 72 6c 27 3a 0a 24 63 75 72 6c 56 65 72 73 69 6f 6e 20 3d 20 63 75 72 6c 5f 76 65 72 73 | 'curl':.$curlVersion.=.curl_vers |
23280 | 69 6f 6e 28 29 3b 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 63 75 72 6c 56 65 72 | ion();.$prettyVersion.=.$curlVer |
232a0 | 73 69 6f 6e 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 | sion['version'];.break;..case.'i |
232c0 | 63 6f 6e 76 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 49 43 4f 4e 56 5f 56 45 | conv':.$prettyVersion.=.ICONV_VE |
232e0 | 52 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6c 69 62 78 6d 6c 27 3a 0a 24 70 | RSION;.break;..case.'libxml':.$p |
23300 | 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 4c 49 42 58 4d 4c 5f 44 4f 54 54 45 44 5f 56 45 52 | rettyVersion.=.LIBXML_DOTTED_VER |
23320 | 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 6f 70 65 6e 73 73 6c 27 3a 0a 24 70 | SION;.break;..case.'openssl':.$p |
23340 | 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c | rettyVersion.=.preg_replace_call |
23360 | 62 61 63 6b 28 27 7b 5e 28 3f 3a 4f 70 65 6e 53 53 4c 5c 73 2a 29 3f 28 5b 30 2d 39 2e 5d 2b 29 | back('{^(?:OpenSSL\s*)?([0-9.]+) |
23380 | 28 5b 61 2d 7a 5d 3f 29 2e 2a 7d 27 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 6d 61 74 63 68 29 20 | ([a-z]?).*}',.function.($match). |
233a0 | 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 20 2e 20 28 65 6d 70 74 79 28 24 6d 61 74 | {.return.$match[1]...(empty($mat |
233c0 | 63 68 5b 32 5d 29 20 3f 20 27 27 20 3a 20 27 2e 27 2e 28 6f 72 64 28 24 6d 61 74 63 68 5b 32 5d | ch[2]).?.''.:.'.'.(ord($match[2] |
233e0 | 29 20 2d 20 39 36 29 29 3b 0a 7d 2c 20 4f 50 45 4e 53 53 4c 5f 56 45 52 53 49 4f 4e 5f 54 45 58 | ).-.96));.},.OPENSSL_VERSION_TEX |
23400 | 54 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 70 63 72 65 27 3a 0a 24 70 72 65 74 74 79 | T);.break;..case.'pcre':.$pretty |
23420 | 56 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5c 53 2b 29 2e | Version.=.preg_replace('{^(\S+). |
23440 | 2a 7d 27 2c 20 27 24 31 27 2c 20 50 43 52 45 5f 56 45 52 53 49 4f 4e 29 3b 0a 62 72 65 61 6b 3b | *}',.'$1',.PCRE_VERSION);.break; |
23460 | 0a 0a 63 61 73 65 20 27 75 75 69 64 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 | ..case.'uuid':.$prettyVersion.=. |
23480 | 70 68 70 76 65 72 73 69 6f 6e 28 27 75 75 69 64 27 29 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 | phpversion('uuid');.break;..case |
234a0 | 20 27 78 73 6c 27 3a 0a 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 4c 49 42 58 53 4c 54 | .'xsl':.$prettyVersion.=.LIBXSLT |
234c0 | 5f 44 4f 54 54 45 44 5f 56 45 52 53 49 4f 4e 3b 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c 74 | _DOTTED_VERSION;.break;..default |
234e0 | 3a 0a 0a 20 63 6f 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 76 65 72 73 69 6f | :...continue.2;.}..try.{.$versio |
23500 | 6e 20 3d 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 70 | n.=.$versionParser->normalize($p |
23520 | 72 65 74 74 79 56 65 72 73 69 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 55 6e 65 78 70 65 63 | rettyVersion);.}.catch.(\Unexpec |
23540 | 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 | tedValueException.$e).{.continue |
23560 | 3b 0a 7d 0a 0a 24 6c 69 62 20 3d 20 6e 65 77 20 4d 65 6d 6f 72 79 50 61 63 6b 61 67 65 28 27 6c | ;.}..$lib.=.new.MemoryPackage('l |
23580 | 69 62 2d 27 2e 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 | ib-'.$name,.$version,.$prettyVer |
235a0 | 73 69 6f 6e 29 3b 0a 24 6c 69 62 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 54 68 65 | sion);.$lib->setDescription('The |
235c0 | 20 27 2e 24 6e 61 6d 65 2e 27 20 50 48 50 20 6c 69 62 72 61 72 79 27 29 3b 0a 70 61 72 65 6e 74 | .'.$name.'.PHP.library');.parent |
235e0 | 3a 3a 61 64 64 50 61 63 6b 61 67 65 28 24 6c 69 62 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a | ::addPackage($lib);.}.}.}.<?php. |
23600 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 | ...........namespace.Composer\Re |
23620 | 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 64 46 | pository;.......class.InstalledF |
23640 | 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 46 69 6c 65 | ilesystemRepository.extends.File |
23660 | 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 | systemRepository.implements.Inst |
23680 | 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 | alledRepositoryInterface.{.}.<?p |
236a0 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
236c0 | 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 | \Repository;..use.Composer\Packa |
236e0 | 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 | ge\PackageInterface;.......class |
23700 | 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 | .CompositeRepository.implements. |
23720 | 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 70 72 69 76 61 74 | RepositoryInterface.{.....privat |
23740 | 65 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | e.$repositories;......public.fun |
23760 | 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 72 65 70 6f 73 69 74 | ction.__construct(array.$reposit |
23780 | 6f 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 | ories).{.$this->repositories.=.$ |
237a0 | 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | repositories;.}.......public.fun |
237c0 | 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e | ction.getRepositories().{.return |
237e0 | 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | .$this->repositories;.}.....publ |
23800 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e | ic.function.hasPackage(PackageIn |
23820 | 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 | terface.$package).{.foreach.($th |
23840 | 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 | is->repositories.as.$repository) |
23860 | 20 7b 0a 0a 69 66 20 28 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 | .{..if.($repository->hasPackage( |
23880 | 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 | $package)).{.return.true;.}.}..r |
238a0 | 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | eturn.false;.}.....public.functi |
238c0 | 6f 6e 20 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a | on.findPackage($name,.$version). |
238e0 | 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 | {.foreach.($this->repositories.a |
23900 | 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 72 65 | s.$repository).{..$package.=.$re |
23920 | 70 6f 73 69 74 6f 72 79 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 76 65 | pository->findPackage($name,.$ve |
23940 | 72 73 69 6f 6e 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b | rsion);.if.(null.!==.$package).{ |
23960 | 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 | .return.$package;.}.}..return.nu |
23980 | 6c 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 | ll;.}.....public.function.findPa |
239a0 | 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b | ckages($name,.$version.=.null).{ |
239c0 | 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 | .$packages.=.array();.foreach.($ |
239e0 | 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 | this->repositories.as.$repositor |
23a00 | 79 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d | y).{..$packages[].=.$repository- |
23a20 | 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a | >findPackages($name,.$version);. |
23a40 | 7d 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 | }..return.call_user_func_array(' |
23a60 | 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a | array_merge',.$packages);.}..... |
23a80 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b 0a | public.function.getPackages().{. |
23aa0 | 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 | $packages.=.array();.foreach.($t |
23ac0 | 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 | his->repositories.as.$repository |
23ae0 | 29 20 7b 0a 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e | ).{..$packages[].=.$repository-> |
23b00 | 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 | getPackages();.}..return.call_us |
23b20 | 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 70 61 | er_func_array('array_merge',.$pa |
23b40 | 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 | ckages);.}.....public.function.r |
23b60 | 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 | emovePackage(PackageInterface.$p |
23b80 | 61 63 6b 61 67 65 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 | ackage).{.foreach.($this->reposi |
23ba0 | 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 72 65 70 6f 73 | tories.as.$repository).{..$repos |
23bc0 | 69 74 6f 72 79 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a | itory->removePackage($package);. |
23be0 | 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a | }.}.....public.function.count(). |
23c00 | 7b 0a 24 74 6f 74 61 6c 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 | {.$total.=.0;.foreach.($this->re |
23c20 | 70 6f 73 69 74 6f 72 69 65 73 20 61 73 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 24 74 | positories.as.$repository).{..$t |
23c40 | 6f 74 61 6c 20 2b 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 2d 3e 63 6f 75 6e 74 28 29 3b 0a 7d 0a | otal.+=.$repository->count();.}. |
23c60 | 0a 72 65 74 75 72 6e 20 24 74 6f 74 61 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | .return.$total;.}......public.fu |
23c80 | 6e 63 74 69 6f 6e 20 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 | nction.addRepository(RepositoryI |
23ca0 | 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 | nterface.$repository).{.$this->r |
23cc0 | 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 7d | epositories[].=.$repository;.}.} |
23ce0 | 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 | .<?php............namespace.Comp |
23d00 | 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 | oser\Repository;.........interfa |
23d20 | 63 65 20 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 | ce.InstalledRepositoryInterface. |
23d40 | 65 78 74 65 6e 64 73 20 57 72 69 74 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 | extends.WritableRepositoryInterf |
23d60 | 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 | ace.{.}.<?php............namespa |
23d80 | 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d | ce.Composer\Repository;..use.Com |
23da0 | 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 | poser\Package\Loader\ArrayLoader |
23dc0 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e | ;.use.Composer\Package\PackageIn |
23de0 | 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 | terface;.use.Composer\Json\JsonF |
23e00 | 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 61 63 68 65 3b 0a 75 73 65 20 43 6f 6d | ile;.use.Composer\Cache;.use.Com |
23e20 | 70 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f | poser\Config;.use.Composer\IO\IO |
23e40 | 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d | Interface;.use.Composer\Util\Rem |
23e60 | 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 | oteFilesystem;.....class.Compose |
23e80 | 72 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 | rRepository.extends.ArrayReposit |
23ea0 | 6f 72 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4e 6f 74 69 66 69 61 62 6c 65 52 65 70 6f 73 69 74 | ory.implements.NotifiableReposit |
23ec0 | 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 | oryInterface.{.protected.$config |
23ee0 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 75 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b | ;.protected.$url;.protected.$io; |
23f00 | 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 | .protected.$packages;.protected. |
23f20 | 24 63 61 63 68 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 74 69 66 79 55 72 6c 3b 0a 0a 70 | $cache;.protected.$notifyUrl;..p |
23f40 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 | ublic.function.__construct(array |
23f60 | 20 24 72 65 70 6f 43 6f 6e 66 69 67 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 | .$repoConfig,.IOInterface.$io,.C |
23f80 | 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 | onfig.$config).{.if.(!preg_match |
23fa0 | 28 27 7b 5e 5c 77 2b 3a 2f 2f 7d 27 2c 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d | ('{^\w+://}',.$repoConfig['url'] |
23fc0 | 29 29 20 7b 0a 0a 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 20 3d 20 27 68 74 74 | )).{...$repoConfig['url'].=.'htt |
23fe0 | 70 3a 2f 2f 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b 0a 7d 0a 24 72 65 70 | p://'.$repoConfig['url'];.}.$rep |
24000 | 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 20 3d 20 72 74 72 69 6d 28 24 72 65 70 6f 43 6f 6e 66 | oConfig['url'].=.rtrim($repoConf |
24020 | 69 67 5b 27 75 72 6c 27 5d 2c 20 27 2f 27 29 3b 0a 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 | ig['url'],.'/');.if.(function_ex |
24040 | 69 73 74 73 28 27 66 69 6c 74 65 72 5f 76 61 72 27 29 20 26 26 20 76 65 72 73 69 6f 6e 5f 63 6f | ists('filter_var').&&.version_co |
24060 | 6d 70 61 72 65 28 50 48 50 5f 56 45 52 53 49 4f 4e 2c 20 27 35 2e 33 2e 33 27 2c 20 27 3e 3d 27 | mpare(PHP_VERSION,.'5.3.3',.'>=' |
24080 | 29 20 26 26 20 21 66 69 6c 74 65 72 5f 76 61 72 28 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 | ).&&.!filter_var($repoConfig['ur |
240a0 | 6c 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 29 29 20 7b 0a 74 68 72 | l'],.FILTER_VALIDATE_URL)).{.thr |
240c0 | 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e | ow.new.\UnexpectedValueException |
240e0 | 28 27 49 6e 76 61 6c 69 64 20 75 72 6c 20 67 69 76 65 6e 20 66 6f 72 20 43 6f 6d 70 6f 73 65 72 | ('Invalid.url.given.for.Composer |
24100 | 20 72 65 70 6f 73 69 74 6f 72 79 3a 20 27 2e 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 | .repository:.'.$repoConfig['url' |
24120 | 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a | ]);.}..$this->config.=.$config;. |
24140 | 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 72 65 70 6f 43 6f 6e 66 69 67 5b 27 75 72 6c 27 5d 3b | $this->url.=.$repoConfig['url']; |
24160 | 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 20 3d | .$this->io.=.$io;.$this->cache.= |
24180 | 20 6e 65 77 20 43 61 63 68 65 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 68 6f | .new.Cache($io,.$config->get('ho |
241a0 | 6d 65 27 29 2e 27 2f 63 61 63 68 65 2f 27 2e 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b 5e | me').'/cache/'.preg_replace('{[^ |
241c0 | 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 29 3b 0a | a-z0-9.]}i',.'-',.$this->url));. |
241e0 | 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 69 66 79 49 6e 73 74 | }.....public.function.notifyInst |
24200 | 61 6c 6c 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b | all(PackageInterface.$package).{ |
24220 | 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 55 72 6c 20 7c 7c 20 21 24 74 68 69 73 | .if.(!$this->notifyUrl.||.!$this |
24240 | 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 6e 6f 74 69 66 79 2d 6f 6e 2d 69 6e 73 74 61 6c 6c | ->config->get('notify-on-install |
24260 | 27 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 24 75 72 6c 20 3d 20 73 74 72 5f 72 65 | ')).{.return;.}....$url.=.str_re |
24280 | 70 6c 61 63 65 28 27 25 70 61 63 6b 61 67 65 25 27 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 | place('%package%',.$package->get |
242a0 | 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 55 72 6c 29 3b | PrettyName(),.$this->notifyUrl); |
242c0 | 0a 0a 24 70 61 72 61 6d 73 20 3d 20 61 72 72 61 79 28 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 | ..$params.=.array(.'version'.=>. |
242e0 | 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 27 76 | $package->getPrettyVersion(),.'v |
24300 | 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2d 3e | ersion_normalized'.=>.$package-> |
24320 | 67 65 74 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a 24 6f 70 74 73 20 3d 20 61 72 72 61 79 28 27 | getVersion(),.);.$opts.=.array(' |
24340 | 68 74 74 70 27 20 3d 3e 0a 61 72 72 61 79 28 0a 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 50 4f 53 | http'.=>.array(.'method'.=>.'POS |
24360 | 54 27 2c 0a 27 68 65 61 64 65 72 27 20 3d 3e 20 27 43 6f 6e 74 65 6e 74 2d 74 79 70 65 3a 20 61 | T',.'header'.=>.'Content-type:.a |
24380 | 70 70 6c 69 63 61 74 69 6f 6e 2f 78 2d 77 77 77 2d 66 6f 72 6d 2d 75 72 6c 65 6e 63 6f 64 65 64 | pplication/x-www-form-urlencoded |
243a0 | 27 2c 0a 27 63 6f 6e 74 65 6e 74 27 20 3d 3e 20 68 74 74 70 5f 62 75 69 6c 64 5f 71 75 65 72 79 | ',.'content'.=>.http_build_query |
243c0 | 28 24 70 61 72 61 6d 73 2c 20 27 27 2c 20 27 26 27 29 2c 0a 27 74 69 6d 65 6f 75 74 27 20 3d 3e | ($params,.'',.'&'),.'timeout'.=> |
243e0 | 20 33 2c 0a 29 0a 29 3b 0a 0a 24 63 6f 6e 74 65 78 74 20 3d 20 73 74 72 65 61 6d 5f 63 6f 6e 74 | .3,.).);..$context.=.stream_cont |
24400 | 65 78 74 5f 63 72 65 61 74 65 28 24 6f 70 74 73 29 3b 0a 40 66 69 6c 65 5f 67 65 74 5f 63 6f 6e | ext_create($opts);.@file_get_con |
24420 | 74 65 6e 74 73 28 24 75 72 6c 2c 20 66 61 6c 73 65 2c 20 24 63 6f 6e 74 65 78 74 29 3b 0a 7d 0a | tents($url,.false,.$context);.}. |
24440 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 | .protected.function.initialize() |
24460 | 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 69 66 20 28 21 65 | .{.parent::initialize();..if.(!e |
24480 | 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 20 26 26 20 27 68 | xtension_loaded('openssl').&&.'h |
244a0 | 74 74 70 73 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 75 72 6c 2c 20 30 2c 20 | ttps'.===.substr($this->url,.0,. |
244c0 | 35 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f | 5)).{.throw.new.\RuntimeExceptio |
244e0 | 6e 28 27 59 6f 75 20 6d 75 73 74 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 | n('You.must.enable.the.openssl.e |
24500 | 78 74 65 6e 73 69 6f 6e 20 69 6e 20 79 6f 75 72 20 70 68 70 2e 69 6e 69 20 74 6f 20 6c 6f 61 64 | xtension.in.your.php.ini.to.load |
24520 | 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 72 6f 6d 20 27 2e 24 74 68 69 73 2d 3e 75 72 6c 29 3b | .information.from.'.$this->url); |
24540 | 0a 7d 0a 0a 74 72 79 20 7b 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 | .}..try.{.$json.=.new.JsonFile($ |
24560 | 74 68 69 73 2d 3e 75 72 6c 2e 27 2f 70 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 2c 20 6e 65 77 20 | this->url.'/packages.json',.new. |
24580 | 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 69 6f 29 29 3b 0a 24 64 | RemoteFilesystem($this->io));.$d |
245a0 | 61 74 61 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 | ata.=.$json->read();..if.(!empty |
245c0 | 28 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 27 5d 29 29 20 7b 0a 69 66 20 28 27 2f 27 20 3d 3d 3d | ($data['notify'])).{.if.('/'.=== |
245e0 | 20 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 27 5d 5b 30 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f | .$data['notify'][0]).{.$this->no |
24600 | 74 69 66 79 55 72 6c 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 68 74 74 70 73 3f | tifyUrl.=.preg_replace('{(https? |
24620 | 3a 2f 2f 5b 5e 2f 5d 2b 29 2e 2a 7d 69 27 2c 20 27 24 31 27 20 2e 20 24 64 61 74 61 5b 27 6e 6f | ://[^/]+).*}i',.'$1'...$data['no |
24640 | 74 69 66 79 27 5d 2c 20 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 | tify'],.$this->url);.}.else.{.$t |
24660 | 68 69 73 2d 3e 6e 6f 74 69 66 79 55 72 6c 20 3d 20 24 64 61 74 61 5b 27 6e 6f 74 69 66 79 27 5d | his->notifyUrl.=.$data['notify'] |
24680 | 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 77 72 69 74 65 28 27 70 61 63 6b | ;.}.}..$this->cache->write('pack |
246a0 | 61 67 65 73 2e 6a 73 6f 6e 27 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 29 29 3b | ages.json',.json_encode($data)); |
246c0 | 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 24 | .}.catch.(\Exception.$e).{.if.($ |
246e0 | 63 6f 6e 74 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 72 65 61 64 28 27 70 | contents.=.$this->cache->read('p |
24700 | 61 63 6b 61 67 65 73 2e 6a 73 6f 6e 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 | ackages.json')).{.$this->io->wri |
24720 | 74 65 28 27 3c 77 61 72 6e 69 6e 67 3e 27 2e 24 74 68 69 73 2d 3e 75 72 6c 2e 27 20 63 6f 75 6c | te('<warning>'.$this->url.'.coul |
24740 | 64 20 6e 6f 74 20 62 65 20 6c 6f 61 64 65 64 2c 20 70 61 63 6b 61 67 65 20 69 6e 66 6f 72 6d 61 | d.not.be.loaded,.package.informa |
24760 | 74 69 6f 6e 20 77 61 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 6c 6f 63 61 6c 20 63 | tion.was.loaded.from.the.local.c |
24780 | 61 63 68 65 20 61 6e 64 20 6d 61 79 20 62 65 20 6f 75 74 20 6f 66 20 64 61 74 65 3c 2f 77 61 72 | ache.and.may.be.out.of.date</war |
247a0 | 6e 69 6e 67 3e 27 29 3b 0a 24 64 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 63 6f | ning>');.$data.=.json_decode($co |
247c0 | 6e 74 65 6e 74 73 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 24 65 | ntents,.true);.}.else.{.throw.$e |
247e0 | 3b 0a 7d 0a 7d 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 61 79 4c 6f 61 64 65 72 | ;.}.}..$loader.=.new.ArrayLoader |
24800 | 28 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6c 6f 61 64 65 | ();.$this->loadRepository($loade |
24820 | 72 2c 20 24 64 61 74 61 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | r,.$data);.}..protected.function |
24840 | 20 6c 6f 61 64 52 65 70 6f 73 69 74 6f 72 79 28 41 72 72 61 79 4c 6f 61 64 65 72 20 24 6c 6f 61 | .loadRepository(ArrayLoader.$loa |
24860 | 64 65 72 2c 20 24 64 61 74 61 29 0a 7b 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 64 61 74 61 | der,.$data).{...if.(!isset($data |
24880 | 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 26 26 20 21 69 73 73 65 74 28 24 64 61 74 61 5b 27 69 | ['packages']).&&.!isset($data['i |
248a0 | 6e 63 6c 75 64 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 20 61 73 20 | ncludes'])).{.foreach.($data.as. |
248c0 | 24 70 6b 67 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 70 6b 67 5b 27 76 65 72 73 69 6f 6e 73 27 | $pkg).{.foreach.($pkg['versions' |
248e0 | 5d 20 61 73 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 61 63 6b | ].as.$metadata).{.$this->addPack |
24900 | 61 67 65 28 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 6d 65 74 61 64 61 74 61 29 29 3b 0a 7d | age($loader->load($metadata));.} |
24920 | 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 | .}..return;.}..if.(isset($data[' |
24940 | 70 61 63 6b 61 67 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 5b 27 70 | packages'])).{.foreach.($data['p |
24960 | 61 63 6b 61 67 65 73 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 20 3d 3e 20 24 76 65 72 73 69 6f | ackages'].as.$package.=>.$versio |
24980 | 6e 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 69 6f 6e 73 20 61 73 20 24 76 65 72 | ns).{.foreach.($versions.as.$ver |
249a0 | 73 69 6f 6e 20 3d 3e 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 50 | sion.=>.$metadata).{.$this->addP |
249c0 | 61 63 6b 61 67 65 28 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 6d 65 74 61 64 61 74 61 29 29 | ackage($loader->load($metadata)) |
249e0 | 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 | ;.}.}.}..if.(isset($data['includ |
24a00 | 65 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 61 74 61 5b 27 69 6e 63 6c 75 64 65 | es'])).{.foreach.($data['include |
24a20 | 73 27 5d 20 61 73 20 24 69 6e 63 6c 75 64 65 20 3d 3e 20 24 6d 65 74 61 64 61 74 61 29 20 7b 0a | s'].as.$include.=>.$metadata).{. |
24a40 | 69 66 20 28 24 74 68 69 73 2d 3e 63 61 63 68 65 2d 3e 73 68 61 31 28 24 69 6e 63 6c 75 64 65 29 | if.($this->cache->sha1($include) |
24a60 | 20 3d 3d 3d 20 24 6d 65 74 61 64 61 74 61 5b 27 73 68 61 31 27 5d 29 20 7b 0a 24 69 6e 63 6c 75 | .===.$metadata['sha1']).{.$inclu |
24a80 | 64 65 64 44 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 6f 64 65 28 24 74 68 69 73 2d 3e 63 61 63 | dedData.=.json_decode($this->cac |
24aa0 | 68 65 2d 3e 72 65 61 64 28 24 69 6e 63 6c 75 64 65 29 2c 20 74 72 75 65 29 3b 0a 7d 20 65 6c 73 | he->read($include),.true);.}.els |
24ac0 | 65 20 7b 0a 24 6a 73 6f 6e 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 74 68 69 73 2d 3e | e.{.$json.=.new.JsonFile($this-> |
24ae0 | 75 72 6c 2e 27 2f 27 2e 24 69 6e 63 6c 75 64 65 2c 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 | url.'/'.$include,.new.RemoteFile |
24b00 | 73 79 73 74 65 6d 28 24 74 68 69 73 2d 3e 69 6f 29 29 3b 0a 24 69 6e 63 6c 75 64 65 64 44 61 74 | system($this->io));.$includedDat |
24b20 | 61 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 24 74 68 69 73 2d 3e 63 61 63 68 65 2d | a.=.$json->read();.$this->cache- |
24b40 | 3e 77 72 69 74 65 28 24 69 6e 63 6c 75 64 65 2c 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 69 6e | >write($include,.json_encode($in |
24b60 | 63 6c 75 64 65 64 44 61 74 61 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 52 65 70 6f 73 | cludedData));.}.$this->loadRepos |
24b80 | 69 74 6f 72 79 28 24 6c 6f 61 64 65 72 2c 20 24 69 6e 63 6c 75 64 65 64 44 61 74 61 29 3b 0a 7d | itory($loader,.$includedData);.} |
24ba0 | 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | .}.}.}.<?php............namespac |
24bc0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a | e.Composer\Repository\Pear;..... |
24be0 | 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 | ..class.DependencyInfo.{.private |
24c00 | 20 24 72 65 71 75 69 72 65 73 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 61 6c 73 3b 0a | .$requires;.private.$optionals;. |
24c20 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
24c40 | 28 24 72 65 71 75 69 72 65 73 2c 20 24 6f 70 74 69 6f 6e 61 6c 73 29 0a 7b 0a 24 74 68 69 73 2d | ($requires,.$optionals).{.$this- |
24c60 | 3e 72 65 71 75 69 72 65 73 20 3d 20 24 72 65 71 75 69 72 65 73 3b 0a 24 74 68 69 73 2d 3e 6f 70 | >requires.=.$requires;.$this->op |
24c80 | 74 69 6f 6e 61 6c 73 20 3d 20 24 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | tionals.=.$optionals;.}.....publ |
24ca0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 | ic.function.getRequires().{.retu |
24cc0 | 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | rn.$this->requires;.}.....public |
24ce0 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 61 6c 73 28 29 0a 7b 0a 72 65 74 75 72 | .function.getOptionals().{.retur |
24d00 | 6e 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | n.$this->optionals;.}.}.<?php... |
24d20 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f | .........namespace.Composer\Repo |
24d40 | 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 | sitory\Pear;.......class.Package |
24d60 | 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | DependencyParser.{.......public. |
24d80 | 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 | function.buildDependencyInfo($de |
24da0 | 70 41 72 72 61 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 64 65 70 41 72 72 61 | pArray).{.if.(!is_array($depArra |
24dc0 | 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 | y)).{.return.new.DependencyInfo( |
24de0 | 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 73 2d | array(),.array());.}.if.(!$this- |
24e00 | 3e 69 73 48 61 73 68 28 24 64 65 70 41 72 72 61 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 65 77 | >isHash($depArray)).{.return.new |
24e20 | 20 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 65 | .DependencyInfo($this->buildDepe |
24e40 | 6e 64 65 6e 63 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 2c 20 61 72 72 61 79 28 29 | ndency10Info($depArray),.array() |
24e60 | 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 65 6e 64 65 | );.}..return.$this->buildDepende |
24e80 | 6e 63 79 32 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | ncy20Info($depArray);.}......... |
24ea0 | 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 65 6e | .....private.function.buildDepen |
24ec0 | 64 65 6e 63 79 31 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 73 74 61 74 69 63 20 | dency10Info($depArray).{.static. |
24ee0 | 24 64 65 70 31 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 20 3d 20 61 72 72 61 79 28 27 68 61 73 | $dep10toOperatorMap.=.array('has |
24f00 | 27 3d 3e 27 3d 3d 27 2c 20 27 65 71 27 20 3d 3e 20 27 3d 3d 27 2c 20 27 67 65 27 20 3d 3e 20 27 | '=>'==',.'eq'.=>.'==',.'ge'.=>.' |
24f20 | 3e 3d 27 2c 20 27 67 74 27 20 3d 3e 20 27 3e 27 2c 20 27 6c 65 27 20 3d 3e 20 27 3c 3d 27 2c 20 | >=',.'gt'.=>.'>',.'le'.=>.'<=',. |
24f40 | 27 6c 74 27 20 3d 3e 20 27 3c 27 2c 20 27 6e 6f 74 27 20 3d 3e 20 27 21 3d 27 29 3b 0a 0a 24 72 | 'lt'.=>.'<',.'not'.=>.'!=');..$r |
24f60 | 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 41 | esult.=.array();..foreach.($depA |
24f80 | 72 72 61 79 20 61 73 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 64 | rray.as.$depItem).{.if.(empty($d |
24fa0 | 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 29 20 7c 7c 20 21 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 | epItem['rel']).||.!array_key_exi |
24fc0 | 73 74 73 28 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 2c 20 24 64 65 70 31 30 74 6f 4f 70 65 | sts($depItem['rel'],.$dep10toOpe |
24fe0 | 72 61 74 6f 72 4d 61 70 29 29 20 7b 0a 0a 20 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 64 65 70 | ratorMap)).{...continue;.}..$dep |
25000 | 54 79 70 65 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 6f 70 74 69 6f 6e 61 6c | Type.=.!empty($depItem['optional |
25020 | 27 5d 29 20 26 26 20 27 79 65 73 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 6f 70 74 69 6f 6e | ']).&&.'yes'.==.$depItem['option |
25040 | 61 6c 27 5d 0a 3f 20 27 6f 70 74 69 6f 6e 61 6c 27 0a 3a 20 27 72 65 71 75 69 72 65 64 27 3b 0a | al'].?.'optional'.:.'required';. |
25060 | 24 64 65 70 54 79 70 65 20 3d 20 27 6e 6f 74 27 20 3d 3d 20 24 64 65 70 49 74 65 6d 5b 27 72 65 | $depType.=.'not'.==.$depItem['re |
25080 | 6c 27 5d 0a 3f 20 27 63 6f 6e 66 6c 69 63 74 73 27 0a 3a 20 24 64 65 70 54 79 70 65 3b 0a 0a 24 | l'].?.'conflicts'.:.$depType;..$ |
250a0 | 64 65 70 56 65 72 73 69 6f 6e 20 3d 20 21 65 6d 70 74 79 28 24 64 65 70 49 74 65 6d 5b 27 76 65 | depVersion.=.!empty($depItem['ve |
250c0 | 72 73 69 6f 6e 27 5d 29 20 3f 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 | rsion']).?.$this->parseVersion($ |
250e0 | 64 65 70 49 74 65 6d 5b 27 76 65 72 73 69 6f 6e 27 5d 29 20 3a 20 27 2a 27 3b 0a 0a 0a 20 24 64 | depItem['version']).:.'*';....$d |
25100 | 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 28 27 68 61 73 27 20 3d 3d 20 | epVersionConstraint.=.('has'.==. |
25120 | 24 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 20 7c 7c 20 27 6e 6f 74 27 20 3d 3d 20 24 64 65 70 | $depItem['rel'].||.'not'.==.$dep |
25140 | 49 74 65 6d 5b 27 72 65 6c 27 5d 29 20 26 26 20 27 2a 27 20 3d 3d 20 24 64 65 70 56 65 72 73 69 | Item['rel']).&&.'*'.==.$depVersi |
25160 | 6f 6e 0a 3f 20 27 2a 27 0a 3a 20 24 64 65 70 31 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 | on.?.'*'.:.$dep10toOperatorMap[$ |
25180 | 64 65 70 49 74 65 6d 5b 27 72 65 6c 27 5d 5d 20 2e 20 24 64 65 70 56 65 72 73 69 6f 6e 3b 0a 0a | depItem['rel']]...$depVersion;.. |
251a0 | 73 77 69 74 63 68 20 28 24 64 65 70 49 74 65 6d 5b 27 74 79 70 65 27 5d 29 20 7b 0a 63 61 73 65 | switch.($depItem['type']).{.case |
251c0 | 20 27 70 68 70 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 70 68 70 27 3b | .'php':.$depChannelName.=.'php'; |
251e0 | 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 | .$depPackageName.=.'';.break;.ca |
25200 | 73 65 20 27 70 6b 67 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 21 65 6d 70 | se.'pkg':.$depChannelName.=.!emp |
25220 | 74 79 28 24 64 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 29 20 3f 20 24 64 65 70 49 74 | ty($depItem['channel']).?.$depIt |
25240 | 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 20 3a 20 27 70 65 61 72 2e 70 68 70 2e 6e 65 74 27 3b 0a | em['channel'].:.'pear.php.net';. |
25260 | 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d 5b 27 6e 61 6d 65 | $depPackageName.=.$depItem['name |
25280 | 27 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 65 78 74 27 3a 0a 24 64 65 70 43 68 61 6e 6e | '];.break;.case.'ext':.$depChann |
252a0 | 65 6c 4e 61 6d 65 20 3d 20 27 65 78 74 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 | elName.=.'ext';.$depPackageName. |
252c0 | 3d 20 24 64 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 | =.$depItem['name'];.break;.case. |
252e0 | 27 6f 73 27 3a 0a 63 61 73 65 20 27 73 61 70 69 27 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 | 'os':.case.'sapi':.$depChannelNa |
25300 | 6d 65 20 3d 20 27 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b 0a 62 | me.=.'';.$depPackageName.=.'';.b |
25320 | 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d | reak;.default:.$depChannelName.= |
25340 | 20 27 27 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 27 27 3b 0a 62 72 65 61 6b | .'';.$depPackageName.=.'';.break |
25360 | 3b 0a 7d 0a 0a 69 66 20 28 27 27 20 21 3d 20 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 29 20 | ;.}..if.(''.!=.$depChannelName). |
25380 | 7b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 | {.$result[].=.new.DependencyCons |
253a0 | 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e | traint(.$depType,.$depVersionCon |
253c0 | 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 64 65 70 50 61 | straint,.$depChannelName,.$depPa |
253e0 | 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 | ckageName.);.}.}..return.$result |
25400 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c | ;.}........private.function.buil |
25420 | 64 44 65 70 65 6e 64 65 6e 63 79 32 30 49 6e 66 6f 28 24 64 65 70 41 72 72 61 79 29 0a 7b 0a 24 | dDependency20Info($depArray).{.$ |
25440 | 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e 61 6c 73 20 3d 20 61 | result.=.array();.$optionals.=.a |
25460 | 72 72 61 79 28 29 3b 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 20 3d 20 61 72 72 61 | rray();.$defaultOptionals.=.arra |
25480 | 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 41 72 72 61 79 20 61 73 20 24 64 65 70 54 | y();.foreach.($depArray.as.$depT |
254a0 | 79 70 65 20 3d 3e 20 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 20 7b 0a 69 66 20 28 21 69 73 5f | ype.=>.$depTypeGroup).{.if.(!is_ |
254c0 | 61 72 72 61 79 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 | array($depTypeGroup)).{.continue |
254e0 | 3b 0a 7d 0a 69 66 20 28 27 72 65 71 75 69 72 65 64 27 20 3d 3d 20 24 64 65 70 54 79 70 65 20 7c | ;.}.if.('required'.==.$depType.| |
25500 | 7c 20 27 6f 70 74 69 6f 6e 61 6c 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 7b 0a 66 6f 72 65 | |.'optional'.==.$depType).{.fore |
25520 | 61 63 68 20 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 20 61 73 20 24 64 65 70 49 74 65 6d 54 79 | ach.($depTypeGroup.as.$depItemTy |
25540 | 70 65 20 3d 3e 20 24 64 65 70 49 74 65 6d 29 20 7b 0a 73 77 69 74 63 68 20 28 24 64 65 70 49 74 | pe.=>.$depItem).{.switch.($depIt |
25560 | 65 6d 54 79 70 65 29 20 7b 0a 63 61 73 65 20 27 70 68 70 27 3a 0a 24 72 65 73 75 6c 74 5b 5d 20 | emType).{.case.'php':.$result[]. |
25580 | 3d 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 | =.new.DependencyConstraint(.$dep |
255a0 | 54 79 70 65 2c 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 | Type,.$this->parse20VersionConst |
255c0 | 72 61 69 6e 74 28 24 64 65 70 49 74 65 6d 29 2c 0a 27 70 68 70 27 2c 0a 27 27 0a 29 3b 0a 62 72 | raint($depItem),.'php',.''.);.br |
255e0 | 65 61 6b 3b 0a 63 61 73 65 20 27 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 68 | eak;.case.'package':.$deps.=.$th |
25600 | 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 | is->buildDepPackageConstraints($ |
25620 | 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 | depItem,.$depType);.$result.=.ar |
25640 | 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 65 70 73 29 3b 0a 62 72 65 61 6b | ray_merge($result,.$deps);.break |
25660 | 3b 0a 63 61 73 65 20 27 65 78 74 65 6e 73 69 6f 6e 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 68 69 | ;.case.'extension':.$deps.=.$thi |
25680 | 73 2d 3e 62 75 69 6c 64 44 65 70 45 78 74 65 6e 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 73 28 | s->buildDepExtensionConstraints( |
256a0 | 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 | $depItem,.$depType);.$result.=.a |
256c0 | 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 6c 74 2c 20 24 64 65 70 73 29 3b 0a 62 72 65 61 | rray_merge($result,.$deps);.brea |
256e0 | 6b 3b 0a 63 61 73 65 20 27 73 75 62 70 61 63 6b 61 67 65 27 3a 0a 24 64 65 70 73 20 3d 20 24 74 | k;.case.'subpackage':.$deps.=.$t |
25700 | 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 | his->buildDepPackageConstraints( |
25720 | 24 64 65 70 49 74 65 6d 2c 20 27 72 65 70 6c 61 63 65 73 27 29 3b 0a 24 64 65 66 61 75 6c 74 4f | $depItem,.'replaces');.$defaultO |
25740 | 70 74 69 6f 6e 61 6c 73 20 2b 3d 20 24 64 65 70 73 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 | ptionals.+=.$deps;.break;.case.' |
25760 | 6f 73 27 3a 0a 63 61 73 65 20 27 70 65 61 72 69 6e 73 74 61 6c 6c 65 72 27 3a 0a 62 72 65 61 6b | os':.case.'pearinstaller':.break |
25780 | 3b 0a 64 65 66 61 75 6c 74 3a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 | ;.default:.break;.}.}.}.elseif.( |
257a0 | 27 67 72 6f 75 70 27 20 3d 3d 20 24 64 65 70 54 79 70 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 | 'group'.==.$depType).{.if.($this |
257c0 | 2d 3e 69 73 48 61 73 68 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 29 20 7b 0a 24 64 65 70 54 | ->isHash($depTypeGroup)).{.$depT |
257e0 | 79 70 65 47 72 6f 75 70 20 3d 20 61 72 72 61 79 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 29 3b | ypeGroup.=.array($depTypeGroup); |
25800 | 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 54 79 70 65 47 72 6f 75 70 20 61 73 20 24 64 | .}..foreach.($depTypeGroup.as.$d |
25820 | 65 70 49 74 65 6d 29 20 7b 0a 24 67 72 6f 75 70 4e 61 6d 65 20 3d 20 24 64 65 70 49 74 65 6d 5b | epItem).{.$groupName.=.$depItem[ |
25840 | 27 61 74 74 72 69 62 73 27 5d 5b 27 6e 61 6d 65 27 5d 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 | 'attribs']['name'];.if.(!isset($ |
25860 | 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 29 29 20 7b 0a 24 6f 70 74 69 6f | optionals[$groupName])).{.$optio |
25880 | 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 | nals[$groupName].=.array();.}..i |
258a0 | 66 20 28 69 73 73 65 74 28 24 64 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b 61 67 65 27 5d 29 | f.(isset($depItem['subpackage']) |
258c0 | 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 24 67 72 6f 75 70 4e 61 6d 65 5d 20 2b 3d 20 24 74 | ).{.$optionals[$groupName].+=.$t |
258e0 | 68 69 73 2d 3e 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 | his->buildDepPackageConstraints( |
25900 | 24 64 65 70 49 74 65 6d 5b 27 73 75 62 70 61 63 6b 61 67 65 27 5d 2c 20 27 72 65 70 6c 61 63 65 | $depItem['subpackage'],.'replace |
25920 | 73 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 73 75 6c 74 20 2b 3d 20 24 74 68 69 73 2d 3e | s');.}.else.{.$result.+=.$this-> |
25940 | 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 70 49 | buildDepPackageConstraints($depI |
25960 | 74 65 6d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 27 6f 70 74 69 6f 6e 61 6c 27 29 3b 0a 7d 0a 7d | tem['package'],.'optional');.}.} |
25980 | 0a 7d 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 61 6c | .}.}..if.(count($defaultOptional |
259a0 | 73 29 20 3e 20 30 29 20 7b 0a 24 6f 70 74 69 6f 6e 61 6c 73 5b 27 2a 27 5d 20 3d 20 24 64 65 66 | s).>.0).{.$optionals['*'].=.$def |
259c0 | 61 75 6c 74 4f 70 74 69 6f 6e 61 6c 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 44 65 70 | aultOptionals;.}..return.new.Dep |
259e0 | 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 72 65 73 75 6c 74 2c 20 24 6f 70 74 69 6f 6e 61 6c 73 29 | endencyInfo($result,.$optionals) |
25a00 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 | ;.}.........private.function.bui |
25a20 | 6c 64 44 65 70 45 78 74 65 6e 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 64 65 70 49 74 | ldDepExtensionConstraints($depIt |
25a40 | 65 6d 2c 20 24 64 65 70 54 79 70 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 48 61 73 | em,.$depType).{.if.($this->isHas |
25a60 | 68 28 24 64 65 70 49 74 65 6d 29 29 20 7b 0a 24 64 65 70 49 74 65 6d 20 3d 20 61 72 72 61 79 28 | h($depItem)).{.$depItem.=.array( |
25a80 | 24 64 65 70 49 74 65 6d 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b | $depItem);.}..$result.=.array(); |
25aa0 | 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 49 74 65 6d 20 61 73 20 24 73 75 62 44 65 70 49 74 65 | .foreach.($depItem.as.$subDepIte |
25ac0 | 6d 29 20 7b 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 27 65 78 74 27 3b 0a 24 64 | m).{.$depChannelName.=.'ext';.$d |
25ae0 | 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 73 75 62 44 65 70 49 74 65 6d 5b 27 6e 61 6d | epPackageName.=.$subDepItem['nam |
25b00 | 65 27 5d 3b 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 | e'];.$depVersionConstraint.=.$th |
25b20 | 69 73 2d 3e 70 61 72 73 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 73 75 | is->parse20VersionConstraint($su |
25b40 | 62 44 65 70 49 74 65 6d 29 3b 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 | bDepItem);..$result[].=.new.Depe |
25b60 | 6e 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 | ndencyConstraint(.$depType,.$dep |
25b80 | 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 | VersionConstraint,.$depChannelNa |
25ba0 | 6d 65 2c 0a 24 64 65 70 50 61 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e | me,.$depPackageName.);.}..return |
25bc0 | 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 | .$result;.}.........private.func |
25be0 | 74 69 6f 6e 20 62 75 69 6c 64 44 65 70 50 61 63 6b 61 67 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 | tion.buildDepPackageConstraints( |
25c00 | 24 64 65 70 49 74 65 6d 2c 20 24 64 65 70 54 79 70 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d | $depItem,.$depType).{.if.($this- |
25c20 | 3e 69 73 48 61 73 68 28 24 64 65 70 49 74 65 6d 29 29 20 7b 0a 24 64 65 70 49 74 65 6d 20 3d 20 | >isHash($depItem)).{.$depItem.=. |
25c40 | 61 72 72 61 79 28 24 64 65 70 49 74 65 6d 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 | array($depItem);.}..$result.=.ar |
25c60 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 70 49 74 65 6d 20 61 73 20 24 73 75 62 | ray();.foreach.($depItem.as.$sub |
25c80 | 44 65 70 49 74 65 6d 29 20 7b 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 24 73 75 | DepItem).{.$depChannelName.=.$su |
25ca0 | 62 44 65 70 49 74 65 6d 5b 27 63 68 61 6e 6e 65 6c 27 5d 3b 0a 24 64 65 70 50 61 63 6b 61 67 65 | bDepItem['channel'];.$depPackage |
25cc0 | 4e 61 6d 65 20 3d 20 24 73 75 62 44 65 70 49 74 65 6d 5b 27 6e 61 6d 65 27 5d 3b 0a 24 64 65 70 | Name.=.$subDepItem['name'];.$dep |
25ce0 | 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 | VersionConstraint.=.$this->parse |
25d00 | 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 73 75 62 44 65 70 49 74 65 6d 29 | 20VersionConstraint($subDepItem) |
25d20 | 3b 0a 69 66 20 28 69 73 73 65 74 28 24 73 75 62 44 65 70 49 74 65 6d 5b 27 63 6f 6e 66 6c 69 63 | ;.if.(isset($subDepItem['conflic |
25d40 | 74 73 27 5d 29 29 20 7b 0a 24 64 65 70 54 79 70 65 20 3d 20 27 63 6f 6e 66 6c 69 63 74 73 27 3b | ts'])).{.$depType.=.'conflicts'; |
25d60 | 0a 7d 0a 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 6e 65 77 20 44 65 70 65 6e 64 65 6e 63 79 43 6f | .}..$result[].=.new.DependencyCo |
25d80 | 6e 73 74 72 61 69 6e 74 28 0a 24 64 65 70 54 79 70 65 2c 0a 24 64 65 70 56 65 72 73 69 6f 6e 43 | nstraint(.$depType,.$depVersionC |
25da0 | 6f 6e 73 74 72 61 69 6e 74 2c 0a 24 64 65 70 43 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 64 65 70 | onstraint,.$depChannelName,.$dep |
25dc0 | 50 61 63 6b 61 67 65 4e 61 6d 65 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 | PackageName.);.}..return.$result |
25de0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 | ;.}........private.function.pars |
25e00 | 65 32 30 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 61 72 72 61 79 20 24 64 61 74 61 | e20VersionConstraint(array.$data |
25e20 | 29 0a 7b 0a 73 74 61 74 69 63 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 20 3d | ).{.static.$dep20toOperatorMap.= |
25e40 | 20 61 72 72 61 79 28 27 68 61 73 27 3d 3e 27 3d 3d 27 2c 20 27 6d 69 6e 27 20 3d 3e 20 27 3e 3d | .array('has'=>'==',.'min'.=>.'>= |
25e60 | 27 2c 20 27 6d 61 78 27 20 3d 3e 20 27 3c 3d 27 2c 20 27 65 78 63 6c 75 64 65 27 20 3d 3e 20 27 | ',.'max'.=>.'<=',.'exclude'.=>.' |
25e80 | 21 3d 27 29 3b 0a 0a 24 76 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 76 61 6c | !=');..$versions.=.array();.$val |
25ea0 | 75 65 73 20 3d 20 61 72 72 61 79 5f 69 6e 74 65 72 73 65 63 74 5f 6b 65 79 28 24 64 61 74 61 2c | ues.=.array_intersect_key($data, |
25ec0 | 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 29 3b 0a 69 66 20 28 30 20 3d 3d 20 | .$dep20toOperatorMap);.if.(0.==. |
25ee0 | 63 6f 75 6e 74 28 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 2a 27 3b 0a 7d 0a | count($values)).{.return.'*';.}. |
25f00 | 69 66 20 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d 29 20 26 26 20 69 73 73 | if.(isset($values['min']).&&.iss |
25f20 | 65 74 28 24 76 61 6c 75 65 73 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 26 26 20 24 64 61 74 61 5b | et($values['exclude']).&&.$data[ |
25f40 | 27 6d 69 6e 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 7b 0a 24 76 | 'min'].==.$data['exclude']).{.$v |
25f60 | 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 27 3e 27 20 2e 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 | ersions[].=.'>'...$this->parseVe |
25f80 | 72 73 69 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 69 6e 27 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 | rsion($values['min']);.}.elseif. |
25fa0 | 28 69 73 73 65 74 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 20 26 26 20 69 73 73 65 74 28 | (isset($values['max']).&&.isset( |
25fc0 | 24 76 61 6c 75 65 73 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 26 26 20 24 64 61 74 61 5b 27 6d 61 | $values['exclude']).&&.$data['ma |
25fe0 | 78 27 5d 20 3d 3d 20 24 64 61 74 61 5b 27 65 78 63 6c 75 64 65 27 5d 29 20 7b 0a 24 76 65 72 73 | x'].==.$data['exclude']).{.$vers |
26000 | 69 6f 6e 73 5b 5d 20 3d 20 27 3c 27 20 2e 20 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 | ions[].=.'<'...$this->parseVersi |
26020 | 6f 6e 28 24 76 61 6c 75 65 73 5b 27 6d 61 78 27 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 | on($values['max']);.}.else.{.for |
26040 | 65 61 63 68 20 28 24 76 61 6c 75 65 73 20 61 73 20 24 6f 70 20 3d 3e 20 24 76 65 72 73 69 6f 6e | each.($values.as.$op.=>.$version |
26060 | 29 20 7b 0a 69 66 20 28 27 65 78 63 6c 75 64 65 27 20 3d 3d 20 24 6f 70 20 26 26 20 69 73 5f 61 | ).{.if.('exclude'.==.$op.&&.is_a |
26080 | 72 72 61 79 28 24 76 65 72 73 69 6f 6e 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 65 72 73 | rray($version)).{.foreach.($vers |
260a0 | 69 6f 6e 20 61 73 20 24 76 65 72 73 69 6f 6e 50 61 72 74 29 20 7b 0a 24 76 65 72 73 69 6f 6e 73 | ion.as.$versionPart).{.$versions |
260c0 | 5b 5d 20 3d 20 24 64 65 70 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 6f 70 5d 20 2e 20 | [].=.$dep20toOperatorMap[$op]... |
260e0 | 24 74 68 69 73 2d 3e 70 61 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 50 61 72 74 | $this->parseVersion($versionPart |
26100 | 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 73 5b 5d 20 3d 20 24 64 65 70 | );.}.}.else.{.$versions[].=.$dep |
26120 | 32 30 74 6f 4f 70 65 72 61 74 6f 72 4d 61 70 5b 24 6f 70 5d 20 2e 20 24 74 68 69 73 2d 3e 70 61 | 20toOperatorMap[$op]...$this->pa |
26140 | 72 73 65 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 | rseVersion($version);.}.}.}..ret |
26160 | 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 27 2c 20 24 76 65 72 73 69 6f 6e 73 29 3b 0a 7d 0a 0a | urn.implode(',',.$versions);.}.. |
26180 | 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 56 65 72 73 | ......private.function.parseVers |
261a0 | 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 | ion($version).{.if.(preg_match(' |
261c0 | 7b 5e 76 3f 28 5c 64 7b 31 2c 33 7d 29 28 5c 2e 5c 64 2b 29 3f 28 5c 2e 5c 64 2b 29 3f 28 5c 2e | {^v?(\d{1,3})(\.\d+)?(\.\d+)?(\. |
261e0 | 5c 64 2b 29 3f 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b | \d+)?}i',.$version,.$matches)).{ |
26200 | 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 0a 2e 28 21 65 6d 70 74 79 | .$version.=.$matches[1]..(!empty |
26220 | 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 3a 20 27 2e | ($matches[2]).?.$matches[2].:.'. |
26240 | 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 3f 20 24 6d 61 74 | 0')..(!empty($matches[3]).?.$mat |
26260 | 63 68 65 73 5b 33 5d 20 3a 20 27 2e 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 | ches[3].:.'.0')..(!empty($matche |
26280 | 73 5b 34 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 34 5d 20 3a 20 27 2e 30 27 29 3b 0a 0a 72 65 | s[4]).?.$matches[4].:.'.0');..re |
262a0 | 74 75 72 6e 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d | turn.$version;.}..return.null;.} |
262c0 | 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 48 61 73 68 28 | ........private.function.isHash( |
262e0 | 61 72 72 61 79 20 24 61 72 72 61 79 29 0a 7b 0a 72 65 74 75 72 6e 20 21 61 72 72 61 79 5f 6b 65 | array.$array).{.return.!array_ke |
26300 | 79 5f 65 78 69 73 74 73 28 31 2c 20 24 61 72 72 61 79 29 20 26 26 20 21 61 72 72 61 79 5f 6b 65 | y_exists(1,.$array).&&.!array_ke |
26320 | 79 5f 65 78 69 73 74 73 28 30 2c 20 24 61 72 72 61 79 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | y_exists(0,.$array);.}.}.<?php.. |
26340 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 | ..........namespace.Composer\Rep |
26360 | 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 | ository\Pear;.......class.Channe |
26380 | 6c 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 | lInfo.{.private.$name;.private.$ |
263a0 | 61 6c 69 61 73 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 73 3b 0a 0a 0a 0a 0a 0a 0a | alias;.private.$packages;....... |
263c0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d | public.function.__construct($nam |
263e0 | 65 2c 20 24 61 6c 69 61 73 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 74 | e,.$alias,.array.$packages).{.$t |
26400 | 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 20 | his->name.=.$name;.$this->alias. |
26420 | 3d 20 24 61 6c 69 61 73 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 20 3d 20 24 70 61 63 | =.$alias;.$this->packages.=.$pac |
26440 | 6b 61 67 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | kages;.}.......public.function.g |
26460 | 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d | etName().{.return.$this->name;.} |
26480 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 28 | .......public.function.getAlias( |
264a0 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 0a | ).{.return.$this->alias;.}...... |
264c0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 0a 7b | .public.function.getPackages().{ |
264e0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 | .return.$this->packages;.}.}.<?p |
26500 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
26520 | 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | \Repository\Pear;..use.Composer\ |
26540 | 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 | Util\RemoteFilesystem;.........c |
26560 | 6c 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 | lass.ChannelReader.extends.BaseC |
26580 | 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a 0a 70 72 69 76 61 74 65 20 24 72 65 61 64 65 72 4d | hannelReader.{..private.$readerM |
265a0 | 61 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | ap;..public.function.__construct |
265c0 | 28 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 70 61 72 65 6e 74 | (RemoteFilesystem.$rfs).{.parent |
265e0 | 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 72 65 73 74 31 30 72 65 61 | ::__construct($rfs);..$rest10rea |
26600 | 64 65 72 20 3d 20 6e 65 77 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 64 65 72 28 24 72 | der.=.new.ChannelRest10Reader($r |
26620 | 66 73 29 3b 0a 24 72 65 73 74 31 31 72 65 61 64 65 72 20 3d 20 6e 65 77 20 43 68 61 6e 6e 65 6c | fs);.$rest11reader.=.new.Channel |
26640 | 52 65 73 74 31 31 52 65 61 64 65 72 28 24 72 66 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 61 64 | Rest11Reader($rfs);..$this->read |
26660 | 65 72 4d 61 70 20 3d 20 61 72 72 61 79 28 0a 27 52 45 53 54 31 2e 33 27 20 3d 3e 20 24 72 65 73 | erMap.=.array(.'REST1.3'.=>.$res |
26680 | 74 31 31 72 65 61 64 65 72 2c 0a 27 52 45 53 54 31 2e 32 27 20 3d 3e 20 24 72 65 73 74 31 31 72 | t11reader,.'REST1.2'.=>.$rest11r |
266a0 | 65 61 64 65 72 2c 0a 27 52 45 53 54 31 2e 31 27 20 3d 3e 20 24 72 65 73 74 31 31 72 65 61 64 65 | eader,.'REST1.1'.=>.$rest11reade |
266c0 | 72 2c 0a 27 52 45 53 54 31 2e 30 27 20 3d 3e 20 24 72 65 73 74 31 30 72 65 61 64 65 72 2c 0a 29 | r,.'REST1.0'.=>.$rest10reader,.) |
266e0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 | ;.}........public.function.read( |
26700 | 24 75 72 6c 29 0a 7b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c | $url).{.$xml.=.$this->requestXml |
26720 | 28 24 75 72 6c 2c 20 22 2f 63 68 61 6e 6e 65 6c 2e 78 6d 6c 22 29 3b 0a 0a 24 63 68 61 6e 6e 65 | ($url,."/channel.xml");..$channe |
26740 | 6c 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 6e 61 6d 65 3b 0a 24 63 68 | lName.=.(string).$xml->name;.$ch |
26760 | 61 6e 6e 65 6c 53 75 6d 6d 61 72 79 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d 6c 2d 3e 73 75 | annelSummary.=.(string).$xml->su |
26780 | 6d 6d 61 72 79 3b 0a 24 63 68 61 6e 6e 65 6c 41 6c 69 61 73 20 3d 20 28 73 74 72 69 6e 67 29 20 | mmary;.$channelAlias.=.(string). |
267a0 | 24 78 6d 6c 2d 3e 73 75 67 67 65 73 74 65 64 61 6c 69 61 73 3b 0a 0a 24 73 75 70 70 6f 72 74 65 | $xml->suggestedalias;..$supporte |
267c0 | 64 56 65 72 73 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 72 65 | dVersions.=.array_keys($this->re |
267e0 | 61 64 65 72 4d 61 70 29 3b 0a 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 20 3d | aderMap);.$selectedRestVersion.= |
26800 | 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 74 52 65 73 74 56 65 72 73 69 6f 6e 28 24 78 6d 6c 2c 20 | .$this->selectRestVersion($xml,. |
26820 | 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e 73 29 3b 0a 69 66 20 28 21 24 73 65 6c 65 63 | $supportedVersions);.if.(!$selec |
26840 | 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 | tedRestVersion).{.throw.new.\Une |
26860 | 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 50 | xpectedValueException(sprintf('P |
26880 | 45 41 52 20 72 65 70 6f 73 69 74 6f 72 79 20 25 73 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f | EAR.repository.%s.does.not.suppo |
268a0 | 72 74 73 20 61 6e 79 20 6f 66 20 25 73 20 70 72 6f 74 6f 63 6f 6c 73 2e 27 2c 20 24 75 72 6c 2c | rts.any.of.%s.protocols.',.$url, |
268c0 | 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e | .implode(',.',.$supportedVersion |
268e0 | 73 29 29 29 3b 0a 7d 0a 0a 24 72 65 61 64 65 72 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 65 72 | s)));.}..$reader.=.$this->reader |
26900 | 4d 61 70 5b 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 5b 27 76 65 72 73 69 6f | Map[$selectedRestVersion['versio |
26920 | 6e 27 5d 5d 3b 0a 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 73 20 3d 20 24 72 65 61 | n']];.$packageDefinitions.=.$rea |
26940 | 64 65 72 2d 3e 72 65 61 64 28 24 73 65 6c 65 63 74 65 64 52 65 73 74 56 65 72 73 69 6f 6e 5b 27 | der->read($selectedRestVersion[' |
26960 | 62 61 73 65 55 72 6c 27 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 43 68 61 6e 6e 65 6c 49 | baseUrl']);..return.new.ChannelI |
26980 | 6e 66 6f 28 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 63 68 61 6e 6e 65 6c 41 6c 69 61 73 2c | nfo($channelName,.$channelAlias, |
269a0 | 20 24 70 61 63 6b 61 67 65 44 65 66 69 6e 69 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | .$packageDefinitions);.}........ |
269c0 | 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 52 65 73 74 56 65 72 73 | .private.function.selectRestVers |
269e0 | 69 6f 6e 28 24 63 68 61 6e 6e 65 6c 58 6d 6c 2c 20 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 | ion($channelXml,.$supportedVersi |
26a00 | 6f 6e 73 29 0a 7b 0a 24 63 68 61 6e 6e 65 6c 58 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 | ons).{.$channelXml->registerXPat |
26a20 | 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 48 41 4e 4e 45 4c 5f 4e | hNamespace('ns',.self::CHANNEL_N |
26a40 | 53 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 75 70 70 6f 72 74 65 64 56 65 72 73 69 6f 6e 73 | S);..foreach.($supportedVersions |
26a60 | 20 61 73 20 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 78 70 61 74 68 54 65 73 74 20 3d 20 22 6e 73 | .as.$version).{.$xpathTest.=."ns |
26a80 | 3a 73 65 72 76 65 72 73 2f 6e 73 3a 70 72 69 6d 61 72 79 2f 6e 73 3a 72 65 73 74 2f 6e 73 3a 62 | :servers/ns:primary/ns:rest/ns:b |
26aa0 | 61 73 65 75 72 6c 5b 40 74 79 70 65 3d 27 7b 24 76 65 72 73 69 6f 6e 7d 27 5d 22 3b 0a 24 74 65 | aseurl[@type='{$version}']";.$te |
26ac0 | 73 74 52 65 73 75 6c 74 20 3d 20 24 63 68 61 6e 6e 65 6c 58 6d 6c 2d 3e 78 70 61 74 68 28 24 78 | stResult.=.$channelXml->xpath($x |
26ae0 | 70 61 74 68 54 65 73 74 29 3b 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 65 73 74 52 65 73 75 6c 74 | pathTest);.if.(count($testResult |
26b00 | 29 20 3e 20 30 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 27 76 65 72 73 69 6f 6e 27 20 | ).>.0).{.return.array('version'. |
26b20 | 3d 3e 20 24 76 65 72 73 69 6f 6e 2c 20 27 62 61 73 65 55 72 6c 27 20 3d 3e 20 28 73 74 72 69 6e | =>.$version,.'baseUrl'.=>.(strin |
26b40 | 67 29 20 24 74 65 73 74 52 65 73 75 6c 74 5b 30 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 | g).$testResult[0]);.}.}..return. |
26b60 | 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 | null;.}.}.<?php............names |
26b80 | 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a | pace.Composer\Repository\Pear;.. |
26ba0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 | .....class.PackageInfo.{.private |
26bc0 | 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 4e | .$channelName;.private.$packageN |
26be0 | 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 6c 69 63 65 6e 73 65 3b 0a 70 72 69 76 61 74 65 20 24 | ame;.private.$license;.private.$ |
26c00 | 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 | shortDescription;.private.$descr |
26c20 | 69 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 72 65 6c 65 61 73 65 73 3b 0a 0a 0a 0a 0a 0a | iption;.private.$releases;...... |
26c40 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 | ....public.function.__construct( |
26c60 | 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 6c 69 63 | $channelName,.$packageName,.$lic |
26c80 | 65 6e 73 65 2c 20 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 64 65 73 63 72 69 | ense,.$shortDescription,.$descri |
26ca0 | 70 74 69 6f 6e 2c 20 24 72 65 6c 65 61 73 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e | ption,.$releases).{.$this->chann |
26cc0 | 65 6c 4e 61 6d 65 20 3d 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 61 | elName.=.$channelName;.$this->pa |
26ce0 | 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 24 74 68 69 73 2d | ckageName.=.$packageName;.$this- |
26d00 | 3e 6c 69 63 65 6e 73 65 20 3d 20 24 6c 69 63 65 6e 73 65 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 | >license.=.$license;.$this->shor |
26d20 | 74 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e | tDescription.=.$shortDescription |
26d40 | 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 | ;.$this->description.=.$descript |
26d60 | 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 65 61 73 65 73 20 3d 20 24 72 65 6c 65 61 73 65 73 | ion;.$this->releases.=.$releases |
26d80 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 6e | ;.}.....public.function.getChann |
26da0 | 65 6c 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c | elName().{.return.$this->channel |
26dc0 | 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 | Name;.}.....public.function.getP |
26de0 | 61 63 6b 61 67 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 | ackageName().{.return.$this->pac |
26e00 | 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | kageName;.}.....public.function. |
26e20 | 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | getDescription().{.return.$this- |
26e40 | 3e 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | >description;.}.....public.funct |
26e60 | 69 6f 6e 20 67 65 74 53 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 | ion.getShortDescription().{.retu |
26e80 | 72 6e 20 24 74 68 69 73 2d 3e 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a | rn.$this->shortDescription;.}... |
26ea0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 29 0a 7b | ..public.function.getLicense().{ |
26ec0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 | .return.$this->license;.}.....pu |
26ee0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 61 73 65 73 28 29 0a 7b 0a 72 65 | blic.function.getReleases().{.re |
26f00 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 65 61 73 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a | turn.$this->releases;.}.}.<?php. |
26f20 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 | ...........namespace.Composer\Re |
26f40 | 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 65 6e | pository\Pear;.......class.Depen |
26f60 | 64 65 6e 63 79 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 79 70 65 3b | dencyConstraint.{.private.$type; |
26f80 | 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 70 72 69 76 61 74 65 20 24 63 | .private.$constraint;.private.$c |
26fa0 | 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 | hannelName;.private.$packageName |
26fc0 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 | ;........public.function.__const |
26fe0 | 72 75 63 74 28 24 74 79 70 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 63 68 61 6e 6e 65 | ruct($type,.$constraint,.$channe |
27000 | 6c 4e 61 6d 65 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 79 | lName,.$packageName).{.$this->ty |
27020 | 70 65 20 3d 20 24 74 79 70 65 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 | pe.=.$type;.$this->constraint.=. |
27040 | 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 | $constraint;.$this->channelName. |
27060 | 3d 20 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 | =.$channelName;.$this->packageNa |
27080 | 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | me.=.$packageName;.}..public.fun |
270a0 | 63 74 69 6f 6e 20 67 65 74 43 68 61 6e 6e 65 6c 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | ction.getChannelName().{.return. |
270c0 | 24 74 68 69 73 2d 3e 63 68 61 6e 6e 65 6c 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | $this->channelName;.}..public.fu |
270e0 | 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | nction.getConstraint().{.return. |
27100 | 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | $this->constraint;.}..public.fun |
27120 | 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | ction.getPackageName().{.return. |
27140 | 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 4e 61 6d 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | $this->packageName;.}..public.fu |
27160 | 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | nction.getType().{.return.$this- |
27180 | 3e 74 79 70 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | >type;.}.}.<?php............name |
271a0 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a | space.Composer\Repository\Pear;. |
271c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 31 52 65 61 | ..........class.ChannelRest11Rea |
271e0 | 64 65 72 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a | der.extends.BaseChannelReader.{. |
27200 | 70 72 69 76 61 74 65 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 3b 0a 0a 70 75 62 6c | private.$dependencyReader;..publ |
27220 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 0a 7b 0a | ic.function.__construct($rfs).{. |
27240 | 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 74 68 69 | parent::__construct($rfs);..$thi |
27260 | 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 | s->dependencyReader.=.new.Packag |
27280 | 65 44 65 70 65 6e 64 65 6e 63 79 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | eDependencyParser();.}.........p |
272a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a | ublic.function.read($baseUrl).{. |
272c0 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 64 43 68 61 6e 6e 65 6c 50 61 63 6b 61 67 65 | return.$this->readChannelPackage |
272e0 | 73 28 24 62 61 73 65 55 72 6c 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 | s($baseUrl);.}.........private.f |
27300 | 75 6e 63 74 69 6f 6e 20 72 65 61 64 43 68 61 6e 6e 65 6c 50 61 63 6b 61 67 65 73 28 24 62 61 73 | unction.readChannelPackages($bas |
27320 | 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 78 6d 6c | eUrl).{.$result.=.array();..$xml |
27340 | 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 22 | .=.$this->requestXml($baseUrl,." |
27360 | 2f 63 2f 63 61 74 65 67 6f 72 69 65 73 2e 78 6d 6c 22 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 | /c/categories.xml");.$xml->regis |
27380 | 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 41 4c | terXPathNamespace('ns',.self::AL |
273a0 | 4c 5f 43 41 54 45 47 4f 52 49 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d | L_CATEGORIES_NS);.foreach.($xml- |
273c0 | 3e 78 70 61 74 68 28 27 6e 73 3a 63 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 63 61 74 65 | >xpath('ns:c').as.$node).{.$cate |
273e0 | 67 6f 72 79 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 3b 0a 24 63 61 74 65 | goryName.=.(string).$node;.$cate |
27400 | 67 6f 72 79 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 43 61 74 65 67 6f | goryPackages.=.$this->readCatego |
27420 | 72 79 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 4e 61 | ryPackages($baseUrl,.$categoryNa |
27440 | 6d 65 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 73 75 | me);.$result.=.array_merge($resu |
27460 | 6c 74 2c 20 24 63 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 | lt,.$categoryPackages);.}..retur |
27480 | 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 | n.$result;.}..........private.fu |
274a0 | 6e 63 74 69 6f 6e 20 72 65 61 64 43 61 74 65 67 6f 72 79 50 61 63 6b 61 67 65 73 28 24 62 61 73 | nction.readCategoryPackages($bas |
274c0 | 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d | eUrl,.$categoryName).{.$result.= |
274e0 | 20 61 72 72 61 79 28 29 3b 0a 0a 24 63 61 74 65 67 6f 72 79 50 61 74 68 20 3d 20 27 2f 63 2f 27 | .array();..$categoryPath.=.'/c/' |
27500 | 2e 75 72 6c 65 6e 63 6f 64 65 28 24 63 61 74 65 67 6f 72 79 4e 61 6d 65 29 2e 27 2f 70 61 63 6b | .urlencode($categoryName).'/pack |
27520 | 61 67 65 73 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 | agesinfo.xml';.$xml.=.$this->req |
27540 | 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 63 61 74 65 67 6f 72 79 50 61 74 68 29 | uestXml($baseUrl,.$categoryPath) |
27560 | 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 | ;.$xml->registerXPathNamespace(' |
27580 | 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 41 54 45 47 4f 52 59 5f 50 41 43 4b 41 47 45 53 5f 49 4e 46 | ns',.self::CATEGORY_PACKAGES_INF |
275a0 | 4f 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 70 61 74 68 28 27 6e 73 3a | O_NS);.foreach.($xml->xpath('ns: |
275c0 | 70 69 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 49 6e 66 6f 20 3d 20 | pi').as.$node).{.$packageInfo.=. |
275e0 | 24 74 68 69 73 2d 3e 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 6e 6f 64 65 29 3b 0a 24 72 65 73 | $this->parsePackage($node);.$res |
27600 | 75 6c 74 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | ult[].=.$packageInfo;.}..return. |
27620 | 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 | $result;.}........private.functi |
27640 | 6f 6e 20 70 61 72 73 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 49 6e 66 6f 29 0a 7b 0a | on.parsePackage($packageInfo).{. |
27660 | 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 | $packageInfo->registerXPathNames |
27680 | 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 43 41 54 45 47 4f 52 59 5f 50 41 43 4b 41 47 | pace('ns',.self::CATEGORY_PACKAG |
276a0 | 45 53 5f 49 4e 46 4f 5f 4e 53 29 3b 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 28 73 74 72 | ES_INFO_NS);.$channelName.=.(str |
276c0 | 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 63 3b 0a 24 70 61 63 6b 61 67 | ing).$packageInfo->p->c;.$packag |
276e0 | 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 | eName.=.(string).$packageInfo->p |
27700 | 2d 3e 6e 3b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 | ->n;.$license.=.(string).$packag |
27720 | 65 49 6e 66 6f 2d 3e 70 2d 3e 6c 3b 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 20 3d | eInfo->p->l;.$shortDescription.= |
27740 | 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 70 2d 3e 73 3b 0a 24 64 | .(string).$packageInfo->p->s;.$d |
27760 | 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 70 61 63 6b 61 67 65 49 6e | escription.=.(string).$packageIn |
27780 | 66 6f 2d 3e 70 2d 3e 64 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 73 20 3d 20 61 72 72 61 79 | fo->p->d;..$dependencies.=.array |
277a0 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 78 70 61 74 68 | ();.foreach.($packageInfo->xpath |
277c0 | 28 27 6e 73 3a 64 65 70 73 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 64 65 70 65 6e 64 65 | ('ns:deps').as.$node).{.$depende |
277e0 | 6e 63 79 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 76 3b 0a | ncyVersion.=.(string).$node->v;. |
27800 | 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 20 3d 20 75 6e 73 65 72 69 61 6c 69 7a 65 28 28 | $dependencyArray.=.unserialize(( |
27820 | 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 64 29 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 79 49 | string).$node->d);..$dependencyI |
27840 | 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 2d 3e 62 | nfo.=.$this->dependencyReader->b |
27860 | 75 69 6c 64 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 65 6e 64 65 6e 63 79 41 72 | uildDependencyInfo($dependencyAr |
27880 | 72 61 79 29 3b 0a 0a 24 64 65 70 65 6e 64 65 6e 63 69 65 73 5b 24 64 65 70 65 6e 64 65 6e 63 79 | ray);..$dependencies[$dependency |
278a0 | 56 65 72 73 69 6f 6e 5d 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d 0a 0a 24 | Version].=.$dependencyInfo;.}..$ |
278c0 | 72 65 6c 65 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 6c 65 61 73 65 73 49 6e 66 | releases.=.array();.$releasesInf |
278e0 | 6f 20 3d 20 24 70 61 63 6b 61 67 65 49 6e 66 6f 2d 3e 78 70 61 74 68 28 27 6e 73 3a 61 2f 6e 73 | o.=.$packageInfo->xpath('ns:a/ns |
27900 | 3a 72 27 29 3b 0a 69 66 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f 29 20 7b 0a 66 6f 72 65 61 | :r');.if.($releasesInfo).{.forea |
27920 | 63 68 20 28 24 72 65 6c 65 61 73 65 73 49 6e 66 6f 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 72 | ch.($releasesInfo.as.$node).{.$r |
27940 | 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e | eleaseVersion.=.(string).$node-> |
27960 | 76 3b 0a 24 72 65 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 20 3d 20 28 73 74 72 69 6e 67 29 20 | v;.$releaseStability.=.(string). |
27980 | 24 6e 6f 64 65 2d 3e 73 3b 0a 24 72 65 6c 65 61 73 65 73 5b 24 72 65 6c 65 61 73 65 56 65 72 73 | $node->s;.$releases[$releaseVers |
279a0 | 69 6f 6e 5d 20 3d 20 6e 65 77 20 52 65 6c 65 61 73 65 49 6e 66 6f 28 0a 24 72 65 6c 65 61 73 65 | ion].=.new.ReleaseInfo(.$release |
279c0 | 53 74 61 62 69 6c 69 74 79 2c 0a 69 73 73 65 74 28 24 64 65 70 65 6e 64 65 6e 63 69 65 73 5b 24 | Stability,.isset($dependencies[$ |
279e0 | 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 29 20 3f 20 24 64 65 70 65 6e 64 65 6e 63 69 65 73 | releaseVersion]).?.$dependencies |
27a00 | 5b 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 5d 20 3a 20 6e 65 77 20 44 65 70 65 6e 64 65 6e | [$releaseVersion].:.new.Dependen |
27a20 | 63 79 49 6e 66 6f 28 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 28 29 29 0a 29 3b 0a 7d 0a 7d 0a | cyInfo(array(),.array()).);.}.}. |
27a40 | 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 49 6e 66 6f 28 0a 24 63 68 61 6e 6e 65 | .return.new.PackageInfo(.$channe |
27a60 | 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 24 6c 69 63 65 6e 73 65 2c 0a 24 | lName,.$packageName,.$license,.$ |
27a80 | 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 0a | shortDescription,.$description,. |
27aa0 | 24 72 65 6c 65 61 73 65 73 0a 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | $releases.);.}.}.<?php.......... |
27ac0 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c | ..namespace.Composer\Repository\ |
27ae0 | 50 65 61 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 6c 65 61 73 65 49 6e 66 6f 0a 7b 0a | Pear;.......class.ReleaseInfo.{. |
27b00 | 70 72 69 76 61 74 65 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 64 65 70 | private.$stability;.private.$dep |
27b20 | 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | endencyInfo;......public.functio |
27b40 | 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 74 61 62 69 6c 69 74 79 2c 20 24 64 65 70 65 6e | n.__construct($stability,.$depen |
27b60 | 64 65 6e 63 79 49 6e 66 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 | dencyInfo).{.$this->stability.=. |
27b80 | 24 73 74 61 62 69 6c 69 74 79 3b 0a 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 | $stability;.$this->dependencyInf |
27ba0 | 6f 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | o.=.$dependencyInfo;.}.....publi |
27bc0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 29 0a 7b | c.function.getDependencyInfo().{ |
27be0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 3b 0a 7d | .return.$this->dependencyInfo;.} |
27c00 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 | .....public.function.getStabilit |
27c20 | 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d | y().{.return.$this->stability;.} |
27c40 | 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f | .}.<?php............namespace.Co |
27c60 | 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d | mposer\Repository\Pear;..use.Com |
27c80 | 70 6f 73 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a | poser\Util\RemoteFilesystem;.... |
27ca0 | 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 | .....abstract.class.BaseChannelR |
27cc0 | 65 61 64 65 72 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 20 43 48 41 4e 4e 45 4c 5f 4e 53 20 3d 20 27 68 | eader.{....const.CHANNEL_NS.=.'h |
27ce0 | 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 63 68 61 6e 6e 65 6c 2d 31 2e 30 27 3b | ttp://pear.php.net/channel-1.0'; |
27d00 | 0a 63 6f 6e 73 74 20 41 4c 4c 5f 43 41 54 45 47 4f 52 49 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 | .const.ALL_CATEGORIES_NS.=.'http |
27d20 | 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 63 61 74 65 | ://pear.php.net/dtd/rest.allcate |
27d40 | 67 6f 72 69 65 73 27 3b 0a 63 6f 6e 73 74 20 43 41 54 45 47 4f 52 59 5f 50 41 43 4b 41 47 45 53 | gories';.const.CATEGORY_PACKAGES |
27d60 | 5f 49 4e 46 4f 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f | _INFO_NS.=.'http://pear.php.net/ |
27d80 | 64 74 64 2f 72 65 73 74 2e 63 61 74 65 67 6f 72 79 70 61 63 6b 61 67 65 69 6e 66 6f 27 3b 0a 63 | dtd/rest.categorypackageinfo';.c |
27da0 | 6f 6e 73 74 20 41 4c 4c 5f 50 41 43 4b 41 47 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 3a 2f 2f 70 | onst.ALL_PACKAGES_NS.=.'http://p |
27dc0 | 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 70 61 63 6b 61 67 65 73 | ear.php.net/dtd/rest.allpackages |
27de0 | 27 3b 0a 63 6f 6e 73 74 20 41 4c 4c 5f 52 45 4c 45 41 53 45 53 5f 4e 53 20 3d 20 27 68 74 74 70 | ';.const.ALL_RELEASES_NS.=.'http |
27e00 | 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 61 6c 6c 72 65 6c 65 | ://pear.php.net/dtd/rest.allrele |
27e20 | 61 73 65 73 27 3b 0a 63 6f 6e 73 74 20 50 41 43 4b 41 47 45 5f 49 4e 46 4f 5f 4e 53 20 3d 20 27 | ases';.const.PACKAGE_INFO_NS.=.' |
27e40 | 68 74 74 70 3a 2f 2f 70 65 61 72 2e 70 68 70 2e 6e 65 74 2f 64 74 64 2f 72 65 73 74 2e 70 61 63 | http://pear.php.net/dtd/rest.pac |
27e60 | 6b 61 67 65 27 3b 0a 0a 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 0a 70 72 6f 74 65 63 74 65 | kage';...private.$rfs;..protecte |
27e80 | 64 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 52 65 6d 6f 74 65 46 69 6c | d.function.__construct(RemoteFil |
27ea0 | 65 73 79 73 74 65 6d 20 24 72 66 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 72 66 | esystem.$rfs).{.$this->rfs.=.$rf |
27ec0 | 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | s;.}.........protected.function. |
27ee0 | 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 6f 72 69 67 69 6e 2c 20 24 70 61 74 68 29 0a 7b | requestContent($origin,.$path).{ |
27f00 | 0a 24 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 69 6e 2c 20 27 2f 27 29 20 2e 20 27 2f | .$url.=.rtrim($origin,.'/')...'/ |
27f20 | 27 20 2e 20 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 2f 27 29 3b 0a 24 63 6f 6e 74 65 6e 74 20 | '...ltrim($path,.'/');.$content. |
27f40 | 3d 20 24 74 68 69 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 6f 72 69 67 69 | =.$this->rfs->getContents($origi |
27f60 | 6e 2c 20 24 75 72 6c 2c 20 66 61 6c 73 65 29 3b 0a 69 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 20 | n,.$url,.false);.if.(!$content). |
27f80 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 | {.throw.new.\UnexpectedValueExce |
27fa0 | 70 74 69 6f 6e 28 27 54 68 65 20 50 45 41 52 20 63 68 61 6e 6e 65 6c 20 61 74 20 27 20 2e 20 24 | ption('The.PEAR.channel.at.'...$ |
27fc0 | 75 72 6c 20 2e 20 27 20 64 69 64 20 6e 6f 74 20 72 65 73 70 6f 6e 64 2e 27 29 3b 0a 7d 0a 0a 72 | url...'.did.not.respond.');.}..r |
27fe0 | 65 74 75 72 6e 20 24 63 6f 6e 74 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 | eturn.$content;.}.........protec |
28000 | 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 71 75 65 73 74 58 6d 6c 28 24 6f 72 69 67 69 6e 2c | ted.function.requestXml($origin, |
28020 | 20 24 70 61 74 68 29 0a 7b 0a 0a 20 24 78 6d 6c 20 3d 20 73 69 6d 70 6c 65 78 6d 6c 5f 6c 6f 61 | .$path).{...$xml.=.simplexml_loa |
28040 | 64 5f 73 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 | d_string($this->requestContent($ |
28060 | 6f 72 69 67 69 6e 2c 20 24 70 61 74 68 29 2c 20 22 53 69 6d 70 6c 65 58 4d 4c 45 6c 65 6d 65 6e | origin,.$path),."SimpleXMLElemen |
28080 | 74 22 2c 20 4c 49 42 58 4d 4c 5f 4e 4f 45 52 52 4f 52 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 | t",.LIBXML_NOERROR);..if.(false. |
280a0 | 3d 3d 20 24 78 6d 6c 29 20 7b 0a 24 75 72 6c 20 3d 20 72 74 72 69 6d 28 24 6f 72 69 67 69 6e 2c | ==.$xml).{.$url.=.rtrim($origin, |
280c0 | 20 27 2f 27 29 20 2e 20 27 2f 27 20 2e 20 6c 74 72 69 6d 28 24 70 61 74 68 2c 20 27 2f 27 29 3b | .'/')...'/'...ltrim($path,.'/'); |
280e0 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 | .throw.new.\UnexpectedValueExcep |
28100 | 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 50 45 41 52 20 63 68 61 6e 6e 65 6c 20 61 | tion(sprintf('The.PEAR.channel.a |
28120 | 74 20 27 20 2e 20 24 6f 72 69 67 69 6e 20 2e 20 27 20 69 73 20 62 72 6f 6b 65 6e 2e 20 28 49 6e | t.'...$origin...'.is.broken..(In |
28140 | 76 61 6c 69 64 20 58 4d 4c 20 61 74 20 66 69 6c 65 20 60 25 73 60 29 27 2c 20 24 70 61 74 68 29 | valid.XML.at.file.`%s`)',.$path) |
28160 | 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 78 6d 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a | );.}..return.$xml;.}.}.<?php.... |
28180 | 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 | ........namespace.Composer\Repos |
281a0 | 69 74 6f 72 79 5c 50 65 61 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f | itory\Pear;..use.Composer\Downlo |
281c0 | 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a | ader\TransportException;........ |
281e0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 68 61 6e 6e 65 6c 52 65 73 74 31 30 52 65 61 64 65 72 20 65 | .....class.ChannelRest10Reader.e |
28200 | 78 74 65 6e 64 73 20 42 61 73 65 43 68 61 6e 6e 65 6c 52 65 61 64 65 72 0a 7b 0a 70 72 69 76 61 | xtends.BaseChannelReader.{.priva |
28220 | 74 65 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 | te.$dependencyReader;..public.fu |
28240 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 0a 7b 0a 70 61 72 65 6e | nction.__construct($rfs).{.paren |
28260 | 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 66 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 | t::__construct($rfs);..$this->de |
28280 | 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 44 65 70 65 | pendencyReader.=.new.PackageDepe |
282a0 | 6e 64 65 6e 63 79 50 61 72 73 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | ndencyParser();.}.........public |
282c0 | 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a 72 65 74 75 72 | .function.read($baseUrl).{.retur |
282e0 | 6e 20 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 3b | n.$this->readPackages($baseUrl); |
28300 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 | .}.........private.function.read |
28320 | 50 61 63 6b 61 67 65 73 28 24 62 61 73 65 55 72 6c 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 | Packages($baseUrl).{.$result.=.a |
28340 | 72 72 61 79 28 29 3b 0a 0a 24 78 6d 6c 50 61 74 68 20 3d 20 27 2f 70 2f 70 61 63 6b 61 67 65 73 | rray();..$xmlPath.=.'/p/packages |
28360 | 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 | .xml';.$xml.=.$this->requestXml( |
28380 | 24 62 61 73 65 55 72 6c 2c 20 24 78 6d 6c 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 | $baseUrl,.$xmlPath);.$xml->regis |
283a0 | 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 41 4c | terXPathNamespace('ns',.self::AL |
283c0 | 4c 5f 50 41 43 4b 41 47 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d 3e 78 | L_PACKAGES_NS);.foreach.($xml->x |
283e0 | 70 61 74 68 28 27 6e 73 3a 70 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 70 61 63 6b 61 67 | path('ns:p').as.$node).{.$packag |
28400 | 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 3b 0a 24 70 61 63 6b 61 67 65 | eName.=.(string).$node;.$package |
28420 | 49 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 28 24 62 61 73 65 55 | Info.=.$this->readPackage($baseU |
28440 | 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 72 65 73 75 6c 74 5b 5d 20 3d 20 24 | rl,.$packageName);.$result[].=.$ |
28460 | 70 61 63 6b 61 67 65 49 6e 66 6f 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a | packageInfo;.}..return.$result;. |
28480 | 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 | }..........private.function.read |
284a0 | 50 61 63 6b 61 67 65 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a | Package($baseUrl,.$packageName). |
284c0 | 7b 0a 24 78 6d 6c 50 61 74 68 20 3d 20 27 2f 70 2f 27 20 2e 20 73 74 72 74 6f 6c 6f 77 65 72 28 | {.$xmlPath.=.'/p/'...strtolower( |
284e0 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 69 6e 66 6f 2e 78 6d 6c 27 3b 0a 24 78 6d | $packageName)...'/info.xml';.$xm |
28500 | 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d 6c 28 24 62 61 73 65 55 72 6c 2c 20 | l.=.$this->requestXml($baseUrl,. |
28520 | 24 78 6d 6c 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 69 73 74 65 72 58 50 61 74 68 4e 61 | $xmlPath);.$xml->registerXPathNa |
28540 | 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a 50 41 43 4b 41 47 45 5f 49 4e 46 4f | mespace('ns',.self::PACKAGE_INFO |
28560 | 5f 4e 53 29 3b 0a 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 | _NS);..$channelName.=.(string).$ |
28580 | 78 6d 6c 2d 3e 63 3b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 28 73 74 72 69 6e 67 29 20 | xml->c;.$packageName.=.(string). |
285a0 | 24 78 6d 6c 2d 3e 6e 3b 0a 24 6c 69 63 65 6e 73 65 20 3d 20 28 73 74 72 69 6e 67 29 20 24 78 6d | $xml->n;.$license.=.(string).$xm |
285c0 | 6c 2d 3e 6c 3b 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 6e | l->l;.$shortDescription.=.(strin |
285e0 | 67 29 20 24 78 6d 6c 2d 3e 73 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 28 73 74 72 69 | g).$xml->s;.$description.=.(stri |
28600 | 6e 67 29 20 24 78 6d 6c 2d 3e 64 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 61 63 6b 61 67 65 | ng).$xml->d;..return.new.Package |
28620 | 49 6e 66 6f 28 0a 24 63 68 61 6e 6e 65 6c 4e 61 6d 65 2c 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 | Info(.$channelName,.$packageName |
28640 | 2c 0a 24 6c 69 63 65 6e 73 65 2c 0a 24 73 68 6f 72 74 44 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 | ,.$license,.$shortDescription,.$ |
28660 | 64 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 52 | description,.$this->readPackageR |
28680 | 65 6c 65 61 73 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 0a | eleases($baseUrl,.$packageName). |
286a0 | 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 | );.}..........private.function.r |
286c0 | 65 61 64 50 61 63 6b 61 67 65 52 65 6c 65 61 73 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 | eadPackageReleases($baseUrl,.$pa |
286e0 | 63 6b 61 67 65 4e 61 6d 65 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a | ckageName).{.$result.=.array();. |
28700 | 0a 74 72 79 20 7b 0a 24 78 6d 6c 50 61 74 68 20 3d 20 27 2f 72 2f 27 20 2e 20 73 74 72 74 6f 6c | .try.{.$xmlPath.=.'/r/'...strtol |
28720 | 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f 61 6c 6c 72 65 6c 65 61 73 | ower($packageName)...'/allreleas |
28740 | 65 73 2e 78 6d 6c 27 3b 0a 24 78 6d 6c 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 58 6d | es.xml';.$xml.=.$this->requestXm |
28760 | 6c 28 24 62 61 73 65 55 72 6c 2c 20 24 78 6d 6c 50 61 74 68 29 3b 0a 24 78 6d 6c 2d 3e 72 65 67 | l($baseUrl,.$xmlPath);.$xml->reg |
28780 | 69 73 74 65 72 58 50 61 74 68 4e 61 6d 65 73 70 61 63 65 28 27 6e 73 27 2c 20 73 65 6c 66 3a 3a | isterXPathNamespace('ns',.self:: |
287a0 | 41 4c 4c 5f 52 45 4c 45 41 53 45 53 5f 4e 53 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 78 6d 6c 2d | ALL_RELEASES_NS);.foreach.($xml- |
287c0 | 3e 78 70 61 74 68 28 27 6e 73 3a 72 27 29 20 61 73 20 24 6e 6f 64 65 29 20 7b 0a 24 72 65 6c 65 | >xpath('ns:r').as.$node).{.$rele |
287e0 | 61 73 65 56 65 72 73 69 6f 6e 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f 64 65 2d 3e 76 3b 0a | aseVersion.=.(string).$node->v;. |
28800 | 24 72 65 6c 65 61 73 65 53 74 61 62 69 6c 69 74 79 20 3d 20 28 73 74 72 69 6e 67 29 20 24 6e 6f | $releaseStability.=.(string).$no |
28820 | 64 65 2d 3e 73 3b 0a 0a 74 72 79 20 7b 0a 24 72 65 73 75 6c 74 5b 24 72 65 6c 65 61 73 65 56 65 | de->s;..try.{.$result[$releaseVe |
28840 | 72 73 69 6f 6e 5d 20 3d 20 6e 65 77 20 52 65 6c 65 61 73 65 49 6e 66 6f 28 0a 24 72 65 6c 65 61 | rsion].=.new.ReleaseInfo(.$relea |
28860 | 73 65 53 74 61 62 69 6c 69 74 79 2c 0a 24 74 68 69 73 2d 3e 72 65 61 64 50 61 63 6b 61 67 65 52 | seStability,.$this->readPackageR |
28880 | 65 6c 65 61 73 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 62 61 73 65 55 72 6c 2c 20 24 70 61 | eleaseDependencies($baseUrl,.$pa |
288a0 | 63 6b 61 67 65 4e 61 6d 65 2c 20 24 72 65 6c 65 61 73 65 56 65 72 73 69 6f 6e 29 0a 29 3b 0a 7d | ckageName,.$releaseVersion).);.} |
288c0 | 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 20 24 65 78 63 65 | .catch.(TransportException.$exce |
288e0 | 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 65 74 43 6f 64 65 | ption).{.if.($exception->getCode |
28900 | 28 29 20 21 3d 20 34 30 34 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 69 6f 6e 3b 0a 7d | ().!=.404).{.throw.$exception;.} |
28920 | 0a 7d 0a 7d 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e | .}.}.}.catch.(TransportException |
28940 | 20 24 65 78 63 65 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 65 78 63 65 70 74 69 6f 6e 2d 3e 67 | .$exception).{.if.($exception->g |
28960 | 65 74 43 6f 64 65 28 29 20 21 3d 20 34 30 34 29 20 7b 0a 74 68 72 6f 77 20 24 65 78 63 65 70 74 | etCode().!=.404).{.throw.$except |
28980 | 69 6f 6e 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a | ion;.}.}..return.$result;.}..... |
289a0 | 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 50 61 63 6b 61 | ......private.function.readPacka |
289c0 | 67 65 52 65 6c 65 61 73 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 62 61 73 65 55 72 6c 2c 20 | geReleaseDependencies($baseUrl,. |
289e0 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 64 65 70 65 6e | $packageName,.$version).{.$depen |
28a00 | 64 65 6e 63 79 52 65 61 64 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 44 65 70 65 6e 64 65 | dencyReader.=.new.PackageDepende |
28a20 | 6e 63 79 50 61 72 73 65 72 28 29 3b 0a 0a 24 64 65 70 74 68 50 61 74 68 20 3d 20 27 2f 72 2f 27 | ncyParser();..$depthPath.=.'/r/' |
28a40 | 20 2e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 2e 20 27 2f | ...strtolower($packageName)...'/ |
28a60 | 64 65 70 73 2e 27 20 2e 20 24 76 65 72 73 69 6f 6e 20 2e 20 27 2e 74 78 74 27 3b 0a 24 63 6f 6e | deps.'...$version...'.txt';.$con |
28a80 | 74 65 6e 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 71 75 65 73 74 43 6f 6e 74 65 6e 74 28 24 62 61 | tent.=.$this->requestContent($ba |
28aa0 | 73 65 55 72 6c 2c 20 24 64 65 70 74 68 50 61 74 68 29 3b 0a 24 64 65 70 65 6e 64 65 6e 63 79 41 | seUrl,.$depthPath);.$dependencyA |
28ac0 | 72 72 61 79 20 3d 20 75 6e 73 65 72 69 61 6c 69 7a 65 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 24 72 | rray.=.unserialize($content);.$r |
28ae0 | 65 73 75 6c 74 20 3d 20 24 64 65 70 65 6e 64 65 6e 63 79 52 65 61 64 65 72 2d 3e 62 75 69 6c 64 | esult.=.$dependencyReader->build |
28b00 | 44 65 70 65 6e 64 65 6e 63 79 49 6e 66 6f 28 24 64 65 70 65 6e 64 65 6e 63 79 41 72 72 61 79 29 | DependencyInfo($dependencyArray) |
28b20 | 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a | ;..return.$result;.}.}.<?php.... |
28b40 | 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 | ........namespace.Composer\Repos |
28b60 | 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 | itory;..use.Composer\Package\Pac |
28b80 | 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 | kageInterface;........interface. |
28ba0 | 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 5c 43 6f 75 | RepositoryInterface.extends.\Cou |
28bc0 | 6e 74 61 62 6c 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ntable.{........public.function. |
28be0 | 68 61 73 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 | hasPackage(PackageInterface.$pac |
28c00 | 6b 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | kage);..........public.function. |
28c20 | 66 69 6e 64 50 61 63 6b 61 67 65 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 0a | findPackage($name,.$version);... |
28c40 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 50 61 63 6b 61 | .......public.function.findPacka |
28c60 | 67 65 73 28 24 6e 61 6d 65 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a | ges($name,.$version.=.null);.... |
28c80 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 73 28 29 | ...public.function.getPackages() |
28ca0 | 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 | ;.}.<?php............namespace.C |
28cc0 | 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | omposer\Repository;..use.Compose |
28ce0 | 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 41 72 72 61 79 4c 6f 61 64 65 72 3b 0a 0a 0a | r\Package\Loader\ArrayLoader;... |
28d00 | 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 20 65 78 74 65 | ....class.PackageRepository.exte |
28d20 | 6e 64 73 20 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 | nds.ArrayRepository.{.private.$c |
28d40 | 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 | onfig;.......public.function.__c |
28d60 | 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d | onstruct(array.$config).{.$this- |
28d80 | 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 0a 0a | >config.=.$config['package'];... |
28da0 | 20 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 6b 65 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 | .if.(!is_numeric(key($this->conf |
28dc0 | 69 67 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 28 24 74 | ig))).{.$this->config.=.array($t |
28de0 | 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 | his->config);.}.}.....protected. |
28e00 | 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a | function.initialize().{.parent:: |
28e20 | 69 6e 69 74 69 61 6c 69 7a 65 28 29 3b 0a 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 41 72 72 | initialize();..$loader.=.new.Arr |
28e40 | 61 79 4c 6f 61 64 65 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 | ayLoader();.foreach.($this->conf |
28e60 | 69 67 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6c 6f | ig.as.$package).{.$package.=.$lo |
28e80 | 61 64 65 72 2d 3e 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 | ader->load($package);.$this->add |
28ea0 | 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | Package($package);.}.}.}.<?php.. |
28ec0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 | ..........namespace.Composer\Rep |
28ee0 | 6f 73 69 74 6f 72 79 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 | ository;..use.Composer\Package\P |
28f00 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4e | ackageInterface;.....interface.N |
28f20 | 6f 74 69 66 69 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 65 78 74 | otifiableRepositoryInterface.ext |
28f40 | 65 6e 64 73 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a | ends.RepositoryInterface.{...... |
28f60 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 28 50 61 | public.function.notifyInstall(Pa |
28f80 | 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 3c 3f 70 68 | ckageInterface.$package);.}.<?ph |
28fa0 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
28fc0 | 50 61 63 6b 61 67 65 5c 44 75 6d 70 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 | Package\Dumper;..use.Composer\Pa |
28fe0 | 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | ckage\BasePackage;.use.Composer\ |
29000 | 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 | Package\PackageInterface;......c |
29020 | 6c 61 73 73 20 41 72 72 61 79 44 75 6d 70 65 72 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | lass.ArrayDumper.{.public.functi |
29040 | 6f 6e 20 64 75 6d 70 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 | on.dump(PackageInterface.$packag |
29060 | 65 29 0a 7b 0a 24 6b 65 79 73 20 3d 20 61 72 72 61 79 28 0a 27 62 69 6e 61 72 69 65 73 27 20 3d | e).{.$keys.=.array(.'binaries'.= |
29080 | 3e 20 27 62 69 6e 27 2c 0a 27 73 63 72 69 70 74 73 27 2c 0a 27 74 79 70 65 27 2c 0a 27 65 78 74 | >.'bin',.'scripts',.'type',.'ext |
290a0 | 72 61 27 2c 0a 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 27 20 3d 3e 20 27 69 6e | ra',.'installationSource'.=>.'in |
290c0 | 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 2c 0a 27 6c 69 63 65 6e 73 65 27 2c 0a 27 | stallation-source',.'license',.' |
290e0 | 61 75 74 68 6f 72 73 27 2c 0a 27 64 65 73 63 72 69 70 74 69 6f 6e 27 2c 0a 27 68 6f 6d 65 70 61 | authors',.'description',.'homepa |
29100 | 67 65 27 2c 0a 27 6b 65 79 77 6f 72 64 73 27 2c 0a 27 61 75 74 6f 6c 6f 61 64 27 2c 0a 27 72 65 | ge',.'keywords',.'autoload',.'re |
29120 | 70 6f 73 69 74 6f 72 69 65 73 27 2c 0a 27 69 6e 63 6c 75 64 65 50 61 74 68 73 27 20 3d 3e 20 27 | positories',.'includePaths'.=>.' |
29140 | 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 2c 0a 27 73 75 70 70 6f 72 74 27 2c 0a 29 3b 0a 0a 24 64 | include-path',.'support',.);..$d |
29160 | 61 74 61 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 61 74 61 5b 27 6e 61 6d 65 27 5d 20 3d 20 24 | ata.=.array();.$data['name'].=.$ |
29180 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 64 61 74 61 5b | package->getPrettyName();.$data[ |
291a0 | 27 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 | 'version'].=.$package->getPretty |
291c0 | 56 65 72 73 69 6f 6e 28 29 3b 0a 24 64 61 74 61 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c | Version();.$data['version_normal |
291e0 | 69 7a 65 64 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b | ized'].=.$package->getVersion(); |
29200 | 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 20 | ..if.($package->getTargetDir()). |
29220 | 7b 0a 24 64 61 74 61 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 | {.$data['target-dir'].=.$package |
29240 | 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 | ->getTargetDir();.}..if.($packag |
29260 | 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 74 69 | e->getReleaseDate()).{.$data['ti |
29280 | 6d 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 | me'].=.$package->getReleaseDate( |
292a0 | 29 2d 3e 66 6f 72 6d 61 74 28 27 59 2d 6d 2d 64 20 48 3a 69 3a 73 27 29 3b 0a 7d 0a 0a 69 66 20 | )->format('Y-m-d.H:i:s');.}..if. |
292c0 | 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 29 20 7b 0a 24 64 | ($package->getSourceType()).{.$d |
292e0 | 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 74 79 70 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 | ata['source']['type'].=.$package |
29300 | 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 | ->getSourceType();.$data['source |
29320 | 27 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 55 | ']['url'].=.$package->getSourceU |
29340 | 72 6c 28 29 3b 0a 24 64 61 74 61 5b 27 73 6f 75 72 63 65 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 | rl();.$data['source']['reference |
29360 | 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 | '].=.$package->getSourceReferenc |
29380 | 65 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 | e();.}..if.($package->getDistTyp |
293a0 | 65 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 74 79 70 65 27 5d 20 3d 20 24 | e()).{.$data['dist']['type'].=.$ |
293c0 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 24 64 61 74 61 5b 27 64 | package->getDistType();.$data['d |
293e0 | 69 73 74 27 5d 5b 27 75 72 6c 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 | ist']['url'].=.$package->getDist |
29400 | 55 72 6c 28 29 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 | Url();.$data['dist']['reference' |
29420 | 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 | ].=.$package->getDistReference() |
29440 | 3b 0a 24 64 61 74 61 5b 27 64 69 73 74 27 5d 5b 27 73 68 61 73 75 6d 27 5d 20 3d 20 24 70 61 63 | ;.$data['dist']['shasum'].=.$pac |
29460 | 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 7d 0a 0a | kage->getDistSha1Checksum();.}.. |
29480 | 66 6f 72 65 61 63 68 20 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 | foreach.(BasePackage::$supported |
294a0 | 4c 69 6e 6b 54 79 70 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 6f 70 74 73 29 20 7b 0a 69 | LinkTypes.as.$type.=>.$opts).{.i |
294c0 | 66 20 28 24 6c 69 6e 6b 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 7b 27 67 65 74 27 2e 75 63 66 | f.($links.=.$package->{'get'.ucf |
294e0 | 69 72 73 74 28 24 6f 70 74 73 5b 27 6d 65 74 68 6f 64 27 5d 29 7d 28 29 29 20 7b 0a 66 6f 72 65 | irst($opts['method'])}()).{.fore |
29500 | 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 64 61 74 61 5b 24 74 | ach.($links.as.$link).{.$data[$t |
29520 | 79 70 65 5d 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 24 6c 69 6e 6b | ype][$link->getTarget()].=.$link |
29540 | 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a | ->getPrettyConstraint();.}.}.}.. |
29560 | 69 66 20 28 24 70 61 63 6b 61 67 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 75 67 | if.($packages.=.$package->getSug |
29580 | 67 65 73 74 73 28 29 29 20 7b 0a 24 64 61 74 61 5b 27 73 75 67 67 65 73 74 27 5d 20 3d 20 24 70 | gests()).{.$data['suggest'].=.$p |
295a0 | 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6b 65 79 73 20 61 73 20 24 6d | ackages;.}..foreach.($keys.as.$m |
295c0 | 65 74 68 6f 64 20 3d 3e 20 24 6b 65 79 29 20 7b 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 28 | ethod.=>.$key).{.if.(is_numeric( |
295e0 | 24 6d 65 74 68 6f 64 29 29 20 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 24 6b 65 79 3b 0a 7d 0a 0a 24 | $method)).{.$method.=.$key;.}..$ |
29600 | 67 65 74 74 65 72 20 3d 20 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6d 65 74 68 6f 64 29 3b | getter.=.'get'.ucfirst($method); |
29620 | 0a 24 76 61 6c 75 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 24 67 65 74 74 65 72 28 29 3b 0a 0a | .$value.=.$package->$getter();.. |
29640 | 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 76 61 6c 75 65 20 26 26 20 21 28 69 73 5f 61 72 72 61 | if.(null.!==.$value.&&.!(is_arra |
29660 | 79 28 24 76 61 6c 75 65 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 | y($value).&&.0.===.count($value) |
29680 | 29 29 20 7b 0a 24 64 61 74 61 5b 24 6b 65 79 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a | )).{.$data[$key].=.$value;.}.}.. |
296a0 | 72 65 74 75 72 6e 20 24 64 61 74 61 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | return.$data;.}.}.<?php......... |
296c0 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f | ...namespace.Composer\Package\Lo |
296e0 | 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c | ader;..use.Composer\Json\JsonFil |
29700 | 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 4c 6f 61 64 65 72 0a 7b 0a 70 72 69 76 61 74 | e;.....class.JsonLoader.{.privat |
29720 | 65 20 24 6c 6f 61 64 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f | e.$loader;..public.function.__co |
29740 | 6e 73 74 72 75 63 74 28 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 29 | nstruct(LoaderInterface.$loader) |
29760 | 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 0a | .{.$this->loader.=.$loader;.}... |
29780 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 24 6a 73 6f 6e 29 0a 7b | ...public.function.load($json).{ |
297a0 | 0a 69 66 20 28 24 6a 73 6f 6e 20 69 6e 73 74 61 6e 63 65 6f 66 20 4a 73 6f 6e 46 69 6c 65 29 20 | .if.($json.instanceof.JsonFile). |
297c0 | 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 24 6a 73 6f 6e 2d 3e 72 65 61 64 28 29 3b 0a 7d 20 65 6c 73 | {.$config.=.$json->read();.}.els |
297e0 | 65 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6a 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e 66 | eif.(file_exists($json)).{.$conf |
29800 | 69 67 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 66 69 6c 65 5f 67 65 | ig.=.JsonFile::parseJson(file_ge |
29820 | 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6a 73 6f 6e 29 2c 20 24 6a 73 6f 6e 29 3b 0a 7d 20 65 6c 73 | t_contents($json),.$json);.}.els |
29840 | 65 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 6a 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e 66 69 67 | eif.(is_string($json)).{.$config |
29860 | 20 3d 20 4a 73 6f 6e 46 69 6c 65 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 29 3b 0a 7d | .=.JsonFile::parseJson($json);.} |
29880 | 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 63 6f | ..return.$this->loader->load($co |
298a0 | 6e 66 69 67 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | nfig);.}.}.<?php............name |
298c0 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a | space.Composer\Package\Loader;.. |
298e0 | 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b | .....interface.LoaderInterface.{ |
29900 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 | .......public.function.load(arra |
29920 | 79 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | y.$package);.}.<?php............ |
29940 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 | namespace.Composer\Package\Loade |
29960 | 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f | r;..use.Composer\Package;.use.Co |
29980 | 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 | mposer\Package\Version\VersionPa |
299a0 | 72 73 65 72 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 4c 6f 61 64 65 72 20 69 6d 70 | rser;......class.ArrayLoader.imp |
299c0 | 6c 65 6d 65 6e 74 73 20 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 | lements.LoaderInterface.{.protec |
299e0 | 74 65 64 20 24 76 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ted.$versionParser;..public.func |
29a00 | 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 24 | tion.__construct(VersionParser.$ |
29a20 | 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 24 70 61 72 73 65 72 29 20 7b | parser.=.null).{.if.(!$parser).{ |
29a40 | 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 7d 0a | .$parser.=.new.VersionParser;.}. |
29a60 | 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 24 70 61 72 73 65 72 3b 0a | $this->versionParser.=.$parser;. |
29a80 | 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 79 20 24 63 | }..public.function.load(array.$c |
29aa0 | 6f 6e 66 69 67 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 6e 61 6d | onfig).{.if.(!isset($config['nam |
29ac0 | 65 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c | e'])).{.throw.new.\UnexpectedVal |
29ae0 | 75 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 70 61 63 6b 61 67 65 20 68 61 73 | ueException('Unknown.package.has |
29b00 | 20 6e 6f 20 6e 61 6d 65 20 64 65 66 69 6e 65 64 20 28 27 2e 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 | .no.name.defined.('.json_encode( |
29b20 | 24 63 6f 6e 66 69 67 29 2e 27 29 2e 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f | $config).').');.}.if.(!isset($co |
29b40 | 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 | nfig['version'])).{.throw.new.\U |
29b60 | 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 | nexpectedValueException('Package |
29b80 | 20 27 2e 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2e 27 20 68 61 73 20 6e 6f 20 76 65 72 73 | .'.$config['name'].'.has.no.vers |
29ba0 | 69 6f 6e 20 64 65 66 69 6e 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 | ion.defined.');.}....if.(isset($ |
29bc0 | 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 29 20 7b | config['version_normalized'])).{ |
29be0 | 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 5f 6e 6f 72 | .$version.=.$config['version_nor |
29c00 | 6d 61 6c 69 7a 65 64 27 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 | malized'];.}.else.{.$version.=.$ |
29c20 | 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 | this->versionParser->normalize($ |
29c40 | 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 20 3d | config['version']);.}.$package.= |
29c60 | 20 6e 65 77 20 50 61 63 6b 61 67 65 5c 4d 65 6d 6f 72 79 50 61 63 6b 61 67 65 28 24 63 6f 6e 66 | .new.Package\MemoryPackage($conf |
29c80 | 69 67 5b 27 6e 61 6d 65 27 5d 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 63 6f 6e 66 69 67 5b 27 76 | ig['name'],.$version,.$config['v |
29ca0 | 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 79 70 65 28 69 73 73 | ersion']);.$package->setType(iss |
29cc0 | 65 74 28 24 63 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 29 20 3f 20 73 74 72 74 6f 6c 6f 77 65 72 | et($config['type']).?.strtolower |
29ce0 | 28 24 63 6f 6e 66 69 67 5b 27 74 79 70 65 27 5d 29 20 3a 20 27 6c 69 62 72 61 72 79 27 29 3b 0a | ($config['type']).:.'library');. |
29d00 | 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d | .if.(isset($config['target-dir'] |
29d20 | 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 54 61 72 67 65 74 44 69 72 28 24 63 6f 6e | )).{.$package->setTargetDir($con |
29d40 | 66 69 67 5b 27 74 61 72 67 65 74 2d 64 69 72 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 | fig['target-dir']);.}..if.(isset |
29d60 | 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 | ($config['extra']).&&.is_array($ |
29d80 | 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 | config['extra'])).{.$package->se |
29da0 | 74 45 78 74 72 61 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 29 3b 0a 7d 0a 0a 69 66 20 | tExtra($config['extra']);.}..if. |
29dc0 | 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 29 20 7b 0a 69 66 20 28 21 69 | (isset($config['bin'])).{.if.(!i |
29de0 | 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 29 20 7b 0a 74 68 72 6f 77 | s_array($config['bin'])).{.throw |
29e00 | 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 | .new.\UnexpectedValueException(' |
29e20 | 50 61 63 6b 61 67 65 20 27 2e 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 2e 27 5c 27 73 20 62 | Package.'.$config['name'].'\'s.b |
29e40 | 69 6e 20 6b 65 79 20 73 68 6f 75 6c 64 20 62 65 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 | in.key.should.be.an.array,.'.get |
29e60 | 74 79 70 65 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 2e 27 20 67 69 76 65 6e 2e 27 29 3b | type($config['bin']).'.given.'); |
29e80 | 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 20 61 73 20 24 6b | .}.foreach.($config['bin'].as.$k |
29ea0 | 65 79 20 3d 3e 20 24 62 69 6e 29 20 7b 0a 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 5b 24 6b 65 | ey.=>.$bin).{.$config['bin'][$ke |
29ec0 | 79 5d 3d 20 6c 74 72 69 6d 28 24 62 69 6e 2c 20 27 2f 27 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 | y]=.ltrim($bin,.'/');.}.$package |
29ee0 | 2d 3e 73 65 74 42 69 6e 61 72 69 65 73 28 24 63 6f 6e 66 69 67 5b 27 62 69 6e 27 5d 29 3b 0a 7d | ->setBinaries($config['bin']);.} |
29f00 | 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 20 | ..if.(isset($config['scripts']). |
29f20 | 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 29 | &&.is_array($config['scripts'])) |
29f40 | 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 20 61 | .{.foreach.($config['scripts'].a |
29f60 | 73 20 24 65 76 65 6e 74 20 3d 3e 20 24 6c 69 73 74 65 6e 65 72 73 29 20 7b 0a 24 63 6f 6e 66 69 | s.$event.=>.$listeners).{.$confi |
29f80 | 67 5b 27 73 63 72 69 70 74 73 27 5d 5b 24 65 76 65 6e 74 5d 3d 20 28 61 72 72 61 79 29 20 24 6c | g['scripts'][$event]=.(array).$l |
29fa0 | 69 73 74 65 6e 65 72 73 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 63 72 69 70 74 73 | isteners;.}.$package->setScripts |
29fc0 | 28 24 63 6f 6e 66 69 67 5b 27 73 63 72 69 70 74 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d | ($config['scripts']);.}..if.(!em |
29fe0 | 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 20 26 26 20 69 | pty($config['description']).&&.i |
2a000 | 73 5f 73 74 72 69 6e 67 28 24 63 6f 6e 66 69 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 | s_string($config['description']) |
2a020 | 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 63 6f | ).{.$package->setDescription($co |
2a040 | 6e 66 69 67 5b 27 64 65 73 63 72 69 70 74 69 6f 6e 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d | nfig['description']);.}..if.(!em |
2a060 | 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 20 26 26 20 69 73 5f 73 | pty($config['homepage']).&&.is_s |
2a080 | 74 72 69 6e 67 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 29 20 7b 0a 24 70 | tring($config['homepage'])).{.$p |
2a0a0 | 61 63 6b 61 67 65 2d 3e 73 65 74 48 6f 6d 65 70 61 67 65 28 24 63 6f 6e 66 69 67 5b 27 68 6f 6d | ackage->setHomepage($config['hom |
2a0c0 | 65 70 61 67 65 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b | epage']);.}..if.(!empty($config[ |
2a0e0 | 27 6b 65 79 77 6f 72 64 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 | 'keywords']).&&.is_array($config |
2a100 | 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 4b 65 | ['keywords'])).{.$package->setKe |
2a120 | 79 77 6f 72 64 73 28 24 63 6f 6e 66 69 67 5b 27 6b 65 79 77 6f 72 64 73 27 5d 29 3b 0a 7d 0a 0a | ywords($config['keywords']);.}.. |
2a140 | 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 | if.(!empty($config['license'])). |
2a160 | 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 4c 69 63 65 6e 73 65 28 69 73 5f 61 72 72 61 79 28 | {.$package->setLicense(is_array( |
2a180 | 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 20 3f 20 24 63 6f 6e 66 69 67 5b 27 6c | $config['license']).?.$config['l |
2a1a0 | 69 63 65 6e 73 65 27 5d 20 3a 20 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 | icense'].:.array($config['licens |
2a1c0 | 65 27 5d 29 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 74 69 | e']));.}..if.(!empty($config['ti |
2a1e0 | 6d 65 27 5d 29 29 20 7b 0a 74 72 79 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 | me'])).{.try.{.$date.=.new.\Date |
2a200 | 54 69 6d 65 28 24 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 3b 0a 24 64 61 74 65 2d 3e 73 65 | Time($config['time']);.$date->se |
2a220 | 74 54 69 6d 65 7a 6f 6e 65 28 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 5a 6f 6e 65 28 27 55 54 43 | tTimezone(new.\DateTimeZone('UTC |
2a240 | 27 29 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 24 64 | '));.$package->setReleaseDate($d |
2a260 | 61 74 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a | ate);.}.catch.(\Exception.$e).{. |
2a280 | 7d 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 | }.}..if.(!empty($config['authors |
2a2a0 | 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 | ']).&&.is_array($config['authors |
2a2c0 | 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 75 74 68 6f 72 73 28 24 63 6f 6e | '])).{.$package->setAuthors($con |
2a2e0 | 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 | fig['authors']);.}..if.(isset($c |
2a300 | 6f 6e 66 69 67 5b 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 5d 29 29 20 7b | onfig['installation-source'])).{ |
2a320 | 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 | .$package->setInstallationSource |
2a340 | 28 24 63 6f 6e 66 69 67 5b 27 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2d 73 6f 75 72 63 65 27 5d 29 | ($config['installation-source']) |
2a360 | 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d | ;.}..if.(isset($config['source'] |
2a380 | 29 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 | )).{.if.(!isset($config['source' |
2a3a0 | 5d 5b 27 74 79 70 65 27 5d 29 20 7c 7c 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 6f | ]['type']).||.!isset($config['so |
2a3c0 | 75 72 63 65 27 5d 5b 27 75 72 6c 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 | urce']['url'])).{.throw.new.\Une |
2a3e0 | 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 22 | xpectedValueException(sprintf(." |
2a400 | 70 61 63 6b 61 67 65 20 73 6f 75 72 63 65 20 73 68 6f 75 6c 64 20 62 65 20 73 70 65 63 69 66 69 | package.source.should.be.specifi |
2a420 | 65 64 20 61 73 20 7b 5c 22 74 79 70 65 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 75 72 6c 5c 22 3a 20 2e | ed.as.{\"type\":....,.\"url\":.. |
2a440 | 2e 2e 7d 2c 5c 6e 25 73 20 67 69 76 65 6e 22 2c 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f | ..},\n%s.given",.json_encode($co |
2a460 | 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 29 0a 29 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e | nfig['source']).));.}.$package-> |
2a480 | 73 65 74 53 6f 75 72 63 65 54 79 70 65 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b | setSourceType($config['source'][ |
2a4a0 | 27 74 79 70 65 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 55 72 6c | 'type']);.$package->setSourceUrl |
2a4c0 | 28 24 63 6f 6e 66 69 67 5b 27 73 6f 75 72 63 65 27 5d 5b 27 75 72 6c 27 5d 29 3b 0a 24 70 61 63 | ($config['source']['url']);.$pac |
2a4e0 | 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 63 6f 6e 66 69 67 | kage->setSourceReference($config |
2a500 | 5b 27 73 6f 75 72 63 65 27 5d 5b 27 72 65 66 65 72 65 6e 63 65 27 5d 29 3b 0a 7d 0a 0a 69 66 20 | ['source']['reference']);.}..if. |
2a520 | 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 29 29 20 7b 0a 69 66 20 28 21 | (isset($config['dist'])).{.if.(! |
2a540 | 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 74 79 70 65 27 5d 29 0a 7c | isset($config['dist']['type']).| |
2a560 | 7c 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 75 72 6c 27 5d 29 | |.!isset($config['dist']['url']) |
2a580 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 | ).{.throw.new.\UnexpectedValueEx |
2a5a0 | 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 22 70 61 63 6b 61 67 65 20 64 69 73 74 20 73 | ception(sprintf(."package.dist.s |
2a5c0 | 68 6f 75 6c 64 20 62 65 20 73 70 65 63 69 66 69 65 64 20 61 73 20 22 2e 0a 22 7b 5c 22 74 79 70 | hould.be.specified.as.".."{\"typ |
2a5e0 | 65 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 75 72 6c 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 72 65 66 65 72 65 | e\":....,.\"url\":....,.\"refere |
2a600 | 6e 63 65 5c 22 3a 20 2e 2e 2e 2c 20 5c 22 73 68 61 73 75 6d 5c 22 3a 20 2e 2e 2e 7d 2c 5c 6e 25 | nce\":....,.\"shasum\":....},\n% |
2a620 | 73 20 67 69 76 65 6e 22 2c 0a 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6e 66 69 67 5b 27 64 | s.given",.json_encode($config['d |
2a640 | 69 73 74 27 5d 29 0a 29 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 54 79 | ist']).));.}.$package->setDistTy |
2a660 | 70 65 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 74 79 70 65 27 5d 29 3b 0a 24 70 61 | pe($config['dist']['type']);.$pa |
2a680 | 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 55 72 6c 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 | ckage->setDistUrl($config['dist' |
2a6a0 | 5d 5b 27 75 72 6c 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 69 73 74 52 65 66 65 | ]['url']);.$package->setDistRefe |
2a6c0 | 72 65 6e 63 65 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 72 65 66 | rence(isset($config['dist']['ref |
2a6e0 | 65 72 65 6e 63 65 27 5d 29 20 3f 20 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 27 5d 5b 27 72 65 66 | erence']).?.$config['dist']['ref |
2a700 | 65 72 65 6e 63 65 27 5d 20 3a 20 6e 75 6c 6c 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 44 | erence'].:.null);.$package->setD |
2a720 | 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 64 | istSha1Checksum(isset($config['d |
2a740 | 69 73 74 27 5d 5b 27 73 68 61 73 75 6d 27 5d 29 20 3f 20 24 63 6f 6e 66 69 67 5b 27 64 69 73 74 | ist']['shasum']).?.$config['dist |
2a760 | 27 5d 5b 27 73 68 61 73 75 6d 27 5d 20 3a 20 6e 75 6c 6c 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 27 | ']['shasum'].:.null);.}....if.(' |
2a780 | 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 | dev-'.===.substr($package->getPr |
2a7a0 | 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 20 30 2c 20 34 29 20 26 26 20 69 73 73 65 74 28 24 63 | ettyVersion(),.0,.4).&&.isset($c |
2a7c0 | 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 20 | onfig['extra']['branch-alias']). |
2a7e0 | 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 | &&.is_array($config['extra']['br |
2a800 | 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 | anch-alias'])).{.foreach.($confi |
2a820 | 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 20 61 73 20 24 73 | g['extra']['branch-alias'].as.$s |
2a840 | 6f 75 72 63 65 42 72 61 6e 63 68 20 3d 3e 20 24 74 61 72 67 65 74 42 72 61 6e 63 68 29 20 7b 0a | ourceBranch.=>.$targetBranch).{. |
2a860 | 0a 20 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 74 61 72 67 65 74 42 | ..if.('-dev'.!==.substr($targetB |
2a880 | 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 20 24 76 61 6c | ranch,.-4)).{.continue;.}...$val |
2a8a0 | 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 | idatedTargetBranch.=.$this->vers |
2a8c0 | 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 73 75 62 73 74 | ionParser->normalizeBranch(subst |
2a8e0 | 72 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 2c 20 30 2c 20 2d 34 29 29 3b 0a 69 66 20 28 27 2d | r($targetBranch,.0,.-4));.if.('- |
2a900 | 64 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 | dev'.!==.substr($validatedTarget |
2a920 | 42 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 | Branch,.-4)).{.continue;.}....if |
2a940 | 20 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 | .(strtolower($package->getPretty |
2a960 | 56 65 72 73 69 6f 6e 28 29 29 20 21 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 6f 75 72 63 | Version()).!==.strtolower($sourc |
2a980 | 65 42 72 61 6e 63 68 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 | eBranch)).{.continue;.}..$packag |
2a9a0 | 65 2d 3e 73 65 74 41 6c 69 61 73 28 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e | e->setAlias($validatedTargetBran |
2a9c0 | 63 68 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 50 72 65 74 74 79 41 6c 69 61 73 28 70 72 | ch);.$package->setPrettyAlias(pr |
2a9e0 | 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 28 5c 2e 39 7b 37 7d 29 2b 7d 27 2c 20 27 2e 78 27 2c 20 | eg_replace('{(\.9{7})+}',.'.x',. |
2aa00 | 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 29 29 3b 0a 62 72 65 61 6b 3b | $validatedTargetBranch));.break; |
2aa20 | 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 | .}.}..foreach.(Package\BasePacka |
2aa40 | 67 65 3a 3a 24 73 75 70 70 6f 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 20 61 73 20 24 74 79 70 65 | ge::$supportedLinkTypes.as.$type |
2aa60 | 20 3d 3e 20 24 6f 70 74 73 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 24 | .=>.$opts).{.if.(isset($config[$ |
2aa80 | 74 79 70 65 5d 29 29 20 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 27 73 65 74 27 2e 75 63 66 69 72 73 | type])).{.$method.=.'set'.ucfirs |
2aaa0 | 74 28 24 6f 70 74 73 5b 27 6d 65 74 68 6f 64 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 7b 24 | t($opts['method']);.$package->{$ |
2aac0 | 6d 65 74 68 6f 64 7d 28 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 4c 69 6e 6b 73 46 72 6f 6d 43 6f 6e | method}(.$this->loadLinksFromCon |
2aae0 | 66 69 67 28 24 70 61 63 6b 61 67 65 2c 20 24 6f 70 74 73 5b 27 64 65 73 63 72 69 70 74 69 6f 6e | fig($package,.$opts['description |
2ab00 | 27 5d 2c 20 24 63 6f 6e 66 69 67 5b 24 74 79 70 65 5d 29 0a 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 | '],.$config[$type]).);.}.}..if.( |
2ab20 | 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 29 20 26 26 20 69 73 5f | isset($config['suggest']).&&.is_ |
2ab40 | 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 29 29 20 7b 0a 66 6f 72 | array($config['suggest'])).{.for |
2ab60 | 65 61 63 68 20 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 27 5d 20 61 73 20 24 74 61 72 | each.($config['suggest'].as.$tar |
2ab80 | 67 65 74 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 | get.=>.$reason).{.if.('self.vers |
2aba0 | 69 6f 6e 27 20 3d 3d 3d 20 74 72 69 6d 28 24 72 65 61 73 6f 6e 29 29 20 7b 0a 24 63 6f 6e 66 69 | ion'.===.trim($reason)).{.$confi |
2abc0 | 67 5b 27 73 75 67 67 65 73 74 27 5d 5b 24 74 61 72 67 65 74 5d 20 3d 20 24 70 61 63 6b 61 67 65 | g['suggest'][$target].=.$package |
2abe0 | 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 7d 0a 24 70 61 63 6b 61 | ->getPrettyVersion();.}.}.$packa |
2ac00 | 67 65 2d 3e 73 65 74 53 75 67 67 65 73 74 73 28 24 63 6f 6e 66 69 67 5b 27 73 75 67 67 65 73 74 | ge->setSuggests($config['suggest |
2ac20 | 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c | ']);.}..if.(isset($config['autol |
2ac40 | 6f 61 64 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 75 74 6f 6c 6f 61 64 28 | oad'])).{.$package->setAutoload( |
2ac60 | 24 63 6f 6e 66 69 67 5b 27 61 75 74 6f 6c 6f 61 64 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 | $config['autoload']);.}..if.(iss |
2ac80 | 65 74 28 24 63 6f 6e 66 69 67 5b 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 5d 29 29 20 7b 0a 24 | et($config['include-path'])).{.$ |
2aca0 | 70 61 63 6b 61 67 65 2d 3e 73 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 24 63 6f 6e 66 69 67 | package->setIncludePaths($config |
2acc0 | 5b 27 69 6e 63 6c 75 64 65 2d 70 61 74 68 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 | ['include-path']);.}..if.(isset( |
2ace0 | 24 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d | $config['support'])).{.$package- |
2ad00 | 3e 73 65 74 53 75 70 70 6f 72 74 28 24 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 3b | >setSupport($config['support']); |
2ad20 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 | .}..return.$package;.}..private. |
2ad40 | 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 4c 69 6e 6b 73 46 72 6f 6d 43 6f 6e 66 69 67 28 24 70 61 | function.loadLinksFromConfig($pa |
2ad60 | 63 6b 61 67 65 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 61 72 72 61 79 20 24 6c 69 6e 6b | ckage,.$description,.array.$link |
2ad80 | 73 53 70 65 63 73 29 0a 7b 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 | sSpecs).{.$links.=.array();.fore |
2ada0 | 61 63 68 20 28 24 6c 69 6e 6b 73 53 70 65 63 73 20 61 73 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 | ach.($linksSpecs.as.$packageName |
2adc0 | 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 27 73 65 6c 66 2e 76 65 72 | .=>.$constraint).{.if.('self.ver |
2ade0 | 73 69 6f 6e 27 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 70 61 72 73 65 64 | sion'.===.$constraint).{.$parsed |
2ae00 | 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 | Constraint.=.$this->versionParse |
2ae20 | 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | r->parseConstraints($package->ge |
2ae40 | 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 72 | tPrettyVersion());.}.else.{.$par |
2ae60 | 73 65 64 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 | sedConstraint.=.$this->versionPa |
2ae80 | 72 73 65 72 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 6f 6e 73 74 72 61 69 | rser->parseConstraints($constrai |
2aea0 | 6e 74 29 3b 0a 7d 0a 24 6c 69 6e 6b 73 5b 5d 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 5c 4c 69 | nt);.}.$links[].=.new.Package\Li |
2aec0 | 6e 6b 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 | nk($package->getName(),.$package |
2aee0 | 4e 61 6d 65 2c 20 24 70 61 72 73 65 64 43 6f 6e 73 74 72 61 69 6e 74 2c 20 24 64 65 73 63 72 69 | Name,.$parsedConstraint,.$descri |
2af00 | 70 74 69 6f 6e 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | ption,.$constraint);.}..return.$ |
2af20 | 6c 69 6e 6b 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | links;.}.}.<?php............name |
2af40 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a | space.Composer\Package\Loader;.. |
2af60 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | use.Composer\Package;.use.Compos |
2af80 | 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 | er\Package\Version\VersionParser |
2afa0 | 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 69 6e 67 41 72 72 61 79 4c 6f 61 64 65 | ;.....class.ValidatingArrayLoade |
2afc0 | 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 | r.implements.LoaderInterface.{.p |
2afe0 | 72 69 76 61 74 65 20 24 6c 6f 61 64 65 72 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e | rivate.$loader;.private.$version |
2b000 | 50 61 72 73 65 72 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 45 72 72 6f 72 73 3b 0a 70 | Parser;.private.$ignoreErrors;.p |
2b020 | 72 69 76 61 74 65 20 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 | rivate.$errors.=.array();.privat |
2b040 | 65 20 24 63 6f 6e 66 69 67 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f | e.$config;..public.function.__co |
2b060 | 6e 73 74 72 75 63 74 28 4c 6f 61 64 65 72 49 6e 74 65 72 66 61 63 65 20 24 6c 6f 61 64 65 72 2c | nstruct(LoaderInterface.$loader, |
2b080 | 20 24 69 67 6e 6f 72 65 45 72 72 6f 72 73 20 3d 20 74 72 75 65 2c 20 56 65 72 73 69 6f 6e 50 61 | .$ignoreErrors.=.true,.VersionPa |
2b0a0 | 72 73 65 72 20 24 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f | rser.$parser.=.null).{.$this->lo |
2b0c0 | 61 64 65 72 20 3d 20 24 6c 6f 61 64 65 72 3b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 45 72 72 | ader.=.$loader;.$this->ignoreErr |
2b0e0 | 6f 72 73 20 3d 20 24 69 67 6e 6f 72 65 45 72 72 6f 72 73 3b 0a 69 66 20 28 21 24 70 61 72 73 65 | ors.=.$ignoreErrors;.if.(!$parse |
2b100 | 72 29 20 7b 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 | r).{.$parser.=.new.VersionParser |
2b120 | 28 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 20 3d 20 24 70 61 | ();.}.$this->versionParser.=.$pa |
2b140 | 72 73 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 | rser;.}..public.function.load(ar |
2b160 | 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 | ray.$config).{.$this->config.=.$ |
2b180 | 63 6f 6e 66 69 67 3b 0a 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 6e | config;..$this->validateRegex('n |
2b1a0 | 61 6d 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d 39 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2d 5d | ame',.'[A-Za-z0-9][A-Za-z0-9_.-] |
2b1c0 | 2a 2f 5b 41 2d 5a 61 2d 7a 30 2d 39 5d 5b 41 2d 5a 61 2d 7a 30 2d 39 5f 2e 2d 5d 2a 27 2c 20 74 | */[A-Za-z0-9][A-Za-z0-9_.-]*',.t |
2b1e0 | 72 75 65 29 3b 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 | rue);..if.(!empty($config['versi |
2b200 | 6f 6e 27 5d 29 29 20 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 | on'])).{.try.{.$this->versionPar |
2b220 | 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 | ser->normalize($config['version' |
2b240 | 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 75 6e | ]);.}.catch.(\Exception.$e).{.un |
2b260 | 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 24 | set($this->config['version']);.$ |
2b280 | 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 76 65 72 73 69 6f 6e 20 3a 20 69 6e 76 61 | this->errors[].=.'version.:.inva |
2b2a0 | 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 2e | lid.value.('.$config['version']. |
2b2c0 | 27 29 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 | '):.'.$e->getMessage();.}.}..$th |
2b2e0 | 69 73 2d 3e 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 27 74 79 70 65 27 2c 20 27 5b 61 2d 7a 30 | is->validateRegex('type',.'[a-z0 |
2b300 | 2d 39 2d 5d 2b 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 27 | -9-]+');.$this->validateString(' |
2b320 | 74 61 72 67 65 74 2d 64 69 72 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 | target-dir');.$this->validateArr |
2b340 | 61 79 28 27 65 78 74 72 61 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 74 | ay('extra');.$this->validateFlat |
2b360 | 41 72 72 61 79 28 27 62 69 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 | Array('bin');.$this->validateArr |
2b380 | 61 79 28 27 73 63 72 69 70 74 73 27 29 3b 20 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 | ay('scripts');...$this->validate |
2b3a0 | 53 74 72 69 6e 67 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 | String('description');.$this->va |
2b3c0 | 6c 69 64 61 74 65 55 72 6c 28 27 68 6f 6d 65 70 61 67 65 27 29 3b 0a 24 74 68 69 73 2d 3e 76 61 | lidateUrl('homepage');.$this->va |
2b3e0 | 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 6b 65 79 77 6f 72 64 73 27 2c 20 27 5b 41 2d | lidateFlatArray('keywords',.'[A- |
2b400 | 5a 61 2d 7a 30 2d 39 20 2d 5d 2b 27 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 | Za-z0-9.-]+');..if.(isset($confi |
2b420 | 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 | g['license'])).{.if.(is_string($ |
2b440 | 63 6f 6e 66 69 67 5b 27 6c 69 63 65 6e 73 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c | config['license'])).{.$this->val |
2b460 | 69 64 61 74 65 52 65 67 65 78 28 27 6c 69 63 65 6e 73 65 27 2c 20 27 5b 41 2d 5a 61 2d 7a 30 2d | idateRegex('license',.'[A-Za-z0- |
2b480 | 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c | 9+..()-]+');.}.else.{.$this->val |
2b4a0 | 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 6c 69 63 65 6e 73 65 27 2c 20 27 5b 41 2d 5a 61 | idateFlatArray('license',.'[A-Za |
2b4c0 | 2d 7a 30 2d 39 2b 2e 20 28 29 2d 5d 2b 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 61 6c | -z0-9+..()-]+');.}.}..$this->val |
2b4e0 | 69 64 61 74 65 53 74 72 69 6e 67 28 27 74 69 6d 65 27 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 | idateString('time');.if.(!empty( |
2b500 | 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 29 20 7b 0a 74 72 79 20 7b 0a | $this->config['time'])).{.try.{. |
2b520 | 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d 65 28 24 63 6f 6e 66 69 67 5b 27 74 | $date.=.new.\DateTime($config['t |
2b540 | 69 6d 65 27 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 | ime']);.}.catch.(\Exception.$e). |
2b560 | 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 74 69 6d 65 20 3a 20 69 6e 76 61 | {.$this->errors[].=.'time.:.inva |
2b580 | 6c 69 64 20 76 61 6c 75 65 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 | lid.value.('.$this->config['time |
2b5a0 | 27 5d 2e 27 29 3a 20 27 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 3b 0a 75 6e 73 65 74 | '].'):.'.$e->getMessage();.unset |
2b5c0 | 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 74 69 6d 65 27 5d 29 3b 0a 7d 0a 7d 0a 0a 24 74 | ($this->config['time']);.}.}..$t |
2b5e0 | 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 61 75 74 68 6f 72 73 27 29 3b 0a 69 | his->validateArray('authors');.i |
2b600 | 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 | f.(!empty($this->config['authors |
2b620 | 27 5d 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 | '])).{.foreach.($this->config['a |
2b640 | 75 74 68 6f 72 73 27 5d 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 61 75 74 68 6f 72 29 20 7b 0a 69 | uthors'].as.$key.=>.$author).{.i |
2b660 | 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 20 26 26 | f.(isset($author['homepage']).&& |
2b680 | 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 61 75 74 68 6f 72 5b 27 68 6f 6d 65 | .!$this->filterUrl($author['home |
2b6a0 | 70 61 67 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 | page'])).{.$this->errors[].=.'au |
2b6c0 | 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 68 6f 6d 65 70 61 67 65 20 3a 20 69 6e 76 61 6c 69 | thors.'.$key.'.homepage.:.invali |
2b6e0 | 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 68 74 74 70 2f 68 74 | d.value,.must.be.a.valid.http/ht |
2b700 | 74 70 73 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 | tps.URL';.unset($this->config['a |
2b720 | 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 68 6f 6d 65 70 61 67 65 27 5d 29 3b 0a 7d 0a 69 | uthors'][$key]['homepage']);.}.i |
2b740 | 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 29 20 26 26 20 21 66 | f.(isset($author['email']).&&.!f |
2b760 | 69 6c 74 65 72 5f 76 61 72 28 24 61 75 74 68 6f 72 5b 27 65 6d 61 69 6c 27 5d 2c 20 46 49 4c 54 | ilter_var($author['email'],.FILT |
2b780 | 45 52 5f 56 41 4c 49 44 41 54 45 5f 45 4d 41 49 4c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 | ER_VALIDATE_EMAIL)).{.$this->err |
2b7a0 | 6f 72 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 65 6d 61 69 6c 20 | ors[].=.'authors.'.$key.'.email. |
2b7c0 | 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 | :.invalid.value,.must.be.a.valid |
2b7e0 | 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f | .email.address';.unset($this->co |
2b800 | 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 65 6d 61 69 6c 27 5d 29 3b | nfig['authors'][$key]['email']); |
2b820 | 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 6e 61 6d 65 27 5d 29 20 26 26 | .}.if.(isset($author['name']).&& |
2b840 | 20 21 69 73 5f 73 74 72 69 6e 67 28 24 61 75 74 68 6f 72 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a | .!is_string($author['name'])).{. |
2b860 | 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 | $this->errors[].=.'authors.'.$ke |
2b880 | 79 2e 27 2e 6e 61 6d 65 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 | y.'.name.:.invalid.value,.must.b |
2b8a0 | 65 20 61 20 73 74 72 69 6e 67 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 | e.a.string';.unset($this->config |
2b8c0 | 5b 27 61 75 74 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 6e 61 6d 65 27 5d 29 3b 0a 7d 0a 69 66 | ['authors'][$key]['name']);.}.if |
2b8e0 | 20 28 69 73 73 65 74 28 24 61 75 74 68 6f 72 5b 27 72 6f 6c 65 27 5d 29 20 26 26 20 21 69 73 5f | .(isset($author['role']).&&.!is_ |
2b900 | 73 74 72 69 6e 67 28 24 61 75 74 68 6f 72 5b 27 72 6f 6c 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 | string($author['role'])).{.$this |
2b920 | 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 61 75 74 68 6f 72 73 2e 27 2e 24 6b 65 79 2e 27 2e 72 | ->errors[].=.'authors.'.$key.'.r |
2b940 | 6f 6c 65 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 73 | ole.:.invalid.value,.must.be.a.s |
2b960 | 74 72 69 6e 67 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 | tring';.unset($this->config['aut |
2b980 | 68 6f 72 73 27 5d 5b 24 6b 65 79 5d 5b 27 72 6f 6c 65 27 5d 29 3b 0a 7d 0a 7d 0a 69 66 20 28 65 | hors'][$key]['role']);.}.}.if.(e |
2b9a0 | 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d 29 29 20 | mpty($this->config['authors'])). |
2b9c0 | 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 61 75 74 68 6f 72 73 27 5d | {.unset($this->config['authors'] |
2b9e0 | 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 27 73 75 | );.}.}..$this->validateArray('su |
2ba00 | 70 70 6f 72 74 27 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 | pport');.if.(!empty($this->confi |
2ba20 | 67 5b 27 73 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 | g['support'])).{.if.(isset($this |
2ba40 | 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 29 20 26 26 | ->config['support']['email']).&& |
2ba60 | 20 21 66 69 6c 74 65 72 5f 76 61 72 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 | .!filter_var($this->config['supp |
2ba80 | 6f 72 74 27 5d 5b 27 65 6d 61 69 6c 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f | ort']['email'],.FILTER_VALIDATE_ |
2baa0 | 45 4d 41 49 4c 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 70 | EMAIL)).{.$this->errors[].=.'sup |
2bac0 | 70 6f 72 74 2e 65 6d 61 69 6c 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 | port.email.:.invalid.value,.must |
2bae0 | 20 62 65 20 61 20 76 61 6c 69 64 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 27 3b 0a 75 6e 73 65 | .be.a.valid.email.address';.unse |
2bb00 | 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 65 6d 61 69 | t($this->config['support']['emai |
2bb20 | 6c 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 | l']);.}..if.(isset($this->config |
2bb40 | 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 29 0a 26 26 20 28 21 66 69 6c 74 65 72 5f | ['support']['irc']).&&.(!filter_ |
2bb60 | 76 61 72 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 | var($this->config['support']['ir |
2bb80 | 63 27 5d 2c 20 46 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 29 20 7c 7c 20 21 70 72 | c'],.FILTER_VALIDATE_URL).||.!pr |
2bba0 | 65 67 5f 6d 61 74 63 68 28 27 7b 5e 69 72 63 3a 2f 2f 7d 69 75 27 2c 20 24 74 68 69 73 2d 3e 63 | eg_match('{^irc://}iu',.$this->c |
2bbc0 | 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 29 29 0a 29 20 7b 0a 24 74 | onfig['support']['irc'])).).{.$t |
2bbe0 | 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e 69 72 63 20 3a 20 69 | his->errors[].=.'support.irc.:.i |
2bc00 | 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 27 3b 0a 75 6e 73 65 74 28 24 | nvalid.value,.must.be.';.unset($ |
2bc20 | 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 27 69 72 63 27 5d 29 3b | this->config['support']['irc']); |
2bc40 | 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 69 73 73 75 65 73 27 2c 20 27 66 6f | .}..foreach.(array('issues',.'fo |
2bc60 | 72 75 6d 27 2c 20 27 77 69 6b 69 27 2c 20 27 73 6f 75 72 63 65 27 29 20 61 73 20 24 6b 65 79 29 | rum',.'wiki',.'source').as.$key) |
2bc80 | 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 | .{.if.(isset($this->config['supp |
2bca0 | 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 20 26 26 20 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 | ort'][$key]).&&.!$this->filterUr |
2bcc0 | 6c 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d | l($this->config['support'][$key] |
2bce0 | 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 73 75 70 70 6f 72 74 2e | )).{.$this->errors[].=.'support. |
2bd00 | 27 2e 24 6b 65 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 | '.$key.'.:.invalid.value,.must.b |
2bd20 | 65 20 61 20 76 61 6c 69 64 20 68 74 74 70 2f 68 74 74 70 73 20 55 52 4c 27 3b 0a 75 6e 73 65 74 | e.a.valid.http/https.URL';.unset |
2bd40 | 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 75 70 70 6f 72 74 27 5d 5b 24 6b 65 79 5d 29 | ($this->config['support'][$key]) |
2bd60 | 3b 0a 7d 0a 7d 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 73 | ;.}.}.if.(empty($this->config['s |
2bd80 | 75 70 70 6f 72 74 27 5d 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 | upport'])).{.unset($this->config |
2bda0 | 5b 27 73 75 70 70 6f 72 74 27 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 20 0a 20 0a 20 0a 0a 0a 20 0a 0a 0a | ['support']);.}.}............... |
2bdc0 | 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 46 6c 61 74 41 72 72 61 79 28 27 69 6e 63 6c 75 | .$this->validateFlatArray('inclu |
2bde0 | 64 65 2d 70 61 74 68 27 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 | de-path');....if.(isset($this->c |
2be00 | 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 | onfig['extra']['branch-alias'])) |
2be20 | 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 | .{.if.(!is_array($this->config[' |
2be40 | 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 29 20 7b 0a 24 74 68 69 | extra']['branch-alias'])).{.$thi |
2be60 | 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 | s->errors[].=.'extra.branch-alia |
2be80 | 73 20 3a 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 79 20 6f 66 20 76 65 72 73 69 6f 6e 73 | s.:.must.be.an.array.of.versions |
2bea0 | 20 3d 3e 20 61 6c 69 61 73 65 73 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 66 6f 72 65 61 63 68 20 28 | .=>.aliases';.}.else.{.foreach.( |
2bec0 | 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 | $this->config['extra']['branch-a |
2bee0 | 6c 69 61 73 27 5d 20 61 73 20 24 73 6f 75 72 63 65 42 72 61 6e 63 68 20 3d 3e 20 24 74 61 72 67 | lias'].as.$sourceBranch.=>.$targ |
2bf00 | 65 74 42 72 61 6e 63 68 29 20 7b 0a 0a 20 69 66 20 28 27 2d 64 65 76 27 20 21 3d 3d 20 73 75 62 | etBranch).{...if.('-dev'.!==.sub |
2bf20 | 73 74 72 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 24 74 68 69 73 2d | str($targetBranch,.-4)).{.$this- |
2bf40 | 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 73 2e | >errors[].=.'extra.branch-alias. |
2bf60 | 27 2e 24 73 6f 75 72 63 65 42 72 61 6e 63 68 2e 27 20 3a 20 74 68 65 20 74 61 72 67 65 74 20 62 | '.$sourceBranch.'.:.the.target.b |
2bf80 | 72 61 6e 63 68 20 28 27 2e 24 74 61 72 67 65 74 42 72 61 6e 63 68 2e 27 29 20 6d 75 73 74 20 65 | ranch.('.$targetBranch.').must.e |
2bfa0 | 6e 64 20 69 6e 20 2d 64 65 76 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 | nd.in.-dev';.unset($this->config |
2bfc0 | 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 5b 24 73 6f 75 72 63 | ['extra']['branch-alias'][$sourc |
2bfe0 | 65 42 72 61 6e 63 68 5d 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 24 76 61 6c 69 | eBranch]);..continue;.}....$vali |
2c000 | 64 61 74 65 64 54 61 72 67 65 74 42 72 61 6e 63 68 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 | datedTargetBranch.=.$this->versi |
2c020 | 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 73 75 62 73 74 72 | onParser->normalizeBranch(substr |
2c040 | 28 24 74 61 72 67 65 74 42 72 61 6e 63 68 2c 20 30 2c 20 2d 34 29 29 3b 0a 69 66 20 28 27 2d 64 | ($targetBranch,.0,.-4));.if.('-d |
2c060 | 65 76 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 76 61 6c 69 64 61 74 65 64 54 61 72 67 65 74 42 | ev'.!==.substr($validatedTargetB |
2c080 | 72 61 6e 63 68 2c 20 2d 34 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 | ranch,.-4)).{.$this->errors[].=. |
2c0a0 | 27 65 78 74 72 61 2e 62 72 61 6e 63 68 2d 61 6c 69 61 73 2e 27 2e 24 73 6f 75 72 63 65 42 72 61 | 'extra.branch-alias.'.$sourceBra |
2c0c0 | 6e 63 68 2e 27 20 3a 20 74 68 65 20 74 61 72 67 65 74 20 62 72 61 6e 63 68 20 28 27 2e 24 74 61 | nch.'.:.the.target.branch.('.$ta |
2c0e0 | 72 67 65 74 42 72 61 6e 63 68 2e 27 29 20 6d 75 73 74 20 62 65 20 61 20 70 61 72 73 65 61 62 6c | rgetBranch.').must.be.a.parseabl |
2c100 | 65 20 6e 75 6d 62 65 72 20 6c 69 6b 65 20 32 2e 30 2d 64 65 76 27 3b 0a 75 6e 73 65 74 28 24 74 | e.number.like.2.0-dev';.unset($t |
2c120 | 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 | his->config['extra']['branch-ali |
2c140 | 61 73 27 5d 5b 24 73 6f 75 72 63 65 42 72 61 6e 63 68 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 69 | as'][$sourceBranch]);.}.}.}.}..i |
2c160 | 66 20 28 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 26 26 20 21 24 74 68 69 73 2d 3e 69 67 6e 6f | f.($this->errors.&&.!$this->igno |
2c180 | 72 65 45 72 72 6f 72 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e | reErrors).{.throw.new.\Exception |
2c1a0 | 28 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 29 29 3b 0a | (implode("\n",.$this->errors));. |
2c1c0 | 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 6c 6f 61 | }..$package.=.$this->loader->loa |
2c1e0 | 64 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 | d($this->config);.$this->errors. |
2c200 | 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 3b | =.array();.$this->config.=.null; |
2c220 | 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 | ..return.$package;.}..private.fu |
2c240 | 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 52 65 67 65 78 28 24 70 72 6f 70 65 72 74 79 2c 20 | nction.validateRegex($property,. |
2c260 | 24 72 65 67 65 78 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 | $regex,.$mandatory.=.false).{.if |
2c280 | 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 | .(!$this->validateString($proper |
2c2a0 | 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b | ty,.$mandatory)).{.return.false; |
2c2c0 | 0a 7d 0a 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 72 65 67 65 78 2e | .}..if.(!preg_match('{^'.$regex. |
2c2e0 | 27 24 7d 75 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 | '$}u',.$this->config[$property]) |
2c300 | 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e | ).{.$this->errors[].=.$property. |
2c320 | 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 6d 61 74 63 68 20 27 2e | '.:.invalid.value,.must.match.'. |
2c340 | 24 72 65 67 65 78 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f | $regex;.unset($this->config[$pro |
2c360 | 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 | perty]);..return.false;.}..retur |
2c380 | 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 | n.true;.}..private.function.vali |
2c3a0 | 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 | dateString($property,.$mandatory |
2c3c0 | 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e | .=.false).{.if.(isset($this->con |
2c3e0 | 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 26 26 20 21 69 73 5f 73 74 72 69 6e 67 28 24 74 | fig[$property]).&&.!is_string($t |
2c400 | 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 | his->config[$property])).{.$this |
2c420 | 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 73 68 6f 75 6c | ->errors[].=.$property.'.:.shoul |
2c440 | 64 20 62 65 20 61 20 73 74 72 69 6e 67 2c 20 27 2e 67 65 74 74 79 70 65 28 24 74 68 69 73 2d 3e | d.be.a.string,.'.gettype($this-> |
2c460 | 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 | config[$property]).'.given';.uns |
2c480 | 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 | et($this->config[$property]);..r |
2c4a0 | 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 | eturn.false;.}..if.(!isset($this |
2c4c0 | 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 7c 7c 20 74 72 69 6d 28 24 74 68 | ->config[$property]).||.trim($th |
2c4e0 | 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 3d 3d 3d 20 27 27 29 20 7b | is->config[$property]).===.'').{ |
2c500 | 0a 69 66 20 28 24 6d 61 6e 64 61 74 6f 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 | .if.($mandatory).{.$this->errors |
2c520 | 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 6d 75 73 74 20 62 65 20 70 72 65 73 65 | [].=.$property.'.:.must.be.prese |
2c540 | 6e 74 27 3b 0a 7d 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 | nt';.}.unset($this->config[$prop |
2c560 | 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e | erty]);..return.false;.}..return |
2c580 | 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 | .true;.}..private.function.valid |
2c5a0 | 61 74 65 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d | ateArray($property,.$mandatory.= |
2c5c0 | 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 | .false).{.if.(isset($this->confi |
2c5e0 | 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 26 26 20 21 69 73 5f 61 72 72 61 79 28 24 74 68 69 73 | g[$property]).&&.!is_array($this |
2c600 | 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 | ->config[$property])).{.$this->e |
2c620 | 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 73 68 6f 75 6c 64 20 62 | rrors[].=.$property.'.:.should.b |
2c640 | 65 20 61 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 74 79 70 65 28 24 74 68 69 73 2d 3e 63 6f 6e | e.an.array,.'.gettype($this->con |
2c660 | 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 65 74 28 | fig[$property]).'.given';.unset( |
2c680 | 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 | $this->config[$property]);..retu |
2c6a0 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 | rn.false;.}..if.(!isset($this->c |
2c6c0 | 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 20 7c 7c 20 21 63 6f 75 6e 74 28 24 74 68 69 | onfig[$property]).||.!count($thi |
2c6e0 | 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 69 66 20 28 24 6d 61 | s->config[$property])).{.if.($ma |
2c700 | 6e 64 61 74 6f 72 79 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 | ndatory).{.$this->errors[].=.$pr |
2c720 | 6f 70 65 72 74 79 2e 27 20 3a 20 6d 75 73 74 20 62 65 20 70 72 65 73 65 6e 74 20 61 6e 64 20 63 | operty.'.:.must.be.present.and.c |
2c740 | 6f 6e 74 61 69 6e 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 65 6c 65 6d 65 6e 74 27 3b 0a 7d 0a | ontain.at.least.one.element';.}. |
2c760 | 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 3b | unset($this->config[$property]); |
2c780 | 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a | ..return.false;.}..return.true;. |
2c7a0 | 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 46 6c 61 74 | }..private.function.validateFlat |
2c7c0 | 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 72 65 67 65 78 20 3d 20 6e 75 6c 6c 2c 20 | Array($property,.$regex.=.null,. |
2c7e0 | 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 | $mandatory.=.false).{.if.(!$this |
2c800 | 2d 3e 76 61 6c 69 64 61 74 65 41 72 72 61 79 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 | ->validateArray($property,.$mand |
2c820 | 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 70 61 73 73 | atory)).{.return.false;.}..$pass |
2c840 | 20 3d 20 74 72 75 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b | .=.true;.foreach.($this->config[ |
2c860 | 24 70 72 6f 70 65 72 74 79 5d 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a | $property].as.$key.=>.$value).{. |
2c880 | 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 20 26 26 20 21 69 73 5f 6e 75 | if.(!is_string($value).&&.!is_nu |
2c8a0 | 6d 65 72 69 63 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d | meric($value)).{.$this->errors[] |
2c8c0 | 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 6d 75 73 74 20 62 | .=.$property.'.'.$key.'.:.must.b |
2c8e0 | 65 20 61 20 73 74 72 69 6e 67 20 6f 72 20 69 6e 74 2c 20 27 2e 67 65 74 74 79 70 65 28 24 76 61 | e.a.string.or.int,.'.gettype($va |
2c900 | 6c 75 65 29 2e 27 20 67 69 76 65 6e 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 | lue).'.given';.unset($this->conf |
2c920 | 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 5b 24 6b 65 79 5d 29 3b 0a 24 70 61 73 73 20 3d 20 66 61 | ig[$property][$key]);.$pass.=.fa |
2c940 | 6c 73 65 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 72 65 67 65 78 20 26 26 | lse;..continue;.}..if.($regex.&& |
2c960 | 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 27 2e 24 72 65 67 65 78 2e 27 24 7d 75 27 2c 20 | .!preg_match('{^'.$regex.'$}u',. |
2c980 | 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 | $value)).{.$this->errors[].=.$pr |
2c9a0 | 6f 70 65 72 74 79 2e 27 2e 27 2e 24 6b 65 79 2e 27 20 3a 20 69 6e 76 61 6c 69 64 20 76 61 6c 75 | operty.'.'.$key.'.:.invalid.valu |
2c9c0 | 65 2c 20 6d 75 73 74 20 6d 61 74 63 68 20 27 2e 24 72 65 67 65 78 3b 0a 75 6e 73 65 74 28 24 74 | e,.must.match.'.$regex;.unset($t |
2c9e0 | 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 5b 24 6b 65 79 5d 29 3b 0a 24 | his->config[$property][$key]);.$ |
2ca00 | 70 61 73 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 73 73 3b | pass.=.false;.}.}..return.$pass; |
2ca20 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 55 72 6c | .}..private.function.validateUrl |
2ca40 | 28 24 70 72 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 20 3d 20 66 61 6c 73 65 29 0a | ($property,.$mandatory.=.false). |
2ca60 | 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 53 74 72 69 6e 67 28 24 70 72 | {.if.(!$this->validateString($pr |
2ca80 | 6f 70 65 72 74 79 2c 20 24 6d 61 6e 64 61 74 6f 72 79 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 | operty,.$mandatory)).{.return.fa |
2caa0 | 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 55 72 6c 28 24 74 | lse;.}..if.(!$this->filterUrl($t |
2cac0 | 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 70 72 6f 70 65 72 74 79 5d 29 29 20 7b 0a 24 74 68 69 73 | his->config[$property])).{.$this |
2cae0 | 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 24 70 72 6f 70 65 72 74 79 2e 27 20 3a 20 69 6e 76 61 6c | ->errors[].=.$property.'.:.inval |
2cb00 | 69 64 20 76 61 6c 75 65 2c 20 6d 75 73 74 20 62 65 20 61 20 76 61 6c 69 64 20 68 74 74 70 2f 68 | id.value,.must.be.a.valid.http/h |
2cb20 | 74 74 70 73 20 55 52 4c 27 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 | ttps.URL';.unset($this->config[$ |
2cb40 | 70 72 6f 70 65 72 74 79 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a | property]);..return.false;.}.}.. |
2cb60 | 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 55 72 6c 28 24 76 61 6c 75 | private.function.filterUrl($valu |
2cb80 | 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 69 6c 74 65 72 5f 76 61 72 28 24 76 61 6c 75 65 2c 20 46 | e).{.return.filter_var($value,.F |
2cba0 | 49 4c 54 45 52 5f 56 41 4c 49 44 41 54 45 5f 55 52 4c 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 | ILTER_VALIDATE_URL).&&.preg_matc |
2cbc0 | 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d 69 75 27 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 7d | h('{^https?://}iu',.$value);.}.} |
2cbe0 | 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 | .<?php............namespace.Comp |
2cc00 | 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 | oser\Package\Loader;..use.Compos |
2cc20 | 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 | er\Package\BasePackage;.use.Comp |
2cc40 | 6f 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 | oser\Config;.use.Composer\Factor |
2cc60 | 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c | y;.use.Composer\Package\Version\ |
2cc80 | 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f | VersionParser;.use.Composer\Repo |
2cca0 | 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f | sitory\RepositoryManager;.use.Co |
2ccc0 | 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 0a 0a 0a | mposer\Util\ProcessExecutor;.... |
2cce0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 6f 6f 74 50 61 63 6b 61 67 65 4c 6f 61 64 65 72 20 65 78 74 | .....class.RootPackageLoader.ext |
2cd00 | 65 6e 64 73 20 41 72 72 61 79 4c 6f 61 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6d 61 6e 61 | ends.ArrayLoader.{.private.$mana |
2cd20 | 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 70 | ger;.private.$config;.private.$p |
2cd40 | 72 6f 63 65 73 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 | rocess;..public.function.__const |
2cd60 | 72 75 63 74 28 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 2c | ruct(RepositoryManager.$manager, |
2cd80 | 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 20 24 | .Config.$config,.VersionParser.$ |
2cda0 | 70 61 72 73 65 72 20 3d 20 6e 75 6c 6c 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 | parser.=.null,.ProcessExecutor.$ |
2cdc0 | 70 72 6f 63 65 73 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 6e 61 67 65 72 | process.=.null).{.$this->manager |
2cde0 | 20 3d 20 24 6d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f | .=.$manager;.$this->config.=.$co |
2ce00 | 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 24 70 72 6f 63 65 73 73 20 | nfig;.$this->process.=.$process. |
2ce20 | 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 70 61 72 65 6e 74 | ?:.new.ProcessExecutor();.parent |
2ce40 | 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 72 73 65 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 | ::__construct($parser);.}..publi |
2ce60 | 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b | c.function.load(array.$config).{ |
2ce80 | 0a 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 29 29 20 7b 0a | .if.(!isset($config['name'])).{. |
2cea0 | 24 63 6f 6e 66 69 67 5b 27 6e 61 6d 65 27 5d 20 3d 20 27 5f 5f 72 6f 6f 74 5f 5f 27 3b 0a 7d 0a | $config['name'].=.'__root__';.}. |
2cec0 | 69 66 20 28 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 29 29 20 | if.(!isset($config['version'])). |
2cee0 | 7b 0a 0a 20 69 66 20 28 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 | {...if.(getenv('COMPOSER_ROOT_VE |
2cf00 | 52 53 49 4f 4e 27 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 67 65 74 65 6e 76 28 27 43 4f | RSION')).{.$version.=.getenv('CO |
2cf20 | 4d 50 4f 53 45 52 5f 52 4f 4f 54 5f 56 45 52 53 49 4f 4e 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a | MPOSER_ROOT_VERSION');.}.else.{. |
2cf40 | 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 75 65 73 73 56 65 72 73 69 6f 6e 28 24 | $version.=.$this->guessVersion($ |
2cf60 | 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 | config);.}..if.(!$version).{.$ve |
2cf80 | 72 73 69 6f 6e 20 3d 20 27 31 2e 30 2e 30 27 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 5b 27 76 65 72 | rsion.=.'1.0.0';.}..$config['ver |
2cfa0 | 73 69 6f 6e 27 5d 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 | sion'].=.$version;.}.else.{.$ver |
2cfc0 | 73 69 6f 6e 20 3d 20 24 63 6f 6e 66 69 67 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 7d 0a 0a 24 70 | sion.=.$config['version'];.}..$p |
2cfe0 | 61 63 6b 61 67 65 20 3d 20 70 61 72 65 6e 74 3a 3a 6c 6f 61 64 28 24 63 6f 6e 66 69 67 29 3b 0a | ackage.=.parent::load($config);. |
2d000 | 0a 24 61 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 | .$aliases.=.array();.$stabilityF |
2d020 | 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 61 72 | lags.=.array();.$references.=.ar |
2d040 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 72 65 71 75 69 72 65 27 2c | ray();.foreach.(array('require', |
2d060 | 20 27 72 65 71 75 69 72 65 2d 64 65 76 27 29 20 61 73 20 24 6c 69 6e 6b 54 79 70 65 29 20 7b 0a | .'require-dev').as.$linkType).{. |
2d080 | 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 24 6c 69 6e 6b 54 79 70 65 5d 29 29 20 7b | if.(isset($config[$linkType])).{ |
2d0a0 | 0a 24 6c 69 6e 6b 49 6e 66 6f 20 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 75 70 70 6f | .$linkInfo.=.BasePackage::$suppo |
2d0c0 | 72 74 65 64 4c 69 6e 6b 54 79 70 65 73 5b 24 6c 69 6e 6b 54 79 70 65 5d 3b 0a 24 6d 65 74 68 6f | rtedLinkTypes[$linkType];.$metho |
2d0e0 | 64 20 3d 20 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 6c 69 6e 6b 49 6e 66 6f 5b 27 6d 65 74 | d.=.'get'.ucfirst($linkInfo['met |
2d100 | 68 6f 64 27 5d 29 3b 0a 24 6c 69 6e 6b 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 | hod']);.$links.=.array();.foreac |
2d120 | 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 24 6d 65 74 68 6f 64 28 29 20 61 73 20 24 6c 69 6e 6b 29 | h.($package->$method().as.$link) |
2d140 | 20 7b 0a 24 6c 69 6e 6b 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 | .{.$links[$link->getTarget()].=. |
2d160 | 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 2d 3e 67 65 74 50 72 65 74 74 | $link->getConstraint()->getPrett |
2d180 | 79 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 24 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 65 | yString();.}.$aliases.=.$this->e |
2d1a0 | 78 74 72 61 63 74 41 6c 69 61 73 65 73 28 24 6c 69 6e 6b 73 2c 20 24 61 6c 69 61 73 65 73 29 3b | xtractAliases($links,.$aliases); |
2d1c0 | 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 | .$stabilityFlags.=.$this->extrac |
2d1e0 | 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 24 6c 69 6e 6b 73 2c 20 24 73 74 61 62 69 6c 69 | tStabilityFlags($links,.$stabili |
2d200 | 74 79 46 6c 61 67 73 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 69 73 2d 3e 65 | tyFlags);.$references.=.$this->e |
2d220 | 78 74 72 61 63 74 52 65 66 65 72 65 6e 63 65 73 28 24 6c 69 6e 6b 73 2c 20 24 72 65 66 65 72 65 | xtractReferences($links,.$refere |
2d240 | 6e 63 65 73 29 3b 0a 7d 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 6c 69 61 73 65 73 | nces);.}.}..$package->setAliases |
2d260 | 28 24 61 6c 69 61 73 65 73 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 74 61 62 69 6c 69 | ($aliases);.$package->setStabili |
2d280 | 74 79 46 6c 61 67 73 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 29 3b 0a 24 70 61 63 6b 61 | tyFlags($stabilityFlags);.$packa |
2d2a0 | 67 65 2d 3e 73 65 74 52 65 66 65 72 65 6e 63 65 73 28 24 72 65 66 65 72 65 6e 63 65 73 29 3b 0a | ge->setReferences($references);. |
2d2c0 | 0a 69 66 20 28 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 | .if.(isset($config['minimum-stab |
2d2e0 | 69 6c 69 74 79 27 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 4d 69 6e 69 6d 75 6d | ility'])).{.$package->setMinimum |
2d300 | 53 74 61 62 69 6c 69 74 79 28 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 6e 6f 72 6d 61 6c 69 | Stability(VersionParser::normali |
2d320 | 7a 65 53 74 61 62 69 6c 69 74 79 28 24 63 6f 6e 66 69 67 5b 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 | zeStability($config['minimum-sta |
2d340 | 62 69 6c 69 74 79 27 5d 29 29 3b 0a 7d 0a 0a 24 72 65 70 6f 73 20 3d 20 46 61 63 74 6f 72 79 3a | bility']));.}..$repos.=.Factory: |
2d360 | 3a 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 6e 75 6c 6c 2c | :createDefaultRepositories(null, |
2d380 | 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 74 68 69 73 2d 3e 6d 61 6e 61 67 65 72 29 3b | .$this->config,.$this->manager); |
2d3a0 | 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 | .foreach.($repos.as.$repo).{.$th |
2d3c0 | 69 73 2d 3e 6d 61 6e 61 67 65 72 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f | is->manager->addRepository($repo |
2d3e0 | 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 | );.}.$package->setRepositories($ |
2d400 | 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 | this->config->getRepositories()) |
2d420 | 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 | ;..return.$package;.}..private.f |
2d440 | 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 20 24 72 65 | unction.extractAliases(array.$re |
2d460 | 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 61 6c 69 61 73 65 73 29 0a 7b 0a 66 6f 72 65 61 63 | quires,.array.$aliases).{.foreac |
2d480 | 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 | h.($requires.as.$reqName.=>.$req |
2d4a0 | 56 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e | Version).{.if.(preg_match('{^([^ |
2d4c0 | 2c 5c 73 5d 2b 29 20 2b 61 73 20 2b 28 5b 5e 2c 5c 73 5d 2b 29 24 7d 27 2c 20 24 72 65 71 56 65 | ,\s]+).+as.+([^,\s]+)$}',.$reqVe |
2d4e0 | 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 61 6c 69 61 73 65 73 5b 5d 20 3d 20 61 | rsion,.$match)).{.$aliases[].=.a |
2d500 | 72 72 61 79 28 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 | rray(.'package'.=>.strtolower($r |
2d520 | 65 71 4e 61 6d 65 29 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 76 65 72 | eqName),.'version'.=>.$this->ver |
2d540 | 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 5b 31 5d 29 | sionParser->normalize($match[1]) |
2d560 | 2c 0a 27 61 6c 69 61 73 27 20 3d 3e 20 24 6d 61 74 63 68 5b 32 5d 2c 0a 27 61 6c 69 61 73 5f 6e | ,.'alias'.=>.$match[2],.'alias_n |
2d580 | 6f 72 6d 61 6c 69 7a 65 64 27 20 3d 3e 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 | ormalized'.=>.$this->versionPars |
2d5a0 | 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 74 63 68 5b 32 5d 29 2c 0a 29 3b 0a 7d 0a 7d | er->normalize($match[2]),.);.}.} |
2d5c0 | 0a 0a 72 65 74 75 72 6e 20 24 61 6c 69 61 73 65 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 | ..return.$aliases;.}..private.fu |
2d5e0 | 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 61 72 72 | nction.extractStabilityFlags(arr |
2d600 | 61 79 20 24 72 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c | ay.$requires,.array.$stabilityFl |
2d620 | 61 67 73 29 0a 7b 0a 24 73 74 61 62 69 6c 69 74 69 65 73 20 3d 20 42 61 73 65 50 61 63 6b 61 67 | ags).{.$stabilities.=.BasePackag |
2d640 | 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 | e::$stabilities;.foreach.($requi |
2d660 | 72 65 73 20 61 73 20 24 72 65 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 | res.as.$reqName.=>.$reqVersion). |
2d680 | 7b 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 5d 2a 3f 40 28 | {...if.(preg_match('{^[^,\s]*?@( |
2d6a0 | 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 73 74 61 62 69 | '.implode('|',.array_keys($stabi |
2d6c0 | 6c 69 74 69 65 73 29 29 2e 27 29 24 7d 69 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 2c 20 24 6d | lities)).')$}i',.$reqVersion,.$m |
2d6e0 | 61 74 63 68 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 | atch)).{.$name.=.strtolower($req |
2d700 | 4e 61 6d 65 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 74 69 65 73 | Name);.$stability.=.$stabilities |
2d720 | 5b 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 6e 6f 72 6d 61 6c 69 7a 65 53 74 61 62 69 6c 69 | [VersionParser::normalizeStabili |
2d740 | 74 79 28 24 6d 61 74 63 68 5b 31 5d 29 5d 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 74 61 62 | ty($match[1])];..if.(isset($stab |
2d760 | 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 29 20 26 26 20 24 73 74 61 62 69 6c 69 74 79 | ilityFlags[$name]).&&.$stability |
2d780 | 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3e 20 24 73 74 61 62 69 6c 69 74 79 29 20 7b 0a 63 6f 6e | Flags[$name].>.$stability).{.con |
2d7a0 | 74 69 6e 75 65 3b 0a 7d 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 | tinue;.}.$stabilityFlags[$name]. |
2d7c0 | 3d 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 | =.$stability;..continue;.}....if |
2d7e0 | 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 5d 2b 24 7d 27 2c 20 24 72 65 | .(preg_match('{^[^,\s@]+$}',.$re |
2d800 | 71 56 65 72 73 69 6f 6e 29 20 26 26 20 27 73 74 61 62 6c 65 27 20 21 3d 3d 20 28 24 73 74 61 62 | qVersion).&&.'stable'.!==.($stab |
2d820 | 69 6c 69 74 79 4e 61 6d 65 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 | ilityName.=.VersionParser::parse |
2d840 | 53 74 61 62 69 6c 69 74 79 28 24 72 65 71 56 65 72 73 69 6f 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 | Stability($reqVersion))).{.$name |
2d860 | 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 71 4e 61 6d 65 29 3b 0a 24 73 74 61 62 69 6c | .=.strtolower($reqName);.$stabil |
2d880 | 69 74 79 20 3d 20 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 4e 61 6d | ity.=.$stabilities[$stabilityNam |
2d8a0 | 65 5d 3b 0a 69 66 20 28 69 73 73 65 74 28 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e | e];.if.(isset($stabilityFlags[$n |
2d8c0 | 61 6d 65 5d 29 20 26 26 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 | ame]).&&.$stabilityFlags[$name]. |
2d8e0 | 3e 20 24 73 74 61 62 69 6c 69 74 79 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 74 61 | >.$stability).{.continue;.}.$sta |
2d900 | 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 73 74 61 62 69 6c 69 74 79 3b | bilityFlags[$name].=.$stability; |
2d920 | 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 7d 0a | .}.}..return.$stabilityFlags;.}. |
2d940 | 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 74 52 65 66 65 72 65 6e | .private.function.extractReferen |
2d960 | 63 65 73 28 61 72 72 61 79 20 24 72 65 71 75 69 72 65 73 2c 20 61 72 72 61 79 20 24 72 65 66 65 | ces(array.$requires,.array.$refe |
2d980 | 72 65 6e 63 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 | rences).{.foreach.($requires.as. |
2d9a0 | 24 72 65 71 4e 61 6d 65 20 3d 3e 20 24 72 65 71 56 65 72 73 69 6f 6e 29 20 7b 0a 69 66 20 28 70 | $reqName.=>.$reqVersion).{.if.(p |
2d9c0 | 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 5e 2c 5c 73 40 5d 2b 3f 23 28 5b 61 2d 66 30 2d 39 5d | reg_match('{^[^,\s@]+?#([a-f0-9] |
2d9e0 | 2b 29 24 7d 27 2c 20 24 72 65 71 56 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 29 20 26 26 20 27 | +)$}',.$reqVersion,.$match).&&.' |
2da00 | 64 65 76 27 20 3d 3d 3d 20 28 24 73 74 61 62 69 6c 69 74 79 4e 61 6d 65 20 3d 20 56 65 72 73 69 | dev'.===.($stabilityName.=.Versi |
2da20 | 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 53 74 61 62 69 6c 69 74 79 28 24 72 65 71 56 65 72 | onParser::parseStability($reqVer |
2da40 | 73 69 6f 6e 29 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 72 65 | sion))).{.$name.=.strtolower($re |
2da60 | 71 4e 61 6d 65 29 3b 0a 24 72 65 66 65 72 65 6e 63 65 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 6d 61 | qName);.$references[$name].=.$ma |
2da80 | 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 66 65 72 65 6e 63 65 73 3b | tch[1];.}.}..return.$references; |
2daa0 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 75 65 73 73 56 65 72 73 69 6f | .}..private.function.guessVersio |
2dac0 | 6e 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 0a 20 69 66 20 28 66 75 6e 63 74 69 6f | n(array.$config).{...if.(functio |
2dae0 | 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 20 26 26 20 30 20 3d 3d 3d 20 24 | n_exists('proc_open').&&.0.===.$ |
2db00 | 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 62 72 61 6e | this->process->execute('git.bran |
2db20 | 63 68 20 2d 2d 6e 6f 2d 63 6f 6c 6f 72 20 2d 2d 6e 6f 2d 61 62 62 72 65 76 20 2d 76 27 2c 20 24 | ch.--no-color.--no-abbrev.-v',.$ |
2db40 | 6f 75 74 70 75 74 29 29 20 7b 0a 24 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | output)).{.$branches.=.array();. |
2db60 | 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 20 3d 20 66 61 6c 73 65 3b 0a 24 76 65 72 73 69 | $isFeatureBranch.=.false;.$versi |
2db80 | 6f 6e 20 3d 20 6e 75 6c 6c 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 | on.=.null;..foreach.($this->proc |
2dba0 | 65 73 73 2d 3e 73 70 6c 69 74 4c 69 6e 65 73 28 24 6f 75 74 70 75 74 29 20 61 73 20 24 62 72 61 | ess->splitLines($output).as.$bra |
2dbc0 | 6e 63 68 29 20 7b 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 | nch).{.if.($branch.&&.preg_match |
2dbe0 | 28 27 7b 5e 28 3f 3a 5c 2a 20 29 20 2a 28 3f 3a 5b 5e 2f 20 5d 2b 3f 2f 29 3f 28 5c 53 2b 7c 5c | ('{^(?:\*.).*(?:[^/.]+?/)?(\S+|\ |
2dc00 | 28 6e 6f 20 62 72 61 6e 63 68 5c 29 29 20 2a 28 5b 61 2d 66 30 2d 39 5d 2b 29 20 2e 2a 24 7d 27 | (no.branch\)).*([a-f0-9]+)..*$}' |
2dc20 | 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 69 66 20 28 24 6d 61 74 63 68 | ,.$branch,.$match)).{.if.($match |
2dc40 | 5b 31 5d 20 3d 3d 3d 20 27 28 6e 6f 20 62 72 61 6e 63 68 29 27 29 20 7b 0a 24 76 65 72 73 69 6f | [1].===.'(no.branch)').{.$versio |
2dc60 | 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 69 73 46 65 61 74 75 72 65 | n.=.'dev-'.$match[2];.$isFeature |
2dc80 | 42 72 61 6e 63 68 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 76 65 72 73 69 6f 6e | Branch.=.true;.}.else.{.$version |
2dca0 | 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 | .=.$this->versionParser->normali |
2dcc0 | 7a 65 42 72 61 6e 63 68 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 24 69 73 46 65 61 74 75 72 65 42 | zeBranch($match[1]);.$isFeatureB |
2dce0 | 72 61 6e 63 68 20 3d 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 76 65 72 73 69 6f 6e 2c 20 27 | ranch.=.0.===.strpos($version,.' |
2dd00 | 64 65 76 2d 27 29 3b 0a 69 66 20 28 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 76 | dev-');.if.('9999999-dev'.===.$v |
2dd20 | 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 74 | ersion).{.$version.=.'dev-'.$mat |
2dd40 | 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 62 72 61 6e 63 68 20 26 26 20 21 70 72 | ch[1];.}.}.}..if.($branch.&&.!pr |
2dd60 | 65 67 5f 6d 61 74 63 68 28 27 7b 5e 20 2a 5b 5e 2f 5d 2b 2f 48 45 41 44 20 7d 27 2c 20 24 62 72 | eg_match('{^.*[^/]+/HEAD.}',.$br |
2dd80 | 61 6e 63 68 29 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 5c 2a | anch)).{.if.(preg_match('{^(?:\* |
2dda0 | 20 29 3f 20 2a 28 3f 3a 5b 5e 2f 20 5d 2b 3f 2f 29 3f 28 5c 53 2b 29 20 2a 28 5b 61 2d 66 30 2d | .)?.*(?:[^/.]+?/)?(\S+).*([a-f0- |
2ddc0 | 39 5d 2b 29 20 2e 2a 24 7d 27 2c 20 24 62 72 61 6e 63 68 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a | 9]+)..*$}',.$branch,.$match)).{. |
2dde0 | 24 62 72 61 6e 63 68 65 73 5b 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 0a | $branches[].=.$match[1];.}.}.}.. |
2de00 | 69 66 20 28 21 24 69 73 46 65 61 74 75 72 65 42 72 61 6e 63 68 29 20 7b 0a 72 65 74 75 72 6e 20 | if.(!$isFeatureBranch).{.return. |
2de20 | 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 28 69 73 73 65 74 28 24 63 6f 6e | $version;.}......if.((isset($con |
2de40 | 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 2d 61 6c 69 61 73 27 5d 29 20 26 26 | fig['extra']['branch-alias']).&& |
2de60 | 20 21 69 73 73 65 74 28 24 63 6f 6e 66 69 67 5b 27 65 78 74 72 61 27 5d 5b 27 62 72 61 6e 63 68 | .!isset($config['extra']['branch |
2de80 | 2d 61 6c 69 61 73 27 5d 5b 24 76 65 72 73 69 6f 6e 5d 29 29 0a 7c 7c 20 73 74 72 70 6f 73 28 6a | -alias'][$version])).||.strpos(j |
2dea0 | 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 63 6f 6e 66 69 67 29 2c 20 27 22 73 65 6c 66 2e 76 65 72 73 | son_encode($config),.'"self.vers |
2dec0 | 69 6f 6e 22 27 29 0a 29 20 7b 0a 24 62 72 61 6e 63 68 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 | ion"').).{.$branch.=.preg_replac |
2dee0 | 65 28 27 7b 5e 64 65 76 2d 7d 27 2c 20 27 27 2c 20 24 76 65 72 73 69 6f 6e 29 3b 0a 24 6c 65 6e | e('{^dev-}',.'',.$version);.$len |
2df00 | 67 74 68 20 3d 20 50 48 50 5f 49 4e 54 5f 4d 41 58 3b 0a 66 6f 72 65 61 63 68 20 28 24 62 72 61 | gth.=.PHP_INT_MAX;.foreach.($bra |
2df20 | 6e 63 68 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 0a 20 69 66 20 28 24 63 61 | nches.as.$candidate).{...if.($ca |
2df40 | 6e 64 69 64 61 74 65 20 3d 3d 3d 20 24 62 72 61 6e 63 68 20 7c 7c 20 21 70 72 65 67 5f 6d 61 74 | ndidate.===.$branch.||.!preg_mat |
2df60 | 63 68 28 27 7b 5e 28 6d 61 73 74 65 72 7c 74 72 75 6e 6b 7c 64 65 66 61 75 6c 74 7c 64 65 76 65 | ch('{^(master|trunk|default|deve |
2df80 | 6c 6f 70 7c 5c 64 2b 5c 2e 2e 2b 29 24 7d 27 2c 20 24 63 61 6e 64 69 64 61 74 65 29 29 20 7b 0a | lop|\d+\..+)$}',.$candidate)).{. |
2dfa0 | 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 30 20 21 3d 3d 20 24 74 68 69 73 2d 3e 70 72 6f | continue;.}.if.(0.!==.$this->pro |
2dfc0 | 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 72 65 76 2d 6c 69 73 74 20 27 2e 24 63 | cess->execute('git.rev-list.'.$c |
2dfe0 | 61 6e 64 69 64 61 74 65 2e 27 2e 2e 27 2e 24 62 72 61 6e 63 68 2c 20 24 6f 75 74 70 75 74 29 29 | andidate.'..'.$branch,.$output)) |
2e000 | 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6f 75 74 70 75 | .{.continue;.}.if.(strlen($outpu |
2e020 | 74 29 20 3c 20 24 6c 65 6e 67 74 68 29 20 7b 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e | t).<.$length).{.$length.=.strlen |
2e040 | 28 24 6f 75 74 70 75 74 29 3b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 76 65 72 | ($output);.$version.=.$this->ver |
2e060 | 73 69 6f 6e 50 61 72 73 65 72 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 42 72 61 6e 63 68 28 24 63 61 6e | sionParser->normalizeBranch($can |
2e080 | 64 69 64 61 74 65 29 3b 0a 69 66 20 28 27 39 39 39 39 39 39 39 2d 64 65 76 27 20 3d 3d 3d 20 24 | didate);.if.('9999999-dev'.===.$ |
2e0a0 | 76 65 72 73 69 6f 6e 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 64 65 76 2d 27 2e 24 6d 61 | version).{.$version.=.'dev-'.$ma |
2e0c0 | 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 65 72 73 69 6f 6e | tch[1];.}.}.}.}..return.$version |
2e0e0 | 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 | ;.}.}.}.<?php............namespa |
2e100 | 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 | ce.Composer\Package;..use.Compos |
2e120 | 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 | er\Package\Version\VersionParser |
2e140 | 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 65 6d 6f 72 79 50 61 63 6b 61 67 65 20 65 78 74 65 | ;.......class.MemoryPackage.exte |
2e160 | 6e 64 73 20 42 61 73 65 50 61 63 6b 61 67 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 79 70 | nds.BasePackage.{.protected.$typ |
2e180 | 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 74 44 69 72 3b 0a 70 72 6f 74 65 63 74 | e;.protected.$targetDir;.protect |
2e1a0 | 65 64 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 3b 0a 70 72 6f 74 65 63 74 65 | ed.$installationSource;.protecte |
2e1c0 | 64 20 24 73 6f 75 72 63 65 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 | d.$sourceType;.protected.$source |
2e1e0 | 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 3b | Url;.protected.$sourceReference; |
2e200 | 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 54 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 | .protected.$distType;.protected. |
2e220 | 24 64 69 73 74 55 72 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 52 65 66 65 72 65 6e | $distUrl;.protected.$distReferen |
2e240 | 63 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 3b | ce;.protected.$distSha1Checksum; |
2e260 | 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | .protected.$version;.protected.$ |
2e280 | 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 | prettyVersion;.protected.$reposi |
2e2a0 | 74 6f 72 69 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 69 63 65 6e 73 65 20 3d 20 61 72 72 | tories;.protected.$license.=.arr |
2e2c0 | 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 6c 65 61 73 65 44 61 74 65 3b 0a 70 72 | ay();.protected.$releaseDate;.pr |
2e2e0 | 6f 74 65 63 74 65 64 20 24 6b 65 79 77 6f 72 64 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 | otected.$keywords;.protected.$au |
2e300 | 74 68 6f 72 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 | thors;.protected.$description;.p |
2e320 | 72 6f 74 65 63 74 65 64 20 24 68 6f 6d 65 70 61 67 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 | rotected.$homepage;.protected.$e |
2e340 | 78 74 72 61 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 69 6e 61 72 | xtra.=.array();.protected.$binar |
2e360 | 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 63 72 69 70 74 | ies.=.array();.protected.$script |
2e380 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 6c 69 61 73 65 73 20 | s.=.array();.protected.$aliases. |
2e3a0 | 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 6c 69 61 73 3b 0a 70 72 6f | =.array();.protected.$alias;.pro |
2e3c0 | 74 65 63 74 65 64 20 24 70 72 65 74 74 79 41 6c 69 61 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | tected.$prettyAlias;.protected.$ |
2e3e0 | 64 65 76 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 | dev;..protected.$minimumStabilit |
2e400 | 79 20 3d 20 27 73 74 61 62 6c 65 27 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 | y.=.'stable';.protected.$stabili |
2e420 | 74 79 46 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 | tyFlags.=.array();.protected.$re |
2e440 | 66 65 72 65 6e 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 | ferences.=.array();..protected.$ |
2e460 | 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 | requires.=.array();.protected.$c |
2e480 | 6f 6e 66 6c 69 63 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 | onflicts.=.array();.protected.$p |
2e4a0 | 72 6f 76 69 64 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 | rovides.=.array();.protected.$re |
2e4c0 | 70 6c 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 | places.=.array();.protected.$dev |
2e4e0 | 52 65 71 75 69 72 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 | Requires.=.array();.protected.$s |
2e500 | 75 67 67 65 73 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 | uggests.=.array();.protected.$au |
2e520 | 74 6f 6c 6f 61 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 63 | toload.=.array();.protected.$inc |
2e540 | 6c 75 64 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | ludePaths.=.array();.protected.$ |
2e560 | 73 75 70 70 6f 72 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | support.=.array();.........publi |
2e580 | 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 76 | c.function.__construct($name,.$v |
2e5a0 | 65 72 73 69 6f 6e 2c 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 | ersion,.$prettyVersion).{.parent |
2e5c0 | 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 76 65 | ::__construct($name);..$this->ve |
2e5e0 | 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 56 | rsion.=.$version;.$this->prettyV |
2e600 | 65 72 73 69 6f 6e 20 3d 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 0a 24 74 68 69 73 2d | ersion.=.$prettyVersion;..$this- |
2e620 | 3e 73 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 | >stability.=.VersionParser::pars |
2e640 | 65 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 64 65 76 | eStability($version);.$this->dev |
2e660 | 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 65 76 27 3b 0a 7d | .=.$this->stability.===.'dev';.} |
2e680 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 76 28 29 0a 7b 0a 72 | .....public.function.isDev().{.r |
2e6a0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | eturn.$this->dev;.}.....public.f |
2e6c0 | 75 6e 63 74 69 6f 6e 20 73 65 74 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e | unction.setType($type).{.$this-> |
2e6e0 | 74 79 70 65 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | type.=.$type;.}.....public.funct |
2e700 | 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 79 | ion.getType().{.return.$this->ty |
2e720 | 70 65 20 3f 3a 20 27 6c 69 62 72 61 72 79 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | pe.?:.'library';.}.....public.fu |
2e740 | 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | nction.getStability().{.return.$ |
2e760 | 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | this->stability;.}.....public.fu |
2e780 | 6e 63 74 69 6f 6e 20 73 65 74 54 61 72 67 65 74 44 69 72 28 24 74 61 72 67 65 74 44 69 72 29 0a | nction.setTargetDir($targetDir). |
2e7a0 | 7b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 44 69 72 20 3d 20 24 74 61 72 67 65 74 44 69 72 3b | {.$this->targetDir.=.$targetDir; |
2e7c0 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 | .}.....public.function.getTarget |
2e7e0 | 44 69 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 44 69 72 3b | Dir().{.return.$this->targetDir; |
2e800 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 78 74 72 61 28 | .}.....public.function.setExtra( |
2e820 | 61 72 72 61 79 20 24 65 78 74 72 61 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 78 74 72 61 20 3d 20 24 | array.$extra).{.$this->extra.=.$ |
2e840 | 65 78 74 72 61 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | extra;.}.....public.function.get |
2e860 | 45 78 74 72 61 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 74 72 61 3b 0a 7d | Extra().{.return.$this->extra;.} |
2e880 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 69 6e 61 72 69 65 73 | .....public.function.setBinaries |
2e8a0 | 28 61 72 72 61 79 20 24 62 69 6e 61 72 69 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 69 6e 61 72 | (array.$binaries).{.$this->binar |
2e8c0 | 69 65 73 20 3d 20 24 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ies.=.$binaries;.}.....public.fu |
2e8e0 | 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 | nction.getBinaries().{.return.$t |
2e900 | 68 69 73 2d 3e 62 69 6e 61 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | his->binaries;.}.....public.func |
2e920 | 74 69 6f 6e 20 73 65 74 53 63 72 69 70 74 73 28 61 72 72 61 79 20 24 73 63 72 69 70 74 73 29 0a | tion.setScripts(array.$scripts). |
2e940 | 7b 0a 24 74 68 69 73 2d 3e 73 63 72 69 70 74 73 20 3d 20 24 73 63 72 69 70 74 73 3b 0a 7d 0a 0a | {.$this->scripts.=.$scripts;.}.. |
2e960 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 72 69 70 74 73 28 29 0a | ...public.function.getScripts(). |
2e980 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 63 72 69 70 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 | {.return.$this->scripts;.}.....p |
2e9a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 20 | ublic.function.setAliases(array. |
2e9c0 | 24 61 6c 69 61 73 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 20 3d 20 24 61 6c | $aliases).{.$this->aliases.=.$al |
2e9e0 | 69 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | iases;.}.....public.function.get |
2ea00 | 41 6c 69 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 | Aliases().{.return.$this->aliase |
2ea20 | 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 61 | s;.}.....public.function.setAlia |
2ea40 | 73 28 24 61 6c 69 61 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 20 3d 20 24 61 6c 69 61 | s($alias).{.$this->alias.=.$alia |
2ea60 | 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 | s;.}.....public.function.getAlia |
2ea80 | 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a | s().{.return.$this->alias;.}.... |
2eaa0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 41 6c 69 61 73 28 | .public.function.setPrettyAlias( |
2eac0 | 24 70 72 65 74 74 79 41 6c 69 61 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 41 6c 69 | $prettyAlias).{.$this->prettyAli |
2eae0 | 61 73 20 3d 20 24 70 72 65 74 74 79 41 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | as.=.$prettyAlias;.}.....public. |
2eb00 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 41 6c 69 61 73 28 29 0a 7b 0a 72 65 74 75 | function.getPrettyAlias().{.retu |
2eb20 | 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 41 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | rn.$this->prettyAlias;.}.....pub |
2eb40 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 | lic.function.setInstallationSour |
2eb60 | 63 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 | ce($type).{.$this->installationS |
2eb80 | 6f 75 72 63 65 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ource.=.$type;.}.....public.func |
2eba0 | 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 | tion.getInstallationSource().{.r |
2ebc0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 3b | eturn.$this->installationSource; |
2ebe0 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 65 | .}.....public.function.setSource |
2ec00 | 54 79 70 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 54 79 70 65 20 | Type($type).{.$this->sourceType. |
2ec20 | 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | =.$type;.}.....public.function.g |
2ec40 | 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 | etSourceType().{.return.$this->s |
2ec60 | 6f 75 72 63 65 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ourceType;.}.....public.function |
2ec80 | 20 73 65 74 53 6f 75 72 63 65 55 72 6c 28 24 75 72 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 | .setSourceUrl($url).{.$this->sou |
2eca0 | 72 63 65 55 72 6c 20 3d 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | rceUrl.=.$url;.}.....public.func |
2ecc0 | 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | tion.getSourceUrl().{.return.$th |
2ece0 | 69 73 2d 3e 73 6f 75 72 63 65 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | is->sourceUrl;.}.....public.func |
2ed00 | 74 69 6f 6e 20 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e | tion.setSourceReference($referen |
2ed20 | 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 20 3d 20 24 | ce).{.$this->sourceReference.=.$ |
2ed40 | 72 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | reference;.}.....public.function |
2ed60 | 20 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | .getSourceReference().{.return.$ |
2ed80 | 74 68 69 73 2d 3e 73 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | this->sourceReference;.}.....pub |
2eda0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 54 79 70 65 28 24 74 79 70 65 29 0a | lic.function.setDistType($type). |
2edc0 | 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 54 79 70 65 20 3d 20 24 74 79 70 65 3b 0a 7d 0a 0a 0a 0a | {.$this->distType.=.$type;.}.... |
2ede0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 54 79 70 65 28 29 0a 7b | .public.function.getDistType().{ |
2ee00 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 74 54 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 | .return.$this->distType;.}.....p |
2ee20 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 55 72 6c 28 24 75 72 6c 29 0a | ublic.function.setDistUrl($url). |
2ee40 | 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 55 72 6c 20 3d 20 24 75 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 | {.$this->distUrl.=.$url;.}.....p |
2ee60 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 28 29 0a 7b 0a 72 65 | ublic.function.getDistUrl().{.re |
2ee80 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 74 55 72 6c 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | turn.$this->distUrl;.}.....publi |
2eea0 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 | c.function.setDistReference($ref |
2eec0 | 65 72 65 6e 63 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 52 65 66 65 72 65 6e 63 65 20 3d | erence).{.$this->distReference.= |
2eee0 | 20 24 72 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | .$reference;.}.....public.functi |
2ef00 | 6f 6e 20 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | on.getDistReference().{.return.$ |
2ef20 | 74 68 69 73 2d 3e 64 69 73 74 52 65 66 65 72 65 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | this->distReference;.}.....publi |
2ef40 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 24 | c.function.setDistSha1Checksum($ |
2ef60 | 73 68 61 31 63 68 65 63 6b 73 75 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 74 53 68 61 31 43 | sha1checksum).{.$this->distSha1C |
2ef80 | 68 65 63 6b 73 75 6d 20 3d 20 24 73 68 61 31 63 68 65 63 6b 73 75 6d 3b 0a 7d 0a 0a 0a 0a 0a 70 | hecksum.=.$sha1checksum;.}.....p |
2efa0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 | ublic.function.getDistSha1Checks |
2efc0 | 75 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 74 53 68 61 31 43 68 65 | um().{.return.$this->distSha1Che |
2efe0 | 63 6b 73 75 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | cksum;.}.......public.function.s |
2f000 | 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 24 72 65 70 6f 73 69 74 6f 72 69 65 73 29 0a 7b 0a | etRepositories($repositories).{. |
2f020 | 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 | $this->repositories.=.$repositor |
2f040 | 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 | ies;.}.....public.function.getRe |
2f060 | 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 | positories().{.return.$this->rep |
2f080 | 6f 73 69 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ositories;.}.....public.function |
2f0a0 | 20 67 65 74 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 76 65 | .getVersion().{.return.$this->ve |
2f0c0 | 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | rsion;.}.....public.function.get |
2f0e0 | 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | PrettyVersion().{.return.$this-> |
2f100 | 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | prettyVersion;.}.......public.fu |
2f120 | 6e 63 74 69 6f 6e 20 73 65 74 4c 69 63 65 6e 73 65 28 61 72 72 61 79 20 24 6c 69 63 65 6e 73 65 | nction.setLicense(array.$license |
2f140 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 20 3d 20 24 6c 69 63 65 6e 73 65 3b 0a 7d | ).{.$this->license.=.$license;.} |
2f160 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 | .....public.function.getLicense( |
2f180 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 69 63 65 6e 73 65 3b 0a 7d 0a 0a 0a 0a | ).{.return.$this->license;.}.... |
2f1a0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 71 75 69 72 65 73 28 61 | ...public.function.setRequires(a |
2f1c0 | 72 72 61 79 20 24 72 65 71 75 69 72 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 | rray.$requires).{.$this->require |
2f1e0 | 73 20 3d 20 24 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | s.=.$requires;.}.....public.func |
2f200 | 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | tion.getRequires().{.return.$thi |
2f220 | 73 2d 3e 72 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | s->requires;.}.......public.func |
2f240 | 74 69 6f 6e 20 73 65 74 43 6f 6e 66 6c 69 63 74 73 28 61 72 72 61 79 20 24 63 6f 6e 66 6c 69 63 | tion.setConflicts(array.$conflic |
2f260 | 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 6c 69 63 74 73 20 3d 20 24 63 6f 6e 66 6c 69 | ts).{.$this->conflicts.=.$confli |
2f280 | 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f | cts;.}.....public.function.getCo |
2f2a0 | 6e 66 6c 69 63 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 6c 69 | nflicts().{.return.$this->confli |
2f2c0 | 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | cts;.}.......public.function.set |
2f2e0 | 50 72 6f 76 69 64 65 73 28 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 73 29 0a 7b 0a 24 74 68 69 | Provides(array.$provides).{.$thi |
2f300 | 73 2d 3e 70 72 6f 76 69 64 65 73 20 3d 20 24 70 72 6f 76 69 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 | s->provides.=.$provides;.}.....p |
2f320 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 73 28 29 0a 7b 0a 72 | ublic.function.getProvides().{.r |
2f340 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | eturn.$this->provides;.}.......p |
2f360 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6c 61 63 65 73 28 61 72 72 61 79 | ublic.function.setReplaces(array |
2f380 | 20 24 72 65 70 6c 61 63 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 20 3d 20 | .$replaces).{.$this->replaces.=. |
2f3a0 | 24 72 65 70 6c 61 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | $replaces;.}.....public.function |
2f3c0 | 20 67 65 74 52 65 70 6c 61 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 | .getReplaces().{.return.$this->r |
2f3e0 | 65 70 6c 61 63 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | eplaces;.}.......public.function |
2f400 | 20 73 65 74 44 65 76 52 65 71 75 69 72 65 73 28 61 72 72 61 79 20 24 64 65 76 52 65 71 75 69 72 | .setDevRequires(array.$devRequir |
2f420 | 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 52 65 71 75 69 72 65 73 20 3d 20 24 64 65 76 52 | es).{.$this->devRequires.=.$devR |
2f440 | 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | equires;.}.....public.function.g |
2f460 | 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | etDevRequires().{.return.$this-> |
2f480 | 64 65 76 52 65 71 75 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | devRequires;.}.......public.func |
2f4a0 | 74 69 6f 6e 20 73 65 74 53 75 67 67 65 73 74 73 28 61 72 72 61 79 20 24 73 75 67 67 65 73 74 73 | tion.setSuggests(array.$suggests |
2f4c0 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 73 20 3d 20 24 73 75 67 67 65 73 74 73 3b | ).{.$this->suggests.=.$suggests; |
2f4e0 | 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 67 67 65 73 | .}.....public.function.getSugges |
2f500 | 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 73 3b 0a 7d | ts().{.return.$this->suggests;.} |
2f520 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 6c 65 61 73 | .......public.function.setReleas |
2f540 | 65 44 61 74 65 28 5c 44 61 74 65 54 69 6d 65 20 24 72 65 6c 65 61 73 65 44 61 74 65 29 0a 7b 0a | eDate(\DateTime.$releaseDate).{. |
2f560 | 24 74 68 69 73 2d 3e 72 65 6c 65 61 73 65 44 61 74 65 20 3d 20 24 72 65 6c 65 61 73 65 44 61 74 | $this->releaseDate.=.$releaseDat |
2f580 | 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 | e;.}.....public.function.getRele |
2f5a0 | 61 73 65 44 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 65 61 73 | aseDate().{.return.$this->releas |
2f5c0 | 65 44 61 74 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | eDate;.}.......public.function.s |
2f5e0 | 65 74 4b 65 79 77 6f 72 64 73 28 61 72 72 61 79 20 24 6b 65 79 77 6f 72 64 73 29 0a 7b 0a 24 74 | etKeywords(array.$keywords).{.$t |
2f600 | 68 69 73 2d 3e 6b 65 79 77 6f 72 64 73 20 3d 20 24 6b 65 79 77 6f 72 64 73 3b 0a 7d 0a 0a 0a 0a | his->keywords.=.$keywords;.}.... |
2f620 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 77 6f 72 64 73 28 29 0a 7b | .public.function.getKeywords().{ |
2f640 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6b 65 79 77 6f 72 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a | .return.$this->keywords;.}...... |
2f660 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 68 6f 72 73 28 61 72 72 61 | .public.function.setAuthors(arra |
2f680 | 79 20 24 61 75 74 68 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 68 6f 72 73 20 3d 20 24 | y.$authors).{.$this->authors.=.$ |
2f6a0 | 61 75 74 68 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | authors;.}.....public.function.g |
2f6c0 | 65 74 41 75 74 68 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 75 74 68 | etAuthors().{.return.$this->auth |
2f6e0 | 6f 72 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | ors;.}.......public.function.set |
2f700 | 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 | Description($description).{.$thi |
2f720 | 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 7d | s->description.=.$description;.} |
2f740 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 | .....public.function.getDescript |
2f760 | 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f | ion().{.return.$this->descriptio |
2f780 | 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 6f | n;.}.......public.function.setHo |
2f7a0 | 6d 65 70 61 67 65 28 24 68 6f 6d 65 70 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 6f 6d 65 70 | mepage($homepage).{.$this->homep |
2f7c0 | 61 67 65 20 3d 20 24 68 6f 6d 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | age.=.$homepage;.}.....public.fu |
2f7e0 | 6e 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 | nction.getHomepage().{.return.$t |
2f800 | 68 69 73 2d 3e 68 6f 6d 65 70 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | his->homepage;.}.......public.fu |
2f820 | 6e 63 74 69 6f 6e 20 73 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 24 6d 69 6e 69 | nction.setMinimumStability($mini |
2f840 | 6d 75 6d 53 74 61 62 69 6c 69 74 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 69 6e 69 6d 75 6d 53 74 | mumStability).{.$this->minimumSt |
2f860 | 61 62 69 6c 69 74 79 20 3d 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a | ability.=.$minimumStability;.}.. |
2f880 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 | ...public.function.getMinimumSta |
2f8a0 | 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 69 6e 69 6d 75 6d | bility().{.return.$this->minimum |
2f8c0 | 53 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | Stability;.}.......public.functi |
2f8e0 | 6f 6e 20 73 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 61 72 72 61 79 20 24 73 74 61 62 | on.setStabilityFlags(array.$stab |
2f900 | 69 6c 69 74 79 46 6c 61 67 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c | ilityFlags).{.$this->stabilityFl |
2f920 | 61 67 73 20 3d 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | ags.=.$stabilityFlags;.}.....pub |
2f940 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 | lic.function.getStabilityFlags() |
2f960 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b | .{.return.$this->stabilityFlags; |
2f980 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 66 65 | .}.......public.function.setRefe |
2f9a0 | 72 65 6e 63 65 73 28 61 72 72 61 79 20 24 72 65 66 65 72 65 6e 63 65 73 29 0a 7b 0a 24 74 68 69 | rences(array.$references).{.$thi |
2f9c0 | 73 2d 3e 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d 0a 0a | s->references.=.$references;.}.. |
2f9e0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 66 65 72 65 6e 63 65 73 | ...public.function.getReferences |
2fa00 | 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 66 65 72 65 6e 63 65 73 3b 0a 7d | ().{.return.$this->references;.} |
2fa20 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 6f 6c 6f | .......public.function.setAutolo |
2fa40 | 61 64 28 61 72 72 61 79 20 24 61 75 74 6f 6c 6f 61 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 | ad(array.$autoload).{.$this->aut |
2fa60 | 6f 6c 6f 61 64 20 3d 20 24 61 75 74 6f 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | oload.=.$autoload;.}.....public. |
2fa80 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | function.getAutoload().{.return. |
2faa0 | 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f 61 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | $this->autoload;.}.......public. |
2fac0 | 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 61 72 72 61 79 20 24 | function.setIncludePaths(array.$ |
2fae0 | 69 6e 63 6c 75 64 65 50 61 74 68 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 63 6c 75 64 65 50 61 | includePaths).{.$this->includePa |
2fb00 | 74 68 73 20 3d 20 24 69 6e 63 6c 75 64 65 50 61 74 68 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | ths.=.$includePaths;.}.....publi |
2fb20 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 0a 7b 0a 72 | c.function.getIncludePaths().{.r |
2fb40 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 63 6c 75 64 65 50 61 74 68 73 3b 0a 7d 0a 0a 0a 0a | eturn.$this->includePaths;.}.... |
2fb60 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 75 70 70 6f 72 74 28 61 72 | ...public.function.setSupport(ar |
2fb80 | 72 61 79 20 24 73 75 70 70 6f 72 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 70 70 6f 72 74 20 3d | ray.$support).{.$this->support.= |
2fba0 | 20 24 73 75 70 70 6f 72 74 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | .$support;.}.....public.function |
2fbc0 | 20 67 65 74 53 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 75 | .getSupport().{.return.$this->su |
2fbe0 | 70 70 6f 72 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | pport;.}.}.<?php............name |
2fc00 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d | space.Composer\Package;..use.Com |
2fc20 | 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | poser\Json\JsonFile;.use.Compose |
2fc40 | 72 5c 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b | r\Installer\InstallationManager; |
2fc60 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 | .use.Composer\Repository\Reposit |
2fc80 | 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 50 72 | oryManager;.use.Composer\Util\Pr |
2fca0 | 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b | ocessExecutor;.use.Composer\Pack |
2fcc0 | 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c | age\AliasPackage;........class.L |
2fce0 | 6f 63 6b 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 46 69 6c 65 3b 0a 70 72 69 76 61 | ocker.{.private.$lockFile;.priva |
2fd00 | 74 65 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 | te.$repositoryManager;.private.$ |
2fd20 | 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 70 72 69 76 61 74 65 20 24 68 61 | installationManager;.private.$ha |
2fd40 | 73 68 3b 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 3b 0a 0a 0a 0a 0a | sh;.private.$lockDataCache;..... |
2fd60 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
2fd80 | 28 4a 73 6f 6e 46 69 6c 65 20 24 6c 6f 63 6b 46 69 6c 65 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d | (JsonFile.$lockFile,.RepositoryM |
2fda0 | 61 6e 61 67 65 72 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2c 20 49 6e 73 74 61 | anager.$repositoryManager,.Insta |
2fdc0 | 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 | llationManager.$installationMana |
2fde0 | 67 65 72 2c 20 24 68 61 73 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 20 3d 20 | ger,.$hash).{.$this->lockFile.=. |
2fe00 | 24 6c 6f 63 6b 46 69 6c 65 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 | $lockFile;.$this->repositoryMana |
2fe20 | 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d | ger.=.$repositoryManager;.$this- |
2fe40 | 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 69 6e 73 74 61 6c 6c 61 | >installationManager.=.$installa |
2fe60 | 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 68 61 73 68 20 3d 20 24 68 61 73 68 | tionManager;.$this->hash.=.$hash |
2fe80 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 4c 6f 63 | ;.}........public.function.isLoc |
2fea0 | 6b 65 64 28 24 64 65 76 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e | ked($dev.=.false).{.if.(!$this-> |
2fec0 | 6c 6f 63 6b 46 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c | lockFile->exists()).{.return.fal |
2fee0 | 73 65 3b 0a 7d 0a 0a 24 64 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 | se;.}..$data.=.$this->getLockDat |
2ff00 | 61 28 29 3b 0a 69 66 20 28 24 64 65 76 29 20 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 64 | a();.if.($dev).{.return.isset($d |
2ff20 | 61 74 61 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | ata['packages-dev']);.}..return. |
2ff40 | 69 73 73 65 74 28 24 64 61 74 61 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 3b 0a 7d 0a 0a 0a 0a 0a | isset($data['packages']);.}..... |
2ff60 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 46 72 65 73 68 28 29 0a 7b 0a 24 6c | ..public.function.isFresh().{.$l |
2ff80 | 6f 63 6b 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 0a | ock.=.$this->lockFile->read();.. |
2ffa0 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 68 20 3d 3d 3d 20 24 6c 6f 63 6b 5b 27 68 61 | return.$this->hash.===.$lock['ha |
2ffc0 | 73 68 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | sh'];.}........public.function.g |
2ffe0 | 65 74 4c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 28 24 64 65 76 20 3d 20 66 61 6c 73 65 29 0a 7b | etLockedPackages($dev.=.false).{ |
30000 | 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 | .$lockData.=.$this->getLockData( |
30020 | 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 6c 6f 63 6b 65 64 | );.$packages.=.array();..$locked |
30040 | 50 61 63 6b 61 67 65 73 20 3d 20 24 64 65 76 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 | Packages.=.$dev.?.$lockData['pac |
30060 | 6b 61 67 65 73 2d 64 65 76 27 5d 20 3a 20 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 67 65 | kages-dev'].:.$lockData['package |
30080 | 73 27 5d 3b 0a 24 72 65 70 6f 20 3d 20 24 64 65 76 20 3f 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 | s'];.$repo.=.$dev.?.$this->repos |
300a0 | 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 | itoryManager->getLocalDevReposit |
300c0 | 6f 72 79 28 29 20 3a 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 | ory().:.$this->repositoryManager |
300e0 | 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 | ->getLocalRepository();..foreach |
30100 | 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 61 73 20 24 69 6e 66 6f 29 20 7b 0a 24 72 | .($lockedPackages.as.$info).{.$r |
30120 | 65 73 6f 6c 76 65 64 56 65 72 73 69 6f 6e 20 3d 20 21 65 6d 70 74 79 28 24 69 6e 66 6f 5b 27 61 | esolvedVersion.=.!empty($info['a |
30140 | 6c 69 61 73 2d 76 65 72 73 69 6f 6e 27 5d 29 20 3f 20 24 69 6e 66 6f 5b 27 61 6c 69 61 73 2d 76 | lias-version']).?.$info['alias-v |
30160 | 65 72 73 69 6f 6e 27 5d 20 3a 20 24 69 6e 66 6f 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 0a 0a 20 | ersion'].:.$info['version'];.... |
30180 | 24 70 61 63 6b 61 67 65 20 3d 20 24 72 65 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 69 | $package.=.$repo->findPackage($i |
301a0 | 6e 66 6f 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 72 65 73 6f 6c 76 65 64 56 65 72 73 69 6f 6e | nfo['package'],.$resolvedVersion |
301c0 | 29 3b 0a 0a 0a 20 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 | );....if.(!$package).{.$package. |
301e0 | 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 66 69 6e 64 | =.$this->repositoryManager->find |
30200 | 50 61 63 6b 61 67 65 28 24 69 6e 66 6f 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 72 65 73 6f 6c | Package($info['package'],.$resol |
30220 | 76 65 64 56 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 70 61 63 6b 61 67 65 20 | vedVersion);.}....if.(!$package. |
30240 | 26 26 20 21 65 6d 70 74 79 28 24 69 6e 66 6f 5b 27 61 6c 69 61 73 2d 76 65 72 73 69 6f 6e 27 5d | &&.!empty($info['alias-version'] |
30260 | 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 | )).{.$package.=.$this->repositor |
30280 | 79 4d 61 6e 61 67 65 72 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 69 6e 66 6f 5b 27 70 61 63 | yManager->findPackage($info['pac |
302a0 | 6b 61 67 65 27 5d 2c 20 24 69 6e 66 6f 5b 27 76 65 72 73 69 6f 6e 27 5d 29 3b 0a 69 66 20 28 24 | kage'],.$info['version']);.if.($ |
302c0 | 70 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 20 3d 20 6e 65 77 20 41 6c 69 61 73 50 61 63 | package).{.$alias.=.new.AliasPac |
302e0 | 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 66 6f 5b 27 61 6c 69 61 73 2d 76 65 72 73 | kage($package,.$info['alias-vers |
30300 | 69 6f 6e 27 5d 2c 20 24 69 6e 66 6f 5b 27 61 6c 69 61 73 2d 70 72 65 74 74 79 2d 76 65 72 73 69 | ion'],.$info['alias-pretty-versi |
30320 | 6f 6e 27 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 | on']);.$package->getRepository() |
30340 | 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 24 61 6c 69 61 73 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d | ->addPackage($alias);.$package.= |
30360 | 20 24 61 6c 69 61 73 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 29 20 7b 0a 74 | .$alias;.}.}..if.(!$package).{.t |
30380 | 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 | hrow.new.\LogicException(sprintf |
303a0 | 28 0a 27 43 61 6e 20 6e 6f 74 20 66 69 6e 64 20 22 25 73 2d 25 73 22 20 70 61 63 6b 61 67 65 20 | (.'Can.not.find."%s-%s".package. |
303c0 | 69 6e 20 72 65 67 69 73 74 65 72 65 64 20 72 65 70 6f 73 69 74 6f 72 69 65 73 27 2c 0a 24 69 6e | in.registered.repositories',.$in |
303e0 | 66 6f 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 69 6e 66 6f 5b 27 76 65 72 73 69 6f 6e 27 5d 0a | fo['package'],.$info['version']. |
30400 | 29 29 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d | ));.}..$packages[].=.$package;.} |
30420 | 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | ..return.$packages;.}..public.fu |
30440 | 6e 63 74 69 6f 6e 20 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 24 | nction.getMinimumStability().{.$ |
30460 | 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b | lockData.=.$this->getLockData(); |
30480 | 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 6d 69 6e 69 6d 75 | ..return.isset($lockData['minimu |
304a0 | 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 6d 69 6e 69 | m-stability']).?.$lockData['mini |
304c0 | 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 5d 20 3a 20 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 70 | mum-stability'].:.'stable';.}..p |
304e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 | ublic.function.getStabilityFlags |
30500 | 28 29 0a 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 | ().{.$lockData.=.$this->getLockD |
30520 | 61 74 61 28 29 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 | ata();..return.isset($lockData[' |
30540 | 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 | stability-flags']).?.$lockData[' |
30560 | 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 73 27 5d 20 3a 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a | stability-flags'].:.array();.}.. |
30580 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 24 | public.function.getAliases().{.$ |
305a0 | 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b | lockData.=.$this->getLockData(); |
305c0 | 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 6c 6f 63 6b 44 61 74 61 5b 27 61 6c 69 61 73 65 | ..return.isset($lockData['aliase |
305e0 | 73 27 5d 29 20 3f 20 24 6c 6f 63 6b 44 61 74 61 5b 27 61 6c 69 61 73 65 73 27 5d 20 3a 20 61 72 | s']).?.$lockData['aliases'].:.ar |
30600 | 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 | ray();.}..public.function.getLoc |
30620 | 6b 44 61 74 61 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 6c 6f | kData().{.if.(null.!==.$this->lo |
30640 | 63 6b 44 61 74 61 43 61 63 68 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 | ckDataCache).{.return.$this->loc |
30660 | 6b 44 61 74 61 43 61 63 68 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 | kDataCache;.}..if.(!$this->lockF |
30680 | 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 | ile->exists()).{.throw.new.\Logi |
306a0 | 63 45 78 63 65 70 74 69 6f 6e 28 27 4e 6f 20 6c 6f 63 6b 66 69 6c 65 20 66 6f 75 6e 64 2e 20 55 | cException('No.lockfile.found..U |
306c0 | 6e 61 62 6c 65 20 74 6f 20 72 65 61 64 20 6c 6f 63 6b 65 64 20 70 61 63 6b 61 67 65 73 27 29 3b | nable.to.read.locked.packages'); |
306e0 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 20 | .}..return.$this->lockDataCache. |
30700 | 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 7d 0a 0a 0a 0a | =.$this->lockFile->read();.}.... |
30720 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4c 6f 63 6b 44 61 | .......public.function.setLockDa |
30740 | 74 61 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 2c 20 24 64 65 76 50 61 63 6b 61 67 65 73 | ta(array.$packages,.$devPackages |
30760 | 2c 20 61 72 72 61 79 20 24 61 6c 69 61 73 65 73 2c 20 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c | ,.array.$aliases,.$minimumStabil |
30780 | 69 74 79 2c 20 61 72 72 61 79 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 29 0a 7b 0a 24 6c | ity,.array.$stabilityFlags).{.$l |
307a0 | 6f 63 6b 20 3d 20 61 72 72 61 79 28 0a 27 68 61 73 68 27 20 3d 3e 20 24 74 68 69 73 2d 3e 68 61 | ock.=.array(.'hash'.=>.$this->ha |
307c0 | 73 68 2c 0a 27 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 70 61 63 6b 61 67 65 | sh,.'packages'.=>.null,.'package |
307e0 | 73 2d 64 65 76 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 61 6c 69 61 73 65 73 27 20 3d 3e 20 24 61 6c | s-dev'.=>.null,.'aliases'.=>.$al |
30800 | 69 61 73 65 73 2c 0a 27 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c 69 74 79 27 20 3d 3e 20 24 6d | iases,.'minimum-stability'.=>.$m |
30820 | 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 2c 0a 27 73 74 61 62 69 6c 69 74 79 2d 66 6c 61 67 | inimumStability,.'stability-flag |
30840 | 73 27 20 3d 3e 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 2c 0a 29 3b 0a 0a 24 6c 6f 63 6b | s'.=>.$stabilityFlags,.);..$lock |
30860 | 5b 27 70 61 63 6b 61 67 65 73 27 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 50 61 63 6b 61 67 | ['packages'].=.$this->lockPackag |
30880 | 65 73 28 24 70 61 63 6b 61 67 65 73 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 76 | es($packages);.if.(null.!==.$dev |
308a0 | 50 61 63 6b 61 67 65 73 29 20 7b 0a 24 6c 6f 63 6b 5b 27 70 61 63 6b 61 67 65 73 2d 64 65 76 27 | Packages).{.$lock['packages-dev' |
308c0 | 5d 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 50 61 63 6b 61 67 65 73 28 24 64 65 76 50 61 63 6b | ].=.$this->lockPackages($devPack |
308e0 | 61 67 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 | ages);.}..if.(!$this->isLocked() |
30900 | 20 7c 7c 20 24 6c 6f 63 6b 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 | .||.$lock.!==.$this->getLockData |
30920 | 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 46 69 6c 65 2d 3e 77 72 69 74 65 28 24 6c 6f | ()).{.$this->lockFile->write($lo |
30940 | 63 6b 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 63 6b 44 61 74 61 43 61 63 68 65 20 3d 20 6e 75 6c 6c | ck);.$this->lockDataCache.=.null |
30960 | 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b | ;..return.true;.}..return.false; |
30980 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 63 6b 50 61 63 6b 61 67 65 | .}..private.function.lockPackage |
309a0 | 73 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a 24 6c 6f 63 6b 65 64 20 3d 20 61 | s(array.$packages).{.$locked.=.a |
309c0 | 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 | rray();..foreach.($packages.as.$ |
309e0 | 70 61 63 6b 61 67 65 29 20 7b 0a 24 61 6c 69 61 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 69 66 20 28 24 | package).{.$alias.=.null;..if.($ |
30a00 | 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 | package.instanceof.AliasPackage) |
30a20 | 20 7b 0a 24 61 6c 69 61 73 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 24 70 61 63 6b 61 67 65 20 3d | .{.$alias.=.$package;.$package.= |
30a40 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 0a 24 6e 61 6d | .$package->getAliasOf();.}..$nam |
30a60 | 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 24 | e.=.$package->getPrettyName();.$ |
30a80 | 76 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 | version.=.$package->getPrettyVer |
30aa0 | 73 69 6f 6e 28 29 3b 0a 0a 69 66 20 28 21 24 6e 61 6d 65 20 7c 7c 20 21 24 76 65 72 73 69 6f 6e | sion();..if.(!$name.||.!$version |
30ac0 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 | ).{.throw.new.\LogicException(sp |
30ae0 | 72 69 6e 74 66 28 0a 27 50 61 63 6b 61 67 65 20 22 25 73 22 20 68 61 73 20 6e 6f 20 76 65 72 73 | rintf(.'Package."%s".has.no.vers |
30b00 | 69 6f 6e 20 6f 72 20 6e 61 6d 65 20 61 6e 64 20 63 61 6e 20 6e 6f 74 20 62 65 20 6c 6f 63 6b 65 | ion.or.name.and.can.not.be.locke |
30b20 | 64 27 2c 20 24 70 61 63 6b 61 67 65 0a 29 29 3b 0a 7d 0a 0a 24 73 70 65 63 20 3d 20 61 72 72 61 | d',.$package.));.}..$spec.=.arra |
30b40 | 79 28 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 6e 61 6d 65 2c 20 27 76 65 72 73 69 6f 6e 27 20 | y('package'.=>.$name,.'version'. |
30b60 | 3d 3e 20 24 76 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 | =>.$version);..if.($package->isD |
30b80 | 65 76 28 29 20 26 26 20 21 24 61 6c 69 61 73 29 20 7b 0a 24 73 70 65 63 5b 27 73 6f 75 72 63 65 | ev().&&.!$alias).{.$spec['source |
30ba0 | 2d 72 65 66 65 72 65 6e 63 65 27 5d 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 | -reference'].=.$package->getSour |
30bc0 | 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 69 66 20 28 27 67 69 74 27 20 3d 3d 3d 20 24 70 61 | ceReference();.if.('git'.===.$pa |
30be0 | 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 20 26 26 20 24 70 61 74 68 20 | ckage->getSourceType().&&.$path. |
30c00 | 3d 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 67 65 | =.$this->installationManager->ge |
30c20 | 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 70 72 6f 63 65 | tInstallPath($package)).{.$proce |
30c40 | 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 28 29 3b 0a 69 66 20 28 | ss.=.new.ProcessExecutor();.if.( |
30c60 | 30 20 3d 3d 3d 20 24 70 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 27 67 69 74 20 6c 6f 67 | 0.===.$process->execute('git.log |
30c80 | 20 2d 6e 31 20 2d 2d 70 72 65 74 74 79 3d 25 63 74 20 27 2e 65 73 63 61 70 65 73 68 65 6c 6c 61 | .-n1.--pretty=%ct.'.escapeshella |
30ca0 | 72 67 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 | rg($package->getSourceReference( |
30cc0 | 29 29 2c 20 24 6f 75 74 70 75 74 2c 20 24 70 61 74 68 29 29 20 7b 0a 24 73 70 65 63 5b 27 63 6f | )),.$output,.$path)).{.$spec['co |
30ce0 | 6d 6d 69 74 2d 64 61 74 65 27 5d 20 3d 20 74 72 69 6d 28 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 7d | mmit-date'].=.trim($output);.}.} |
30d00 | 0a 7d 0a 0a 69 66 20 28 24 61 6c 69 61 73 29 20 7b 0a 24 73 70 65 63 5b 27 61 6c 69 61 73 2d 70 | .}..if.($alias).{.$spec['alias-p |
30d20 | 72 65 74 74 79 2d 76 65 72 73 69 6f 6e 27 5d 20 3d 20 24 61 6c 69 61 73 2d 3e 67 65 74 50 72 65 | retty-version'].=.$alias->getPre |
30d40 | 74 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 24 73 70 65 63 5b 27 61 6c 69 61 73 2d 76 65 72 73 69 | ttyVersion();.$spec['alias-versi |
30d60 | 6f 6e 27 5d 20 3d 20 24 61 6c 69 61 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a | on'].=.$alias->getVersion();.}.. |
30d80 | 24 6c 6f 63 6b 65 64 5b 5d 20 3d 20 24 73 70 65 63 3b 0a 7d 0a 0a 75 73 6f 72 74 28 24 6c 6f 63 | $locked[].=.$spec;.}..usort($loc |
30da0 | 6b 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 24 63 6f 6d 70 61 72 | ked,.function.($a,.$b).{.$compar |
30dc0 | 69 73 6f 6e 20 3d 20 73 74 72 63 6d 70 28 24 61 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 62 5b | ison.=.strcmp($a['package'],.$b[ |
30de0 | 27 70 61 63 6b 61 67 65 27 5d 29 3b 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 63 6f 6d 70 61 72 69 | 'package']);..if.(0.!==.$compari |
30e00 | 73 6f 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 61 72 69 73 6f 6e 3b 0a 7d 0a 0a 0a 20 | son).{.return.$comparison;.}.... |
30e20 | 24 61 56 65 72 73 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 61 5b 27 61 6c 69 61 73 2d 76 65 72 73 | $aVersion.=.isset($a['alias-vers |
30e40 | 69 6f 6e 27 5d 29 20 3f 20 24 61 5b 27 61 6c 69 61 73 2d 76 65 72 73 69 6f 6e 27 5d 20 3a 20 24 | ion']).?.$a['alias-version'].:.$ |
30e60 | 61 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 24 62 56 65 72 73 69 6f 6e 20 3d 20 69 73 73 65 74 28 | a['version'];.$bVersion.=.isset( |
30e80 | 24 62 5b 27 61 6c 69 61 73 2d 76 65 72 73 69 6f 6e 27 5d 29 20 3f 20 24 62 5b 27 61 6c 69 61 73 | $b['alias-version']).?.$b['alias |
30ea0 | 2d 76 65 72 73 69 6f 6e 27 5d 20 3a 20 24 62 5b 27 76 65 72 73 69 6f 6e 27 5d 3b 0a 0a 72 65 74 | -version'].:.$b['version'];..ret |
30ec0 | 75 72 6e 20 73 74 72 63 6d 70 28 24 61 56 65 72 73 69 6f 6e 2c 20 24 62 56 65 72 73 69 6f 6e 29 | urn.strcmp($aVersion,.$bVersion) |
30ee0 | 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 6c 6f 63 6b 65 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 | ;.});..return.$locked;.}.}.<?php |
30f00 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 | ............namespace.Composer\P |
30f20 | 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 | ackage;..use.Composer\Package\Li |
30f40 | 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 | nkConstraint\LinkConstraintInter |
30f60 | 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 | face;.use.Composer\Repository\Re |
30f80 | 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 | positoryInterface;.....interface |
30fa0 | 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .PackageInterface.{......public. |
30fc0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | function.getName();.......public |
30fe0 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 3b 0a 0a 0a 0a 0a 0a | .function.getPrettyName();...... |
31000 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 73 28 29 3b 0a | ....public.function.getNames();. |
31020 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 64 28 24 69 64 29 | ......public.function.setId($id) |
31040 | 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 64 28 29 3b | ;.......public.function.getId(); |
31060 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 | ..........public.function.matche |
31080 | 73 28 24 6e 61 6d 65 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 | s($name,.LinkConstraintInterface |
310a0 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | .$constraint);.......public.func |
310c0 | 74 69 6f 6e 20 69 73 44 65 76 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | tion.isDev();.......public.funct |
310e0 | 69 6f 6e 20 67 65 74 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ion.getType();.......public.func |
31100 | 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | tion.getTargetDir();.......publi |
31120 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 74 72 61 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 | c.function.getExtra();.......pub |
31140 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 | lic.function.setInstallationSour |
31160 | 63 65 28 24 74 79 70 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ce($type);.......public.function |
31180 | 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a | .getInstallationSource();....... |
311a0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b | public.function.getSourceType(); |
311c0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 | .......public.function.getSource |
311e0 | 55 72 6c 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | Url();.......public.function.get |
31200 | 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | SourceReference();.......public. |
31220 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 | function.getDistType();.......pu |
31240 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 28 29 3b 0a 0a 0a 0a 0a | blic.function.getDistUrl();..... |
31260 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 52 65 66 65 72 65 6e | ..public.function.getDistReferen |
31280 | 63 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 | ce();.......public.function.getD |
312a0 | 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | istSha1Checksum();.......public. |
312c0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 | function.getScripts();.......pub |
312e0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a | lic.function.getVersion();...... |
31300 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f | .public.function.getPrettyVersio |
31320 | 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 | n();.......public.function.getSt |
31340 | 61 62 69 6c 69 74 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ability();.......public.function |
31360 | 20 67 65 74 4c 69 63 65 6e 73 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | .getLicense();........public.fun |
31380 | 63 74 69 6f 6e 20 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | ction.getRequires();........publ |
313a0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 3b 0a 0a 0a 0a 0a | ic.function.getConflicts();..... |
313c0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 76 69 64 65 73 28 29 | ...public.function.getProvides() |
313e0 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6c | ;........public.function.getRepl |
31400 | 61 63 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | aces();........public.function.g |
31420 | 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | etDevRequires();........public.f |
31440 | 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 67 67 65 73 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | unction.getSuggests();.......... |
31460 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b | ..public.function.getAutoload(); |
31480 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 | ........public.function.getInclu |
314a0 | 64 65 50 61 74 68 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | dePaths();.........public.functi |
314c0 | 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | on.getRepositories();.......publ |
314e0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 | ic.function.setRepository(Reposi |
31500 | 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 0a 0a 0a 0a | toryInterface.$repository);..... |
31520 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 | ..public.function.getRepository( |
31540 | 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 | );.......public.function.getRele |
31560 | 61 73 65 44 61 74 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | aseDate();.......public.function |
31580 | 20 67 65 74 4b 65 79 77 6f 72 64 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | .getKeywords();.......public.fun |
315a0 | 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 | ction.getDescription();.......pu |
315c0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 3b 0a 0a 0a 0a | blic.function.getBinaries();.... |
315e0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 67 65 28 29 | ...public.function.getHomepage() |
31600 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 | ;.........public.function.getAut |
31620 | 68 6f 72 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | hors();.......public.function.ge |
31640 | 74 41 6c 69 61 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | tAlias();.......public.function. |
31660 | 67 65 74 50 72 65 74 74 79 41 6c 69 61 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | getPrettyAlias();.......public.f |
31680 | 75 6e 63 74 69 6f 6e 20 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 | unction.getUniqueName();.......p |
316a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 0a 0a 0a | ublic.function.__toString();.... |
316c0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 | ...public.function.getPrettyStri |
316e0 | 6e 67 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 | ng();.......public.function.getS |
31700 | 75 70 70 6f 72 74 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | upport();.}.<?php............nam |
31720 | 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f | espace.Composer\Package;..use.Co |
31740 | 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4c 69 | mposer\Package\LinkConstraint\Li |
31760 | 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f | nkConstraintInterface;.use.Compo |
31780 | 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 56 65 72 73 69 | ser\Package\LinkConstraint\Versi |
317a0 | 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 | onConstraint;.use.Composer\Repos |
317c0 | 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 | itory\RepositoryInterface;.use.C |
317e0 | 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 | omposer\Repository\PlatformRepos |
31800 | 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 42 61 73 65 | itory;.......abstract.class.Base |
31820 | 50 61 63 6b 61 67 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | Package.implements.PackageInterf |
31840 | 61 63 65 0a 7b 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 73 75 70 70 6f 72 74 65 64 4c 69 | ace.{.public.static.$supportedLi |
31860 | 6e 6b 54 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a 27 72 65 71 75 69 72 65 27 20 3d 3e 20 61 72 | nkTypes.=.array(.'require'.=>.ar |
31880 | 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 72 65 71 75 69 72 65 73 27 2c | ray('description'.=>.'requires', |
318a0 | 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 72 65 71 75 69 72 65 73 27 29 2c 0a 27 63 6f 6e 66 6c | .'method'.=>.'requires'),.'confl |
318c0 | 69 63 74 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 | ict'.=>.array('description'.=>.' |
318e0 | 63 6f 6e 66 6c 69 63 74 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d 3e 20 27 63 6f 6e 66 6c 69 63 | conflicts',.'method'.=>.'conflic |
31900 | 74 73 27 29 2c 0a 27 70 72 6f 76 69 64 65 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 | ts'),.'provide'.=>.array('descri |
31920 | 70 74 69 6f 6e 27 20 3d 3e 20 27 70 72 6f 76 69 64 65 73 27 2c 20 27 6d 65 74 68 6f 64 27 20 3d | ption'.=>.'provides',.'method'.= |
31940 | 3e 20 27 70 72 6f 76 69 64 65 73 27 29 2c 0a 27 72 65 70 6c 61 63 65 27 20 3d 3e 20 61 72 72 61 | >.'provides'),.'replace'.=>.arra |
31960 | 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 27 72 65 70 6c 61 63 65 73 27 2c 20 27 | y('description'.=>.'replaces',.' |
31980 | 6d 65 74 68 6f 64 27 20 3d 3e 20 27 72 65 70 6c 61 63 65 73 27 29 2c 0a 27 72 65 71 75 69 72 65 | method'.=>.'replaces'),.'require |
319a0 | 2d 64 65 76 27 20 3d 3e 20 61 72 72 61 79 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 20 3d 3e 20 | -dev'.=>.array('description'.=>. |
319c0 | 27 72 65 71 75 69 72 65 73 20 28 66 6f 72 20 64 65 76 65 6c 6f 70 6d 65 6e 74 29 27 2c 20 27 6d | 'requires.(for.development)',.'m |
319e0 | 65 74 68 6f 64 27 20 3d 3e 20 27 64 65 76 52 65 71 75 69 72 65 73 27 29 2c 0a 29 3b 0a 0a 63 6f | ethod'.=>.'devRequires'),.);..co |
31a00 | 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 53 54 41 42 4c 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 | nst.STABILITY_STABLE.=.0;.const. |
31a20 | 53 54 41 42 49 4c 49 54 59 5f 52 43 20 3d 20 35 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 | STABILITY_RC.=.5;.const.STABILIT |
31a40 | 59 5f 42 45 54 41 20 3d 20 31 30 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 41 4c 50 | Y_BETA.=.10;.const.STABILITY_ALP |
31a60 | 48 41 20 3d 20 31 35 3b 0a 63 6f 6e 73 74 20 53 54 41 42 49 4c 49 54 59 5f 44 45 56 20 3d 20 32 | HA.=.15;.const.STABILITY_DEV.=.2 |
31a80 | 30 3b 0a 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 4e 41 4d 45 20 3d 20 2d 31 3b 0a 63 6f 6e 73 74 | 0;..const.MATCH_NAME.=.-1;.const |
31aa0 | 20 4d 41 54 43 48 5f 4e 4f 4e 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 20 3d 20 31 | .MATCH_NONE.=.0;.const.MATCH.=.1 |
31ac0 | 3b 0a 63 6f 6e 73 74 20 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 20 3d 20 32 3b 0a 63 6f 6e 73 74 | ;.const.MATCH_PROVIDE.=.2;.const |
31ae0 | 20 4d 41 54 43 48 5f 52 45 50 4c 41 43 45 20 3d 20 33 3b 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 | .MATCH_REPLACE.=.3;..public.stat |
31b00 | 69 63 20 24 73 74 61 62 69 6c 69 74 69 65 73 20 3d 20 61 72 72 61 79 28 0a 27 73 74 61 62 6c 65 | ic.$stabilities.=.array(.'stable |
31b20 | 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 53 54 41 42 4c 45 2c 0a 27 52 43 | '.=>.self::STABILITY_STABLE,.'RC |
31b40 | 27 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 52 43 2c 0a 27 62 65 74 61 27 20 | '.=>.self::STABILITY_RC,.'beta'. |
31b60 | 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 42 45 54 41 2c 0a 27 61 6c 70 68 61 27 | =>.self::STABILITY_BETA,.'alpha' |
31b80 | 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 41 4c 50 48 41 2c 0a 27 64 65 76 27 | .=>.self::STABILITY_ALPHA,.'dev' |
31ba0 | 20 3d 3e 20 73 65 6c 66 3a 3a 53 54 41 42 49 4c 49 54 59 5f 44 45 56 2c 0a 29 3b 0a 0a 70 72 6f | .=>.self::STABILITY_DEV,.);..pro |
31bc0 | 74 65 63 74 65 64 20 24 6e 61 6d 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 4e | tected.$name;.protected.$prettyN |
31be0 | 61 6d 65 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 70 72 6f | ame;..protected.$repository;.pro |
31c00 | 74 65 63 74 65 64 20 24 69 64 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | tected.$id;.......public.functio |
31c20 | 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 | n.__construct($name).{.$this->pr |
31c40 | 65 74 74 79 4e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 | ettyName.=.$name;.$this->name.=. |
31c60 | 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 2d | strtolower($name);.$this->id.=.- |
31c80 | 31 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 | 1;.}.....public.function.getName |
31ca0 | 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 70 | ().{.return.$this->name;.}.....p |
31cc0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 0a 7b | ublic.function.getPrettyName().{ |
31ce0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 79 4e 61 6d 65 3b 0a 7d 0a 0a 0a 0a | .return.$this->prettyName;.}.... |
31d00 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 73 28 29 0a 7b 0a 24 6e | .public.function.getNames().{.$n |
31d20 | 61 6d 65 73 20 3d 20 61 72 72 61 79 28 0a 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d | ames.=.array(.$this->getName().= |
31d40 | 3e 20 74 72 75 65 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 50 | >.true,.);..foreach.($this->getP |
31d60 | 72 6f 76 69 64 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6e 61 6d 65 73 5b 24 6c 69 | rovides().as.$link).{.$names[$li |
31d80 | 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 66 6f 72 65 | nk->getTarget()].=.true;.}..fore |
31da0 | 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 20 61 73 20 24 6c 69 | ach.($this->getReplaces().as.$li |
31dc0 | 6e 6b 29 20 7b 0a 24 6e 61 6d 65 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d | nk).{.$names[$link->getTarget()] |
31de0 | 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 6e | .=.true;.}..return.array_keys($n |
31e00 | 61 6d 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | ames);.}.....public.function.set |
31e20 | 49 64 28 24 69 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 24 69 64 3b 0a 7d 0a 0a 0a 0a | Id($id).{.$this->id.=.$id;.}.... |
31e40 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 64 28 29 0a 7b 0a 72 65 74 75 72 | .public.function.getId().{.retur |
31e60 | 6e 20 24 74 68 69 73 2d 3e 69 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | n.$this->id;.}..........public.f |
31e80 | 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 24 6e 61 6d 65 2c 20 4c 69 6e 6b 43 6f 6e 73 74 | unction.matches($name,.LinkConst |
31ea0 | 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 69 66 | raintInterface.$constraint).{.if |
31ec0 | 20 28 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 72 65 74 75 72 | .($this->name.===.$name).{.retur |
31ee0 | 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 6e 65 77 20 56 65 72 73 69 | n.$constraint->matches(new.Versi |
31f00 | 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 56 65 72 | onConstraint('==',.$this->getVer |
31f20 | 73 69 6f 6e 28 29 29 29 20 3f 20 73 65 6c 66 3a 3a 4d 41 54 43 48 20 3a 20 73 65 6c 66 3a 3a 4d | sion())).?.self::MATCH.:.self::M |
31f40 | 41 54 43 48 5f 4e 41 4d 45 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 | ATCH_NAME;.}..foreach.($this->ge |
31f60 | 74 50 72 6f 76 69 64 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e | tProvides().as.$link).{.if.($lin |
31f80 | 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 24 63 6f 6e | k->getTarget().===.$name.&&.$con |
31fa0 | 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 | straint->matches($link->getConst |
31fc0 | 72 61 69 6e 74 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 50 | raint())).{.return.self::MATCH_P |
31fe0 | 52 4f 56 49 44 45 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 | ROVIDE;.}.}..foreach.($this->get |
32000 | 52 65 70 6c 61 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b | Replaces().as.$link).{.if.($link |
32020 | 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 6e 61 6d 65 20 26 26 20 24 63 6f 6e 73 | ->getTarget().===.$name.&&.$cons |
32040 | 74 72 61 69 6e 74 2d 3e 6d 61 74 63 68 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 | traint->matches($link->getConstr |
32060 | 61 69 6e 74 28 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 52 45 | aint())).{.return.self::MATCH_RE |
32080 | 50 4c 41 43 45 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 4d 41 54 43 48 5f 4e | PLACE;.}.}..return.self::MATCH_N |
320a0 | 4f 4e 45 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 | ONE;.}..public.function.getRepos |
320c0 | 69 74 6f 72 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f | itory().{.return.$this->reposito |
320e0 | 72 79 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 | ry;.}..public.function.setReposi |
32100 | 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 73 69 | tory(RepositoryInterface.$reposi |
32120 | 74 6f 72 79 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 29 20 7b | tory).{.if.($this->repository).{ |
32140 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 70 61 | .throw.new.\LogicException('A.pa |
32160 | 63 6b 61 67 65 20 63 61 6e 20 6f 6e 6c 79 20 62 65 20 61 64 64 65 64 20 74 6f 20 6f 6e 65 20 72 | ckage.can.only.be.added.to.one.r |
32180 | 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 | epository');.}.$this->repository |
321a0 | 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | .=.$repository;.}.......public.f |
321c0 | 75 6e 63 74 69 6f 6e 20 69 73 50 6c 61 74 66 6f 72 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 | unction.isPlatform().{.return.$t |
321e0 | 68 69 73 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 69 6e 73 74 61 6e 63 65 6f 66 20 | his->getRepository().instanceof. |
32200 | 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | PlatformRepository;.}.......publ |
32220 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 55 6e 69 71 75 65 4e 61 6d 65 28 29 0a 7b 0a 72 65 | ic.function.getUniqueName().{.re |
32240 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 2d 27 2e 24 74 68 69 73 2d | turn.$this->getName().'-'.$this- |
32260 | 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | >getVersion();.}..public.functio |
32280 | 6e 20 65 71 75 61 6c 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 | n.equals(PackageInterface.$packa |
322a0 | 67 65 29 0a 7b 0a 24 73 65 6c 66 20 3d 20 24 74 68 69 73 3b 0a 69 66 20 28 24 74 68 69 73 20 69 | ge).{.$self.=.$this;.if.($this.i |
322c0 | 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 24 73 65 6c 66 20 | nstanceof.AliasPackage).{.$self. |
322e0 | 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 3b 0a 7d 0a 69 66 20 28 24 70 61 | =.$this->getAliasOf();.}.if.($pa |
32300 | 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b | ckage.instanceof.AliasPackage).{ |
32320 | 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 | .$package.=.$package->getAliasOf |
32340 | 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 20 3d 3d 3d 20 24 73 65 6c 66 | ();.}..return.$package.===.$self |
32360 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 | ;.}.......public.function.__toSt |
32380 | 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 55 6e 69 71 75 65 | ring().{.return.$this->getUnique |
323a0 | 4e 61 6d 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 | Name();.}..public.function.getPr |
323c0 | 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 | ettyString().{.return.$this->get |
323e0 | 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 72 65 74 74 | PrettyName().'.'.$this->getPrett |
32400 | 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f | yVersion();.}..public.function._ |
32420 | 5f 63 6c 6f 6e 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 20 3d 20 6e | _clone().{.$this->repository.=.n |
32440 | 75 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ull;.}.}.<?php............namesp |
32460 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 3b 0a 0a 75 | ace.Composer\Package\Version;..u |
32480 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 42 61 73 65 50 61 63 6b 61 67 65 3b | se.Composer\Package\BasePackage; |
324a0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 | .use.Composer\Package\PackageInt |
324c0 | 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e | erface;.use.Composer\Package\Lin |
324e0 | 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 | kConstraint\MultiConstraint;.use |
32500 | 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 | .Composer\Package\LinkConstraint |
32520 | 5c 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 | \VersionConstraint;.......class. |
32540 | 56 65 72 73 69 6f 6e 50 61 72 73 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 | VersionParser.{.private.static.$ |
32560 | 6d 6f 64 69 66 69 65 72 52 65 67 65 78 20 3d 20 27 5b 2e 5f 2d 5d 3f 28 3f 3a 28 62 65 74 61 7c | modifierRegex.=.'[._-]?(?:(beta| |
32580 | 62 7c 52 43 7c 61 6c 70 68 61 7c 61 7c 70 61 74 63 68 7c 70 6c 7c 70 29 28 3f 3a 5b 2e 2d 5d 3f | b|RC|alpha|a|patch|pl|p)(?:[.-]? |
325a0 | 28 5c 64 2b 29 29 3f 29 3f 28 5b 2e 2d 5d 3f 64 65 76 29 3f 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | (\d+))?)?([.-]?dev)?';........pu |
325c0 | 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 74 61 62 69 6c | blic.static.function.parseStabil |
325e0 | 69 74 79 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f | ity($version).{.$version.=.preg_ |
32600 | 72 65 70 6c 61 63 65 28 27 7b 23 5b 61 2d 66 30 2d 39 5d 2b 24 7d 69 27 2c 20 27 27 2c 20 24 76 | replace('{#[a-f0-9]+$}i',.'',.$v |
32620 | 65 72 73 69 6f 6e 29 3b 0a 0a 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 | ersion);..if.('dev-'.===.substr( |
32640 | 24 76 65 72 73 69 6f 6e 2c 20 30 2c 20 34 29 20 7c 7c 20 27 2d 64 65 76 27 20 3d 3d 3d 20 73 75 | $version,.0,.4).||.'-dev'.===.su |
32660 | 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 2d 34 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 64 65 | bstr($version,.-4)).{.return.'de |
32680 | 76 27 3b 0a 7d 0a 0a 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 27 2e 73 65 6c 66 3a 3a 24 6d 6f 64 | v';.}..preg_match('{'.self::$mod |
326a0 | 69 66 69 65 72 52 65 67 65 78 2e 27 24 7d 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 | ifierRegex.'$}',.$version,.$matc |
326c0 | 68 29 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b 33 5d 29 29 20 7b 0a 72 65 74 | h);.if.(!empty($match[3])).{.ret |
326e0 | 75 72 6e 20 27 64 65 76 27 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 5b | urn.'dev';.}..if.(!empty($match[ |
32700 | 31 5d 29 29 20 7b 0a 69 66 20 28 27 62 65 74 61 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 20 | 1])).{.if.('beta'.===.$match[1]. |
32720 | 7c 7c 20 27 62 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 29 20 7b 0a 72 65 74 75 72 6e 20 27 | ||.'b'.===.$match[1]).{.return.' |
32740 | 62 65 74 61 27 3b 0a 7d 0a 69 66 20 28 27 61 6c 70 68 61 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b | beta';.}.if.('alpha'.===.$match[ |
32760 | 31 5d 20 7c 7c 20 27 61 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 29 20 7b 0a 72 65 74 75 72 | 1].||.'a'.===.$match[1]).{.retur |
32780 | 6e 20 27 61 6c 70 68 61 27 3b 0a 7d 0a 69 66 20 28 27 52 43 27 20 3d 3d 3d 20 24 6d 61 74 63 68 | n.'alpha';.}.if.('RC'.===.$match |
327a0 | 5b 31 5d 29 20 7b 0a 72 65 74 75 72 6e 20 27 52 43 27 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 | [1]).{.return.'RC';.}.}..return. |
327c0 | 27 73 74 61 62 6c 65 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | 'stable';.}..public.static.funct |
327e0 | 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 53 74 61 62 69 6c 69 74 79 28 24 73 74 61 62 69 6c 69 74 | ion.normalizeStability($stabilit |
32800 | 79 29 0a 7b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 74 | y).{.$stability.=.strtolower($st |
32820 | 61 62 69 6c 69 74 79 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d | ability);..return.$stability.=== |
32840 | 20 27 72 63 27 20 3f 20 27 52 43 27 20 3a 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 70 75 | .'rc'.?.'RC'.:.$stability;.}..pu |
32860 | 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 56 65 72 73 69 | blic.static.function.formatVersi |
32880 | 6f 6e 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 74 | on(PackageInterface.$package,.$t |
328a0 | 72 75 6e 63 61 74 65 20 3d 20 74 72 75 65 29 0a 7b 0a 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d | runcate.=.true).{.if.(!$package- |
328c0 | 3e 69 73 44 65 76 28 29 20 7c 7c 20 21 69 6e 5f 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e | >isDev().||.!in_array($package-> |
328e0 | 67 65 74 53 6f 75 72 63 65 54 79 70 65 28 29 2c 20 61 72 72 61 79 28 27 68 67 27 2c 20 27 67 69 | getSourceType(),.array('hg',.'gi |
32900 | 74 27 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 | t'))).{.return.$package->getPret |
32920 | 74 79 56 65 72 73 69 6f 6e 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d | tyVersion();.}..return.$package- |
32940 | 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 20 2e 20 27 20 27 20 2e 20 28 24 74 72 | >getPrettyVersion()...'.'...($tr |
32960 | 75 6e 63 61 74 65 20 3f 20 73 75 62 73 74 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 | uncate.?.substr($package->getSou |
32980 | 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 2c 20 30 2c 20 36 29 20 3a 20 24 70 61 63 6b 61 67 65 | rceReference(),.0,.6).:.$package |
329a0 | 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | ->getSourceReference());.}...... |
329c0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 28 24 76 65 72 | ..public.function.normalize($ver |
329e0 | 73 69 6f 6e 29 0a 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 74 72 69 6d 28 24 76 65 72 73 69 6f 6e | sion).{.$version.=.trim($version |
32a00 | 29 3b 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5b 5e 2c 5c 73 5d 2b | );....if.(preg_match('{^([^,\s]+ |
32a20 | 29 20 2b 61 73 20 2b 28 5b 5e 2c 5c 73 5d 2b 29 24 7d 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 | ).+as.+([^,\s]+)$}',.$version,.$ |
32a40 | 6d 61 74 63 68 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a | match)).{.$version.=.$match[1];. |
32a60 | 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 3f 3a 64 65 76 2d 29 3f | }....if.(preg_match('{^(?:dev-)? |
32a80 | 28 3f 3a 6d 61 73 74 65 72 7c 74 72 75 6e 6b 7c 64 65 66 61 75 6c 74 29 24 7d 69 27 2c 20 24 76 | (?:master|trunk|default)$}i',.$v |
32aa0 | 65 72 73 69 6f 6e 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 39 39 39 39 39 39 39 2d 64 65 76 27 3b | ersion)).{.return.'9999999-dev'; |
32ac0 | 0a 7d 0a 0a 69 66 20 28 27 64 65 76 2d 27 20 3d 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 73 75 | .}..if.('dev-'.===.strtolower(su |
32ae0 | 62 73 74 72 28 24 76 65 72 73 69 6f 6e 2c 20 30 2c 20 34 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 | bstr($version,.0,.4))).{.return. |
32b00 | 73 74 72 74 6f 6c 6f 77 65 72 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 | strtolower($version);.}....if.(p |
32b20 | 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 76 3f 28 5c 64 7b 31 2c 33 7d 29 28 5c 2e 5c 64 2b 29 3f | reg_match('{^v?(\d{1,3})(\.\d+)? |
32b40 | 28 5c 2e 5c 64 2b 29 3f 28 5c 2e 5c 64 2b 29 3f 27 2e 73 65 6c 66 3a 3a 24 6d 6f 64 69 66 69 65 | (\.\d+)?(\.\d+)?'.self::$modifie |
32b60 | 72 52 65 67 65 78 2e 27 24 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 68 65 73 | rRegex.'$}i',.$version,.$matches |
32b80 | 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 0a 2e 28 21 65 | )).{.$version.=.$matches[1]..(!e |
32ba0 | 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 32 5d 20 | mpty($matches[2]).?.$matches[2]. |
32bc0 | 3a 20 27 2e 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 20 3f 20 | :.'.0')..(!empty($matches[3]).?. |
32be0 | 24 6d 61 74 63 68 65 73 5b 33 5d 20 3a 20 27 2e 30 27 29 0a 2e 28 21 65 6d 70 74 79 28 24 6d 61 | $matches[3].:.'.0')..(!empty($ma |
32c00 | 74 63 68 65 73 5b 34 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 34 5d 20 3a 20 27 2e 30 27 29 3b | tches[4]).?.$matches[4].:.'.0'); |
32c20 | 0a 24 69 6e 64 65 78 20 3d 20 35 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 | .$index.=.5;.}.elseif.(preg_matc |
32c40 | 68 28 27 7b 5e 76 3f 28 5c 64 7b 34 7d 28 3f 3a 5b 2e 3a 2d 5d 3f 5c 64 7b 32 7d 29 7b 31 2c 36 | h('{^v?(\d{4}(?:[.:-]?\d{2}){1,6 |
32c60 | 7d 28 3f 3a 5b 2e 3a 2d 5d 3f 5c 64 7b 31 2c 33 7d 29 3f 29 27 2e 73 65 6c 66 3a 3a 24 6d 6f 64 | }(?:[.:-]?\d{1,3})?)'.self::$mod |
32c80 | 69 66 69 65 72 52 65 67 65 78 2e 27 24 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 | ifierRegex.'$}i',.$version,.$mat |
32ca0 | 63 68 65 73 29 29 20 7b 20 0a 20 24 76 65 72 73 69 6f 6e 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 | ches)).{...$version.=.preg_repla |
32cc0 | 63 65 28 27 7b 5c 44 7d 27 2c 20 27 2d 27 2c 20 24 6d 61 74 63 68 65 73 5b 31 5d 29 3b 0a 24 69 | ce('{\D}',.'-',.$matches[1]);.$i |
32ce0 | 6e 64 65 78 20 3d 20 32 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 69 6e 64 65 78 29 | ndex.=.2;.}....if.(isset($index) |
32d00 | 29 20 7b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 | ).{.if.(!empty($matches[$index]) |
32d20 | 29 20 7b 0a 24 6d 6f 64 20 3d 20 61 72 72 61 79 28 27 7b 5e 70 6c 3f 24 7d 69 27 2c 20 27 7b 5e | ).{.$mod.=.array('{^pl?$}i',.'{^ |
32d40 | 72 63 24 7d 69 27 29 3b 0a 24 6d 6f 64 4e 6f 72 6d 61 6c 69 7a 65 64 20 3d 20 61 72 72 61 79 28 | rc$}i');.$modNormalized.=.array( |
32d60 | 27 70 61 74 63 68 27 2c 20 27 52 43 27 29 3b 0a 24 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d 27 2e | 'patch',.'RC');.$version..=.'-'. |
32d80 | 70 72 65 67 5f 72 65 70 6c 61 63 65 28 24 6d 6f 64 2c 20 24 6d 6f 64 4e 6f 72 6d 61 6c 69 7a 65 | preg_replace($mod,.$modNormalize |
32da0 | 64 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 5d 29 29 | d,.strtolower($matches[$index])) |
32dc0 | 0a 2e 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 2b 31 5d 29 20 3f | ...(!empty($matches[$index+1]).? |
32de0 | 20 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 2b 31 5d 20 3a 20 27 27 29 3b 0a 7d 0a 0a 69 66 | .$matches[$index+1].:.'');.}..if |
32e00 | 20 28 21 65 6d 70 74 79 28 24 6d 61 74 63 68 65 73 5b 24 69 6e 64 65 78 2b 32 5d 29 29 20 7b 0a | .(!empty($matches[$index+2])).{. |
32e20 | 24 76 65 72 73 69 6f 6e 20 2e 3d 20 27 2d 64 65 76 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 | $version..=.'-dev';.}..return.$v |
32e40 | 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 28 2e | ersion;.}....if.(preg_match('{(. |
32e60 | 2a 3f 29 5b 2e 2d 5d 3f 64 65 76 24 7d 69 27 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 6d 61 74 63 | *?)[.-]?dev$}i',.$version,.$matc |
32e80 | 68 29 29 20 7b 0a 74 72 79 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c | h)).{.try.{.return.$this->normal |
32ea0 | 69 7a 65 42 72 61 6e 63 68 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c | izeBranch($match[1]);.}.catch.(\ |
32ec0 | 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 | Exception.$e).{}.}..throw.new.\U |
32ee0 | 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 | nexpectedValueException('Invalid |
32f00 | 20 76 65 72 73 69 6f 6e 20 73 74 72 69 6e 67 20 27 2e 24 76 65 72 73 69 6f 6e 29 3b 0a 7d 0a 0a | .version.string.'.$version);.}.. |
32f20 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 72 6d 61 6c 69 7a 65 42 | ......public.function.normalizeB |
32f40 | 72 61 6e 63 68 28 24 6e 61 6d 65 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 74 72 69 6d 28 24 6e 61 6d | ranch($name).{.$name.=.trim($nam |
32f60 | 65 29 3b 0a 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 61 72 72 61 79 28 27 | e);..if.(in_array($name,.array(' |
32f80 | 6d 61 73 74 65 72 27 2c 20 27 74 72 75 6e 6b 27 2c 20 27 64 65 66 61 75 6c 74 27 29 29 29 20 7b | master',.'trunk',.'default'))).{ |
32fa0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6e 61 6d 65 29 3b | .return.$this->normalize($name); |
32fc0 | 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 76 3f 28 5c 64 2b 29 28 5c 2e | .}..if.(preg_match('#^v?(\d+)(\. |
32fe0 | 28 3f 3a 5c 64 2b 7c 5b 78 2a 5d 29 29 3f 28 5c 2e 28 3f 3a 5c 64 2b 7c 5b 78 2a 5d 29 29 3f 28 | (?:\d+|[x*]))?(\.(?:\d+|[x*]))?( |
33000 | 5c 2e 28 3f 3a 5c 64 2b 7c 5b 78 2a 5d 29 29 3f 24 23 69 27 2c 20 24 6e 61 6d 65 2c 20 24 6d 61 | \.(?:\d+|[x*]))?$#i',.$name,.$ma |
33020 | 74 63 68 65 73 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 27 27 3b 0a 66 6f 72 20 28 24 69 | tches)).{.$version.=.'';.for.($i |
33040 | 20 3d 20 31 3b 20 24 69 20 3c 20 35 3b 20 24 69 2b 2b 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 2e | .=.1;.$i.<.5;.$i++).{.$version.. |
33060 | 3d 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 24 69 5d 29 20 3f 20 73 74 72 5f 72 65 70 6c | =.isset($matches[$i]).?.str_repl |
33080 | 61 63 65 28 27 2a 27 2c 20 27 78 27 2c 20 24 6d 61 74 63 68 65 73 5b 24 69 5d 29 20 3a 20 27 2e | ace('*',.'x',.$matches[$i]).:.'. |
330a0 | 78 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 78 27 2c 20 27 | x';.}..return.str_replace('x',.' |
330c0 | 39 39 39 39 39 39 39 27 2c 20 24 76 65 72 73 69 6f 6e 29 2e 27 2d 64 65 76 27 3b 0a 7d 0a 0a 72 | 9999999',.$version).'-dev';.}..r |
330e0 | 65 74 75 72 6e 20 27 64 65 76 2d 27 2e 24 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | eturn.'dev-'.$name;.}........pub |
33100 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 73 28 24 63 | lic.function.parseConstraints($c |
33120 | 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 | onstraints).{.$prettyConstraint. |
33140 | 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 | =.$constraints;..if.(preg_match( |
33160 | 27 7b 5e 28 5b 5e 2c 5c 73 5d 2a 3f 29 40 28 27 2e 69 6d 70 6c 6f 64 65 28 27 7c 27 2c 20 61 72 | '{^([^,\s]*?)@('.implode('|',.ar |
33180 | 72 61 79 5f 6b 65 79 73 28 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 | ray_keys(BasePackage::$stabiliti |
331a0 | 65 73 29 29 2e 27 29 24 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 6d 61 74 63 | es)).')$}i',.$constraints,.$matc |
331c0 | 68 29 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 65 6d 70 74 79 28 24 6d 61 74 63 | h)).{.$constraints.=.empty($matc |
331e0 | 68 5b 31 5d 29 20 3f 20 27 2a 27 20 3a 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 0a 69 66 20 28 | h[1]).?.'*'.:.$match[1];.}..if.( |
33200 | 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 64 65 76 2d 5b 5e 2c 5c 73 40 5d 2b 3f 7c 5b 5e 2c | preg_match('{^(dev-[^,\s@]+?|[^, |
33220 | 5c 73 40 5d 2b 3f 5c 2e 78 2d 64 65 76 29 23 5b 61 2d 66 30 2d 39 5d 2b 24 7d 69 27 2c 20 24 63 | \s@]+?\.x-dev)#[a-f0-9]+$}i',.$c |
33240 | 6f 6e 73 74 72 61 69 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 | onstraints,.$match)).{.$constrai |
33260 | 6e 74 73 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 | nts.=.$match[1];.}..$constraints |
33280 | 20 3d 20 70 72 65 67 5f 73 70 6c 69 74 28 27 7b 5c 73 2a 2c 5c 73 2a 7d 27 2c 20 74 72 69 6d 28 | .=.preg_split('{\s*,\s*}',.trim( |
332a0 | 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 63 6f 6e 73 | $constraints));..if.(count($cons |
332c0 | 74 72 61 69 6e 74 73 29 20 3e 20 31 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 | traints).>.1).{.$constraintObjec |
332e0 | 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 73 74 72 61 69 | ts.=.array();.foreach.($constrai |
33300 | 6e 74 73 20 61 73 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e | nts.as.$constraint).{.$constrain |
33320 | 74 4f 62 6a 65 63 74 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 63 6f 6e 73 74 72 61 69 | tObjects.=.array_merge($constrai |
33340 | 6e 74 4f 62 6a 65 63 74 73 2c 20 24 74 68 69 73 2d 3e 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e | ntObjects,.$this->parseConstrain |
33360 | 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e | t($constraint));.}.}.else.{.$con |
33380 | 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 43 6f 6e | straintObjects.=.$this->parseCon |
333a0 | 73 74 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 73 5b 30 5d 29 3b 0a 7d 0a 0a 69 66 20 | straint($constraints[0]);.}..if. |
333c0 | 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a 65 63 74 73 29 | (1.===.count($constraintObjects) |
333e0 | 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 4f 62 6a | ).{.$constraint.=.$constraintObj |
33400 | 65 63 74 73 5b 30 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 | ects[0];.}.else.{.$constraint.=. |
33420 | 6e 65 77 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 4f | new.MultiConstraint($constraintO |
33440 | 62 6a 65 63 74 73 29 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 73 65 74 50 72 65 74 | bjects);.}..$constraint->setPret |
33460 | 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 0a 72 65 | tyString($prettyConstraint);..re |
33480 | 74 75 72 6e 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e | turn.$constraint;.}..private.fun |
334a0 | 63 74 69 6f 6e 20 70 61 72 73 65 43 6f 6e 73 74 72 61 69 6e 74 28 24 63 6f 6e 73 74 72 61 69 6e | ction.parseConstraint($constrain |
334c0 | 74 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 5b 78 2a 5d 28 5c 2e 5b 78 | t).{.if.(preg_match('{^[x*](\.[x |
334e0 | 2a 5d 29 2a 24 7d 69 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e | *])*$}i',.$constraint)).{.return |
33500 | 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b | .array();.}....if.(preg_match('{ |
33520 | 5e 28 5c 64 2b 29 28 3f 3a 5c 2e 28 5c 64 2b 29 29 3f 28 3f 3a 5c 2e 28 5c 64 2b 29 29 3f 5c 2e | ^(\d+)(?:\.(\d+))?(?:\.(\d+))?\. |
33540 | 5b 78 2a 5d 24 7d 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 65 73 29 29 | [x*]$}',.$constraint,.$matches)) |
33560 | 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 24 68 69 | .{.if.(isset($matches[3])).{.$hi |
33580 | 67 68 56 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 27 20 2e 20 | ghVersion.=.$matches[1]...'.'... |
335a0 | 24 6d 61 74 63 68 65 73 5b 32 5d 20 2e 20 27 2e 27 20 2e 20 24 6d 61 74 63 68 65 73 5b 33 5d 20 | $matches[2]...'.'...$matches[3]. |
335c0 | 2e 20 27 2e 39 39 39 39 39 39 39 27 3b 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 33 5d 20 3d 3d | ..'.9999999';.if.($matches[3].== |
335e0 | 3d 20 27 30 27 29 20 7b 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b | =.'0').{.$lowVersion.=.$matches[ |
33600 | 31 5d 20 2e 20 27 2e 27 20 2e 20 28 24 6d 61 74 63 68 65 73 5b 32 5d 20 2d 20 31 29 20 2e 20 27 | 1]...'.'...($matches[2].-.1)...' |
33620 | 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6c 6f 77 | .9999999.9999999';.}.else.{.$low |
33640 | 56 65 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 27 20 2e 20 24 6d | Version.=.$matches[1]...'.'...$m |
33660 | 61 74 63 68 65 73 5b 32 5d 20 2e 20 27 2e 27 20 2e 20 28 24 6d 61 74 63 68 65 73 5b 33 5d 20 2d | atches[2]...'.'...($matches[3].- |
33680 | 20 31 29 2e 20 27 2e 39 39 39 39 39 39 39 27 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 | .1)..'.9999999';.}.}.elseif.(iss |
336a0 | 65 74 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 20 7b 0a 24 68 69 67 68 56 65 72 73 69 6f 6e 20 | et($matches[2])).{.$highVersion. |
336c0 | 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 27 20 2e 20 24 6d 61 74 63 68 65 73 5b 32 | =.$matches[1]...'.'...$matches[2 |
336e0 | 5d 20 2e 20 27 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 27 3b 0a 69 66 20 28 24 6d 61 74 | ]...'.9999999.9999999';.if.($mat |
33700 | 63 68 65 73 5b 32 5d 20 3d 3d 3d 20 27 30 27 29 20 7b 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d | ches[2].===.'0').{.$lowVersion.= |
33720 | 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 2d 20 31 29 20 2e 20 27 2e 39 39 39 39 39 39 39 2e 39 | .($matches[1].-.1)...'.9999999.9 |
33740 | 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6c 6f 77 56 65 | 999999.9999999';.}.else.{.$lowVe |
33760 | 72 73 69 6f 6e 20 3d 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 27 20 2e 20 28 24 6d 61 | rsion.=.$matches[1]...'.'...($ma |
33780 | 74 63 68 65 73 5b 32 5d 20 2d 20 31 29 20 2e 20 27 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 | tches[2].-.1)...'.9999999.999999 |
337a0 | 39 27 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 69 67 68 56 65 72 73 69 6f 6e 20 3d 20 24 6d | 9';.}.}.else.{.$highVersion.=.$m |
337c0 | 61 74 63 68 65 73 5b 31 5d 20 2e 20 27 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 2e 39 39 | atches[1]...'.9999999.9999999.99 |
337e0 | 39 39 39 39 39 27 3b 0a 69 66 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3d 3d 3d 20 27 30 27 29 | 99999';.if.($matches[1].===.'0') |
33800 | 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 | .{.return.array(new.VersionConst |
33820 | 72 61 69 6e 74 28 27 3c 27 2c 20 24 68 69 67 68 56 65 72 73 69 6f 6e 29 29 3b 0a 7d 20 65 6c 73 | raint('<',.$highVersion));.}.els |
33840 | 65 20 7b 0a 24 6c 6f 77 56 65 72 73 69 6f 6e 20 3d 20 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 2d | e.{.$lowVersion.=.($matches[1].- |
33860 | 20 31 29 20 2e 20 27 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 2e 39 39 39 39 39 39 39 27 | .1)...'.9999999.9999999.9999999' |
33880 | 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 6e 65 77 20 56 65 72 73 69 6f 6e | ;.}.}..return.array(.new.Version |
338a0 | 43 6f 6e 73 74 72 61 69 6e 74 28 27 3e 27 2c 20 24 6c 6f 77 56 65 72 73 69 6f 6e 29 2c 0a 6e 65 | Constraint('>',.$lowVersion),.ne |
338c0 | 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3c 27 2c 20 24 68 69 67 68 56 65 | w.VersionConstraint('<',.$highVe |
338e0 | 72 73 69 6f 6e 29 2c 0a 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 | rsion),.);.}....if.(preg_match(' |
33900 | 7b 5e 28 3c 3e 7c 21 3d 7c 3e 3d 3f 7c 3c 3d 3f 7c 3d 3d 3f 29 3f 5c 73 2a 28 2e 2a 29 7d 27 2c | {^(<>|!=|>=?|<=?|==?)?\s*(.*)}', |
33920 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 74 72 79 20 7b | .$constraint,.$matches)).{.try.{ |
33940 | 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 6e 6f 72 6d 61 6c 69 7a 65 28 24 6d 61 | .$version.=.$this->normalize($ma |
33960 | 74 63 68 65 73 5b 32 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 56 65 72 | tches[2]);..return.array(new.Ver |
33980 | 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 6d 61 74 63 68 65 73 5b 31 5d 20 3f 3a 20 27 3d | sionConstraint($matches[1].?:.'= |
339a0 | 27 2c 20 24 76 65 72 73 69 6f 6e 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 | ',.$version));.}.catch.(\Excepti |
339c0 | 6f 6e 20 24 65 29 20 7b 7d 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 | on.$e).{}.}..throw.new.\Unexpect |
339e0 | 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 | edValueException('Could.not.pars |
33a00 | 65 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 20 27 2e 24 63 6f 6e 73 74 72 61 69 | e.version.constraint.'.$constrai |
33a20 | 6e 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | nt);.}.}.<?php............namesp |
33a40 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f | ace.Composer\Package;..use.Compo |
33a60 | 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 56 65 72 73 69 | ser\Package\LinkConstraint\Versi |
33a80 | 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 | onConstraint;.use.Composer\Packa |
33aa0 | 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 0a 0a 0a 0a 63 6c | ge\Version\VersionParser;.....cl |
33ac0 | 61 73 73 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 65 78 74 65 6e 64 73 20 42 61 73 65 50 61 63 | ass.AliasPackage.extends.BasePac |
33ae0 | 6b 61 67 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 | kage.{.protected.$version;.prote |
33b00 | 63 74 65 64 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | cted.$prettyVersion;.protected.$ |
33b20 | 64 65 76 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 6c 69 61 73 4f 66 3b 0a 70 72 6f 74 65 63 74 | dev;.protected.$aliasOf;.protect |
33b40 | 65 64 20 24 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 | ed.$rootPackageAlias.=.false;.pr |
33b60 | 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 | otected.$stability;..protected.$ |
33b80 | 72 65 71 75 69 72 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 6c 69 63 74 73 3b 0a | requires;.protected.$conflicts;. |
33ba0 | 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 76 69 64 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | protected.$provides;.protected.$ |
33bc0 | 72 65 70 6c 61 63 65 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 63 6f 6d 6d 65 6e 64 73 3b | replaces;.protected.$recommends; |
33be0 | 0a 70 72 6f 74 65 63 74 65 64 20 24 73 75 67 67 65 73 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | .protected.$suggests;.........pu |
33c00 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 | blic.function.__construct(Packag |
33c20 | 65 49 6e 74 65 72 66 61 63 65 20 24 61 6c 69 61 73 4f 66 2c 20 24 76 65 72 73 69 6f 6e 2c 20 24 | eInterface.$aliasOf,.$version,.$ |
33c40 | 70 72 65 74 74 79 56 65 72 73 69 6f 6e 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 | prettyVersion).{.parent::__const |
33c60 | 72 75 63 74 28 24 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 24 74 68 69 | ruct($aliasOf->getName());..$thi |
33c80 | 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 72 | s->version.=.$version;.$this->pr |
33ca0 | 65 74 74 79 56 65 72 73 69 6f 6e 20 3d 20 24 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 24 74 | ettyVersion.=.$prettyVersion;.$t |
33cc0 | 68 69 73 2d 3e 61 6c 69 61 73 4f 66 20 3d 20 24 61 6c 69 61 73 4f 66 3b 0a 24 74 68 69 73 2d 3e | his->aliasOf.=.$aliasOf;.$this-> |
33ce0 | 73 74 61 62 69 6c 69 74 79 20 3d 20 56 65 72 73 69 6f 6e 50 61 72 73 65 72 3a 3a 70 61 72 73 65 | stability.=.VersionParser::parse |
33d00 | 53 74 61 62 69 6c 69 74 79 28 24 76 65 72 73 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 64 65 76 20 | Stability($version);.$this->dev. |
33d20 | 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 20 3d 3d 3d 20 27 64 65 76 27 3b 0a 0a 0a | =.$this->stability.===.'dev';... |
33d40 | 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 72 65 71 75 69 72 65 73 27 2c 20 27 64 65 76 | .foreach.(array('requires',.'dev |
33d60 | 52 65 71 75 69 72 65 73 27 29 20 61 73 20 24 74 79 70 65 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 | Requires').as.$type).{.$links.=. |
33d80 | 24 61 6c 69 61 73 4f 66 2d 3e 7b 27 67 65 74 27 2e 75 63 66 69 72 73 74 28 24 74 79 70 65 29 7d | $aliasOf->{'get'.ucfirst($type)} |
33da0 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 69 6e 64 65 78 20 3d 3e | ();.foreach.($links.as.$index.=> |
33dc0 | 20 24 6c 69 6e 6b 29 20 7b 0a 0a 20 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 3d | .$link).{...if.('self.version'.= |
33de0 | 3d 3d 20 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 | ==.$link->getPrettyConstraint()) |
33e00 | 20 7b 0a 24 6c 69 6e 6b 73 5b 24 69 6e 64 65 78 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 6c 69 | .{.$links[$index].=.new.Link($li |
33e20 | 6e 6b 2d 3e 67 65 74 53 6f 75 72 63 65 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 | nk->getSource(),.$link->getTarge |
33e40 | 74 28 29 2c 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 | t(),.new.VersionConstraint('=',. |
33e60 | 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 29 2c 20 24 74 79 70 65 2c 20 24 74 68 69 73 2d 3e 76 | $this->version),.$type,.$this->v |
33e80 | 65 72 73 69 6f 6e 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 24 74 79 70 65 20 3d 20 24 6c 69 6e | ersion);.}.}.$this->$type.=.$lin |
33ea0 | 6b 73 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 27 63 6f 6e 66 6c 69 63 | ks;.}....foreach.(array('conflic |
33ec0 | 74 73 27 2c 20 27 70 72 6f 76 69 64 65 73 27 2c 20 27 72 65 70 6c 61 63 65 73 27 29 20 61 73 20 | ts',.'provides',.'replaces').as. |
33ee0 | 24 74 79 70 65 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d 20 24 61 6c 69 61 73 4f 66 2d 3e 7b 27 67 65 | $type).{.$links.=.$aliasOf->{'ge |
33f00 | 74 27 2e 75 63 66 69 72 73 74 28 24 74 79 70 65 29 7d 28 29 3b 0a 24 6e 65 77 4c 69 6e 6b 73 20 | t'.ucfirst($type)}();.$newLinks. |
33f20 | 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c | =.array();.foreach.($links.as.$l |
33f40 | 69 6e 6b 29 20 7b 0a 0a 20 69 66 20 28 27 73 65 6c 66 2e 76 65 72 73 69 6f 6e 27 20 3d 3d 3d 20 | ink).{...if.('self.version'.===. |
33f60 | 24 6c 69 6e 6b 2d 3e 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 20 7b 0a | $link->getPrettyConstraint()).{. |
33f80 | 24 6e 65 77 4c 69 6e 6b 73 5b 5d 20 3d 20 6e 65 77 20 4c 69 6e 6b 28 24 6c 69 6e 6b 2d 3e 67 65 | $newLinks[].=.new.Link($link->ge |
33fa0 | 74 53 6f 75 72 63 65 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 6e | tSource(),.$link->getTarget(),.n |
33fc0 | 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 2d | ew.VersionConstraint('=',.$this- |
33fe0 | 3e 76 65 72 73 69 6f 6e 29 2c 20 24 74 79 70 65 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e | >version),.$type,.$this->version |
34000 | 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 24 74 79 70 65 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 | );.}.}.$this->$type.=.array_merg |
34020 | 65 28 24 6c 69 6e 6b 73 2c 20 24 6e 65 77 4c 69 6e 6b 73 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 | e($links,.$newLinks);.}.}..publi |
34040 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 4f 66 28 29 0a 7b 0a 72 65 74 75 72 6e | c.function.getAliasOf().{.return |
34060 | 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | .$this->aliasOf;.}.....public.fu |
34080 | 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | nction.getVersion().{.return.$th |
340a0 | 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | is->version;.}.....public.functi |
340c0 | 6f 6e 20 67 65 74 53 74 61 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | on.getStability().{.return.$this |
340e0 | 2d 3e 73 74 61 62 69 6c 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | ->stability;.}.....public.functi |
34100 | 6f 6e 20 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | on.getPrettyVersion().{.return.$ |
34120 | 74 68 69 73 2d 3e 70 72 65 74 74 79 56 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | this->prettyVersion;.}.....publi |
34140 | 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | c.function.isDev().{.return.$thi |
34160 | 73 2d 3e 64 65 76 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | s->dev;.}.....public.function.ge |
34180 | 74 52 65 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 | tRequires().{.return.$this->requ |
341a0 | 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 | ires;.}.....public.function.getC |
341c0 | 6f 6e 66 6c 69 63 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 66 6c | onflicts().{.return.$this->confl |
341e0 | 69 63 74 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 | icts;.}.....public.function.getP |
34200 | 72 6f 76 69 64 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 76 69 64 | rovides().{.return.$this->provid |
34220 | 65 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 | es;.}.....public.function.getRep |
34240 | 6c 61 63 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 | laces().{.return.$this->replaces |
34260 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 76 52 65 | ;.}.....public.function.getDevRe |
34280 | 71 75 69 72 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 76 52 65 71 75 | quires().{.return.$this->devRequ |
342a0 | 69 72 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ires;.}.........public.function. |
342c0 | 73 65 74 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 24 76 61 6c 75 65 29 0a 7b 0a 72 65 | setRootPackageAlias($value).{.re |
342e0 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 20 3d 20 24 | turn.$this->rootPackageAlias.=.$ |
34300 | 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 | value;.}......public.function.is |
34320 | 52 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | RootPackageAlias().{.return.$thi |
34340 | 73 2d 3e 72 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | s->rootPackageAlias;.}.....publi |
34360 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 | c.function.getAlias().{.return.' |
34380 | 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 | ';.}.....public.function.getPret |
343a0 | 74 79 41 6c 69 61 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 | tyAlias().{.return.'';.}......pu |
343c0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e | blic.function.getType().{.return |
343e0 | 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 54 79 70 65 28 29 3b 0a 7d 0a 70 75 | .$this->aliasOf->getType();.}.pu |
34400 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 44 69 72 28 29 0a 7b 0a 72 | blic.function.getTargetDir().{.r |
34420 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 54 61 72 67 65 74 44 | eturn.$this->aliasOf->getTargetD |
34440 | 69 72 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 74 72 61 | ir();.}.public.function.getExtra |
34460 | 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 45 | ().{.return.$this->aliasOf->getE |
34480 | 78 74 72 61 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 73 | xtra();.}.public.function.setIns |
344a0 | 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e | tallationSource($type).{.$this-> |
344c0 | 61 6c 69 61 73 4f 66 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 24 | aliasOf->setInstallationSource($ |
344e0 | 74 79 70 65 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 | type);.}.public.function.getInst |
34500 | 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | allationSource().{.return.$this- |
34520 | 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 53 6f 75 72 63 65 28 | >aliasOf->getInstallationSource( |
34540 | 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 54 79 | );.}.public.function.getSourceTy |
34560 | 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 | pe().{.return.$this->aliasOf->ge |
34580 | 74 53 6f 75 72 63 65 54 79 70 65 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | tSourceType();.}.public.function |
345a0 | 20 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | .getSourceUrl().{.return.$this-> |
345c0 | 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 63 65 55 72 6c 28 29 3b 0a 7d 0a 70 75 62 6c 69 | aliasOf->getSourceUrl();.}.publi |
345e0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 0a | c.function.getSourceReference(). |
34600 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 6f 75 72 | {.return.$this->aliasOf->getSour |
34620 | 63 65 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ceReference();.}.public.function |
34640 | 20 73 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 0a | .setSourceReference($reference). |
34660 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 53 6f 75 72 | {.return.$this->aliasOf->setSour |
34680 | 63 65 52 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 29 3b 0a 7d 0a 70 75 62 6c 69 | ceReference($reference);.}.publi |
346a0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 | c.function.getDistType().{.retur |
346c0 | 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 54 79 70 65 28 29 3b | n.$this->aliasOf->getDistType(); |
346e0 | 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 55 72 6c 28 29 0a | .}.public.function.getDistUrl(). |
34700 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 74 | {.return.$this->aliasOf->getDist |
34720 | 55 72 6c 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 | Url();.}.public.function.getDist |
34740 | 52 65 66 65 72 65 6e 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 | Reference().{.return.$this->alia |
34760 | 73 4f 66 2d 3e 67 65 74 44 69 73 74 52 65 66 65 72 65 6e 63 65 28 29 3b 0a 7d 0a 70 75 62 6c 69 | sOf->getDistReference();.}.publi |
34780 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 | c.function.getDistSha1Checksum() |
347a0 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 44 69 73 | .{.return.$this->aliasOf->getDis |
347c0 | 74 53 68 61 31 43 68 65 63 6b 73 75 6d 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | tSha1Checksum();.}.public.functi |
347e0 | 6f 6e 20 67 65 74 53 63 72 69 70 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | on.getScripts().{.return.$this-> |
34800 | 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 | aliasOf->getScripts();.}.public. |
34820 | 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 61 73 65 73 28 61 72 72 61 79 20 24 61 6c 69 61 73 | function.setAliases(array.$alias |
34840 | 65 73 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 73 65 74 | es).{.return.$this->aliasOf->set |
34860 | 41 6c 69 61 73 65 73 28 24 61 6c 69 61 73 65 73 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 | Aliases($aliases);.}.public.func |
34880 | 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | tion.getAliases().{.return.$this |
348a0 | 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 | ->aliasOf->getAliases();.}.publi |
348c0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 63 65 6e 73 65 28 29 0a 7b 0a 72 65 74 75 72 6e | c.function.getLicense().{.return |
348e0 | 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4c 69 63 65 6e 73 65 28 29 3b 0a 7d | .$this->aliasOf->getLicense();.} |
34900 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 0a 7b | .public.function.getAutoload().{ |
34920 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 75 74 6f 6c | .return.$this->aliasOf->getAutol |
34940 | 6f 61 64 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c | oad();.}.public.function.getIncl |
34960 | 75 64 65 50 61 74 68 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 | udePaths().{.return.$this->alias |
34980 | 4f 66 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 | Of->getIncludePaths();.}.public. |
349a0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 0a 7b 0a 72 65 74 | function.getRepositories().{.ret |
349c0 | 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 | urn.$this->aliasOf->getRepositor |
349e0 | 69 65 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 65 | ies();.}.public.function.getRele |
34a00 | 61 73 65 44 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f | aseDate().{.return.$this->aliasO |
34a20 | 66 2d 3e 67 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 | f->getReleaseDate();.}.public.fu |
34a40 | 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 72 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 | nction.getBinaries().{.return.$t |
34a60 | 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 29 3b 0a 7d 0a 70 | his->aliasOf->getBinaries();.}.p |
34a80 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4b 65 79 77 6f 72 64 73 28 29 0a 7b 0a 72 | ublic.function.getKeywords().{.r |
34aa0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 4b 65 79 77 6f 72 64 | eturn.$this->aliasOf->getKeyword |
34ac0 | 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 63 72 69 | s();.}.public.function.getDescri |
34ae0 | 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d | ption().{.return.$this->aliasOf- |
34b00 | 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 | >getDescription();.}.public.func |
34b20 | 74 69 6f 6e 20 67 65 74 48 6f 6d 65 70 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | tion.getHomepage().{.return.$thi |
34b40 | 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 48 6f 6d 65 70 61 67 65 28 29 3b 0a 7d 0a 70 75 62 | s->aliasOf->getHomepage();.}.pub |
34b60 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 67 67 65 73 74 73 28 29 0a 7b 0a 72 65 74 | lic.function.getSuggests().{.ret |
34b80 | 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 | urn.$this->aliasOf->getSuggests( |
34ba0 | 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 6f 72 73 28 | );.}.public.function.getAuthors( |
34bc0 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 41 75 | ).{.return.$this->aliasOf->getAu |
34be0 | 74 68 6f 72 73 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 75 | thors();.}.public.function.getSu |
34c00 | 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 4f 66 2d | pport().{.return.$this->aliasOf- |
34c20 | 3e 67 65 74 53 75 70 70 6f 72 74 28 29 3b 0a 7d 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | >getSupport();.}.public.function |
34c40 | 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 5f | .__toString().{.return.parent::_ |
34c60 | 5f 74 6f 53 74 72 69 6e 67 28 29 2e 27 20 28 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d | _toString().'.(alias.of.'.$this- |
34c80 | 3e 61 6c 69 61 73 4f 66 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 2e 27 29 27 3b 0a 7d 0a 7d 0a | >aliasOf->getVersion().')';.}.}. |
34ca0 | 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f | <?php............namespace.Compo |
34cc0 | 73 65 72 5c 50 61 63 6b 61 67 65 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 | ser\Package;..use.Composer\Packa |
34ce0 | 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 | ge\LinkConstraint\LinkConstraint |
34d00 | 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c | Interface;.use.Composer\Package\ |
34d20 | 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 | PackageInterface;.......class.Li |
34d40 | 6e 6b 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 6f 75 72 63 65 3b 0a 70 72 6f 74 65 63 74 65 | nk.{.protected.$source;.protecte |
34d60 | 64 20 24 74 61 72 67 65 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 73 74 72 61 69 6e 74 | d.$target;.protected.$constraint |
34d80 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a | ;.protected.$description;....... |
34da0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 | ...public.function.__construct($ |
34dc0 | 73 6f 75 72 63 65 2c 20 24 74 61 72 67 65 74 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 | source,.$target,.LinkConstraintI |
34de0 | 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 | nterface.$constraint.=.null,.$de |
34e00 | 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 72 65 6c 61 74 65 73 20 74 6f 27 2c 20 24 70 72 65 74 74 | scription.=.'relates.to',.$prett |
34e20 | 79 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 75 | yConstraint.=.null).{.$this->sou |
34e40 | 72 63 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 6f 75 72 63 65 29 3b 0a 24 74 68 69 73 | rce.=.strtolower($source);.$this |
34e60 | 2d 3e 74 61 72 67 65 74 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 61 72 67 65 74 29 3b 0a | ->target.=.strtolower($target);. |
34e80 | 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 3b | $this->constraint.=.$constraint; |
34ea0 | 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 | .$this->description.=.$descripti |
34ec0 | 6f 6e 3b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 3d 20 24 70 | on;.$this->prettyConstraint.=.$p |
34ee0 | 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | rettyConstraint;.}..public.funct |
34f00 | 69 6f 6e 20 67 65 74 53 6f 75 72 63 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | ion.getSource().{.return.$this-> |
34f20 | 73 6f 75 72 63 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 | source;.}..public.function.getTa |
34f40 | 72 67 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 7d | rget().{.return.$this->target;.} |
34f60 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 | ..public.function.getConstraint( |
34f80 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a | ).{.return.$this->constraint;.}. |
34fa0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 43 6f 6e 73 74 72 | .public.function.getPrettyConstr |
34fc0 | 61 69 6e 74 28 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 70 72 65 | aint().{.if.(null.===.$this->pre |
34fe0 | 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 | ttyConstraint).{.throw.new.\Unex |
35000 | 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4c 69 | pectedValueException(sprintf('Li |
35020 | 6e 6b 20 25 73 20 68 61 73 20 62 65 65 6e 20 6d 69 73 63 6f 6e 66 69 67 75 72 65 64 20 61 6e 64 | nk.%s.has.been.misconfigured.and |
35040 | 20 68 61 64 20 6e 6f 20 70 72 65 74 74 79 43 6f 6e 73 74 72 61 69 6e 74 20 67 69 76 65 6e 2e 27 | .had.no.prettyConstraint.given.' |
35060 | 2c 20 24 74 68 69 73 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 | ,.$this));.}..return.$this->pret |
35080 | 74 79 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | tyConstraint;.}..public.function |
350a0 | 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 6f | .__toString().{.return.$this->so |
350c0 | 75 72 63 65 2e 27 20 27 2e 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 2e 27 20 27 2e | urce.'.'.$this->description.'.'. |
350e0 | 24 74 68 69 73 2d 3e 74 61 72 67 65 74 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 | $this->target.'.('.$this->constr |
35100 | 61 69 6e 74 2e 27 29 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | aint.')';.}..public.function.get |
35120 | 50 72 65 74 74 79 53 74 72 69 6e 67 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 73 | PrettyString(PackageInterface.$s |
35140 | 6f 75 72 63 65 50 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 73 6f 75 72 63 65 50 61 | ourcePackage).{.return.$sourcePa |
35160 | 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 20 27 2e 24 74 68 | ckage->getPrettyString().'.'.$th |
35180 | 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 2e 27 20 27 2e 24 74 68 69 73 2d 3e 74 61 72 67 65 | is->description.'.'.$this->targe |
351a0 | 74 2e 27 20 27 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 65 74 50 72 65 74 | t.'.'.$this->constraint->getPret |
351c0 | 74 79 53 74 72 69 6e 67 28 29 2e 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | tyString().'';.}.}.<?php........ |
351e0 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c | ....namespace.Composer\Package\L |
35200 | 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 75 6c 74 69 | inkConstraint;.......class.Multi |
35220 | 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 6e 6b 43 6f 6e 73 74 72 | Constraint.implements.LinkConstr |
35240 | 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 73 74 | aintInterface.{.protected.$const |
35260 | 72 61 69 6e 74 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b | raints;.protected.$prettyString; |
35280 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 | .......public.function.__constru |
352a0 | 63 74 28 61 72 72 61 79 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 29 0a 7b 0a 24 74 68 69 73 2d 3e | ct(array.$constraints).{.$this-> |
352c0 | 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 7d 0a 0a 70 | constraints.=.$constraints;.}..p |
352e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 4c 69 6e 6b 43 6f 6e 73 74 | ublic.function.matches(LinkConst |
35300 | 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 66 6f 72 65 | raintInterface.$provider).{.fore |
35320 | 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 20 24 63 6f 6e 73 | ach.($this->constraints.as.$cons |
35340 | 74 72 61 69 6e 74 29 20 7b 0a 69 66 20 28 21 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 6d 61 74 63 | traint).{.if.(!$constraint->matc |
35360 | 68 65 73 28 24 70 72 6f 76 69 64 65 72 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a | hes($provider)).{.return.false;. |
35380 | 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | }.}..return.true;.}..public.func |
353a0 | 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 74 79 53 74 72 69 | tion.setPrettyString($prettyStri |
353c0 | 6e 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 20 3d 20 24 70 72 65 | ng).{.$this->prettyString.=.$pre |
353e0 | 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | ttyString;.}..public.function.ge |
35400 | 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 | tPrettyString().{.if.($this->pre |
35420 | 74 74 79 53 74 72 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 74 74 | ttyString).{.return.$this->prett |
35440 | 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 5f 5f 74 6f 53 74 | yString;.}..return.$this->__toSt |
35460 | 72 69 6e 67 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 | ring();.}..public.function.__toS |
35480 | 74 72 69 6e 67 28 29 0a 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 61 72 72 61 79 28 29 | tring().{.$constraints.=.array() |
354a0 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 73 | ;.foreach.($this->constraints.as |
354c0 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 73 5b 5d 20 3d | .$constraint).{.$constraints[].= |
354e0 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 72 | .$constraint->__toString();.}..r |
35500 | 65 74 75 72 6e 20 27 5b 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 63 6f 6e 73 74 72 61 | eturn.'['.implode(',.',.$constra |
35520 | 69 6e 74 73 29 2e 27 5d 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ints).']';.}.}.<?php............ |
35540 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 | namespace.Composer\Package\LinkC |
35560 | 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 65 72 73 69 6f 6e | onstraint;.........class.Version |
35580 | 43 6f 6e 73 74 72 61 69 6e 74 20 65 78 74 65 6e 64 73 20 53 70 65 63 69 66 69 63 43 6f 6e 73 74 | Constraint.extends.SpecificConst |
355a0 | 72 61 69 6e 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 6f 72 3b 0a 70 72 69 76 61 | raint.{.private.$operator;.priva |
355c0 | 74 65 20 24 76 65 72 73 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | te.$version;........public.funct |
355e0 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6f 70 65 72 61 74 6f 72 2c 20 24 76 65 72 73 | ion.__construct($operator,.$vers |
35600 | 69 6f 6e 29 0a 7b 0a 69 66 20 28 27 3d 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a | ion).{.if.('='.===.$operator).{. |
35620 | 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3d 3d 27 3b 0a 7d 0a 0a 69 66 20 28 27 3c 3e 27 20 3d 3d | $operator.=.'==';.}..if.('<>'.== |
35640 | 3d 20 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 21 3d 27 3b | =.$operator).{.$operator.=.'!='; |
35660 | 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 3d 20 24 6f 70 65 72 61 74 6f 72 3b | .}..$this->operator.=.$operator; |
35680 | 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 70 | .$this->version.=.$version;.}..p |
356a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 61 | ublic.function.versionCompare($a |
356c0 | 2c 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 27 64 65 76 2d 27 20 3d 3d | ,.$b,.$operator).{.if.('dev-'.== |
356e0 | 3d 20 73 75 62 73 74 72 28 24 61 2c 20 30 2c 20 34 29 20 26 26 20 27 64 65 76 2d 27 20 3d 3d 3d | =.substr($a,.0,.4).&&.'dev-'.=== |
35700 | 20 73 75 62 73 74 72 28 24 62 2c 20 30 2c 20 34 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6f 70 65 | .substr($b,.0,.4)).{.return.$ope |
35720 | 72 61 74 6f 72 20 3d 3d 20 27 3d 3d 27 20 26 26 20 24 61 20 3d 3d 3d 20 24 62 3b 0a 7d 0a 0a 72 | rator.==.'=='.&&.$a.===.$b;.}..r |
35740 | 65 74 75 72 6e 20 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 24 61 2c 20 24 62 2c 20 24 6f | eturn.version_compare($a,.$b,.$o |
35760 | 70 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | perator);.}......public.function |
35780 | 20 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 | .matchSpecific(VersionConstraint |
357a0 | 20 24 70 72 6f 76 69 64 65 72 29 0a 7b 0a 24 6e 6f 45 71 75 61 6c 4f 70 20 3d 20 73 74 72 5f 72 | .$provider).{.$noEqualOp.=.str_r |
357c0 | 65 70 6c 61 63 65 28 27 3d 27 2c 20 27 27 2c 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 29 | eplace('=',.'',.$this->operator) |
357e0 | 3b 0a 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 61 6c 4f 70 20 3d 20 73 74 72 5f 72 65 70 6c 61 | ;.$providerNoEqualOp.=.str_repla |
35800 | 63 65 28 27 3d 27 2c 20 27 27 2c 20 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 29 | ce('=',.'',.$provider->operator) |
35820 | 3b 0a 0a 24 69 73 45 71 75 61 6c 4f 70 20 3d 20 27 3d 3d 27 20 3d 3d 3d 20 24 74 68 69 73 2d 3e | ;..$isEqualOp.=.'=='.===.$this-> |
35840 | 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 4e 6f 6e 45 71 75 61 6c 4f 70 20 3d 20 27 21 3d 27 20 3d | operator;.$isNonEqualOp.=.'!='.= |
35860 | 3d 3d 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f 76 69 64 65 72 45 | ==.$this->operator;.$isProviderE |
35880 | 71 75 61 6c 4f 70 20 3d 20 27 3d 3d 27 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 | qualOp.=.'=='.===.$provider->ope |
358a0 | 72 61 74 6f 72 3b 0a 24 69 73 50 72 6f 76 69 64 65 72 4e 6f 6e 45 71 75 61 6c 4f 70 20 3d 20 27 | rator;.$isProviderNonEqualOp.=.' |
358c0 | 21 3d 27 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 3b 0a 0a 0a 20 | !='.===.$provider->operator;.... |
358e0 | 0a 20 69 66 20 28 24 69 73 4e 6f 6e 45 71 75 61 6c 4f 70 20 7c 7c 20 24 69 73 50 72 6f 76 69 64 | ..if.($isNonEqualOp.||.$isProvid |
35900 | 65 72 4e 6f 6e 45 71 75 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e 20 21 24 69 73 45 71 75 61 6c | erNonEqualOp).{.return.!$isEqual |
35920 | 4f 70 20 26 26 20 21 24 69 73 50 72 6f 76 69 64 65 72 45 71 75 61 6c 4f 70 0a 7c 7c 20 24 74 68 | Op.&&.!$isProviderEqualOp.||.$th |
35940 | 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 72 6f 76 69 64 65 72 2d 3e 76 65 | is->versionCompare($provider->ve |
35960 | 72 73 69 6f 6e 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 2c 20 27 21 3d 27 29 3b 0a 7d 0a | rsion,.$this->version,.'!=');.}. |
35980 | 0a 0a 20 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 21 3d 20 27 3d 3d 27 | .....if.($this->operator.!=.'==' |
359a0 | 20 26 26 20 24 6e 6f 45 71 75 61 6c 4f 70 20 3d 3d 20 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 | .&&.$noEqualOp.==.$providerNoEqu |
359c0 | 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 | alOp).{.return.true;.}..if.($thi |
359e0 | 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 72 6f 76 69 64 65 72 2d 3e 76 65 72 | s->versionCompare($provider->ver |
35a00 | 73 69 6f 6e 2c 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 2c 20 24 74 68 69 73 2d 3e 6f 70 65 | sion,.$this->version,.$this->ope |
35a20 | 72 61 74 6f 72 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 24 70 72 6f 76 69 64 65 72 2d 3e 76 65 72 | rator)).{.....if.($provider->ver |
35a40 | 73 69 6f 6e 20 3d 3d 20 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 26 26 20 24 70 72 6f 76 69 | sion.==.$this->version.&&.$provi |
35a60 | 64 65 72 2d 3e 6f 70 65 72 61 74 6f 72 20 3d 3d 20 24 70 72 6f 76 69 64 65 72 4e 6f 45 71 75 61 | der->operator.==.$providerNoEqua |
35a80 | 6c 4f 70 20 26 26 20 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 20 21 3d 20 24 6e 6f 45 71 75 | lOp.&&.$this->operator.!=.$noEqu |
35aa0 | 61 6c 4f 70 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | alOp).{.return.false;.}..return. |
35ac0 | 74 72 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 | true;.}..return.false;.}..public |
35ae0 | 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | .function.__toString().{.return. |
35b00 | 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 2e 27 20 27 2e 24 74 68 69 73 2d 3e 76 65 72 73 69 | $this->operator.'.'.$this->versi |
35b20 | 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 | on;.}.}.<?php............namespa |
35b40 | 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 | ce.Composer\Package\LinkConstrai |
35b60 | 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 53 70 65 63 69 66 69 | nt;.......abstract.class.Specifi |
35b80 | 63 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4c 69 6e 6b 43 6f 6e 73 74 | cConstraint.implements.LinkConst |
35ba0 | 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 74 | raintInterface.{.protected.$pret |
35bc0 | 74 79 53 74 72 69 6e 67 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 | tyString;..public.function.match |
35be0 | 65 73 28 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 | es(LinkConstraintInterface.$prov |
35c00 | 69 64 65 72 29 0a 7b 0a 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 | ider).{.if.($provider.instanceof |
35c20 | 20 4d 75 6c 74 69 43 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 0a 20 72 65 74 75 72 6e 20 24 70 72 | .MultiConstraint).{...return.$pr |
35c40 | 6f 76 69 64 65 72 2d 3e 6d 61 74 63 68 65 73 28 24 74 68 69 73 29 3b 0a 7d 20 65 6c 73 65 69 66 | ovider->matches($this);.}.elseif |
35c60 | 20 28 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 24 74 68 69 73 29 20 7b 0a | .($provider.instanceof.$this).{. |
35c80 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 24 70 72 6f | return.$this->matchSpecific($pro |
35ca0 | 76 69 64 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 | vider);.}..return.true;.}..publi |
35cc0 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 | c.function.setPrettyString($pret |
35ce0 | 74 79 53 74 72 69 6e 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 20 | tyString).{.$this->prettyString. |
35d00 | 3d 20 24 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | =.$prettyString;.}..public.funct |
35d20 | 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 | ion.getPrettyString().{.if.($thi |
35d40 | 73 2d 3e 70 72 65 74 74 79 53 74 72 69 6e 67 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | s->prettyString).{.return.$this- |
35d60 | 3e 70 72 65 74 74 79 53 74 72 69 6e 67 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | >prettyString;.}..return.$this-> |
35d80 | 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 0a 20 0a 20 0a 0a 7d 0a 3c 3f 70 68 70 0a 0a | __toString();.}........}.<?php.. |
35da0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 | ..........namespace.Composer\Pac |
35dc0 | 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 | kage\LinkConstraint;.......inter |
35de0 | 66 61 63 65 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 | face.LinkConstraintInterface.{.p |
35e00 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 74 63 68 65 73 28 4c 69 6e 6b 43 6f 6e 73 74 | ublic.function.matches(LinkConst |
35e20 | 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f 76 69 64 65 72 29 3b 0a 70 75 62 6c 69 | raintInterface.$provider);.publi |
35e40 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 70 72 65 74 | c.function.setPrettyString($pret |
35e60 | 74 79 53 74 72 69 6e 67 29 3b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 | tyString);.public.function.getPr |
35e80 | 65 74 74 79 53 74 72 69 6e 67 28 29 3b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | ettyString();.public.function.__ |
35ea0 | 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e | toString();.}.<?php............n |
35ec0 | 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | amespace.Composer;..use.Composer |
35ee0 | 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 61 63 | \IO\IOInterface;.......class.Cac |
35f00 | 68 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 72 6f 6f 74 3b | he.{.private.$io;.private.$root; |
35f20 | 0a 70 72 69 76 61 74 65 20 24 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 0a 70 75 62 6c 69 | .private.$enabled.=.true;..publi |
35f40 | 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 | c.function.__construct(IOInterfa |
35f60 | 63 65 20 24 69 6f 2c 20 24 63 61 63 68 65 44 69 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d | ce.$io,.$cacheDir).{.$this->io.= |
35f80 | 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 72 6f 6f 74 20 3d 20 72 74 72 69 6d 28 24 63 61 63 68 65 | .$io;.$this->root.=.rtrim($cache |
35fa0 | 44 69 72 2c 20 27 2f 5c 5c 27 29 20 2e 20 27 2f 27 3b 0a 0a 69 66 20 28 21 69 73 5f 64 69 72 28 | Dir,.'/\\')...'/';..if.(!is_dir( |
35fc0 | 24 74 68 69 73 2d 3e 72 6f 6f 74 29 29 20 7b 0a 69 66 20 28 21 40 6d 6b 64 69 72 28 24 74 68 69 | $this->root)).{.if.(!@mkdir($thi |
35fe0 | 73 2d 3e 72 6f 6f 74 2c 20 30 37 37 37 2c 20 74 72 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 | s->root,.0777,.true)).{.$this->e |
36000 | 6e 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | nabled.=.false;.}.}.}..public.fu |
36020 | 6e 63 74 69 6f 6e 20 67 65 74 52 6f 6f 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | nction.getRoot().{.return.$this- |
36040 | 3e 72 6f 6f 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 24 | >root;.}..public.function.read($ |
36060 | 66 69 6c 65 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5b | file).{.$file.=.preg_replace('{[ |
36080 | 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 69 66 20 28 24 | ^a-z0-9.]}i',.'-',.$file);.if.($ |
360a0 | 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 26 26 20 66 69 6c 65 5f 65 78 69 73 74 73 28 24 74 68 | this->enabled.&&.file_exists($th |
360c0 | 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 69 6c 65 | is->root...$file)).{.return.file |
360e0 | 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c | _get_contents($this->root...$fil |
36100 | 65 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 | e);.}.}..public.function.write($ |
36120 | 66 69 6c 65 2c 20 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e | file,.$contents).{.if.($this->en |
36140 | 61 62 6c 65 64 29 20 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b | abled).{.$file.=.preg_replace('{ |
36160 | 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 6c 65 29 3b 0a 66 69 6c 65 | [^a-z0-9.]}i',.'-',.$file);.file |
36180 | 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c | _put_contents($this->root...$fil |
361a0 | 65 2c 20 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | e,.$contents);.}.}..public.funct |
361c0 | 69 6f 6e 20 73 68 61 31 28 24 66 69 6c 65 29 0a 7b 0a 24 66 69 6c 65 20 3d 20 70 72 65 67 5f 72 | ion.sha1($file).{.$file.=.preg_r |
361e0 | 65 70 6c 61 63 65 28 27 7b 5b 5e 61 2d 7a 30 2d 39 2e 5d 7d 69 27 2c 20 27 2d 27 2c 20 24 66 69 | eplace('{[^a-z0-9.]}i',.'-',.$fi |
36200 | 6c 65 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 64 20 26 26 20 66 69 6c 65 5f | le);.if.($this->enabled.&&.file_ |
36220 | 65 78 69 73 74 73 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 69 6c 65 29 29 20 7b 0a 72 | exists($this->root...$file)).{.r |
36240 | 65 74 75 72 6e 20 73 68 61 31 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e 72 6f 6f 74 20 2e 20 24 66 | eturn.sha1_file($this->root...$f |
36260 | 69 6c 65 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | ile);.}.}.}.<?php............nam |
36280 | 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 | espace.Composer\DependencyResolv |
362a0 | 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 | er;..use.Composer\Package\Packag |
362c0 | 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 50 6f 6c 69 63 79 | eInterface;.....interface.Policy |
362e0 | 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 | Interface.{.public.function.vers |
36300 | 69 6f 6e 43 6f 6d 70 61 72 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 | ionCompare(PackageInterface.$a,. |
36320 | 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 3b | PackageInterface.$b,.$operator); |
36340 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 50 61 63 6b 61 | .public.function.findUpdatePacka |
36360 | 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 | ges(Pool.$pool,.array.$installed |
36380 | 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b | Map,.PackageInterface.$package); |
363a0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 50 72 65 66 65 72 65 64 50 | .public.function.selectPreferedP |
363c0 | 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 | ackages(Pool.$pool,.array.$insta |
363e0 | 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 3c 3f 70 | lledMap,.array.$literals);.}.<?p |
36400 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
36420 | 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 | \DependencyResolver;.....class.R |
36440 | 75 6c 65 53 65 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 65 | uleSet.implements.\IteratorAggre |
36460 | 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 0a 20 63 6f 6e 73 74 20 54 59 50 45 5f | gate,.\Countable.{...const.TYPE_ |
36480 | 50 41 43 4b 41 47 45 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 54 59 50 45 5f 4a 4f 42 20 3d 20 31 3b | PACKAGE.=.0;.const.TYPE_JOB.=.1; |
364a0 | 0a 63 6f 6e 73 74 20 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 20 34 3b 0a 0a 70 72 6f 74 65 63 | .const.TYPE_LEARNED.=.4;..protec |
364c0 | 74 65 64 20 73 74 61 74 69 63 20 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 0a 2d 31 20 3d 3e | ted.static.$types.=.array(.-1.=> |
364e0 | 20 27 55 4e 4b 4e 4f 57 4e 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 20 3d | .'UNKNOWN',.self::TYPE_PACKAGE.= |
36500 | 3e 20 27 50 41 43 4b 41 47 45 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4a 4f 42 20 3d 3e 20 27 | >.'PACKAGE',.self::TYPE_JOB.=>.' |
36520 | 4a 4f 42 27 2c 0a 73 65 6c 66 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 3e 20 27 4c 45 41 | JOB',.self::TYPE_LEARNED.=>.'LEA |
36540 | 52 4e 45 44 27 2c 0a 29 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 72 6f | RNED',.);..protected.$rules;.pro |
36560 | 74 65 63 74 65 64 20 24 72 75 6c 65 42 79 49 64 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 65 78 | tected.$ruleById;.protected.$nex |
36580 | 74 52 75 6c 65 49 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 42 79 48 61 73 68 | tRuleId;..protected.$rulesByHash |
365a0 | 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 | ;..public.function.__construct() |
365c0 | 0a 7b 0a 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 | .{.$this->nextRuleId.=.0;..forea |
365e0 | 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 54 79 70 65 73 28 29 20 61 73 20 24 74 79 70 65 29 20 | ch.($this->getTypes().as.$type). |
36600 | 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 61 72 72 61 79 28 29 3b | {.$this->rules[$type].=.array(); |
36620 | 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 20 3d 20 61 72 72 61 79 28 29 | .}..$this->rulesByHash.=.array() |
36640 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 52 75 6c 65 20 24 72 | ;.}..public.function.add(Rule.$r |
36660 | 75 6c 65 2c 20 24 74 79 70 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 | ule,.$type).{.if.(!isset(self::$ |
36680 | 74 79 70 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4f 75 74 4f | types[$type])).{.throw.new.\OutO |
366a0 | 66 42 6f 75 6e 64 73 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 72 75 6c 65 20 74 | fBoundsException('Unknown.rule.t |
366c0 | 79 70 65 3a 20 27 20 2e 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 | ype:.'...$type);.}..if.(!isset($ |
366e0 | 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 79 70 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 75 | this->rules[$type])).{.$this->ru |
36700 | 6c 65 73 5b 24 74 79 70 65 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e | les[$type].=.array();.}..$this-> |
36720 | 72 75 6c 65 73 5b 24 74 79 70 65 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 24 74 68 69 73 2d 3e 72 | rules[$type][].=.$rule;.$this->r |
36740 | 75 6c 65 42 79 49 64 5b 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 5d 20 3d 20 24 72 75 | uleById[$this->nextRuleId].=.$ru |
36760 | 6c 65 3b 0a 24 72 75 6c 65 2d 3e 73 65 74 54 79 70 65 28 24 74 79 70 65 29 3b 0a 0a 24 72 75 6c | le;.$rule->setType($type);..$rul |
36780 | 65 2d 3e 73 65 74 49 64 28 24 74 68 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 29 3b 0a 24 74 68 | e->setId($this->nextRuleId);.$th |
367a0 | 69 73 2d 3e 6e 65 78 74 52 75 6c 65 49 64 2b 2b 3b 0a 0a 24 68 61 73 68 20 3d 20 24 72 75 6c 65 | is->nextRuleId++;..$hash.=.$rule |
367c0 | 2d 3e 67 65 74 48 61 73 68 28 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 | ->getHash();.if.(!isset($this->r |
367e0 | 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c | ulesByHash[$hash])).{.$this->rul |
36800 | 65 73 42 79 48 61 73 68 5b 24 68 61 73 68 5d 20 3d 20 61 72 72 61 79 28 24 72 75 6c 65 29 3b 0a | esByHash[$hash].=.array($rule);. |
36820 | 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 42 79 48 61 73 68 5b 24 68 61 73 | }.else.{.$this->rulesByHash[$has |
36840 | 68 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | h][].=.$rule;.}.}..public.functi |
36860 | 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 65 78 74 52 | on.count().{.return.$this->nextR |
36880 | 75 6c 65 49 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6c 65 42 79 | uleId;.}..public.function.ruleBy |
368a0 | 49 64 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 42 79 49 64 | Id($id).{.return.$this->ruleById |
368c0 | 5b 24 69 64 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c | [$id];.}..public.function.getRul |
368e0 | 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 3b 0a 7d 0a 0a 70 | es().{.return.$this->rules;.}..p |
36900 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 72 | ublic.function.getIterator().{.r |
36920 | 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 28 24 74 68 69 73 2d | eturn.new.RuleSetIterator($this- |
36940 | 3e 67 65 74 52 75 6c 65 73 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | >getRules());.}..public.function |
36960 | 20 67 65 74 49 74 65 72 61 74 6f 72 46 6f 72 28 24 74 79 70 65 73 29 0a 7b 0a 69 66 20 28 21 69 | .getIteratorFor($types).{.if.(!i |
36980 | 73 5f 61 72 72 61 79 28 24 74 79 70 65 73 29 29 20 7b 0a 24 74 79 70 65 73 20 3d 20 61 72 72 61 | s_array($types)).{.$types.=.arra |
369a0 | 79 28 24 74 79 70 65 73 29 3b 0a 7d 0a 0a 24 61 6c 6c 52 75 6c 65 73 20 3d 20 24 74 68 69 73 2d | y($types);.}..$allRules.=.$this- |
369c0 | 3e 67 65 74 52 75 6c 65 73 28 29 3b 0a 24 72 75 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a | >getRules();.$rules.=.array();.. |
369e0 | 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 73 20 61 73 20 24 74 79 70 65 29 20 7b 0a 24 72 75 6c | foreach.($types.as.$type).{.$rul |
36a00 | 65 73 5b 24 74 79 70 65 5d 20 3d 20 24 61 6c 6c 52 75 6c 65 73 5b 24 74 79 70 65 5d 3b 0a 7d 0a | es[$type].=.$allRules[$type];.}. |
36a20 | 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 28 24 72 75 6c | .return.new.RuleSetIterator($rul |
36a40 | 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 | es);.}..public.function.getItera |
36a60 | 74 6f 72 57 69 74 68 6f 75 74 28 24 74 79 70 65 73 29 0a 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 | torWithout($types).{.if.(!is_arr |
36a80 | 61 79 28 24 74 79 70 65 73 29 29 20 7b 0a 24 74 79 70 65 73 20 3d 20 61 72 72 61 79 28 24 74 79 | ay($types)).{.$types.=.array($ty |
36aa0 | 70 65 73 29 3b 0a 7d 0a 0a 24 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 52 75 6c 65 | pes);.}..$rules.=.$this->getRule |
36ac0 | 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 73 20 61 73 20 24 74 79 70 65 29 20 | s();..foreach.($types.as.$type). |
36ae0 | 7b 0a 75 6e 73 65 74 28 24 72 75 6c 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 | {.unset($rules[$type]);.}..retur |
36b00 | 6e 20 6e 65 77 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 28 24 72 75 6c 65 73 29 3b 0a 7d | n.new.RuleSetIterator($rules);.} |
36b20 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 73 28 29 0a 7b 0a 24 | ..public.function.getTypes().{.$ |
36b40 | 74 79 70 65 73 20 3d 20 73 65 6c 66 3a 3a 24 74 79 70 65 73 3b 0a 75 6e 73 65 74 28 24 74 79 70 | types.=.self::$types;.unset($typ |
36b60 | 65 73 5b 2d 31 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 74 79 70 | es[-1]);..return.array_keys($typ |
36b80 | 65 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 73 | es);.}..public.function.contains |
36ba0 | 45 71 75 61 6c 28 24 72 75 6c 65 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e | Equal($rule).{.if.(isset($this-> |
36bc0 | 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 5d 29 29 20 | rulesByHash[$rule->getHash()])). |
36be0 | 7b 0a 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e | {.$potentialDuplicates.=.$this-> |
36c00 | 72 75 6c 65 73 42 79 48 61 73 68 5b 24 72 75 6c 65 2d 3e 67 65 74 48 61 73 68 28 29 5d 3b 0a 66 | rulesByHash[$rule->getHash()];.f |
36c20 | 6f 72 65 61 63 68 20 28 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 73 20 61 73 20 | oreach.($potentialDuplicates.as. |
36c40 | 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 | $potentialDuplicate).{.if.($rule |
36c60 | 2d 3e 65 71 75 61 6c 73 28 24 70 6f 74 65 6e 74 69 61 6c 44 75 70 6c 69 63 61 74 65 29 29 20 7b | ->equals($potentialDuplicate)).{ |
36c80 | 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 | .return.true;.}.}.}..return.fals |
36ca0 | 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 | e;.}..public.function.__toString |
36cc0 | 28 29 0a 7b 0a 24 73 74 72 69 6e 67 20 3d 20 22 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 | ().{.$string.=."\n";.foreach.($t |
36ce0 | 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 72 75 6c 65 73 29 20 7b | his->rules.as.$type.=>.$rules).{ |
36d00 | 0a 24 73 74 72 69 6e 67 20 2e 3d 20 73 74 72 5f 70 61 64 28 73 65 6c 66 3a 3a 24 74 79 70 65 73 | .$string..=.str_pad(self::$types |
36d20 | 5b 24 74 79 70 65 5d 2c 20 38 2c 20 27 20 27 29 20 2e 20 22 3a 20 22 3b 0a 66 6f 72 65 61 63 68 | [$type],.8,.'.')...":.";.foreach |
36d40 | 20 28 24 72 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 24 73 74 72 69 6e 67 20 2e 3d 20 | .($rules.as.$rule).{.$string..=. |
36d60 | 24 72 75 6c 65 2e 22 5c 6e 22 3b 0a 7d 0a 24 73 74 72 69 6e 67 20 2e 3d 20 22 5c 6e 5c 6e 22 3b | $rule."\n";.}.$string..=."\n\n"; |
36d80 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 72 69 6e 67 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | .}..return.$string;.}.}.<?php... |
36da0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 | .........namespace.Composer\Depe |
36dc0 | 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c 76 65 72 | ndencyResolver;.....class.Solver |
36de0 | 42 75 67 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 | BugException.extends.\RuntimeExc |
36e00 | 65 70 74 69 6f 6e 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 | eption.{.public.function.__const |
36e20 | 72 75 63 74 28 24 6d 65 73 73 61 67 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 | ruct($message).{.parent::__const |
36e40 | 72 75 63 74 28 0a 24 6d 65 73 73 61 67 65 2e 22 5c 6e 54 68 69 73 20 65 78 63 65 70 74 69 6f 6e | ruct(.$message."\nThis.exception |
36e60 | 20 77 61 73 20 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 63 61 75 73 65 64 20 62 79 20 61 20 62 75 67 | .was.most.likely.caused.by.a.bug |
36e80 | 20 69 6e 20 43 6f 6d 70 6f 73 65 72 2e 5c 6e 22 2e 0a 22 50 6c 65 61 73 65 20 72 65 70 6f 72 74 | .in.Composer.\n".."Please.report |
36ea0 | 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 79 6f 75 20 72 61 6e 2c 20 74 68 65 20 65 78 61 63 74 20 | .the.command.you.ran,.the.exact. |
36ec0 | 65 72 72 6f 72 20 79 6f 75 20 72 65 63 65 69 76 65 64 2c 20 61 6e 64 20 79 6f 75 72 20 63 6f 6d | error.you.received,.and.your.com |
36ee0 | 70 6f 73 65 72 2e 6a 73 6f 6e 20 6f 6e 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d | poser.json.on.https://github.com |
36f00 | 2f 63 6f 6d 70 6f 73 65 72 2f 63 6f 6d 70 6f 73 65 72 2f 69 73 73 75 65 73 20 2d 20 74 68 61 6e | /composer/composer/issues.-.than |
36f20 | 6b 20 79 6f 75 21 5c 6e 22 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | k.you!\n");.}.}.<?php........... |
36f40 | 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 | .namespace.Composer\DependencyRe |
36f60 | 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 | solver;..use.Composer\Package\Pa |
36f80 | 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 | ckageInterface;.use.Composer\Pac |
36fa0 | 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | kage\AliasPackage;.use.Composer\ |
36fc0 | 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 56 65 72 73 69 6f 6e 43 6f | Package\LinkConstraint\VersionCo |
36fe0 | 6e 73 74 72 61 69 6e 74 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 66 61 75 6c 74 50 6f 6c 69 63 | nstraint;.....class.DefaultPolic |
37000 | 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 | y.implements.PolicyInterface.{.p |
37020 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 50 61 | ublic.function.versionCompare(Pa |
37040 | 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | ckageInterface.$a,.PackageInterf |
37060 | 61 63 65 20 24 62 2c 20 24 6f 70 65 72 61 74 6f 72 29 0a 7b 0a 24 63 6f 6e 73 74 72 61 69 6e 74 | ace.$b,.$operator).{.$constraint |
37080 | 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 24 6f 70 65 72 61 74 | .=.new.VersionConstraint($operat |
370a0 | 6f 72 2c 20 24 62 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 76 65 72 73 69 6f 6e 20 | or,.$b->getVersion());.$version. |
370c0 | 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 3d 27 2c 20 24 61 | =.new.VersionConstraint('==',.$a |
370e0 | 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 73 74 72 | ->getVersion());..return.$constr |
37100 | 61 69 6e 74 2d 3e 6d 61 74 63 68 53 70 65 63 69 66 69 63 28 24 76 65 72 73 69 6f 6e 29 3b 0a 7d | aint->matchSpecific($version);.} |
37120 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 50 61 63 6b | ..public.function.findUpdatePack |
37140 | 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 | ages(Pool.$pool,.array.$installe |
37160 | 64 4d 61 70 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 | dMap,.PackageInterface.$package) |
37180 | 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 | .{.$packages.=.array();..foreach |
371a0 | 20 28 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 2d 3e | .($pool->whatProvides($package-> |
371c0 | 67 65 74 4e 61 6d 65 28 29 29 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 | getName()).as.$candidate).{.if.( |
371e0 | 24 63 61 6e 64 69 64 61 74 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b | $candidate.!==.$package).{.$pack |
37200 | 61 67 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e | ages[].=.$candidate;.}.}..return |
37220 | 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | .$packages;.}..public.function.g |
37240 | 65 74 50 72 69 6f 72 69 74 79 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 50 61 63 6b 61 67 65 49 6e | etPriority(Pool.$pool,.PackageIn |
37260 | 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 6f 6f 6c | terface.$package).{.return.$pool |
37280 | 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 | ->getPriority($package->getRepos |
372a0 | 69 74 6f 72 79 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c | itory());.}..public.function.sel |
372c0 | 65 63 74 50 72 65 66 65 72 65 64 50 61 63 6b 61 67 65 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 | ectPreferedPackages(Pool.$pool,. |
372e0 | 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 | array.$installedMap,.array.$lite |
37300 | 72 61 6c 73 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 67 72 6f 75 70 | rals).{.$packages.=.$this->group |
37320 | 4c 69 74 65 72 61 6c 73 42 79 4e 61 6d 65 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 | LiteralsByNamePreferInstalled($p |
37340 | 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a | ool,.$installedMap,.$literals);. |
37360 | 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 26 24 6c 69 74 65 72 61 6c | .foreach.($packages.as.&$literal |
37380 | 73 29 20 7b 0a 24 70 6f 6c 69 63 79 20 3d 20 24 74 68 69 73 3b 0a 75 73 6f 72 74 28 24 6c 69 74 | s).{.$policy.=.$this;.usort($lit |
373a0 | 65 72 61 6c 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 75 73 65 20 28 24 70 | erals,.function.($a,.$b).use.($p |
373c0 | 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 20 7b 0a 72 | olicy,.$pool,.$installedMap).{.r |
373e0 | 65 74 75 72 6e 20 24 70 6f 6c 69 63 79 2d 3e 63 6f 6d 70 61 72 65 42 79 50 72 69 6f 72 69 74 79 | eturn.$policy->compareByPriority |
37400 | 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 | PreferInstalled($pool,.$installe |
37420 | 64 4d 61 70 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 61 | dMap,.$pool->literalToPackage($a |
37440 | 29 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 62 29 2c 20 | ),.$pool->literalToPackage($b),. |
37460 | 74 72 75 65 29 3b 0a 7d 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 | true);.});.}..foreach.($packages |
37480 | 20 61 73 20 26 24 6c 69 74 65 72 61 6c 73 29 20 7b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 | .as.&$literals).{.$literals.=.$t |
374a0 | 68 69 73 2d 3e 70 72 75 6e 65 54 6f 42 65 73 74 56 65 72 73 69 6f 6e 28 24 70 6f 6f 6c 2c 20 24 | his->pruneToBestVersion($pool,.$ |
374c0 | 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 | literals);..$literals.=.$this->p |
374e0 | 72 75 6e 65 54 6f 48 69 67 68 65 73 74 50 72 69 6f 72 69 74 79 4f 72 49 6e 73 74 61 6c 6c 65 64 | runeToHighestPriorityOrInstalled |
37500 | 28 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 72 61 6c 73 | ($pool,.$installedMap,.$literals |
37520 | 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 72 75 6e 65 52 65 6d 6f | );..$literals.=.$this->pruneRemo |
37540 | 74 65 41 6c 69 61 73 65 73 28 24 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a | teAliases($pool,.$literals);.}.. |
37560 | 24 73 65 6c 65 63 74 65 64 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 | $selected.=.call_user_func_array |
37580 | 28 27 61 72 72 61 79 5f 6d 65 72 67 65 27 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 0a 0a 20 75 | ('array_merge',.$packages);....u |
375a0 | 73 6f 72 74 28 24 73 65 6c 65 63 74 65 64 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 | sort($selected,.function.($a,.$b |
375c0 | 29 20 75 73 65 20 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 | ).use.($policy,.$pool,.$installe |
375e0 | 64 4d 61 70 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 6f 6c 69 63 79 2d 3e 63 6f 6d 70 61 72 65 42 | dMap).{.return.$policy->compareB |
37600 | 79 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 24 70 6f 6f 6c 2c 20 | yPriorityPreferInstalled($pool,. |
37620 | 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 | $installedMap,.$pool->literalToP |
37640 | 61 63 6b 61 67 65 28 24 61 29 2c 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b | ackage($a),.$pool->literalToPack |
37660 | 61 67 65 28 24 62 29 29 3b 0a 7d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 3b | age($b));.});..return.$selected; |
37680 | 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 72 6f 75 70 4c 69 74 65 | .}..protected.function.groupLite |
376a0 | 72 61 6c 73 42 79 4e 61 6d 65 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 28 50 6f 6f 6c 20 24 | ralsByNamePreferInstalled(Pool.$ |
376c0 | 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 6c 69 74 65 | pool,.array.$installedMap,.$lite |
376e0 | 72 61 6c 73 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 | rals).{.$packages.=.array();.for |
37700 | 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 | each.($literals.as.$literal).{.$ |
37720 | 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 | packageName.=.$pool->literalToPa |
37740 | 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 2d 3e 67 65 74 4e 61 6d 65 28 29 3b 0a 0a 69 66 20 | ckage($literal)->getName();..if. |
37760 | 28 21 69 73 73 65 74 28 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 29 | (!isset($packages[$packageName]) |
37780 | 29 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 20 3d 20 61 72 | ).{.$packages[$packageName].=.ar |
377a0 | 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 | ray();.}..if.(isset($installedMa |
377c0 | 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 | p[abs($literal)])).{.array_unshi |
377e0 | 66 74 28 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 67 65 4e 61 6d 65 5d 2c 20 24 6c 69 74 | ft($packages[$packageName],.$lit |
37800 | 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 63 6b 61 67 65 73 5b 24 70 61 63 6b 61 | eral);.}.else.{.$packages[$packa |
37820 | 67 65 4e 61 6d 65 5d 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 | geName][].=.$literal;.}.}..retur |
37840 | 6e 20 24 70 61 63 6b 61 67 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | n.$packages;.}..public.function. |
37860 | 63 6f 6d 70 61 72 65 42 79 50 72 69 6f 72 69 74 79 50 72 65 66 65 72 49 6e 73 74 61 6c 6c 65 64 | compareByPriorityPreferInstalled |
37880 | 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 | (Pool.$pool,.array.$installedMap |
378a0 | 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 61 2c 20 50 61 63 6b 61 67 65 49 6e | ,.PackageInterface.$a,.PackageIn |
378c0 | 74 65 72 66 61 63 65 20 24 62 2c 20 24 69 67 6e 6f 72 65 52 65 70 6c 61 63 65 20 3d 20 66 61 6c | terface.$b,.$ignoreReplace.=.fal |
378e0 | 73 65 29 0a 7b 0a 69 66 20 28 24 61 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3d 3d | se).{.if.($a->getRepository().== |
37900 | 3d 20 24 62 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 29 20 7b 0a 0a 20 69 66 20 28 24 | =.$b->getRepository()).{...if.($ |
37920 | 61 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 62 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 | a->getName().===.$b->getName()). |
37940 | 7b 0a 24 61 41 6c 69 61 73 65 64 20 3d 20 24 61 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 | {.$aAliased.=.$a.instanceof.Alia |
37960 | 73 50 61 63 6b 61 67 65 3b 0a 24 62 41 6c 69 61 73 65 64 20 3d 20 24 62 20 69 6e 73 74 61 6e 63 | sPackage;.$bAliased.=.$b.instanc |
37980 | 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 69 66 20 28 24 61 41 6c 69 61 73 65 64 20 | eof.AliasPackage;.if.($aAliased. |
379a0 | 26 26 20 21 24 62 41 6c 69 61 73 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 20 0a 20 7d 0a | &&.!$bAliased).{.return.-1;...}. |
379c0 | 69 66 20 28 21 24 61 41 6c 69 61 73 65 64 20 26 26 20 24 62 41 6c 69 61 73 65 64 29 20 7b 0a 72 | if.(!$aAliased.&&.$bAliased).{.r |
379e0 | 65 74 75 72 6e 20 31 3b 20 0a 20 7d 0a 7d 0a 0a 69 66 20 28 21 24 69 67 6e 6f 72 65 52 65 70 6c | eturn.1;...}.}..if.(!$ignoreRepl |
37a00 | 61 63 65 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 72 65 70 6c 61 63 65 73 28 24 61 2c | ace).{...if.($this->replaces($a, |
37a20 | 20 24 62 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 20 0a 20 7d 0a 69 66 20 28 24 74 68 69 73 2d | .$b)).{.return.1;...}.if.($this- |
37a40 | 3e 72 65 70 6c 61 63 65 73 28 24 62 2c 20 24 61 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 20 | >replaces($b,.$a)).{.return.-1;. |
37a60 | 0a 20 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 61 2d 3e 67 65 74 49 64 28 29 20 3d 3d 3d 20 24 62 2d | ..}.}....if.($a->getId().===.$b- |
37a80 | 3e 67 65 74 49 64 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | >getId()).{.return.0;.}..return. |
37aa0 | 28 24 61 2d 3e 67 65 74 49 64 28 29 20 3c 20 24 62 2d 3e 67 65 74 49 64 28 29 29 20 3f 20 2d 31 | ($a->getId().<.$b->getId()).?.-1 |
37ac0 | 20 3a 20 31 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 | .:.1;.}..if.(isset($installedMap |
37ae0 | 5b 24 61 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 0a 7d 0a 0a | [$a->getId()])).{.return.-1;.}.. |
37b00 | 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 62 2d 3e 67 65 74 49 | if.(isset($installedMap[$b->getI |
37b20 | 64 28 29 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 28 24 74 | d()])).{.return.1;.}..return.($t |
37b40 | 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 61 29 20 3e 20 24 74 | his->getPriority($pool,.$a).>.$t |
37b60 | 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 62 29 29 20 3f 20 2d | his->getPriority($pool,.$b)).?.- |
37b80 | 31 20 3a 20 31 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 | 1.:.1;.}............protected.fu |
37ba0 | 6e 63 74 69 6f 6e 20 72 65 70 6c 61 63 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 | nction.replaces(PackageInterface |
37bc0 | 20 24 73 6f 75 72 63 65 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 | .$source,.PackageInterface.$targ |
37be0 | 65 74 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 73 6f 75 72 63 65 2d 3e 67 65 74 52 65 70 6c 61 | et).{.foreach.($source->getRepla |
37c00 | 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 69 66 20 28 24 6c 69 6e 6b 2d 3e 67 65 74 | ces().as.$link).{.if.($link->get |
37c20 | 54 61 72 67 65 74 28 29 20 3d 3d 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 74 4e 61 6d 65 28 29 0a | Target().===.$target->getName(). |
37c40 | 0a 0a 20 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 | ...).{.return.true;.}.}..return. |
37c60 | 66 61 6c 73 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 | false;.}..protected.function.pru |
37c80 | 6e 65 54 6f 42 65 73 74 56 65 72 73 69 6f 6e 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 24 6c 69 74 | neToBestVersion(Pool.$pool,.$lit |
37ca0 | 65 72 61 6c 73 29 0a 7b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 24 | erals).{.$bestLiterals.=.array($ |
37cc0 | 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 62 65 73 74 50 61 63 6b 61 67 65 20 3d 20 24 70 6f | literals[0]);.$bestPackage.=.$po |
37ce0 | 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 73 5b 30 | ol->literalToPackage($literals[0 |
37d00 | 5d 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 | ]);.foreach.($literals.as.$i.=>. |
37d20 | 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 69 29 20 7b 0a 63 6f 6e 74 | $literal).{.if.(0.===.$i).{.cont |
37d40 | 69 6e 75 65 3b 0a 7d 0a 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 | inue;.}..$package.=.$pool->liter |
37d60 | 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 74 68 69 | alToPackage($literal);..if.($thi |
37d80 | 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 2c 20 24 62 65 73 | s->versionCompare($package,.$bes |
37da0 | 74 50 61 63 6b 61 67 65 2c 20 27 3e 27 29 29 20 7b 0a 24 62 65 73 74 50 61 63 6b 61 67 65 20 3d | tPackage,.'>')).{.$bestPackage.= |
37dc0 | 20 24 70 61 63 6b 61 67 65 3b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 | .$package;.$bestLiterals.=.array |
37de0 | 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 76 65 72 | ($literal);.}.elseif.($this->ver |
37e00 | 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 70 61 63 6b 61 67 65 2c 20 24 62 65 73 74 50 61 63 6b 61 | sionCompare($package,.$bestPacka |
37e20 | 67 65 2c 20 27 3d 3d 27 29 29 20 7b 0a 24 62 65 73 74 4c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 | ge,.'==')).{.$bestLiterals[].=.$ |
37e40 | 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 65 73 74 4c 69 74 65 72 61 | literal;.}.}..return.$bestLitera |
37e60 | 6c 73 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 | ls;.}..protected.function.select |
37e80 | 4e 65 77 65 73 74 50 61 63 6b 61 67 65 73 28 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d | NewestPackages(array.$installedM |
37ea0 | 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b 0a 24 6d 61 78 4c 69 74 65 72 | ap,.array.$literals).{.$maxLiter |
37ec0 | 61 6c 73 20 3d 20 61 72 72 61 79 28 24 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 6d 61 78 50 | als.=.array($literals[0]);.$maxP |
37ee0 | 61 63 6b 61 67 65 20 3d 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 2d 3e 67 65 74 50 61 63 6b 61 67 | ackage.=.$literals[0]->getPackag |
37f00 | 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e | e();.foreach.($literals.as.$i.=> |
37f20 | 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 69 29 20 7b 0a 63 6f 6e | .$literal).{.if.(0.===.$i).{.con |
37f40 | 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 | tinue;.}..if.($this->versionComp |
37f60 | 61 72 65 28 24 6c 69 74 65 72 61 6c 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2c 20 24 6d 61 78 | are($literal->getPackage(),.$max |
37f80 | 50 61 63 6b 61 67 65 2c 20 27 3e 27 29 29 20 7b 0a 24 6d 61 78 50 61 63 6b 61 67 65 20 3d 20 24 | Package,.'>')).{.$maxPackage.=.$ |
37fa0 | 6c 69 74 65 72 61 6c 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 6d 61 78 4c 69 74 65 72 | literal->getPackage();.$maxLiter |
37fc0 | 61 6c 73 20 3d 20 61 72 72 61 79 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 20 65 6c 73 65 69 66 20 | als.=.array($literal);.}.elseif. |
37fe0 | 28 24 74 68 69 73 2d 3e 76 65 72 73 69 6f 6e 43 6f 6d 70 61 72 65 28 24 6c 69 74 65 72 61 6c 2d | ($this->versionCompare($literal- |
38000 | 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2c 20 24 6d 61 78 50 61 63 6b 61 67 65 2c 20 27 3d 3d 27 | >getPackage(),.$maxPackage,.'==' |
38020 | 29 29 20 7b 0a 24 6d 61 78 4c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a | )).{.$maxLiterals[].=.$literal;. |
38040 | 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 78 4c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 0a 0a 0a | }.}..return.$maxLiterals;.}..... |
38060 | 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 6e 65 54 6f 48 69 67 68 65 73 | protected.function.pruneToHighes |
38080 | 74 50 72 69 6f 72 69 74 79 4f 72 49 6e 73 74 61 6c 6c 65 64 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c | tPriorityOrInstalled(Pool.$pool, |
380a0 | 20 61 72 72 61 79 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 61 72 72 61 79 20 24 6c 69 74 | .array.$installedMap,.array.$lit |
380c0 | 65 72 61 6c 73 29 0a 7b 0a 24 73 65 6c 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 | erals).{.$selected.=.array();..$ |
380e0 | 70 72 69 6f 72 69 74 79 20 3d 20 6e 75 6c 6c 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 | priority.=.null;..foreach.($lite |
38100 | 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 | rals.as.$literal).{.$package.=.$ |
38120 | 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 | pool->literalToPackage($literal) |
38140 | 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b | ;..if.(isset($installedMap[$pack |
38160 | 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 3d 20 | age->getId()])).{.$selected[].=. |
38180 | 24 6c 69 74 65 72 61 6c 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 | $literal;.continue;.}..if.(null. |
381a0 | 3d 3d 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 24 70 72 69 6f 72 69 74 79 20 3d 20 24 74 68 | ===.$priority).{.$priority.=.$th |
381c0 | 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f 6c 2c 20 24 70 61 63 6b 61 67 65 29 | is->getPriority($pool,.$package) |
381e0 | 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 69 6f 72 69 74 79 28 24 70 6f 6f | ;.}..if.($this->getPriority($poo |
38200 | 6c 2c 20 24 70 61 63 6b 61 67 65 29 20 21 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 62 72 65 | l,.$package).!=.$priority).{.bre |
38220 | 61 6b 3b 0a 7d 0a 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d | ak;.}..$selected[].=.$literal;.} |
38240 | 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 | ..return.$selected;.}.......prot |
38260 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 75 6e 65 52 65 6d 6f 74 65 41 6c 69 61 73 65 | ected.function.pruneRemoteAliase |
38280 | 73 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 29 0a 7b | s(Pool.$pool,.array.$literals).{ |
382a0 | 0a 24 68 61 73 4c 6f 63 61 6c 41 6c 69 61 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 66 6f 72 65 61 63 | .$hasLocalAlias.=.false;..foreac |
382c0 | 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 | h.($literals.as.$literal).{.$pac |
382e0 | 6b 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 | kage.=.$pool->literalToPackage($ |
38300 | 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 | literal);..if.($package.instance |
38320 | 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 52 | of.AliasPackage.&&.$package->isR |
38340 | 6f 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 29 20 7b 0a 24 68 61 73 4c 6f 63 61 6c 41 6c | ootPackageAlias()).{.$hasLocalAl |
38360 | 69 61 73 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 68 61 | ias.=.true;.break;.}.}..if.(!$ha |
38380 | 73 4c 6f 63 61 6c 41 6c 69 61 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 74 65 72 61 6c 73 3b | sLocalAlias).{.return.$literals; |
383a0 | 0a 7d 0a 0a 24 73 65 6c 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 | .}..$selected.=.array();.foreach |
383c0 | 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 70 61 63 6b | .($literals.as.$literal).{.$pack |
383e0 | 61 67 65 20 3d 20 24 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c | age.=.$pool->literalToPackage($l |
38400 | 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f | iteral);..if.($package.instanceo |
38420 | 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 52 6f | f.AliasPackage.&&.$package->isRo |
38440 | 6f 74 50 61 63 6b 61 67 65 41 6c 69 61 73 28 29 29 20 7b 0a 24 73 65 6c 65 63 74 65 64 5b 5d 20 | otPackageAlias()).{.$selected[]. |
38460 | 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 65 6c 65 63 74 65 | =.$literal;.}.}..return.$selecte |
38480 | 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | d;.}.}.<?php............namespac |
384a0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a | e.Composer\DependencyResolver;.. |
384c0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 63 69 73 69 6f 6e 73 20 69 6d 70 6c 65 6d 65 6e 74 73 20 | .....class.Decisions.implements. |
384e0 | 5c 49 74 65 72 61 74 6f 72 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 6f 6e 73 74 20 44 45 | \Iterator,.\Countable.{.const.DE |
38500 | 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 44 45 43 49 53 49 | CISION_LITERAL.=.0;.const.DECISI |
38520 | 4f 4e 5f 52 45 41 53 4f 4e 20 3d 20 31 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b | ON_REASON.=.1;..protected.$pool; |
38540 | 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 4d 61 70 3b 0a 70 72 6f 74 65 63 74 | .protected.$decisionMap;.protect |
38560 | 65 64 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 75 | ed.$decisionQueue.=.array();..pu |
38580 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 6f 6f 6c 29 | blic.function.__construct($pool) |
385a0 | 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 0a 69 66 20 28 76 65 72 | .{.$this->pool.=.$pool;..if.(ver |
385c0 | 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 50 48 50 5f 56 45 52 53 49 4f 4e 2c 20 27 35 2e 33 2e 34 | sion_compare(PHP_VERSION,.'5.3.4 |
385e0 | 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 20 3d | ',.'>=')).{.$this->decisionMap.= |
38600 | 20 6e 65 77 20 5c 53 70 6c 46 69 78 65 64 41 72 72 61 79 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d | .new.\SplFixedArray($this->pool- |
38620 | 3e 67 65 74 4d 61 78 49 64 28 29 20 2b 20 31 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 | >getMaxId().+.1);.}.else.{.$this |
38640 | 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 20 3d 20 61 72 72 61 79 5f 66 69 6c 6c 28 30 2c 20 24 74 | ->decisionMap.=.array_fill(0,.$t |
38660 | 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 67 65 74 4d 61 78 49 64 28 29 20 2b 20 31 2c 20 30 29 3b 0a 7d | his->pool->getMaxId().+.1,.0);.} |
38680 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 28 24 6c 69 74 65 | .}..public.function.decide($lite |
386a0 | 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 77 68 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 44 | ral,.$level,.$why).{.$this->addD |
386c0 | 65 63 69 73 69 6f 6e 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 3b 0a 24 74 68 69 73 | ecision($literal,.$level);.$this |
386e0 | 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 61 72 72 61 79 28 0a 73 65 6c 66 3a | ->decisionQueue[].=.array(.self: |
38700 | 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 20 3d 3e 20 24 6c 69 74 65 72 61 6c 2c 0a 73 | :DECISION_LITERAL.=>.$literal,.s |
38720 | 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 20 3d 3e 20 24 77 68 79 2c 0a 29 3b | elf::DECISION_REASON.=>.$why,.); |
38740 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 61 74 69 73 66 79 28 24 6c 69 74 | .}..public.function.satisfy($lit |
38760 | 65 72 61 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 | eral).{.$packageId.=.abs($litera |
38780 | 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 28 0a 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 20 24 74 | l);..return.(.$literal.>.0.&&.$t |
387a0 | 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3e 20 30 | his->decisionMap[$packageId].>.0 |
387c0 | 20 7c 7c 0a 24 6c 69 74 65 72 61 6c 20 3c 20 30 20 26 26 20 24 74 68 69 73 2d 3e 64 65 63 69 73 | .||.$literal.<.0.&&.$this->decis |
387e0 | 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3c 20 30 0a 29 3b 0a 7d 0a 0a 70 75 62 | ionMap[$packageId].<.0.);.}..pub |
38800 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 6c 69 63 74 28 24 6c 69 74 65 72 61 6c 29 0a | lic.function.conflict($literal). |
38820 | 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 72 | {.$packageId.=.abs($literal);..r |
38840 | 65 74 75 72 6e 20 28 0a 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 | eturn.(.($this->decisionMap[$pac |
38860 | 6b 61 67 65 49 64 5d 20 3e 20 30 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3c 20 30 29 20 7c 7c 0a | kageId].>.0.&&.$literal.<.0).||. |
38880 | 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 | ($this->decisionMap[$packageId]. |
388a0 | 3c 20 30 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 | <.0.&&.$literal.>.0).);.}..publi |
388c0 | 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 | c.function.decided($literalOrPac |
388e0 | 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e | kageId).{.return.$this->decision |
38900 | 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 5d 20 21 3d | Map[abs($literalOrPackageId)].!= |
38920 | 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 64 65 63 69 64 65 64 | .0;.}..public.function.undecided |
38940 | 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | ($literalOrPackageId).{.return.$ |
38960 | 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 | this->decisionMap[abs($literalOr |
38980 | 50 61 63 6b 61 67 65 49 64 29 5d 20 3d 3d 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | PackageId)].==.0;.}..public.func |
389a0 | 74 69 6f 6e 20 64 65 63 69 64 65 64 49 6e 73 74 61 6c 6c 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 | tion.decidedInstall($literalOrPa |
389c0 | 63 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f | ckageId).{.return.$this->decisio |
389e0 | 6e 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 5d 20 3e | nMap[abs($literalOrPackageId)].> |
38a00 | 20 30 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 73 69 6f 6e 4c | .0;.}..public.function.decisionL |
38a20 | 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 72 65 74 75 | evel($literalOrPackageId).{.retu |
38a40 | 72 6e 20 61 62 73 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 6c | rn.abs($this->decisionMap[abs($l |
38a60 | 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 5d 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 | iteralOrPackageId)]);.}..public. |
38a80 | 66 75 6e 63 74 69 6f 6e 20 64 65 63 69 73 69 6f 6e 52 75 6c 65 28 24 6c 69 74 65 72 61 6c 4f 72 | function.decisionRule($literalOr |
38aa0 | 50 61 63 6b 61 67 65 49 64 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c | PackageId).{.$packageId.=.abs($l |
38ac0 | 69 74 65 72 61 6c 4f 72 50 61 63 6b 61 67 65 49 64 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 | iteralOrPackageId);..foreach.($t |
38ae0 | 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 | his->decisionQueue.as.$i.=>.$dec |
38b00 | 69 73 69 6f 6e 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 3d 3d 3d 20 61 62 73 28 | ision).{.if.($packageId.===.abs( |
38b20 | 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c | $decision[self::DECISION_LITERAL |
38b40 | 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 45 43 | ])).{.return.$decision[self::DEC |
38b60 | 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b | ISION_REASON];.}.}..return.null; |
38b80 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 74 4f 66 66 73 65 74 28 24 71 75 | .}..public.function.atOffset($qu |
38ba0 | 65 75 65 4f 66 66 73 65 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 | eueOffset).{.return.$this->decis |
38bc0 | 69 6f 6e 51 75 65 75 65 5b 24 71 75 65 75 65 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 | ionQueue[$queueOffset];.}..publi |
38be0 | 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 4f 66 66 73 65 74 28 24 71 75 65 75 65 4f 66 66 | c.function.validOffset($queueOff |
38c00 | 73 65 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 71 75 65 75 65 4f 66 66 73 65 74 20 3e 3d 20 30 20 | set).{.return.$queueOffset.>=.0. |
38c20 | 26 26 20 24 71 75 65 75 65 4f 66 66 73 65 74 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 | &&.$queueOffset.<.count($this->d |
38c40 | 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | ecisionQueue);.}..public.functio |
38c60 | 6e 20 6c 61 73 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 | n.lastReason().{.return.$this->d |
38c80 | 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 | ecisionQueue[count($this->decisi |
38ca0 | 6f 6e 51 75 65 75 65 29 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 | onQueue).-.1][self::DECISION_REA |
38cc0 | 53 4f 4e 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 61 73 74 4c 69 74 | SON];.}..public.function.lastLit |
38ce0 | 65 72 61 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 | eral().{.return.$this->decisionQ |
38d00 | 75 65 75 65 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 | ueue[count($this->decisionQueue) |
38d20 | 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 7d | .-.1][self::DECISION_LITERAL];.} |
38d40 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 77 68 69 6c | ..public.function.reset().{.whil |
38d60 | 65 20 28 24 64 65 63 69 73 69 6f 6e 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e | e.($decision.=.array_pop($this-> |
38d80 | 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f | decisionQueue)).{.$this->decisio |
38da0 | 6e 4d 61 70 5b 61 62 73 28 24 64 65 63 69 73 69 6f 6e 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f | nMap[abs($decision[self::DECISIO |
38dc0 | 4e 5f 4c 49 54 45 52 41 4c 5d 29 5d 20 3d 20 30 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | N_LITERAL])].=.0;.}.}..public.fu |
38de0 | 6e 63 74 69 6f 6e 20 72 65 73 65 74 54 6f 4f 66 66 73 65 74 28 24 6f 66 66 73 65 74 29 0a 7b 0a | nction.resetToOffset($offset).{. |
38e00 | 77 68 69 6c 65 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 | while.(count($this->decisionQueu |
38e20 | 65 29 20 3e 20 24 6f 66 66 73 65 74 20 2b 20 31 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 20 3d 20 | e).>.$offset.+.1).{.$decision.=. |
38e40 | 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b | array_pop($this->decisionQueue); |
38e60 | 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 64 65 63 69 73 69 6f | .$this->decisionMap[abs($decisio |
38e80 | 6e 5b 73 65 6c 66 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 29 5d 20 3d 20 30 3b | n[self::DECISION_LITERAL])].=.0; |
38ea0 | 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 76 65 72 74 4c 61 73 74 | .}.}..public.function.revertLast |
38ec0 | 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 74 68 69 | ().{.$this->decisionMap[abs($thi |
38ee0 | 73 2d 3e 6c 61 73 74 4c 69 74 65 72 61 6c 28 29 29 5d 20 3d 20 30 3b 0a 61 72 72 61 79 5f 70 6f | s->lastLiteral())].=.0;.array_po |
38f00 | 70 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c | p($this->decisionQueue);.}..publ |
38f20 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 6f 75 | ic.function.count().{.return.cou |
38f40 | 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 | nt($this->decisionQueue);.}..pub |
38f60 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 65 6e 64 28 24 74 68 69 | lic.function.rewind().{.end($thi |
38f80 | 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | s->decisionQueue);.}..public.fun |
38fa0 | 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 63 75 72 72 65 6e 74 | ction.current().{.return.current |
38fc0 | 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 | ($this->decisionQueue);.}..publi |
38fe0 | 63 20 66 75 6e 63 74 69 6f 6e 20 6b 65 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6b 65 79 28 24 74 | c.function.key().{.return.key($t |
39000 | 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 | his->decisionQueue);.}..public.f |
39020 | 75 6e 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 70 72 65 76 28 24 74 68 | unction.next().{.return.prev($th |
39040 | 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | is->decisionQueue);.}..public.fu |
39060 | 6e 63 74 69 6f 6e 20 76 61 6c 69 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d | nction.valid().{.return.false.!= |
39080 | 3d 20 63 75 72 72 65 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 3b | =.current($this->decisionQueue); |
390a0 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 6d 70 74 79 28 29 0a 7b 0a | .}..public.function.isEmpty().{. |
390c0 | 72 65 74 75 72 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 | return.count($this->decisionQueu |
390e0 | 65 29 20 3d 3d 3d 20 30 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | e).===.0;.}..protected.function. |
39100 | 61 64 64 44 65 63 69 73 69 6f 6e 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 29 0a 7b 0a | addDecision($literal,.$level).{. |
39120 | 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 24 70 72 | $packageId.=.abs($literal);..$pr |
39140 | 65 76 69 6f 75 73 44 65 63 69 73 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e | eviousDecision.=.$this->decision |
39160 | 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 3b 0a 69 66 20 28 24 70 72 65 76 69 6f 75 73 44 65 | Map[$packageId];.if.($previousDe |
39180 | 63 69 73 69 6f 6e 20 21 3d 20 30 29 20 7b 0a 24 6c 69 74 65 72 61 6c 53 74 72 69 6e 67 20 3d 20 | cision.!=.0).{.$literalString.=. |
391a0 | 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 53 74 72 69 6e 67 28 24 6c 69 | $this->pool->literalToString($li |
391c0 | 74 65 72 61 6c 29 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e | teral);.$package.=.$this->pool-> |
391e0 | 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 74 68 72 6f | literalToPackage($literal);.thro |
39200 | 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 54 72 79 69 6e | w.new.SolverBugException(."Tryin |
39220 | 67 20 74 6f 20 64 65 63 69 64 65 20 24 6c 69 74 65 72 61 6c 53 74 72 69 6e 67 20 6f 6e 20 6c 65 | g.to.decide.$literalString.on.le |
39240 | 76 65 6c 20 24 6c 65 76 65 6c 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 24 70 61 63 6b 61 67 65 | vel.$level,.even.though.$package |
39260 | 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 20 64 65 63 69 64 65 64 20 61 73 20 22 2e 28 69 6e | .was.previously.decided.as.".(in |
39280 | 74 29 20 24 70 72 65 76 69 6f 75 73 44 65 63 69 73 69 6f 6e 2e 22 2e 22 0a 29 3b 0a 7d 0a 0a 69 | t).$previousDecision.".".);.}..i |
392a0 | 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 | f.($literal.>.0).{.$this->decisi |
392c0 | 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 20 65 6c | onMap[$packageId].=.$level;.}.el |
392e0 | 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 24 70 61 63 6b 61 67 65 | se.{.$this->decisionMap[$package |
39300 | 49 64 5d 20 3d 20 2d 24 6c 65 76 65 6c 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a | Id].=.-$level;.}.}.}.<?php...... |
39320 | 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 | ......namespace.Composer\Depende |
39340 | 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 57 | ncyResolver;.........class.RuleW |
39360 | 61 74 63 68 4e 6f 64 65 0a 7b 0a 70 75 62 6c 69 63 20 24 77 61 74 63 68 31 3b 0a 70 75 62 6c 69 | atchNode.{.public.$watch1;.publi |
39380 | 63 20 24 77 61 74 63 68 32 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 3b 0a 0a 0a 0a | c.$watch2;..protected.$rule;.... |
393a0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 | ...public.function.__construct($ |
393c0 | 72 75 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 20 3d 20 24 72 75 6c 65 3b 0a 0a 24 6c | rule).{.$this->rule.=.$rule;..$l |
393e0 | 69 74 65 72 61 6c 73 20 3d 20 24 72 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a | iterals.=.$rule->getLiterals();. |
39400 | 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 20 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 | .$this->watch1.=.count($literals |
39420 | 29 20 3e 20 30 20 3f 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 20 3a 20 30 3b 0a 24 74 68 69 73 2d | ).>.0.?.$literals[0].:.0;.$this- |
39440 | 3e 77 61 74 63 68 32 20 3d 20 63 6f 75 6e 74 28 24 6c 69 74 65 72 61 6c 73 29 20 3e 20 31 20 3f | >watch2.=.count($literals).>.1.? |
39460 | 20 24 6c 69 74 65 72 61 6c 73 5b 31 5d 20 3a 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | .$literals[1].:.0;.}..........pu |
39480 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 74 63 68 32 4f 6e 48 69 67 68 65 73 74 28 44 65 | blic.function.watch2OnHighest(De |
394a0 | 63 69 73 69 6f 6e 73 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 24 6c 69 74 65 72 61 6c 73 20 | cisions.$decisions).{.$literals. |
394c0 | 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 0a 0a | =.$this->rule->getLiterals();... |
394e0 | 20 69 66 20 28 24 6c 69 74 65 72 61 6c 73 20 3c 20 33 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a | .if.($literals.<.3).{.return;.}. |
39500 | 0a 24 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 30 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 | .$watchLevel.=.0;..foreach.($lit |
39520 | 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 6c 65 76 65 6c 20 3d 20 24 64 | erals.as.$literal).{.$level.=.$d |
39540 | 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c | ecisions->decisionLevel($literal |
39560 | 29 3b 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3e 20 24 77 61 74 63 68 4c 65 76 65 6c 29 20 7b 0a | );..if.($level.>.$watchLevel).{. |
39580 | 24 74 68 69 73 2d 3e 72 75 6c 65 2d 3e 77 61 74 63 68 32 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a | $this->rule->watch2.=.$literal;. |
395a0 | 24 77 61 74 63 68 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a | $watchLevel.=.$level;.}.}.}..... |
395c0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c 65 28 29 0a 7b 0a 72 65 | ..public.function.getRule().{.re |
395e0 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | turn.$this->rule;.}........publi |
39600 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 74 68 65 72 57 61 74 63 68 28 24 6c 69 74 65 72 61 | c.function.getOtherWatch($litera |
39620 | 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 3d 20 24 6c 69 74 65 72 | l).{.if.($this->watch1.==.$liter |
39640 | 61 6c 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 68 32 3b 0a 7d 20 65 6c | al).{.return.$this->watch2;.}.el |
39660 | 73 65 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 74 63 68 31 3b 0a 7d 0a 7d 0a 0a | se.{.return.$this->watch1;.}.}.. |
39680 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 76 65 57 61 74 63 68 28 | ......public.function.moveWatch( |
396a0 | 24 66 72 6f 6d 2c 20 24 74 6f 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 | $from,.$to).{.if.($this->watch1. |
396c0 | 3d 3d 20 24 66 72 6f 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 31 20 3d 20 24 74 6f 3b | ==.$from).{.$this->watch1.=.$to; |
396e0 | 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 32 20 3d 20 24 74 6f 3b 0a 7d | .}.else.{.$this->watch2.=.$to;.} |
39700 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | .}.}.<?php............namespace. |
39720 | 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a | Composer\DependencyResolver;.... |
39740 | 0a 63 6c 61 73 73 20 53 6f 6c 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 20 65 | .class.SolverProblemsException.e |
39760 | 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 | xtends.\RuntimeException.{.prote |
39780 | 63 74 65 64 20 24 70 72 6f 62 6c 65 6d 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 | cted.$problems;.protected.$insta |
397a0 | 6c 6c 65 64 4d 61 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 | lledMap;..public.function.__cons |
397c0 | 74 72 75 63 74 28 61 72 72 61 79 20 24 70 72 6f 62 6c 65 6d 73 2c 20 61 72 72 61 79 20 24 69 6e | truct(array.$problems,.array.$in |
397e0 | 73 74 61 6c 6c 65 64 4d 61 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 20 3d 20 | stalledMap).{.$this->problems.=. |
39800 | 24 70 72 6f 62 6c 65 6d 73 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d | $problems;.$this->installedMap.= |
39820 | 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 | .$installedMap;..parent::__const |
39840 | 72 75 63 74 28 24 74 68 69 73 2d 3e 63 72 65 61 74 65 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 0a | ruct($this->createMessage());.}. |
39860 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 4d 65 73 73 61 67 | .protected.function.createMessag |
39880 | 65 28 29 0a 7b 0a 24 74 65 78 74 20 3d 20 22 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 | e().{.$text.=."\n";.foreach.($th |
398a0 | 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 20 61 73 20 24 69 20 3d 3e 20 24 70 72 6f 62 6c 65 6d 29 20 | is->problems.as.$i.=>.$problem). |
398c0 | 7b 0a 24 74 65 78 74 20 2e 3d 20 22 20 20 50 72 6f 62 6c 65 6d 20 22 2e 28 24 69 2b 31 29 2e 24 | {.$text..=."..Problem.".($i+1).$ |
398e0 | 70 72 6f 62 6c 65 6d 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 74 68 69 73 2d 3e | problem->getPrettyString($this-> |
39900 | 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 2e 22 5c 6e 22 3b 0a 7d 0a 0a 69 66 20 28 73 74 72 70 6f | installedMap)."\n";.}..if.(strpo |
39920 | 73 28 24 74 65 78 74 2c 20 27 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 27 29 20 7c | s($text,.'could.not.be.found').| |
39940 | 7c 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 6e 6f 20 6d 61 74 63 68 69 6e 67 20 70 61 63 | |.strpos($text,.'no.matching.pac |
39960 | 6b 61 67 65 20 66 6f 75 6e 64 27 29 29 20 7b 0a 24 74 65 78 74 20 2e 3d 20 22 5c 6e 50 6f 74 65 | kage.found')).{.$text..=."\nPote |
39980 | 6e 74 69 61 6c 20 63 61 75 73 65 73 3a 5c 6e 20 2d 20 41 20 74 79 70 6f 20 69 6e 20 74 68 65 20 | ntial.causes:\n.-.A.typo.in.the. |
399a0 | 70 61 63 6b 61 67 65 20 6e 61 6d 65 5c 6e 20 2d 20 54 68 65 20 70 61 63 6b 61 67 65 20 69 73 20 | package.name\n.-.The.package.is. |
399c0 | 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 61 20 73 74 61 62 6c 65 2d 65 6e 6f 75 67 68 | not.available.in.a.stable-enough |
399e0 | 20 76 65 72 73 69 6f 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 79 6f 75 72 20 6d 69 6e 69 6d | .version.according.to.your.minim |
39a00 | 75 6d 2d 73 74 61 62 69 6c 69 74 79 20 73 65 74 74 69 6e 67 5c 6e 20 20 20 73 65 65 20 68 74 74 | um-stability.setting\n...see.htt |
39a20 | 70 73 3a 2f 2f 67 72 6f 75 70 73 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f 64 2f 74 6f 70 69 63 2f 63 | ps://groups.google.com/d/topic/c |
39a40 | 6f 6d 70 6f 73 65 72 2d 64 65 76 2f 5f 67 33 41 53 65 49 46 6c 72 63 2f 64 69 73 63 75 73 73 69 | omposer-dev/_g3ASeIFlrc/discussi |
39a60 | 6f 6e 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 | on.for.more.details.\n";.}..retu |
39a80 | 72 6e 20 24 74 65 78 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | rn.$text;.}..public.function.get |
39aa0 | 50 72 6f 62 6c 65 6d 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 62 6c | Problems().{.return.$this->probl |
39ac0 | 65 6d 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ems;.}.}.<?php............namesp |
39ae0 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b | ace.Composer\DependencyResolver; |
39b00 | 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b | ..use.Composer\Package\AliasPack |
39b20 | 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f | age;.use.Composer\DependencyReso |
39b40 | 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 72 61 6e 73 61 | lver\Operation;.....class.Transa |
39b60 | 63 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 70 72 6f 74 65 | ction.{.protected.$policy;.prote |
39b80 | 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 65 64 | cted.$pool;.protected.$installed |
39ba0 | 4d 61 70 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 70 72 6f 74 65 | Map;.protected.$decisions;.prote |
39bc0 | 63 74 65 64 20 24 74 72 61 6e 73 61 63 74 69 6f 6e 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | cted.$transaction;..public.funct |
39be0 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 2c 20 | ion.__construct($policy,.$pool,. |
39c00 | 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 24 74 68 | $installedMap,.$decisions).{.$th |
39c20 | 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f 6c 69 63 79 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f | is->policy.=.$policy;.$this->poo |
39c40 | 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d | l.=.$pool;.$this->installedMap.= |
39c60 | 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 | .$installedMap;.$this->decisions |
39c80 | 20 3d 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f | .=.$decisions;.$this->transactio |
39ca0 | 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | n.=.array();.}..public.function. |
39cc0 | 67 65 74 4f 70 65 72 61 74 69 6f 6e 73 28 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 | getOperations().{.$installMeansU |
39ce0 | 70 64 61 74 65 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 55 70 64 61 74 65 73 28 29 3b | pdateMap.=.$this->findUpdates(); |
39d00 | 0a 0a 24 75 70 64 61 74 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 69 6e 73 74 61 6c 6c | ..$updateMap.=.array();.$install |
39d20 | 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 20 3d 20 61 | Map.=.array();.$uninstallMap.=.a |
39d40 | 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f | rray();..foreach.($this->decisio |
39d60 | 6e 73 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 | ns.as.$i.=>.$decision).{.$litera |
39d80 | 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f | l.=.$decision[Decisions::DECISIO |
39da0 | 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 72 65 61 73 6f 6e 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b | N_LITERAL];.$reason.=.$decision[ |
39dc0 | 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 0a 24 70 | Decisions::DECISION_REASON];..$p |
39de0 | 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 | ackage.=.$this->pool->literalToP |
39e00 | 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 0a 20 69 66 20 28 28 24 6c 69 74 65 72 | ackage($literal);....if.(($liter |
39e20 | 61 6c 20 3e 20 30 29 20 3d 3d 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c | al.>.0).==.(isset($this->install |
39e40 | 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 29 20 7b 0a 63 6f | edMap[$package->getId()]))).{.co |
39e60 | 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 29 20 7b 0a 69 | ntinue;.}..if.($literal.>.0).{.i |
39e80 | 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 5b | f.(isset($installMeansUpdateMap[ |
39ea0 | 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 20 26 26 20 21 24 70 61 63 6b 61 67 65 20 69 6e 73 | abs($literal)]).&&.!$package.ins |
39ec0 | 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 0a 24 73 6f 75 72 63 65 | tanceof.AliasPackage).{..$source |
39ee0 | 20 3d 20 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c | .=.$installMeansUpdateMap[abs($l |
39f00 | 69 74 65 72 61 6c 29 5d 3b 0a 0a 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e | iteral)];..$updateMap[$package-> |
39f20 | 67 65 74 49 64 28 29 5d 20 3d 20 61 72 72 61 79 28 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 | getId()].=.array(.'package'.=>.$ |
39f40 | 70 61 63 6b 61 67 65 2c 0a 27 73 6f 75 72 63 65 27 20 3d 3e 20 24 73 6f 75 72 63 65 2c 0a 27 72 | package,.'source'.=>.$source,.'r |
39f60 | 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 0a 0a 20 75 6e 73 65 74 28 24 | eason'.=>.$reason,.);....unset($ |
39f80 | 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 | installMeansUpdateMap[abs($liter |
39fa0 | 61 6c 29 5d 29 3b 0a 24 69 67 6e 6f 72 65 52 65 6d 6f 76 65 5b 24 73 6f 75 72 63 65 2d 3e 67 65 | al)]);.$ignoreRemove[$source->ge |
39fc0 | 74 49 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 6e 73 74 61 6c 6c | tId()].=.true;.}.else.{.$install |
39fe0 | 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 61 72 72 61 79 28 0a | Map[$package->getId()].=.array(. |
3a000 | 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c 0a 27 72 65 61 73 6f 6e 27 20 | 'package'.=>.$package,.'reason'. |
3a020 | 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 | =>.$reason,.);.}.}.}..foreach.($ |
3a040 | 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 69 73 69 | this->decisions.as.$i.=>.$decisi |
3a060 | 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 | on).{.$literal.=.$decision[Decis |
3a080 | 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 70 61 63 6b 61 67 | ions::DECISION_LITERAL];.$packag |
3a0a0 | 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 | e.=.$this->pool->literalToPackag |
3a0c0 | 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3c 3d 20 30 20 | e($literal);..if.($literal.<=.0. |
3a0e0 | 26 26 0a 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 | &&.isset($this->installedMap[$pa |
3a100 | 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 20 26 26 0a 21 69 73 73 65 74 28 24 69 67 6e 6f | ckage->getId()]).&&.!isset($igno |
3a120 | 72 65 52 65 6d 6f 76 65 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a | reRemove[$package->getId()])).{. |
3a140 | 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d | $uninstallMap[$package->getId()] |
3a160 | 20 3d 20 61 72 72 61 79 28 0a 27 70 61 63 6b 61 67 65 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 2c | .=.array(.'package'.=>.$package, |
3a180 | 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 0a 7d 0a 7d 0a 0a 24 | .'reason'.=>.$reason,.);..}.}..$ |
3a1a0 | 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 46 72 6f 6d 4d 61 70 73 28 24 69 6e 73 74 61 | this->transactionFromMaps($insta |
3a1c0 | 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 2c 20 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 | llMap,.$updateMap,.$uninstallMap |
3a1e0 | 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 3b 0a 7d | );..return.$this->transaction;.} |
3a200 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 72 61 6e 73 61 63 74 69 6f 6e | ..protected.function.transaction |
3a220 | 46 72 6f 6d 4d 61 70 73 28 24 69 6e 73 74 61 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 | FromMaps($installMap,.$updateMap |
3a240 | 2c 20 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 29 0a 7b 0a 24 71 75 65 75 65 20 3d 20 61 72 72 61 | ,.$uninstallMap).{.$queue.=.arra |
3a260 | 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 72 65 | y_map(function.($operation).{.re |
3a280 | 74 75 72 6e 20 24 6f 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 27 5d 3b 0a 7d 2c 0a 24 | turn.$operation['package'];.},.$ |
3a2a0 | 74 68 69 73 2d 3e 66 69 6e 64 52 6f 6f 74 50 61 63 6b 61 67 65 73 28 24 69 6e 73 74 61 6c 6c 4d | this->findRootPackages($installM |
3a2c0 | 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 29 0a 29 3b 0a 0a 24 76 69 73 69 74 65 64 20 3d 20 61 | ap,.$updateMap).);..$visited.=.a |
3a2e0 | 72 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 71 75 65 75 65 29 29 20 | rray();..while.(!empty($queue)). |
3a300 | 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 71 75 65 75 65 29 3b 0a | {.$package.=.array_pop($queue);. |
3a320 | 24 70 61 63 6b 61 67 65 49 64 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 3b 0a | $packageId.=.$package->getId();. |
3a340 | 0a 69 66 20 28 21 69 73 73 65 74 28 24 76 69 73 69 74 65 64 5b 24 70 61 63 6b 61 67 65 49 64 5d | .if.(!isset($visited[$packageId] |
3a360 | 29 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 24 70 61 63 6b 61 67 65 | )).{.array_push($queue,.$package |
3a380 | 29 3b 0a 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 | );..if.($package.instanceof.Alia |
3a3a0 | 73 50 61 63 6b 61 67 65 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 65 2c 20 24 | sPackage).{.array_push($queue,.$ |
3a3c0 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b | package->getAliasOf());.}.else.{ |
3a3e0 | 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 | .foreach.($package->getRequires( |
3a400 | 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 | ).as.$link).{.$possibleRequires. |
3a420 | 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e | =.$this->pool->whatProvides($lin |
3a440 | 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 | k->getTarget(),.$link->getConstr |
3a460 | 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 75 | aint());..foreach.($possibleRequ |
3a480 | 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 | ires.as.$require).{.array_push($ |
3a4a0 | 71 75 65 75 65 2c 20 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 76 69 73 69 74 65 | queue,.$require);.}.}.}..$visite |
3a4c0 | 64 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 20 65 | d[$package->getId()].=.true;.}.e |
3a4e0 | 6c 73 65 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 | lse.{.if.(isset($installMap[$pac |
3a500 | 6b 61 67 65 49 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 0a 24 69 6e 73 | kageId])).{.$this->install(.$ins |
3a520 | 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a | tallMap[$packageId]['package'],. |
3a540 | 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 | $installMap[$packageId]['reason' |
3a560 | 5d 0a 29 3b 0a 75 6e 73 65 74 28 24 69 6e 73 74 61 6c 6c 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 | ].);.unset($installMap[$packageI |
3a580 | 64 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 | d]);.}.if.(isset($updateMap[$pac |
3a5a0 | 6b 61 67 65 49 64 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 28 0a 24 75 70 64 61 | kageId])).{.$this->update(.$upda |
3a5c0 | 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 73 6f 75 72 63 65 27 5d 2c 0a 24 75 70 | teMap[$packageId]['source'],.$up |
3a5e0 | 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 70 61 63 6b 61 67 65 27 5d 2c 0a | dateMap[$packageId]['package'],. |
3a600 | 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d 5b 27 72 65 61 73 6f 6e 27 5d | $updateMap[$packageId]['reason'] |
3a620 | 0a 29 3b 0a 75 6e 73 65 74 28 24 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 49 64 5d | .);.unset($updateMap[$packageId] |
3a640 | 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 75 6e 69 6e 73 74 61 6c 6c 4d 61 70 | );.}.}.}..foreach.($uninstallMap |
3a660 | 20 61 73 20 24 75 6e 69 6e 73 74 61 6c 6c 29 20 7b 0a 24 74 68 69 73 2d 3e 75 6e 69 6e 73 74 61 | .as.$uninstall).{.$this->uninsta |
3a680 | 6c 6c 28 24 75 6e 69 6e 73 74 61 6c 6c 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 75 6e 69 6e 73 | ll($uninstall['package'],.$unins |
3a6a0 | 74 61 6c 6c 5b 27 72 65 61 73 6f 6e 27 5d 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 | tall['reason']);.}.}..protected. |
3a6c0 | 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 52 6f 6f 74 50 61 63 6b 61 67 65 73 28 24 69 6e 73 74 61 | function.findRootPackages($insta |
3a6e0 | 6c 6c 4d 61 70 2c 20 24 75 70 64 61 74 65 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 73 20 3d | llMap,.$updateMap).{.$packages.= |
3a700 | 20 24 69 6e 73 74 61 6c 6c 4d 61 70 20 2b 20 24 75 70 64 61 74 65 4d 61 70 3b 0a 24 72 6f 6f 74 | .$installMap.+.$updateMap;.$root |
3a720 | 73 20 3d 20 24 70 61 63 6b 61 67 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 | s.=.$packages;..foreach.($packag |
3a740 | 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 49 64 20 3d 3e 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 | es.as.$packageId.=>.$operation). |
3a760 | 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 5b 27 70 61 63 6b 61 67 65 | {.$package.=.$operation['package |
3a780 | 27 5d 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 6f 6f 74 73 5b 24 70 61 63 6b 61 67 65 49 | '];..if.(!isset($roots[$packageI |
3a7a0 | 64 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 | d])).{.continue;.}..foreach.($pa |
3a7c0 | 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b | ckage->getRequires().as.$link).{ |
3a7e0 | 0a 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c | .$possibleRequires.=.$this->pool |
3a800 | 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 | ->whatProvides($link->getTarget( |
3a820 | 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 | ),.$link->getConstraint());..for |
3a840 | 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 | each.($possibleRequires.as.$requ |
3a860 | 69 72 65 29 20 7b 0a 75 6e 73 65 74 28 24 72 6f 6f 74 73 5b 24 72 65 71 75 69 72 65 2d 3e 67 65 | ire).{.unset($roots[$require->ge |
3a880 | 74 49 64 28 29 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 6f 6f 74 73 3b 0a 7d | tId()]);.}.}.}..return.$roots;.} |
3a8a0 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 55 70 64 61 74 65 73 | ..protected.function.findUpdates |
3a8c0 | 28 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 4d 61 70 20 3d 20 61 72 | ().{.$installMeansUpdateMap.=.ar |
3a8e0 | 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e | ray();..foreach.($this->decision |
3a900 | 73 20 61 73 20 24 69 20 3d 3e 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c | s.as.$i.=>.$decision).{.$literal |
3a920 | 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e | .=.$decision[Decisions::DECISION |
3a940 | 5f 4c 49 54 45 52 41 4c 5d 3b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f | _LITERAL];.$package.=.$this->poo |
3a960 | 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a | l->literalToPackage($literal);.. |
3a980 | 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 | if.($package.instanceof.AliasPac |
3a9a0 | 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 6c 69 74 65 | kage).{.continue;.}....if.($lite |
3a9c0 | 72 61 6c 20 3c 3d 20 30 20 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c | ral.<=.0.&&.isset($this->install |
3a9e0 | 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 24 75 70 | edMap[$package->getId()])).{.$up |
3aa00 | 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 2d 3e 66 69 6e 64 55 70 64 61 74 | dates.=.$this->policy->findUpdat |
3aa20 | 65 50 61 63 6b 61 67 65 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 69 6e | ePackages($this->pool,.$this->in |
3aa40 | 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 6c 69 74 65 72 61 6c | stalledMap,.$package);..$literal |
3aa60 | 73 20 3d 20 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 29 3b 0a 0a 66 | s.=.array($package->getId());..f |
3aa80 | 6f 72 65 61 63 68 20 28 24 75 70 64 61 74 65 73 20 61 73 20 24 75 70 64 61 74 65 29 20 7b 0a 24 | oreach.($updates.as.$update).{.$ |
3aaa0 | 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 75 70 64 61 74 65 2d 3e 67 65 74 49 64 28 29 3b 0a 7d | literals[].=.$update->getId();.} |
3aac0 | 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 75 70 64 61 74 65 4c | ..foreach.($literals.as.$updateL |
3aae0 | 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 75 70 64 61 74 65 4c 69 74 65 72 61 6c 20 21 3d 3d | iteral).{.if.($updateLiteral.!== |
3ab00 | 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 4d 65 61 6e 73 55 70 64 61 74 65 | .$literal).{.$installMeansUpdate |
3ab20 | 4d 61 70 5b 61 62 73 28 24 75 70 64 61 74 65 4c 69 74 65 72 61 6c 29 5d 20 3d 20 24 70 61 63 6b | Map[abs($updateLiteral)].=.$pack |
3ab40 | 61 67 65 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 4d 65 61 | age;.}.}.}.}..return.$installMea |
3ab60 | 6e 73 55 70 64 61 74 65 4d 61 70 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | nsUpdateMap;.}..protected.functi |
3ab80 | 6f 6e 20 69 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a | on.install($package,.$reason).{. |
3aba0 | 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 | if.($package.instanceof.AliasPac |
3abc0 | 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 6b 41 6c 69 61 73 49 | kage).{.return.$this->markAliasI |
3abe0 | 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a | nstalled($package,.$reason);.}.. |
3ac00 | 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 | $this->transaction[].=.new.Opera |
3ac20 | 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 | tion\InstallOperation($package,. |
3ac40 | 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | $reason);.}..protected.function. |
3ac60 | 75 70 64 61 74 65 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 | update($from,.$to,.$reason).{.$t |
3ac80 | 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 69 | his->transaction[].=.new.Operati |
3aca0 | 6f 6e 5c 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 | on\UpdateOperation($from,.$to,.$ |
3acc0 | 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 | reason);.}..protected.function.u |
3ace0 | 6e 69 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 69 66 | ninstall($package,.$reason).{.if |
3ad00 | 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 | .($package.instanceof.AliasPacka |
3ad20 | 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6d 61 72 6b 41 6c 69 61 73 55 6e 69 | ge).{.return.$this->markAliasUni |
3ad40 | 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a | nstalled($package,.$reason);.}.. |
3ad60 | 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 | $this->transaction[].=.new.Opera |
3ad80 | 74 69 6f 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 | tion\UninstallOperation($package |
3ada0 | 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f | ,.$reason);.}..protected.functio |
3adc0 | 6e 20 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 | n.markAliasInstalled($package,.$ |
3ade0 | 72 65 61 73 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d | reason).{.$this->transaction[].= |
3ae00 | 20 6e 65 77 20 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 | .new.Operation\MarkAliasInstalle |
3ae20 | 64 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d | dOperation($package,.$reason);.} |
3ae40 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 55 6e | ..protected.function.markAliasUn |
3ae60 | 69 6e 73 74 61 6c 6c 65 64 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 24 | installed($package,.$reason).{.$ |
3ae80 | 74 68 69 73 2d 3e 74 72 61 6e 73 61 63 74 69 6f 6e 5b 5d 20 3d 20 6e 65 77 20 4f 70 65 72 61 74 | this->transaction[].=.new.Operat |
3aea0 | 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f | ion\MarkAliasUninstalledOperatio |
3aec0 | 6e 28 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a | n($package,.$reason);.}.}.<?php. |
3aee0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 | ...........namespace.Composer\De |
3af00 | 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 | pendencyResolver\Operation;..use |
3af20 | 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | .Composer\Package\PackageInterfa |
3af40 | 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 | ce;.......class.UninstallOperati |
3af60 | 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f | on.extends.SolverOperation.{.pro |
3af80 | 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | tected.$package;........public.f |
3afa0 | 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 65 49 6e 74 65 72 | unction.__construct(PackageInter |
3afc0 | 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b | face.$package,.$reason.=.null).{ |
3afe0 | 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a | .parent::__construct($reason);.. |
3b000 | 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a | $this->package.=.$package;.}.... |
3b020 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a | ...public.function.getPackage(). |
3b040 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a | {.return.$this->package;.}...... |
3b060 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a | .public.function.getJobType().{. |
3b080 | 72 65 74 75 72 6e 20 27 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | return.'uninstall';.}.....public |
3b0a0 | 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | .function.__toString().{.return. |
3b0c0 | 27 55 6e 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e | 'Uninstalling.'.$this->package-> |
3b0e0 | 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d | getPrettyName().'.('.$this->form |
3b100 | 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 27 3b 0a 7d | atVersion($this->package).')';.} |
3b120 | 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f | .}.<?php............namespace.Co |
3b140 | 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 | mposer\DependencyResolver\Operat |
3b160 | 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 | ion;..use.Composer\Package\Packa |
3b180 | 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 70 64 61 74 65 4f | geInterface;.......class.UpdateO |
3b1a0 | 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e | peration.extends.SolverOperation |
3b1c0 | 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 3b 0a 70 72 | .{.protected.$initialPackage;.pr |
3b1e0 | 6f 74 65 63 74 65 64 20 24 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a | otected.$targetPackage;......... |
3b200 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b | public.function.__construct(Pack |
3b220 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e | ageInterface.$initial,.PackageIn |
3b240 | 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 | terface.$target,.$reason.=.null) |
3b260 | 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b | .{.parent::__construct($reason); |
3b280 | 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 20 3d 20 24 69 6e 69 74 69 | ..$this->initialPackage.=.$initi |
3b2a0 | 61 6c 3b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 20 3d 20 24 74 61 72 67 | al;.$this->targetPackage.=.$targ |
3b2c0 | 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 | et;.}.......public.function.getI |
3b2e0 | 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | nitialPackage().{.return.$this-> |
3b300 | 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | initialPackage;.}.......public.f |
3b320 | 75 6e 63 74 69 6f 6e 20 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 | unction.getTargetPackage().{.ret |
3b340 | 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a | urn.$this->targetPackage;.}..... |
3b360 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b | ..public.function.getJobType().{ |
3b380 | 0a 72 65 74 75 72 6e 20 27 75 70 64 61 74 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | .return.'update';.}.....public.f |
3b3a0 | 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 55 | unction.__toString().{.return.'U |
3b3c0 | 70 64 61 74 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 2d | pdating.'.$this->initialPackage- |
3b3e0 | 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 | >getPrettyName().'.('.$this->for |
3b400 | 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 | matVersion($this->initialPackage |
3b420 | 29 2e 27 29 20 74 6f 20 27 2e 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 2d | ).').to.'..$this->targetPackage- |
3b440 | 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 20 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f | >getPrettyName()..'.('.$this->fo |
3b460 | 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 74 61 72 67 65 74 50 61 63 6b 61 67 65 | rmatVersion($this->targetPackage |
3b480 | 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | ).')';.}.}.<?php............name |
3b4a0 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 | space.Composer\DependencyResolve |
3b4c0 | 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 | r\Operation;..use.Composer\Packa |
3b4e0 | 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 | ge\AliasPackage;.......class.Mar |
3b500 | 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 | kAliasInstalledOperation.extends |
3b520 | 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 | .SolverOperation.{.protected.$pa |
3b540 | 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | ckage;........public.function.__ |
3b560 | 63 6f 6e 73 74 72 75 63 74 28 41 6c 69 61 73 50 61 63 6b 61 67 65 20 24 70 61 63 6b 61 67 65 2c | construct(AliasPackage.$package, |
3b580 | 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e | .$reason.=.null).{.parent::__con |
3b5a0 | 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 | struct($reason);..$this->package |
3b5c0 | 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | .=.$package;.}.......public.func |
3b5e0 | 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | tion.getPackage().{.return.$this |
3b600 | 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | ->package;.}.......public.functi |
3b620 | 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 6d 61 72 6b 41 6c | on.getJobType().{.return.'markAl |
3b640 | 69 61 73 49 6e 73 74 61 6c 6c 65 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | iasInstalled';.}.....public.func |
3b660 | 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 4d 61 72 6b | tion.__toString().{.return.'Mark |
3b680 | 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e | ing.'.$this->package->getPrettyN |
3b6a0 | 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 | ame().'.('.$this->formatVersion( |
3b6c0 | 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 20 61 73 20 69 6e 73 74 61 6c 6c 65 64 2c | $this->package).').as.installed, |
3b6e0 | 20 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 | .alias.of.'.$this->package->getA |
3b700 | 6c 69 61 73 4f 66 28 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 | liasOf()->getPrettyName().'.('.$ |
3b720 | 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 | this->formatVersion($this->packa |
3b740 | 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 | ge->getAliasOf()).')';.}.}.<?php |
3b760 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 | ............namespace.Composer\D |
3b780 | 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 | ependencyResolver\Operation;..us |
3b7a0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | e.Composer\Package\PackageInterf |
3b7c0 | 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f | ace;.......class.InstallOperatio |
3b7e0 | 6e 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 | n.extends.SolverOperation.{.prot |
3b800 | 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ected.$package;........public.fu |
3b820 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | nction.__construct(PackageInterf |
3b840 | 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | ace.$package,.$reason.=.null).{. |
3b860 | 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a 24 | parent::__construct($reason);..$ |
3b880 | 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a | this->package.=.$package;.}..... |
3b8a0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b | ..public.function.getPackage().{ |
3b8c0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | .return.$this->package;.}....... |
3b8e0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 | public.function.getJobType().{.r |
3b900 | 65 74 75 72 6e 20 27 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | eturn.'install';.}.....public.fu |
3b920 | 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 49 6e | nction.__toString().{.return.'In |
3b940 | 73 74 61 6c 6c 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 | stalling.'.$this->package->getPr |
3b960 | 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 | ettyName().'.('.$this->formatVer |
3b980 | 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c 3f | sion($this->package).')';.}.}.<? |
3b9a0 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 | php............namespace.Compose |
3b9c0 | 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b 0a | r\DependencyResolver\Operation;. |
3b9e0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 56 65 72 73 69 6f 6e 5c 56 65 | .use.Composer\Package\Version\Ve |
3ba00 | 72 73 69 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | rsionParser;.use.Composer\Packag |
3ba20 | 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 | e\PackageInterface;.......abstra |
3ba40 | 63 74 20 63 6c 61 73 73 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 | ct.class.SolverOperation.impleme |
3ba60 | 6e 74 73 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 | nts.OperationInterface.{.protect |
3ba80 | 65 64 20 24 72 65 61 73 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | ed.$reason;.......public.functio |
3baa0 | 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | n.__construct($reason.=.null).{. |
3bac0 | 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a | $this->reason.=.$reason;.}...... |
3bae0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 28 29 0a 7b 0a 72 | .public.function.getReason().{.r |
3bb00 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 | eturn.$this->reason;.}..protecte |
3bb20 | 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 50 61 63 6b 61 67 65 | d.function.formatVersion(Package |
3bb40 | 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 56 65 72 | Interface.$package).{.return.Ver |
3bb60 | 73 69 6f 6e 50 61 72 73 65 72 3a 3a 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 70 61 63 6b 61 | sionParser::formatVersion($packa |
3bb80 | 67 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ge);.}.}.<?php............namesp |
3bba0 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c | ace.Composer\DependencyResolver\ |
3bbc0 | 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | Operation;..use.Composer\Package |
3bbe0 | 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4d 61 72 6b 41 | \AliasPackage;.......class.MarkA |
3bc00 | 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 | liasUninstalledOperation.extends |
3bc20 | 20 53 6f 6c 76 65 72 4f 70 65 72 61 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 61 | .SolverOperation.{.protected.$pa |
3bc40 | 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | ckage;........public.function.__ |
3bc60 | 63 6f 6e 73 74 72 75 63 74 28 41 6c 69 61 73 50 61 63 6b 61 67 65 20 24 70 61 63 6b 61 67 65 2c | construct(AliasPackage.$package, |
3bc80 | 20 24 72 65 61 73 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e | .$reason.=.null).{.parent::__con |
3bca0 | 73 74 72 75 63 74 28 24 72 65 61 73 6f 6e 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 | struct($reason);..$this->package |
3bcc0 | 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | .=.$package;.}.......public.func |
3bce0 | 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | tion.getPackage().{.return.$this |
3bd00 | 2d 3e 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | ->package;.}.......public.functi |
3bd20 | 6f 6e 20 67 65 74 4a 6f 62 54 79 70 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 6d 61 72 6b 41 6c | on.getJobType().{.return.'markAl |
3bd40 | 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | iasUninstalled';.}.....public.fu |
3bd60 | 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 4d 61 | nction.__toString().{.return.'Ma |
3bd80 | 72 6b 69 6e 67 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 | rking.'.$this->package->getPrett |
3bda0 | 79 4e 61 6d 65 28 29 2e 27 20 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f | yName().'.('.$this->formatVersio |
3bdc0 | 6e 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 29 2e 27 29 20 61 73 20 75 6e 69 6e 73 74 61 6c | n($this->package).').as.uninstal |
3bde0 | 6c 65 64 2c 20 61 6c 69 61 73 20 6f 66 20 27 2e 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e | led,.alias.of.'.$this->package-> |
3be00 | 67 65 74 41 6c 69 61 73 4f 66 28 29 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 20 | getAliasOf()->getPrettyName().'. |
3be20 | 28 27 2e 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 56 65 72 73 69 6f 6e 28 24 74 68 69 73 2d 3e 70 | ('.$this->formatVersion($this->p |
3be40 | 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 2e 27 29 27 3b 0a 7d 0a 7d 0a 3c | ackage->getAliasOf()).')';.}.}.< |
3be60 | 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 | ?php............namespace.Compos |
3be80 | 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 3b | er\DependencyResolver\Operation; |
3bea0 | 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 | .......interface.OperationInterf |
3bec0 | 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4a 6f | ace.{......public.function.getJo |
3bee0 | 62 54 79 70 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | bType();.......public.function.g |
3bf00 | 65 74 52 65 61 73 6f 6e 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | etReason();.......public.functio |
3bf20 | 6e 20 5f 5f 74 6f 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | n.__toString();.}.<?php......... |
3bf40 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 | ...namespace.Composer\Dependency |
3bf60 | 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c | Resolver;..use.Composer\Package\ |
3bf80 | 42 61 73 65 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | BasePackage;.use.Composer\Packag |
3bfa0 | 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 | e\LinkConstraint\LinkConstraintI |
3bfc0 | 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 | nterface;.use.Composer\Repositor |
3bfe0 | 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f | y\RepositoryInterface;.use.Compo |
3c000 | 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f | ser\Repository\CompositeReposito |
3c020 | 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 | ry;.use.Composer\Repository\Inst |
3c040 | 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f | alledRepositoryInterface;.use.Co |
3c060 | 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 | mposer\Repository\PlatformReposi |
3c080 | 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 6f 6f 6c 0a 7b 0a 70 72 6f 74 65 63 | tory;........class.Pool.{.protec |
3c0a0 | 74 65 64 20 24 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f | ted.$repositories.=.array();.pro |
3c0c0 | 74 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 | tected.$packages.=.array();.prot |
3c0e0 | 65 63 74 65 64 20 24 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 20 3d 20 61 72 72 61 79 28 29 3b 0a | ected.$packageByName.=.array();. |
3c100 | 70 72 6f 74 65 63 74 65 64 20 24 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 73 | protected.$acceptableStabilities |
3c120 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 3b 0a 0a 70 75 | ;.protected.$stabilityFlags;..pu |
3c140 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 69 6e 69 6d | blic.function.__construct($minim |
3c160 | 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 27 73 74 61 62 6c 65 27 2c 20 61 72 72 61 79 20 24 73 | umStability.=.'stable',.array.$s |
3c180 | 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 73 74 61 62 | tabilityFlags.=.array()).{.$stab |
3c1a0 | 69 6c 69 74 69 65 73 20 3d 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 | ilities.=.BasePackage::$stabilit |
3c1c0 | 69 65 73 3b 0a 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c 69 74 69 65 | ies;.$this->acceptableStabilitie |
3c1e0 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 42 61 73 65 50 61 63 6b 61 67 | s.=.array();.foreach.(BasePackag |
3c200 | 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 20 61 73 20 24 73 74 61 62 69 6c 69 74 79 20 3d 3e | e::$stabilities.as.$stability.=> |
3c220 | 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 24 76 61 6c 75 65 20 3c 3d 20 42 61 73 65 50 61 63 | .$value).{.if.($value.<=.BasePac |
3c240 | 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 73 5b 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 | kage::$stabilities[$minimumStabi |
3c260 | 6c 69 74 79 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c 65 53 74 61 62 69 6c | lity]).{.$this->acceptableStabil |
3c280 | 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a | ities[$stability].=.$value;.}.}. |
3c2a0 | 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 73 74 61 62 69 6c 69 | $this->stabilityFlags.=.$stabili |
3c2c0 | 74 79 46 6c 61 67 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | tyFlags;.}.......public.function |
3c2e0 | 20 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 | .addRepository(RepositoryInterfa |
3c300 | 63 65 20 24 72 65 70 6f 29 0a 7b 0a 69 66 20 28 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 | ce.$repo).{.if.($repo.instanceof |
3c320 | 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 72 65 70 6f 73 20 3d | .CompositeRepository).{.$repos.= |
3c340 | 20 24 72 65 70 6f 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 3b 0a 7d 20 65 6c 73 | .$repo->getRepositories();.}.els |
3c360 | 65 20 7b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 24 72 65 70 6f 29 3b 0a 7d 0a 0a 24 69 | e.{.$repos.=.array($repo);.}..$i |
3c380 | 64 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 20 2b 20 31 3b 0a | d.=.count($this->packages).+.1;. |
3c3a0 | 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 73 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 24 74 68 69 | foreach.($repos.as.$repo).{.$thi |
3c3c0 | 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 3b 0a 0a 24 65 78 65 | s->repositories[].=.$repo;..$exe |
3c3e0 | 6d 70 74 20 3d 20 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 50 6c 61 74 66 6f 72 6d 52 | mpt.=.$repo.instanceof.PlatformR |
3c400 | 65 70 6f 73 69 74 6f 72 79 20 7c 7c 20 24 72 65 70 6f 20 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e | epository.||.$repo.instanceof.In |
3c420 | 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 66 6f 72 65 | stalledRepositoryInterface;.fore |
3c440 | 61 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 | ach.($repo->getPackages().as.$pa |
3c460 | 63 6b 61 67 65 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 | ckage).{.$name.=.$package->getNa |
3c480 | 6d 65 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 | me();.$stability.=.$package->get |
3c4a0 | 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 69 66 20 28 0a 0a 20 24 65 78 65 6d 70 74 0a 0a 20 7c 7c | Stability();.if.(...$exempt...|| |
3c4c0 | 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 | .(!isset($this->stabilityFlags[$ |
3c4e0 | 6e 61 6d 65 5d 29 0a 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 63 63 65 70 74 61 62 6c | name]).&&.isset($this->acceptabl |
3c500 | 65 53 74 61 62 69 6c 69 74 69 65 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 29 29 0a 0a 20 7c 7c 20 | eStabilities[$stability]))...||. |
3c520 | 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 5b 24 6e 61 | (isset($this->stabilityFlags[$na |
3c540 | 6d 65 5d 29 0a 26 26 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 24 73 74 61 62 69 6c 69 74 69 65 | me]).&&.BasePackage::$stabilitie |
3c560 | 73 5b 24 73 74 61 62 69 6c 69 74 79 5d 20 3c 3d 20 24 74 68 69 73 2d 3e 73 74 61 62 69 6c 69 74 | s[$stability].<=.$this->stabilit |
3c580 | 79 46 6c 61 67 73 5b 24 6e 61 6d 65 5d 0a 29 0a 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 | yFlags[$name].).).{.$package->se |
3c5a0 | 74 49 64 28 24 69 64 2b 2b 29 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 | tId($id++);.$this->packages[].=. |
3c5c0 | 24 70 61 63 6b 61 67 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | $package;..foreach.($package->ge |
3c5e0 | 74 4e 61 6d 65 73 28 29 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b | tNames().as.$name).{.$this->pack |
3c600 | 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d 65 5d 5b 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a 7d | ageByName[$name][].=.$package;.} |
3c620 | 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 69 | .}.}.}.}..public.function.getPri |
3c640 | 6f 72 69 74 79 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 29 | ority(RepositoryInterface.$repo) |
3c660 | 0a 7b 0a 24 70 72 69 6f 72 69 74 79 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 72 65 70 | .{.$priority.=.array_search($rep |
3c680 | 6f 2c 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 0a | o,.$this->repositories,.true);.. |
3c6a0 | 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 70 72 69 6f 72 69 74 79 29 20 7b 0a 74 68 72 6f 77 | if.(false.===.$priority).{.throw |
3c6c0 | 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 22 43 6f 75 6c 64 20 6e 6f | .new.\RuntimeException("Could.no |
3c6e0 | 74 20 64 65 74 65 72 6d 69 6e 65 20 72 65 70 6f 73 69 74 6f 72 79 20 70 72 69 6f 72 69 74 79 2e | t.determine.repository.priority. |
3c700 | 20 54 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 77 61 73 20 6e 6f 74 20 72 65 67 69 73 74 65 72 | .The.repository.was.not.register |
3c720 | 65 64 20 69 6e 20 74 68 65 20 70 6f 6f 6c 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 2d 24 70 | ed.in.the.pool.");.}..return.-$p |
3c740 | 72 69 6f 72 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | riority;.}........public.functio |
3c760 | 6e 20 70 61 63 6b 61 67 65 42 79 49 64 28 24 69 64 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | n.packageById($id).{.return.$thi |
3c780 | 73 2d 3e 70 61 63 6b 61 67 65 73 5b 24 69 64 20 2d 20 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | s->packages[$id.-.1];.}.......pu |
3c7a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4d 61 78 49 64 28 29 0a 7b 0a 72 65 74 75 72 | blic.function.getMaxId().{.retur |
3c7c0 | 6e 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a | n.count($this->packages);.}..... |
3c7e0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 68 61 74 50 72 6f 76 69 64 65 | .....public.function.whatProvide |
3c800 | 73 28 24 6e 61 6d 65 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 | s($name,.LinkConstraintInterface |
3c820 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 | .$constraint.=.null).{.if.(!isse |
3c840 | 74 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d 65 5d 29 29 20 | t($this->packageByName[$name])). |
3c860 | 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 24 63 61 6e 64 69 64 61 74 65 73 | {.return.array();.}..$candidates |
3c880 | 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 42 79 4e 61 6d 65 5b 24 6e 61 6d 65 5d 3b 0a | .=.$this->packageByName[$name];. |
3c8a0 | 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 7b 0a 72 65 74 | .if.(null.===.$constraint).{.ret |
3c8c0 | 75 72 6e 20 24 63 61 6e 64 69 64 61 74 65 73 3b 0a 7d 0a 0a 24 6d 61 74 63 68 65 73 20 3d 20 24 | urn.$candidates;.}..$matches.=.$ |
3c8e0 | 70 72 6f 76 69 64 65 4d 61 74 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 61 6d 65 4d | provideMatches.=.array();.$nameM |
3c900 | 61 74 63 68 20 3d 20 66 61 6c 73 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 | atch.=.false;..foreach.($candida |
3c920 | 74 65 73 20 61 73 20 24 63 61 6e 64 69 64 61 74 65 29 20 7b 0a 73 77 69 74 63 68 20 28 24 63 61 | tes.as.$candidate).{.switch.($ca |
3c940 | 6e 64 69 64 61 74 65 2d 3e 6d 61 74 63 68 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6e 73 74 72 61 | ndidate->matches($name,.$constra |
3c960 | 69 6e 74 29 29 20 7b 0a 63 61 73 65 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 4d 41 54 43 48 5f | int)).{.case.BasePackage::MATCH_ |
3c980 | 4e 4f 4e 45 3a 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a | NONE:.break;..case.BasePackage:: |
3c9a0 | 4d 41 54 43 48 5f 4e 41 4d 45 3a 0a 24 6e 61 6d 65 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 62 | MATCH_NAME:.$nameMatch.=.true;.b |
3c9c0 | 72 65 61 6b 3b 0a 0a 63 61 73 65 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 4d 41 54 43 48 3a 0a | reak;..case.BasePackage::MATCH:. |
3c9e0 | 24 6e 61 6d 65 4d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 24 6d 61 74 63 68 65 73 5b 5d 20 3d 20 | $nameMatch.=.true;.$matches[].=. |
3ca00 | 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 42 61 73 65 50 61 63 | $candidate;.break;..case.BasePac |
3ca20 | 6b 61 67 65 3a 3a 4d 41 54 43 48 5f 50 52 4f 56 49 44 45 3a 0a 24 70 72 6f 76 69 64 65 4d 61 74 | kage::MATCH_PROVIDE:.$provideMat |
3ca40 | 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 | ches[].=.$candidate;.break;..cas |
3ca60 | 65 20 42 61 73 65 50 61 63 6b 61 67 65 3a 3a 4d 41 54 43 48 5f 52 45 50 4c 41 43 45 3a 0a 24 6d | e.BasePackage::MATCH_REPLACE:.$m |
3ca80 | 61 74 63 68 65 73 5b 5d 20 3d 20 24 63 61 6e 64 69 64 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 64 | atches[].=.$candidate;.break;..d |
3caa0 | 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c | efault:.throw.new.\UnexpectedVal |
3cac0 | 75 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 65 78 70 65 63 74 65 64 20 6d 61 74 63 68 20 74 79 | ueException('Unexpected.match.ty |
3cae0 | 70 65 27 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 6e 61 6d 65 4d 61 74 63 68 29 20 7b 0a 72 | pe');.}.}....if.($nameMatch).{.r |
3cb00 | 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f | eturn.$matches;.}..return.array_ |
3cb20 | 6d 65 72 67 65 28 24 6d 61 74 63 68 65 73 2c 20 24 70 72 6f 76 69 64 65 4d 61 74 63 68 65 73 29 | merge($matches,.$provideMatches) |
3cb40 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 69 74 65 72 61 6c 54 6f 50 61 | ;.}..public.function.literalToPa |
3cb60 | 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 0a 7b 0a 24 70 61 63 6b 61 67 65 49 64 20 3d 20 61 | ckage($literal).{.$packageId.=.a |
3cb80 | 62 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 63 | bs($literal);..return.$this->pac |
3cba0 | 6b 61 67 65 42 79 49 64 28 24 70 61 63 6b 61 67 65 49 64 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 | kageById($packageId);.}..public. |
3cbc0 | 66 75 6e 63 74 69 6f 6e 20 6c 69 74 65 72 61 6c 54 6f 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 | function.literalToString($litera |
3cbe0 | 6c 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 3f 20 27 2b 27 20 | l).{.return.($literal.>.0.?.'+'. |
3cc00 | 3a 20 27 2d 27 29 20 2e 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 | :.'-')...$this->literalToPackage |
3cc20 | 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c | ($literal);.}..public.function.l |
3cc40 | 69 74 65 72 61 6c 54 6f 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 2c 20 24 | iteralToPrettyString($literal,.$ |
3cc60 | 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 | installedMap).{.$package.=.$this |
3cc80 | 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 | ->literalToPackage($literal);..i |
3cca0 | 66 20 28 69 73 73 65 74 28 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d | f.(isset($installedMap[$package- |
3ccc0 | 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 24 70 72 65 66 69 78 20 3d 20 28 24 6c 69 74 65 72 61 | >getId()])).{.$prefix.=.($litera |
3cce0 | 6c 20 3e 20 30 20 3f 20 27 6b 65 65 70 27 20 3a 20 27 72 65 6d 6f 76 65 27 29 3b 0a 7d 20 65 6c | l.>.0.?.'keep'.:.'remove');.}.el |
3cd00 | 73 65 20 7b 0a 24 70 72 65 66 69 78 20 3d 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 3f 20 27 | se.{.$prefix.=.($literal.>.0.?.' |
3cd20 | 69 6e 73 74 61 6c 6c 27 20 3a 20 27 64 6f 6e 5c 27 74 20 69 6e 73 74 61 6c 6c 27 29 3b 0a 7d 0a | install'.:.'don\'t.install');.}. |
3cd40 | 0a 72 65 74 75 72 6e 20 24 70 72 65 66 69 78 2e 27 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 | .return.$prefix.'.'.$package->ge |
3cd60 | 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a | tPrettyString();.}.}.<?php...... |
3cd80 | 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 | ......namespace.Composer\Depende |
3cda0 | 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 0a 7b 0a 63 6f | ncyResolver;.....class.Rule.{.co |
3cdc0 | 6e 73 74 20 52 55 4c 45 5f 49 4e 54 45 52 4e 41 4c 5f 41 4c 4c 4f 57 5f 55 50 44 41 54 45 20 3d | nst.RULE_INTERNAL_ALLOW_UPDATE.= |
3cde0 | 20 31 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 20 3d 20 32 3b 0a | .1;.const.RULE_JOB_INSTALL.=.2;. |
3ce00 | 63 6f 6e 73 74 20 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 20 3d 20 33 3b 0a 63 6f 6e 73 74 | const.RULE_JOB_REMOVE.=.3;.const |
3ce20 | 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 20 3d 20 36 3b 0a 63 6f 6e 73 | .RULE_PACKAGE_CONFLICT.=.6;.cons |
3ce40 | 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 20 3d 20 37 3b 0a 63 6f 6e | t.RULE_PACKAGE_REQUIRES.=.7;.con |
3ce60 | 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 20 3d 20 38 3b 0a 63 | st.RULE_PACKAGE_OBSOLETES.=.8;.c |
3ce80 | 6f 6e 73 74 20 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f | onst.RULE_INSTALLED_PACKAGE_OBSO |
3cea0 | 4c 45 54 45 53 20 3d 20 39 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 | LETES.=.9;.const.RULE_PACKAGE_SA |
3cec0 | 4d 45 5f 4e 41 4d 45 20 3d 20 31 30 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 43 4b 41 47 45 | ME_NAME.=.10;.const.RULE_PACKAGE |
3cee0 | 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 54 45 53 20 3d 20 31 31 3b 0a 63 6f 6e 73 74 20 | _IMPLICIT_OBSOLETES.=.11;.const. |
3cf00 | 52 55 4c 45 5f 4c 45 41 52 4e 45 44 20 3d 20 31 32 3b 0a 63 6f 6e 73 74 20 52 55 4c 45 5f 50 41 | RULE_LEARNED.=.12;.const.RULE_PA |
3cf20 | 43 4b 41 47 45 5f 41 4c 49 41 53 20 3d 20 31 33 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f | CKAGE_ALIAS.=.13;..protected.$po |
3cf40 | 6f 6c 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 69 73 61 62 6c 65 64 3b 0a 70 72 6f 74 65 63 | ol;..protected.$disabled;.protec |
3cf60 | 74 65 64 20 24 6c 69 74 65 72 61 6c 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 74 79 70 65 3b 0a | ted.$literals;.protected.$type;. |
3cf80 | 70 72 6f 74 65 63 74 65 64 20 24 69 64 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 3b 0a | protected.$id;..protected.$job;. |
3cfa0 | 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 48 61 73 68 3b 0a 0a 70 75 62 6c 69 63 20 66 75 | .protected.$ruleHash;..public.fu |
3cfc0 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 61 | nction.__construct(Pool.$pool,.a |
3cfe0 | 72 72 61 79 20 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e | rray.$literals,.$reason,.$reason |
3d000 | 44 61 74 61 2c 20 24 6a 6f 62 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c | Data,.$job.=.null).{.$this->pool |
3d020 | 20 3d 20 24 70 6f 6f 6c 3b 0a 0a 0a 20 73 6f 72 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 24 | .=.$pool;....sort($literals);..$ |
3d040 | 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 3d 20 24 6c 69 74 65 72 61 6c 73 3b 0a 24 74 68 69 | this->literals.=.$literals;.$thi |
3d060 | 73 2d 3e 72 65 61 73 6f 6e 20 3d 20 24 72 65 61 73 6f 6e 3b 0a 24 74 68 69 73 2d 3e 72 65 61 73 | s->reason.=.$reason;.$this->reas |
3d080 | 6f 6e 44 61 74 61 20 3d 20 24 72 65 61 73 6f 6e 44 61 74 61 3b 0a 0a 24 74 68 69 73 2d 3e 64 69 | onData.=.$reasonData;..$this->di |
3d0a0 | 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 0a 24 74 68 69 73 2d 3e 6a 6f 62 20 3d 20 24 6a | sabled.=.false;..$this->job.=.$j |
3d0c0 | 6f 62 3b 0a 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 2d 31 3b 0a 0a 24 74 68 69 73 2d 3e 72 | ob;..$this->type.=.-1;..$this->r |
3d0e0 | 75 6c 65 48 61 73 68 20 3d 20 73 75 62 73 74 72 28 6d 64 35 28 69 6d 70 6c 6f 64 65 28 27 2c 27 | uleHash.=.substr(md5(implode(',' |
3d100 | 2c 20 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 29 2c 20 30 2c 20 35 29 3b 0a 7d 0a 0a 70 | ,.$this->literals)),.0,.5);.}..p |
3d120 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 61 73 68 28 29 0a 7b 0a 72 65 74 75 72 | ublic.function.getHash().{.retur |
3d140 | 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 48 61 73 68 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | n.$this->ruleHash;.}..public.fun |
3d160 | 63 74 69 6f 6e 20 73 65 74 49 64 28 24 69 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 64 20 3d 20 24 | ction.setId($id).{.$this->id.=.$ |
3d180 | 69 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 64 28 29 0a 7b | id;.}..public.function.getId().{ |
3d1a0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | .return.$this->id;.}..public.fun |
3d1c0 | 63 74 69 6f 6e 20 67 65 74 4a 6f 62 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6a | ction.getJob().{.return.$this->j |
3d1e0 | 6f 62 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 | ob;.}..........public.function.e |
3d200 | 71 75 61 6c 73 28 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 | quals(Rule.$rule).{.if.($this->r |
3d220 | 75 6c 65 48 61 73 68 20 21 3d 3d 20 24 72 75 6c 65 2d 3e 72 75 6c 65 48 61 73 68 29 20 7b 0a 72 | uleHash.!==.$rule->ruleHash).{.r |
3d240 | 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d | eturn.false;.}..if.(count($this- |
3d260 | 3e 6c 69 74 65 72 61 6c 73 29 20 21 3d 20 63 6f 75 6e 74 28 24 72 75 6c 65 2d 3e 6c 69 74 65 72 | >literals).!=.count($rule->liter |
3d280 | 61 6c 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 66 6f 72 20 28 24 69 | als)).{.return.false;.}..for.($i |
3d2a0 | 20 3d 20 30 2c 20 24 6e 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 | .=.0,.$n.=.count($this->literals |
3d2c0 | 29 3b 20 24 69 20 3c 20 24 6e 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c | );.$i.<.$n;.$i++).{.if.($this->l |
3d2e0 | 69 74 65 72 61 6c 73 5b 24 69 5d 20 21 3d 3d 20 24 72 75 6c 65 2d 3e 6c 69 74 65 72 61 6c 73 5b | iterals[$i].!==.$rule->literals[ |
3d300 | 24 69 5d 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e | $i]).{.return.false;.}.}..return |
3d320 | 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 79 70 | .true;.}..public.function.setTyp |
3d340 | 65 28 24 74 79 70 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 74 79 70 65 3b 0a | e($type).{.$this->type.=.$type;. |
3d360 | 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 79 70 65 28 29 0a 7b 0a 72 | }..public.function.getType().{.r |
3d380 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 79 70 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | eturn.$this->type;.}..public.fun |
3d3a0 | 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 | ction.disable().{.$this->disable |
3d3c0 | 64 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 61 | d.=.true;.}..public.function.ena |
3d3e0 | 62 6c 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b | ble().{.$this->disabled.=.false; |
3d400 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 69 73 61 62 6c 65 64 28 29 | .}..public.function.isDisabled() |
3d420 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 64 3b 0a 7d 0a 0a 70 75 | .{.return.$this->disabled;.}..pu |
3d440 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 45 6e 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 | blic.function.isEnabled().{.retu |
3d460 | 72 6e 20 21 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 64 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 | rn.!$this->disabled;.}..public.f |
3d480 | 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 74 65 72 61 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | unction.getLiterals().{.return.$ |
3d4a0 | 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | this->literals;.}..public.functi |
3d4c0 | 6f 6e 20 69 73 41 73 73 65 72 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 31 20 3d 3d 3d 20 | on.isAssertion().{.return.1.===. |
3d4e0 | 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 | count($this->literals);.}..publi |
3d500 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 61 72 72 61 79 | c.function.getPrettyString(array |
3d520 | 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 75 6c | .$installedMap.=.array()).{.$rul |
3d540 | 65 54 65 78 74 20 3d 20 27 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 | eText.=.'';.foreach.($this->lite |
3d560 | 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 69 | rals.as.$i.=>.$literal).{.if.($i |
3d580 | 20 21 3d 20 30 29 20 7b 0a 24 72 75 6c 65 54 65 78 74 20 2e 3d 20 27 7c 27 3b 0a 7d 0a 24 72 75 | .!=.0).{.$ruleText..=.'|';.}.$ru |
3d5a0 | 6c 65 54 65 78 74 20 2e 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f | leText..=.$this->pool->literalTo |
3d5c0 | 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 | PrettyString($literal,.$installe |
3d5e0 | 64 4d 61 70 29 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 29 | dMap);.}..switch.($this->reason) |
3d600 | 20 7b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 49 4e 54 45 52 4e 41 4c 5f 41 4c 4c 4f | .{.case.self::RULE_INTERNAL_ALLO |
3d620 | 57 5f 55 50 44 41 54 45 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 0a 63 61 73 | W_UPDATE:.return.$ruleText;..cas |
3d640 | 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c 3a 0a 72 65 74 75 72 6e | e.self::RULE_JOB_INSTALL:.return |
3d660 | 20 22 49 6e 73 74 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 72 75 6c 65 20 28 24 72 75 6c 65 54 65 78 | ."Install.command.rule.($ruleTex |
3d680 | 74 29 22 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 | t)";..case.self::RULE_JOB_REMOVE |
3d6a0 | 3a 0a 72 65 74 75 72 6e 20 22 52 65 6d 6f 76 65 20 63 6f 6d 6d 61 6e 64 20 72 75 6c 65 20 28 24 | :.return."Remove.command.rule.($ |
3d6c0 | 72 75 6c 65 54 65 78 74 29 22 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 | ruleText)";..case.self::RULE_PAC |
3d6e0 | 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 3a 0a 24 70 61 63 6b 61 67 65 31 20 3d 20 24 74 68 69 73 | KAGE_CONFLICT:.$package1.=.$this |
3d700 | 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e | ->pool->literalToPackage($this-> |
3d720 | 6c 69 74 65 72 61 6c 73 5b 30 5d 29 3b 0a 24 70 61 63 6b 61 67 65 32 20 3d 20 24 74 68 69 73 2d | literals[0]);.$package2.=.$this- |
3d740 | 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 74 68 69 73 2d 3e 6c | >pool->literalToPackage($this->l |
3d760 | 69 74 65 72 61 6c 73 5b 31 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 31 2d 3e | iterals[1]);..return.$package1-> |
3d780 | 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 2e 27 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 | getPrettyString().'.conflicts.wi |
3d7a0 | 74 68 20 27 2e 24 70 61 63 6b 61 67 65 32 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 | th.'.$package2->getPrettyString( |
3d7c0 | 29 2e 27 2e 27 3b 0a 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f | ).'.';..case.self::RULE_PACKAGE_ |
3d7e0 | 52 45 51 55 49 52 45 53 3a 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 6c 69 74 | REQUIRES:.$literals.=.$this->lit |
3d800 | 65 72 61 6c 73 3b 0a 24 73 6f 75 72 63 65 4c 69 74 65 72 61 6c 20 3d 20 61 72 72 61 79 5f 73 68 | erals;.$sourceLiteral.=.array_sh |
3d820 | 69 66 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 20 3d | ift($literals);.$sourcePackage.= |
3d840 | 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 | .$this->pool->literalToPackage($ |
3d860 | 73 6f 75 72 63 65 4c 69 74 65 72 61 6c 29 3b 0a 0a 24 72 65 71 75 69 72 65 73 20 3d 20 61 72 72 | sourceLiteral);..$requires.=.arr |
3d880 | 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 | ay();.foreach.($literals.as.$lit |
3d8a0 | 65 72 61 6c 29 20 7b 0a 24 72 65 71 75 69 72 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f | eral).{.$requires[].=.$this->poo |
3d8c0 | 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a 7d | l->literalToPackage($literal);.} |
3d8e0 | 0a 0a 24 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 44 61 74 61 2d 3e 67 65 74 | ..$text.=.$this->reasonData->get |
3d900 | 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 73 6f 75 72 63 65 50 61 63 6b 61 67 65 29 3b 0a 69 66 | PrettyString($sourcePackage);.if |
3d920 | 20 28 24 72 65 71 75 69 72 65 73 29 20 7b 0a 24 72 65 71 75 69 72 65 54 65 78 74 20 3d 20 61 72 | .($requires).{.$requireText.=.ar |
3d940 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 | ray();.foreach.($requires.as.$re |
3d960 | 71 75 69 72 65 29 20 7b 0a 24 72 65 71 75 69 72 65 54 65 78 74 5b 5d 20 3d 20 24 72 65 71 75 69 | quire).{.$requireText[].=.$requi |
3d980 | 72 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 3b 0a 7d 0a 24 74 65 78 74 20 2e | re->getPrettyString();.}.$text.. |
3d9a0 | 3d 20 27 20 2d 3e 20 73 61 74 69 73 66 69 61 62 6c 65 20 62 79 20 27 2e 69 6d 70 6c 6f 64 65 28 | =.'.->.satisfiable.by.'.implode( |
3d9c0 | 27 2c 20 27 2c 20 24 72 65 71 75 69 72 65 54 65 78 74 29 2e 27 2e 27 3b 0a 7d 20 65 6c 73 65 20 | ',.',.$requireText).'.';.}.else. |
3d9e0 | 7b 0a 24 74 65 78 74 20 2e 3d 20 27 20 2d 3e 20 6e 6f 20 6d 61 74 63 68 69 6e 67 20 70 61 63 6b | {.$text..=.'.->.no.matching.pack |
3da00 | 61 67 65 20 66 6f 75 6e 64 2e 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 3b 0a 0a 63 | age.found.';.}..return.$text;..c |
3da20 | 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 | ase.self::RULE_PACKAGE_OBSOLETES |
3da40 | 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 | :.return.$ruleText;.case.self::R |
3da60 | 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 3a | ULE_INSTALLED_PACKAGE_OBSOLETES: |
3da80 | 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 | .return.$ruleText;.case.self::RU |
3daa0 | 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 3a 0a 24 74 65 78 74 20 3d 20 22 43 | LE_PACKAGE_SAME_NAME:.$text.=."C |
3dac0 | 61 6e 20 6f 6e 6c 79 20 69 6e 73 74 61 6c 6c 20 6f 6e 65 20 6f 66 3a 20 22 3b 0a 0a 24 70 61 63 | an.only.install.one.of:.";..$pac |
3dae0 | 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d | kages.=.array();.foreach.($this- |
3db00 | 3e 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 24 | >literals.as.$i.=>.$literal).{.$ |
3db20 | 70 61 63 6b 61 67 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 | packages[].=.$this->pool->litera |
3db40 | 6c 54 6f 50 61 63 6b 61 67 65 28 24 6c 69 74 65 72 61 6c 29 2d 3e 67 65 74 50 72 65 74 74 79 53 | lToPackage($literal)->getPrettyS |
3db60 | 74 72 69 6e 67 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 78 74 2e 69 6d 70 6c 6f 64 65 | tring();.}..return.$text.implode |
3db80 | 28 27 2c 20 27 2c 20 24 70 61 63 6b 61 67 65 73 29 2e 27 2e 27 3b 0a 63 61 73 65 20 73 65 6c 66 | (',.',.$packages).'.';.case.self |
3dba0 | 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 54 45 | ::RULE_PACKAGE_IMPLICIT_OBSOLETE |
3dbc0 | 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a 3a | S:.return.$ruleText;.case.self:: |
3dbe0 | 52 55 4c 45 5f 4c 45 41 52 4e 45 44 3a 0a 72 65 74 75 72 6e 20 27 43 6f 6e 63 6c 75 73 69 6f 6e | RULE_LEARNED:.return.'Conclusion |
3dc00 | 3a 20 27 2e 24 72 75 6c 65 54 65 78 74 3b 0a 63 61 73 65 20 73 65 6c 66 3a 3a 52 55 4c 45 5f 50 | :.'.$ruleText;.case.self::RULE_P |
3dc20 | 41 43 4b 41 47 45 5f 41 4c 49 41 53 3a 0a 72 65 74 75 72 6e 20 24 72 75 6c 65 54 65 78 74 3b 0a | ACKAGE_ALIAS:.return.$ruleText;. |
3dc40 | 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 74 6f 53 74 | }.}.......public.function.__toSt |
3dc60 | 72 69 6e 67 28 29 0a 7b 0a 24 72 65 73 75 6c 74 20 3d 20 28 24 74 68 69 73 2d 3e 69 73 44 69 73 | ring().{.$result.=.($this->isDis |
3dc80 | 61 62 6c 65 64 28 29 29 20 3f 20 27 64 69 73 61 62 6c 65 64 28 27 20 3a 20 27 28 27 3b 0a 0a 66 | abled()).?.'disabled('.:.'(';..f |
3dca0 | 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 73 20 61 73 20 24 69 20 3d 3e | oreach.($this->literals.as.$i.=> |
3dcc0 | 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 69 20 21 3d 20 30 29 20 7b 0a 24 72 65 73 | .$literal).{.if.($i.!=.0).{.$res |
3dce0 | 75 6c 74 20 2e 3d 20 27 7c 27 3b 0a 7d 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 74 68 69 73 2d 3e | ult..=.'|';.}.$result..=.$this-> |
3dd00 | 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 6c 54 6f 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 29 3b | pool->literalToString($literal); |
3dd20 | 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 2e 3d 20 27 29 27 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 | .}..$result..=.')';..return.$res |
3dd40 | 75 6c 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ult;.}.}.<?php............namesp |
3dd60 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b | ace.Composer\DependencyResolver; |
3dd80 | 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e | ..use.Composer\Package\PackageIn |
3dda0 | 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 41 6c | terface;.use.Composer\Package\Al |
3ddc0 | 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c 65 53 65 74 47 65 6e | iasPackage;.....class.RuleSetGen |
3dde0 | 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 70 72 6f 74 | erator.{.protected.$policy;.prot |
3de00 | 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 | ected.$pool;.protected.$rules;.p |
3de20 | 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 | rotected.$jobs;.protected.$insta |
3de40 | 6c 6c 65 64 4d 61 70 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 | lledMap;..public.function.__cons |
3de60 | 74 72 75 63 74 28 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 79 2c 20 50 | truct(PolicyInterface.$policy,.P |
3de80 | 6f 6f 6c 20 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d 20 24 70 6f | ool.$pool).{.$this->policy.=.$po |
3dea0 | 6c 69 63 79 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 7d 0a 0a 0a 0a | licy;.$this->pool.=.$pool;.}.... |
3dec0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 | ............protected.function.c |
3dee0 | 72 65 61 74 65 52 65 71 75 69 72 65 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | reateRequireRule(PackageInterfac |
3df00 | 65 20 24 70 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 70 72 6f 76 69 64 65 72 73 2c 20 24 72 | e.$package,.array.$providers,.$r |
3df20 | 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6c 69 | eason,.$reasonData.=.null).{.$li |
3df40 | 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 28 2d 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 | terals.=.array(-$package->getId( |
3df60 | 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f | ));..foreach.($providers.as.$pro |
3df80 | 76 69 64 65 72 29 20 7b 0a 0a 20 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 | vider).{...if.($provider.===.$pa |
3dfa0 | 63 6b 61 67 65 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 24 6c 69 74 65 72 61 6c | ckage).{.return.null;.}.$literal |
3dfc0 | 73 5b 5d 20 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 49 64 28 29 3b 0a 7d 0a 0a 72 65 74 | s[].=.$provider->getId();.}..ret |
3dfe0 | 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 | urn.new.Rule($this->pool,.$liter |
3e000 | 61 6c 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 29 3b 0a 7d 0a 0a 0a | als,.$reason,.$reasonData);.}... |
3e020 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 | ...........protected.function.cr |
3e040 | 65 61 74 65 49 6e 73 74 61 6c 6c 4f 6e 65 4f 66 52 75 6c 65 28 61 72 72 61 79 20 24 70 61 63 6b | eateInstallOneOfRule(array.$pack |
3e060 | 61 67 65 73 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 29 0a 7b 0a 24 6c 69 74 65 72 61 6c 73 | ages,.$reason,.$job).{.$literals |
3e080 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 | .=.array();.foreach.($packages.a |
3e0a0 | 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 6c 69 74 65 72 61 6c 73 5b 5d 20 3d 20 24 70 61 63 | s.$package).{.$literals[].=.$pac |
3e0c0 | 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 52 75 6c | kage->getId();.}..return.new.Rul |
3e0e0 | 65 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 6c 69 74 65 72 61 6c 73 2c 20 24 72 65 61 73 6f | e($this->pool,.$literals,.$reaso |
3e100 | 6e 2c 20 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 29 3b 0a 7d | n,.$job['packageName'],.$job);.} |
3e120 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | .............protected.function. |
3e140 | 63 72 65 61 74 65 52 65 6d 6f 76 65 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | createRemoveRule(PackageInterfac |
3e160 | 65 20 24 70 61 63 6b 61 67 65 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a 6f 62 29 0a 7b 0a 72 65 74 | e.$package,.$reason,.$job).{.ret |
3e180 | 75 72 6e 20 6e 65 77 20 52 75 6c 65 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 61 72 72 61 79 28 | urn.new.Rule($this->pool,.array( |
3e1a0 | 2d 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 29 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6a | -$package->getId()),.$reason,.$j |
3e1c0 | 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 24 6a 6f 62 29 3b 0a 7d 0a 0a 0a 0a 0a | ob['packageName'],.$job);.}..... |
3e1e0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 | ...........protected.function.cr |
3e200 | 65 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | eateConflictRule(PackageInterfac |
3e220 | 65 20 24 69 73 73 75 65 72 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 72 6f | e.$issuer,.PackageInterface.$pro |
3e240 | 76 69 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 20 3d 20 6e 75 | vider,.$reason,.$reasonData.=.nu |
3e260 | 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 24 69 73 73 75 65 72 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 | ll).{...if.($issuer.===.$provide |
3e280 | 72 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 | r).{.return.null;.}..return.new. |
3e2a0 | 52 75 6c 65 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 61 72 72 61 79 28 2d 24 69 73 73 75 65 72 | Rule($this->pool,.array(-$issuer |
3e2c0 | 2d 3e 67 65 74 49 64 28 29 2c 20 2d 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 49 64 28 29 29 2c | ->getId(),.-$provider->getId()), |
3e2e0 | 20 24 72 65 61 73 6f 6e 2c 20 24 72 65 61 73 6f 6e 44 61 74 61 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | .$reason,.$reasonData);.}....... |
3e300 | 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 28 24 74 79 | ....private.function.addRule($ty |
3e320 | 70 65 2c 20 52 75 6c 65 20 24 6e 65 77 52 75 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 | pe,.Rule.$newRule.=.null).{.if.( |
3e340 | 21 24 6e 65 77 52 75 6c 65 20 7c 7c 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 63 6f 6e 74 61 | !$newRule.||.$this->rules->conta |
3e360 | 69 6e 73 45 71 75 61 6c 28 24 6e 65 77 52 75 6c 65 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a | insEqual($newRule)).{.return;.}. |
3e380 | 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 61 64 64 28 24 6e 65 77 52 75 6c 65 2c 20 24 74 79 | .$this->rules->add($newRule,.$ty |
3e3a0 | 70 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 | pe);.}..protected.function.addRu |
3e3c0 | 6c 65 73 46 6f 72 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 | lesForPackage(PackageInterface.$ |
3e3e0 | 70 61 63 6b 61 67 65 29 0a 7b 0a 24 77 6f 72 6b 51 75 65 75 65 20 3d 20 6e 65 77 20 5c 53 70 6c | package).{.$workQueue.=.new.\Spl |
3e400 | 51 75 65 75 65 3b 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 70 61 63 6b | Queue;.$workQueue->enqueue($pack |
3e420 | 61 67 65 29 3b 0a 0a 77 68 69 6c 65 20 28 21 24 77 6f 72 6b 51 75 65 75 65 2d 3e 69 73 45 6d 70 | age);..while.(!$workQueue->isEmp |
3e440 | 74 79 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 77 6f 72 6b 51 75 65 75 65 2d 3e 64 | ty()).{.$package.=.$workQueue->d |
3e460 | 65 71 75 65 75 65 28 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 64 64 65 64 | equeue();.if.(isset($this->added |
3e480 | 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 | Map[$package->getId()])).{.conti |
3e4a0 | 6e 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 | nue;.}..$this->addedMap[$package |
3e4c0 | 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 | ->getId()].=.true;..foreach.($pa |
3e4e0 | 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b | ckage->getRequires().as.$link).{ |
3e500 | 0a 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c | .$possibleRequires.=.$this->pool |
3e520 | 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 | ->whatProvides($link->getTarget( |
3e540 | 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 24 74 68 | ),.$link->getConstraint());..$th |
3e560 | 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 | is->addRule(RuleSet::TYPE_PACKAG |
3e580 | 45 2c 20 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 69 72 65 52 | E,.$rule.=.$this->createRequireR |
3e5a0 | 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 65 73 2c | ule($package,.$possibleRequires, |
3e5c0 | 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 52 45 51 55 49 52 45 53 2c 20 24 6c | .Rule::RULE_PACKAGE_REQUIRES,.$l |
3e5e0 | 69 6e 6b 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 52 65 71 75 69 72 | ink));..foreach.($possibleRequir |
3e600 | 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 77 6f 72 6b 51 75 65 75 65 2d 3e 65 6e | es.as.$require).{.$workQueue->en |
3e620 | 71 75 65 75 65 28 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 | queue($require);.}.}..foreach.($ |
3e640 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 43 6f 6e 66 6c 69 63 74 73 28 29 20 61 73 20 24 6c 69 6e 6b | package->getConflicts().as.$link |
3e660 | 29 20 7b 0a 24 70 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 3d 20 24 74 68 69 73 2d 3e | ).{.$possibleConflicts.=.$this-> |
3e680 | 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 | pool->whatProvides($link->getTar |
3e6a0 | 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a | get(),.$link->getConstraint());. |
3e6c0 | 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 73 73 69 62 6c 65 43 6f 6e 66 6c 69 63 74 73 20 61 73 20 | .foreach.($possibleConflicts.as. |
3e6e0 | 24 63 6f 6e 66 6c 69 63 74 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 | $conflict).{.$this->addRule(Rule |
3e700 | 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 | Set::TYPE_PACKAGE,.$this->create |
3e720 | 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 63 6f 6e 66 6c 69 63 74 | ConflictRule($package,.$conflict |
3e740 | 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 43 4f 4e 46 4c 49 43 54 2c 20 24 | ,.Rule::RULE_PACKAGE_CONFLICT,.$ |
3e760 | 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 69 73 49 6e 73 74 61 6c 6c 65 64 20 3d 20 28 69 | link));.}.}....$isInstalled.=.(i |
3e780 | 73 73 65 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 | sset($this->installedMap[$packag |
3e7a0 | 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 | e->getId()]));..foreach.($packag |
3e7c0 | 65 2d 3e 67 65 74 52 65 70 6c 61 63 65 73 28 29 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 6f 62 | e->getReplaces().as.$link).{.$ob |
3e7e0 | 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 77 | soleteProviders.=.$this->pool->w |
3e800 | 68 61 74 50 72 6f 76 69 64 65 73 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 | hatProvides($link->getTarget(),. |
3e820 | 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 0a 66 6f 72 65 61 63 | $link->getConstraint());..foreac |
3e840 | 68 20 28 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 | h.($obsoleteProviders.as.$provid |
3e860 | 65 72 29 20 7b 0a 69 66 20 28 24 70 72 6f 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 | er).{.if.($provider.===.$package |
3e880 | 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 62 73 | ).{.continue;.}..if.(!$this->obs |
3e8a0 | 6f 6c 65 74 65 49 6d 70 6f 73 73 69 62 6c 65 46 6f 72 41 6c 69 61 73 28 24 70 61 63 6b 61 67 65 | oleteImpossibleForAlias($package |
3e8c0 | 2c 20 24 70 72 6f 76 69 64 65 72 29 29 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 28 24 69 73 49 6e | ,.$provider)).{.$reason.=.($isIn |
3e8e0 | 73 74 61 6c 6c 65 64 29 20 3f 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 49 4e 53 54 41 4c 4c 45 44 5f | stalled).?.Rule::RULE_INSTALLED_ |
3e900 | 50 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 20 3a 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 50 | PACKAGE_OBSOLETES.:.Rule::RULE_P |
3e920 | 41 43 4b 41 47 45 5f 4f 42 53 4f 4c 45 54 45 53 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 | ACKAGE_OBSOLETES;.$this->addRule |
3e940 | 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 74 68 69 73 2d 3e 63 | (RuleSet::TYPE_PACKAGE,.$this->c |
3e960 | 72 65 61 74 65 43 6f 6e 66 6c 69 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f | reateConflictRule($package,.$pro |
3e980 | 76 69 64 65 72 2c 20 24 72 65 61 73 6f 6e 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a | vider,.$reason,.$link));.}.}.}.. |
3e9a0 | 24 6f 62 73 6f 6c 65 74 65 50 72 6f 76 69 64 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6f 6c | $obsoleteProviders.=.$this->pool |
3e9c0 | 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 | ->whatProvides($package->getName |
3e9e0 | 28 29 2c 20 6e 75 6c 6c 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6f 62 73 6f 6c 65 74 65 50 72 | (),.null);..foreach.($obsoletePr |
3ea00 | 6f 76 69 64 65 72 73 20 61 73 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 69 66 20 28 24 70 72 6f | oviders.as.$provider).{.if.($pro |
3ea20 | 76 69 64 65 72 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a | vider.===.$package).{.continue;. |
3ea40 | 7d 0a 0a 69 66 20 28 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 | }..if.(($package.instanceof.Alia |
3ea60 | 73 50 61 63 6b 61 67 65 29 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f | sPackage).&&.$package->getAliasO |
3ea80 | 66 28 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 | f().===.$provider).{.$this->addR |
3eaa0 | 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 2c 20 24 72 75 6c 65 | ule(RuleSet::TYPE_PACKAGE,.$rule |
3eac0 | 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 71 75 69 72 65 52 75 6c 65 28 24 70 61 63 | .=.$this->createRequireRule($pac |
3eae0 | 6b 61 67 65 2c 20 61 72 72 61 79 28 24 70 72 6f 76 69 64 65 72 29 2c 20 52 75 6c 65 3a 3a 52 55 | kage,.array($provider),.Rule::RU |
3eb00 | 4c 45 5f 50 41 43 4b 41 47 45 5f 41 4c 49 41 53 2c 20 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 20 | LE_PACKAGE_ALIAS,.$package));.}. |
3eb20 | 65 6c 73 65 69 66 20 28 21 24 74 68 69 73 2d 3e 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 69 62 | elseif.(!$this->obsoleteImpossib |
3eb40 | 6c 65 46 6f 72 41 6c 69 61 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 29 29 | leForAlias($package,.$provider)) |
3eb60 | 20 7b 0a 24 72 65 61 73 6f 6e 20 3d 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 | .{.$reason.=.($package->getName( |
3eb80 | 29 20 3d 3d 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3f 20 52 75 6c | ).==.$provider->getName()).?.Rul |
3eba0 | 65 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 53 41 4d 45 5f 4e 41 4d 45 20 3a 20 52 75 6c 65 | e::RULE_PACKAGE_SAME_NAME.:.Rule |
3ebc0 | 3a 3a 52 55 4c 45 5f 50 41 43 4b 41 47 45 5f 49 4d 50 4c 49 43 49 54 5f 4f 42 53 4f 4c 45 54 45 | ::RULE_PACKAGE_IMPLICIT_OBSOLETE |
3ebe0 | 53 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f | S;.$this->addRule(RuleSet::TYPE_ |
3ec00 | 50 41 43 4b 41 47 45 2c 20 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 43 6f | PACKAGE,.$rule.=.$this->createCo |
3ec20 | 6e 66 6c 69 63 74 52 75 6c 65 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 2c 20 | nflictRule($package,.$provider,. |
3ec40 | 24 72 65 61 73 6f 6e 2c 20 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 70 72 | $reason,.$package));.}.}.}.}..pr |
3ec60 | 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6f 62 73 6f 6c 65 74 65 49 6d 70 6f 73 73 69 | otected.function.obsoleteImpossi |
3ec80 | 62 6c 65 46 6f 72 41 6c 69 61 73 28 24 70 61 63 6b 61 67 65 2c 20 24 70 72 6f 76 69 64 65 72 29 | bleForAlias($package,.$provider) |
3eca0 | 0a 7b 0a 24 70 61 63 6b 61 67 65 49 73 41 6c 69 61 73 20 3d 20 24 70 61 63 6b 61 67 65 20 69 6e | .{.$packageIsAlias.=.$package.in |
3ecc0 | 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 24 70 72 6f 76 69 64 65 72 | stanceof.AliasPackage;.$provider |
3ece0 | 49 73 41 6c 69 61 73 20 3d 20 24 70 72 6f 76 69 64 65 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 | IsAlias.=.$provider.instanceof.A |
3ed00 | 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 0a 24 69 6d 70 6f 73 73 69 62 6c 65 20 3d 20 28 0a 28 24 | liasPackage;..$impossible.=.(.($ |
3ed20 | 70 61 63 6b 61 67 65 49 73 41 6c 69 61 73 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 | packageIsAlias.&&.$package->getA |
3ed40 | 6c 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 72 6f 76 69 64 65 72 29 20 7c 7c 0a 28 24 70 72 6f | liasOf().===.$provider).||.($pro |
3ed60 | 76 69 64 65 72 49 73 41 6c 69 61 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 41 6c | viderIsAlias.&&.$provider->getAl |
3ed80 | 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 29 20 7c 7c 0a 28 24 70 61 63 6b 61 | iasOf().===.$package).||.($packa |
3eda0 | 67 65 49 73 41 6c 69 61 73 20 26 26 20 24 70 72 6f 76 69 64 65 72 49 73 41 6c 69 61 73 20 26 26 | geIsAlias.&&.$providerIsAlias.&& |
3edc0 | 20 24 70 72 6f 76 69 64 65 72 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 20 3d 3d 3d 20 24 70 61 | .$provider->getAliasOf().===.$pa |
3ede0 | 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 0a 29 3b 0a 0a 72 65 74 75 72 6e 20 | ckage->getAliasOf()).);..return. |
3ee00 | 24 69 6d 70 6f 73 73 69 62 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 | $impossible;.}.........private.f |
3ee20 | 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 73 46 6f 72 55 70 64 61 74 65 50 61 63 6b 61 67 65 | unction.addRulesForUpdatePackage |
3ee40 | 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 | s(PackageInterface.$package).{.$ |
3ee60 | 75 70 64 61 74 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 2d 3e 66 69 6e 64 55 70 64 | updates.=.$this->policy->findUpd |
3ee80 | 61 74 65 50 61 63 6b 61 67 65 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e | atePackages($this->pool,.$this-> |
3eea0 | 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 66 6f 72 65 61 63 | installedMap,.$package);..foreac |
3eec0 | 68 20 28 24 75 70 64 61 74 65 73 20 61 73 20 24 75 70 64 61 74 65 29 20 7b 0a 24 74 68 69 73 2d | h.($updates.as.$update).{.$this- |
3eee0 | 3e 61 64 64 52 75 6c 65 73 46 6f 72 50 61 63 6b 61 67 65 28 24 75 70 64 61 74 65 29 3b 0a 7d 0a | >addRulesForPackage($update);.}. |
3ef00 | 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 73 46 6f | }..protected.function.addRulesFo |
3ef20 | 72 4a 6f 62 73 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f 62 73 20 61 | rJobs().{.foreach.($this->jobs.a |
3ef40 | 73 20 24 6a 6f 62 29 20 7b 0a 73 77 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d 29 20 7b | s.$job).{.switch.($job['cmd']).{ |
3ef60 | 0a 63 61 73 65 20 27 69 6e 73 74 61 6c 6c 27 3a 0a 69 66 20 28 24 6a 6f 62 5b 27 70 61 63 6b 61 | .case.'install':.if.($job['packa |
3ef80 | 67 65 73 27 5d 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 73 | ges']).{.foreach.($job['packages |
3efa0 | 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 | '].as.$package).{.if.(!isset($th |
3efc0 | 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 | is->installedMap[$package->getId |
3efe0 | 28 29 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 50 61 63 6b 61 67 | ()])).{.$this->addRulesForPackag |
3f000 | 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d | e($package);.}.}..$rule.=.$this- |
3f020 | 3e 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 4f 6e 65 4f 66 52 75 6c 65 28 24 6a 6f 62 5b 27 70 61 | >createInstallOneOfRule($job['pa |
3f040 | 63 6b 61 67 65 73 27 5d 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 49 4e 53 54 41 4c 4c | ckages'],.Rule::RULE_JOB_INSTALL |
3f060 | 2c 20 24 6a 6f 62 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a | ,.$job);.$this->addRule(RuleSet: |
3f080 | 3a 54 59 50 45 5f 4a 4f 42 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 | :TYPE_JOB,.$rule);.}.break;.case |
3f0a0 | 20 27 72 65 6d 6f 76 65 27 3a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 6a 6f 62 5b 27 70 61 | .'remove':.....foreach.($job['pa |
3f0c0 | 63 6b 61 67 65 73 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 72 75 6c 65 20 3d 20 | ckages'].as.$package).{.$rule.=. |
3f0e0 | 24 74 68 69 73 2d 3e 63 72 65 61 74 65 52 65 6d 6f 76 65 52 75 6c 65 28 24 70 61 63 6b 61 67 65 | $this->createRemoveRule($package |
3f100 | 2c 20 52 75 6c 65 3a 3a 52 55 4c 45 5f 4a 4f 42 5f 52 45 4d 4f 56 45 2c 20 24 6a 6f 62 29 3b 0a | ,.Rule::RULE_JOB_REMOVE,.$job);. |
3f120 | 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 | $this->addRule(RuleSet::TYPE_JOB |
3f140 | 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 | ,.$rule);.}.break;.}.}.}..public |
3f160 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 75 6c 65 73 46 6f 72 28 24 6a 6f 62 73 2c 20 24 69 6e | .function.getRulesFor($jobs,.$in |
3f180 | 73 74 61 6c 6c 65 64 4d 61 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 24 6a 6f 62 | stalledMap).{.$this->jobs.=.$job |
3f1a0 | 73 3b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 6e 65 77 20 52 75 6c 65 53 65 74 3b 0a 24 | s;.$this->rules.=.new.RuleSet;.$ |
3f1c0 | 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 4d | this->installedMap.=.$installedM |
3f1e0 | 61 70 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 | ap;..foreach.($this->installedMa |
3f200 | 70 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 | p.as.$package).{.$this->addRules |
3f220 | 46 6f 72 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 | ForPackage($package);.$this->add |
3f240 | 52 75 6c 65 73 46 6f 72 55 70 64 61 74 65 50 61 63 6b 61 67 65 73 28 24 70 61 63 6b 61 67 65 29 | RulesForUpdatePackages($package) |
3f260 | 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 52 75 6c 65 73 46 6f 72 4a 6f 62 73 28 29 3b 0a 0a | ;.}..$this->addRulesForJobs();.. |
3f280 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | return.$this->rules;.}.}.<?php.. |
3f2a0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 | ..........namespace.Composer\Dep |
3f2c0 | 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 62 75 67 | endencyResolver;.....class.Debug |
3f2e0 | 53 6f 6c 76 65 72 20 65 78 74 65 6e 64 73 20 53 6f 6c 76 65 72 0a 7b 0a 70 72 6f 74 65 63 74 65 | Solver.extends.Solver.{.protecte |
3f300 | 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 44 65 63 69 73 69 6f 6e 4d 61 70 28 29 0a 7b 0a | d.function.printDecisionMap().{. |
3f320 | 65 63 68 6f 20 22 5c 6e 44 65 63 69 73 69 6f 6e 4d 61 70 3a 20 5c 6e 22 3b 0a 66 6f 72 65 61 63 | echo."\nDecisionMap:.\n";.foreac |
3f340 | 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 20 61 73 20 24 70 61 63 6b 61 67 | h.($this->decisionMap.as.$packag |
3f360 | 65 49 64 20 3d 3e 20 24 6c 65 76 65 6c 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 49 64 20 | eId.=>.$level).{.if.($packageId. |
3f380 | 3d 3d 3d 20 30 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 24 6c 65 76 65 6c 20 | ===.0).{.continue;.}.if.($level. |
3f3a0 | 3e 20 30 29 20 7b 0a 65 63 68 6f 20 27 20 20 20 20 2b 27 20 2e 20 24 74 68 69 73 2d 3e 70 6f 6f | >.0).{.echo.'....+'...$this->poo |
3f3c0 | 6c 2d 3e 70 61 63 6b 61 67 65 42 79 49 64 28 24 70 61 63 6b 61 67 65 49 64 29 2e 22 5c 6e 22 3b | l->packageById($packageId)."\n"; |
3f3e0 | 0a 7d 20 65 6c 73 65 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 30 29 20 7b 0a 65 63 68 6f 20 27 20 | .}.elseif.($level.<.0).{.echo.'. |
3f400 | 20 20 20 2d 27 20 2e 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 70 61 63 6b 61 67 65 42 79 49 64 | ...-'...$this->pool->packageById |
3f420 | 28 24 70 61 63 6b 61 67 65 49 64 29 2e 22 5c 6e 22 3b 0a 7d 20 65 6c 73 65 20 7b 0a 65 63 68 6f | ($packageId)."\n";.}.else.{.echo |
3f440 | 20 27 20 20 20 20 3f 27 20 2e 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 70 61 63 6b 61 67 65 42 | .'....?'...$this->pool->packageB |
3f460 | 79 49 64 28 24 70 61 63 6b 61 67 65 49 64 29 2e 22 5c 6e 22 3b 0a 7d 0a 7d 0a 65 63 68 6f 20 22 | yId($packageId)."\n";.}.}.echo." |
3f480 | 5c 6e 22 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 | \n";.}..protected.function.print |
3f4a0 | 44 65 63 69 73 69 6f 6e 51 75 65 75 65 28 29 0a 7b 0a 65 63 68 6f 20 22 44 65 63 69 73 69 6f 6e | DecisionQueue().{.echo."Decision |
3f4c0 | 51 75 65 75 65 3a 20 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 69 | Queue:.\n";.foreach.($this->deci |
3f4e0 | 73 69 6f 6e 51 75 65 75 65 20 61 73 20 24 69 20 3d 3e 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 65 | sionQueue.as.$i.=>.$literal).{.e |
3f500 | 63 68 6f 20 27 20 20 20 20 27 20 2e 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2d 3e 6c 69 74 65 72 61 | cho.'....'...$this->pool->litera |
3f520 | 6c 54 6f 53 74 72 69 6e 67 28 24 6c 69 74 65 72 61 6c 29 20 2e 20 27 20 27 20 2e 20 24 74 68 69 | lToString($literal)...'.'...$thi |
3f540 | 73 2d 3e 64 65 63 69 73 69 6f 6e 51 75 65 75 65 57 68 79 5b 24 69 5d 2e 22 20 6c 65 76 65 6c 20 | s->decisionQueueWhy[$i].".level. |
3f560 | 22 2e 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 | ".$this->decisionMap[abs($litera |
3f580 | 6c 29 5d 2e 22 5c 6e 22 3b 0a 7d 0a 65 63 68 6f 20 22 5c 6e 22 3b 0a 7d 0a 0a 70 72 6f 74 65 63 | l)]."\n";.}.echo."\n";.}..protec |
3f5a0 | 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 72 69 6e 74 57 61 74 63 68 65 73 28 29 0a 7b 0a 65 63 | ted.function.printWatches().{.ec |
3f5c0 | 68 6f 20 22 5c 6e 57 61 74 63 68 65 73 3a 5c 6e 22 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 | ho."\nWatches:\n";.foreach.($thi |
3f5e0 | 73 2d 3e 77 61 74 63 68 65 73 20 61 73 20 24 6c 69 74 65 72 61 6c 49 64 20 3d 3e 20 24 77 61 74 | s->watches.as.$literalId.=>.$wat |
3f600 | 63 68 29 20 7b 0a 65 63 68 6f 20 27 20 20 27 2e 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 46 72 | ch).{.echo.'..'.$this->literalFr |
3f620 | 6f 6d 49 64 28 24 6c 69 74 65 72 61 6c 49 64 29 2e 22 5c 6e 22 3b 0a 24 71 75 65 75 65 20 3d 20 | omId($literalId)."\n";.$queue.=. |
3f640 | 61 72 72 61 79 28 61 72 72 61 79 28 27 20 20 20 20 27 2c 20 24 77 61 74 63 68 29 29 3b 0a 0a 77 | array(array('....',.$watch));..w |
3f660 | 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 71 75 65 75 65 29 29 20 7b 0a 6c 69 73 74 28 24 69 6e | hile.(!empty($queue)).{.list($in |
3f680 | 64 65 6e 74 2c 20 24 77 61 74 63 68 29 20 3d 20 61 72 72 61 79 5f 70 6f 70 28 24 71 75 65 75 65 | dent,.$watch).=.array_pop($queue |
3f6a0 | 29 3b 0a 0a 65 63 68 6f 20 24 69 6e 64 65 6e 74 2e 24 77 61 74 63 68 3b 0a 0a 69 66 20 28 24 77 | );..echo.$indent.$watch;..if.($w |
3f6c0 | 61 74 63 68 29 20 7b 0a 65 63 68 6f 20 27 20 5b 69 64 3d 27 2e 24 77 61 74 63 68 2d 3e 67 65 74 | atch).{.echo.'.[id='.$watch->get |
3f6e0 | 49 64 28 29 2e 27 2c 77 61 74 63 68 31 3d 27 2e 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 46 72 | Id().',watch1='.$this->literalFr |
3f700 | 6f 6d 49 64 28 24 77 61 74 63 68 2d 3e 77 61 74 63 68 31 29 2e 27 2c 77 61 74 63 68 32 3d 27 2e | omId($watch->watch1).',watch2='. |
3f720 | 24 74 68 69 73 2d 3e 6c 69 74 65 72 61 6c 46 72 6f 6d 49 64 28 24 77 61 74 63 68 2d 3e 77 61 74 | $this->literalFromId($watch->wat |
3f740 | 63 68 32 29 2e 22 5d 22 3b 0a 7d 0a 0a 65 63 68 6f 20 22 5c 6e 22 3b 0a 0a 69 66 20 28 24 77 61 | ch2)."]";.}..echo."\n";..if.($wa |
3f760 | 74 63 68 20 26 26 20 28 24 77 61 74 63 68 2d 3e 6e 65 78 74 31 20 3d 3d 20 24 77 61 74 63 68 20 | tch.&&.($watch->next1.==.$watch. |
3f780 | 7c 7c 20 24 77 61 74 63 68 2d 3e 6e 65 78 74 32 20 3d 3d 20 24 77 61 74 63 68 29 29 20 7b 0a 69 | ||.$watch->next2.==.$watch)).{.i |
3f7a0 | 66 20 28 24 77 61 74 63 68 2d 3e 6e 65 78 74 31 20 3d 3d 20 24 77 61 74 63 68 29 20 7b 0a 65 63 | f.($watch->next1.==.$watch).{.ec |
3f7c0 | 68 6f 20 24 69 6e 64 65 6e 74 2e 22 20 20 20 20 31 20 2a 52 45 43 55 52 53 49 4f 4e 2a 22 3b 0a | ho.$indent."....1.*RECURSION*";. |
3f7e0 | 7d 0a 69 66 20 28 24 77 61 74 63 68 2d 3e 6e 65 78 74 32 20 3d 3d 20 24 77 61 74 63 68 29 20 7b | }.if.($watch->next2.==.$watch).{ |
3f800 | 0a 65 63 68 6f 20 24 69 6e 64 65 6e 74 2e 22 20 20 20 20 32 20 2a 52 45 43 55 52 53 49 4f 4e 2a | .echo.$indent."....2.*RECURSION* |
3f820 | 22 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 77 61 74 63 68 20 26 26 20 28 24 77 61 74 63 68 | ";.}.}.elseif.($watch.&&.($watch |
3f840 | 2d 3e 6e 65 78 74 31 20 7c 7c 20 24 77 61 74 63 68 2d 3e 6e 65 78 74 32 29 29 20 7b 0a 24 69 6e | ->next1.||.$watch->next2)).{.$in |
3f860 | 64 65 6e 74 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 31 27 2c 20 27 32 | dent.=.str_replace(array('1',.'2 |
3f880 | 27 29 2c 20 27 20 27 2c 20 24 69 6e 64 65 6e 74 29 3b 0a 0a 61 72 72 61 79 5f 70 75 73 68 28 24 | '),.'.',.$indent);..array_push($ |
3f8a0 | 71 75 65 75 65 2c 20 61 72 72 61 79 28 24 69 6e 64 65 6e 74 2e 27 20 20 20 20 32 20 27 2c 20 24 | queue,.array($indent.'....2.',.$ |
3f8c0 | 77 61 74 63 68 2d 3e 6e 65 78 74 32 29 29 3b 0a 61 72 72 61 79 5f 70 75 73 68 28 24 71 75 65 75 | watch->next2));.array_push($queu |
3f8e0 | 65 2c 20 61 72 72 61 79 28 24 69 6e 64 65 6e 74 2e 27 20 20 20 20 31 20 27 2c 20 24 77 61 74 63 | e,.array($indent.'....1.',.$watc |
3f900 | 68 2d 3e 6e 65 78 74 31 29 29 3b 0a 7d 0a 7d 0a 0a 65 63 68 6f 20 22 5c 6e 22 3b 0a 7d 0a 7d 0a | h->next1));.}.}..echo."\n";.}.}. |
3f920 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d | }.<?php............namespace.Com |
3f940 | 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 63 6c | poser\DependencyResolver;.....cl |
3f960 | 61 73 73 20 52 75 6c 65 53 65 74 49 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c | ass.RuleSetIterator.implements.\ |
3f980 | 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 72 6f | Iterator.{.protected.$rules;.pro |
3f9a0 | 74 65 63 74 65 64 20 24 74 79 70 65 73 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 | tected.$types;..protected.$curre |
3f9c0 | 6e 74 4f 66 66 73 65 74 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 6e 74 54 79 70 65 | ntOffset;.protected.$currentType |
3f9e0 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 3b 0a | ;.protected.$currentTypeOffset;. |
3fa00 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 | .public.function.__construct(arr |
3fa20 | 61 79 20 24 72 75 6c 65 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 24 72 75 6c | ay.$rules).{.$this->rules.=.$rul |
3fa40 | 65 73 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 73 20 3d 20 61 72 72 61 79 5f 6b 65 79 73 28 24 72 | es;.$this->types.=.array_keys($r |
3fa60 | 75 6c 65 73 29 3b 0a 73 6f 72 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 29 3b 0a 0a 24 74 68 69 | ules);.sort($this->types);..$thi |
3fa80 | 73 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | s->rewind();.}..public.function. |
3faa0 | 63 75 72 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b | current().{.return.$this->rules[ |
3fac0 | 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 | $this->currentType][$this->curre |
3fae0 | 6e 74 4f 66 66 73 65 74 5d 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6b 65 | ntOffset];.}..public.function.ke |
3fb00 | 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 3b | y().{.return.$this->currentType; |
3fb20 | 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 24 74 68 | .}..public.function.next().{.$th |
3fb40 | 69 73 2d 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 | is->currentOffset++;..if.(!isset |
3fb60 | 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 | ($this->rules[$this->currentType |
3fb80 | 5d 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 75 72 72 | ])).{.return;.}..if.($this->curr |
3fba0 | 65 6e 74 4f 66 66 73 65 74 20 3e 3d 20 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 | entOffset.>=.sizeof($this->rules |
3fbc0 | 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e | [$this->currentType])).{.$this-> |
3fbe0 | 63 75 72 72 65 6e 74 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 2d 3e | currentOffset.=.0;..do.{.$this-> |
3fc00 | 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 | currentTypeOffset++;..if.(!isset |
3fc20 | 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 | ($this->types[$this->currentType |
3fc40 | 4f 66 66 73 65 74 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d | Offset])).{.$this->currentType.= |
3fc60 | 20 2d 31 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 | .-1;.break;.}..$this->currentTyp |
3fc80 | 65 20 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 | e.=.$this->types[$this->currentT |
3fca0 | 79 70 65 4f 66 66 73 65 74 5d 3b 0a 7d 20 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 74 68 69 73 | ypeOffset];.}.while.(isset($this |
3fcc0 | 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 | ->types[$this->currentTypeOffset |
3fce0 | 5d 29 20 26 26 20 21 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 | ]).&&.!sizeof($this->rules[$this |
3fd00 | 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | ->currentType]));.}.}..public.fu |
3fd20 | 6e 63 74 69 6f 6e 20 72 65 77 69 6e 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 | nction.rewind().{.$this->current |
3fd40 | 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f | Offset.=.0;..$this->currentTypeO |
3fd60 | 66 66 73 65 74 20 3d 20 2d 31 3b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d | ffset.=.-1;.$this->currentType.= |
3fd80 | 20 2d 31 3b 0a 0a 64 6f 20 7b 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 | .-1;..do.{.$this->currentTypeOff |
3fda0 | 73 65 74 2b 2b 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b | set++;..if.(!isset($this->types[ |
3fdc0 | 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 29 29 20 7b 0a 24 74 | $this->currentTypeOffset])).{.$t |
3fde0 | 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d 20 2d 31 3b 0a 62 72 65 61 6b 3b 0a 7d 0a | his->currentType.=.-1;.break;.}. |
3fe00 | 0a 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 20 3d 20 24 74 68 69 73 2d 3e 74 79 70 | .$this->currentType.=.$this->typ |
3fe20 | 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 3b 0a 7d 20 | es[$this->currentTypeOffset];.}. |
3fe40 | 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 79 70 65 73 5b 24 74 68 69 73 2d | while.(isset($this->types[$this- |
3fe60 | 3e 63 75 72 72 65 6e 74 54 79 70 65 4f 66 66 73 65 74 5d 29 20 26 26 20 21 73 69 7a 65 6f 66 28 | >currentTypeOffset]).&&.!sizeof( |
3fe80 | 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d | $this->rules[$this->currentType] |
3fea0 | 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 28 29 0a 7b | ));.}..public.function.valid().{ |
3fec0 | 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 74 68 69 73 | .return.isset($this->rules[$this |
3fee0 | 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 29 0a 26 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e | ->currentType]).&&.isset($this-> |
3ff00 | 72 75 6c 65 73 5b 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 54 79 70 65 5d 5b 24 74 68 69 73 2d | rules[$this->currentType][$this- |
3ff20 | 3e 63 75 72 72 65 6e 74 4f 66 66 73 65 74 5d 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | >currentOffset]);.}.}.<?php..... |
3ff40 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 | .......namespace.Composer\Depend |
3ff60 | 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6c | encyResolver;..........class.Rul |
3ff80 | 65 57 61 74 63 68 43 68 61 69 6e 20 65 78 74 65 6e 64 73 20 5c 53 70 6c 44 6f 75 62 6c 79 4c 69 | eWatchChain.extends.\SplDoublyLi |
3ffa0 | 6e 6b 65 64 4c 69 73 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6f 66 66 73 65 74 20 3d 20 30 | nkedList.{.protected.$offset.=.0 |
3ffc0 | 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 65 6b 28 24 6f 66 | ;.......public.function.seek($of |
3ffe0 | 66 73 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 66 6f 72 20 28 24 69 | fset).{.$this->rewind();.for.($i |
40000 | 20 3d 20 30 3b 20 24 69 20 3c 20 24 6f 66 66 73 65 74 3b 20 24 69 2b 2b 2c 20 24 74 68 69 73 2d | .=.0;.$i.<.$offset;.$i++,.$this- |
40020 | 3e 6e 65 78 74 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | >next());.}..........public.func |
40040 | 74 69 6f 6e 20 72 65 6d 6f 76 65 28 29 0a 7b 0a 24 6f 66 66 73 65 74 20 3d 20 24 74 68 69 73 2d | tion.remove().{.$offset.=.$this- |
40060 | 3e 6b 65 79 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 66 66 73 65 74 55 6e 73 65 74 28 24 6f 66 66 73 | >key();.$this->offsetUnset($offs |
40080 | 65 74 29 3b 0a 24 74 68 69 73 2d 3e 73 65 65 6b 28 24 6f 66 66 73 65 74 29 3b 0a 7d 0a 7d 0a 3c | et);.$this->seek($offset);.}.}.< |
400a0 | 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 | ?php............namespace.Compos |
400c0 | 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 | er\DependencyResolver;..use.Comp |
400e0 | 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 | oser\Repository\RepositoryInterf |
40100 | 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 6c 76 65 72 0a 7b 0a 63 6f 6e 73 74 20 42 52 | ace;.....class.Solver.{.const.BR |
40120 | 41 4e 43 48 5f 4c 49 54 45 52 41 4c 53 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 42 52 41 4e 43 48 5f | ANCH_LITERALS.=.0;.const.BRANCH_ |
40140 | 4c 45 56 45 4c 20 3d 20 31 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 6f 6c 69 63 79 3b 0a 70 | LEVEL.=.1;..protected.$policy;.p |
40160 | 72 6f 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 | rotected.$pool;.protected.$insta |
40180 | 6c 6c 65 64 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 72 75 6c 65 73 3b 0a 70 72 6f 74 65 63 74 65 | lled;.protected.$rules;.protecte |
401a0 | 64 20 24 72 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 | d.$ruleSetGenerator;.protected.$ |
401c0 | 75 70 64 61 74 65 41 6c 6c 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 64 64 65 64 4d 61 70 20 | updateAll;..protected.$addedMap. |
401e0 | 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 75 70 64 61 74 65 4d 61 70 20 | =.array();.protected.$updateMap. |
40200 | 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 77 61 74 63 68 47 72 61 70 68 | =.array();.protected.$watchGraph |
40220 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 63 69 73 69 6f 6e 73 3b 0a 70 72 6f 74 65 63 74 65 | ;.protected.$decisions;.protecte |
40240 | 64 20 24 69 6e 73 74 61 6c 6c 65 64 4d 61 70 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f | d.$installedMap;..protected.$pro |
40260 | 70 61 67 61 74 65 49 6e 64 65 78 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 62 72 61 6e 63 68 65 73 | pagateIndex;.protected.$branches |
40280 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 6f 62 6c 65 6d 73 20 | .=.array();.protected.$problems. |
402a0 | 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 65 61 72 6e 65 64 50 6f 6f | =.array();.protected.$learnedPoo |
402c0 | 6c 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | l.=.array();..public.function.__ |
402e0 | 63 6f 6e 73 74 72 75 63 74 28 50 6f 6c 69 63 79 49 6e 74 65 72 66 61 63 65 20 24 70 6f 6c 69 63 | construct(PolicyInterface.$polic |
40300 | 79 2c 20 50 6f 6f 6c 20 24 70 6f 6f 6c 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 | y,.Pool.$pool,.RepositoryInterfa |
40320 | 63 65 20 24 69 6e 73 74 61 6c 6c 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 20 3d | ce.$installed).{.$this->policy.= |
40340 | 20 24 70 6f 6c 69 63 79 3b 0a 24 74 68 69 73 2d 3e 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 | .$policy;.$this->pool.=.$pool;.$ |
40360 | 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 20 3d 20 24 69 6e 73 74 61 6c 6c 65 64 3b 0a 24 74 | this->installed.=.$installed;.$t |
40380 | 68 69 73 2d 3e 72 75 6c 65 53 65 74 47 65 6e 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 52 75 6c 65 | his->ruleSetGenerator.=.new.Rule |
403a0 | 53 65 74 47 65 6e 65 72 61 74 6f 72 28 24 70 6f 6c 69 63 79 2c 20 24 70 6f 6f 6c 29 3b 0a 7d 0a | SetGenerator($policy,.$pool);.}. |
403c0 | 0a 0a 20 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 61 6b 65 41 73 73 65 72 74 69 6f | ...private.function.makeAssertio |
403e0 | 6e 52 75 6c 65 44 65 63 69 73 69 6f 6e 73 28 29 0a 7b 0a 24 64 65 63 69 73 69 6f 6e 53 74 61 72 | nRuleDecisions().{.$decisionStar |
40400 | 74 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 20 2d 20 31 3b | t.=.count($this->decisions).-.1; |
40420 | 0a 0a 66 6f 72 20 28 24 72 75 6c 65 49 6e 64 65 78 20 3d 20 30 3b 20 24 72 75 6c 65 49 6e 64 65 | ..for.($ruleIndex.=.0;.$ruleInde |
40440 | 78 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 20 24 72 75 6c 65 49 6e | x.<.count($this->rules);.$ruleIn |
40460 | 64 65 78 2b 2b 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 72 | dex++).{.$rule.=.$this->rules->r |
40480 | 75 6c 65 42 79 49 64 28 24 72 75 6c 65 49 6e 64 65 78 29 3b 0a 0a 69 66 20 28 21 24 72 75 6c 65 | uleById($ruleIndex);..if.(!$rule |
404a0 | 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 20 7c 7c 20 24 72 75 6c 65 2d 3e 69 73 44 69 73 61 | ->isAssertion().||.$rule->isDisa |
404c0 | 62 6c 65 64 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6c 69 74 65 72 61 6c 73 | bled()).{.continue;.}..$literals |
404e0 | 20 3d 20 24 72 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 24 6c 69 74 65 72 61 | .=.$rule->getLiterals();.$litera |
40500 | 6c 20 3d 20 24 6c 69 74 65 72 61 6c 73 5b 30 5d 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 | l.=.$literals[0];..if.(!$this->d |
40520 | 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 29 | ecisions->decided(abs($literal)) |
40540 | 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 24 6c 69 | ).{.$this->decisions->decide($li |
40560 | 74 65 72 61 6c 2c 20 31 2c 20 24 72 75 6c 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 | teral,.1,.$rule);.continue;.}..i |
40580 | 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 | f.($this->decisions->satisfy($li |
405a0 | 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 52 75 6c | teral)).{.continue;.}....if.(Rul |
405c0 | 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 20 3d 3d 3d 20 24 72 75 6c 65 2d 3e 67 65 | eSet::TYPE_LEARNED.===.$rule->ge |
405e0 | 74 54 79 70 65 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 61 62 6c 65 28 29 3b 0a 63 6f 6e | tType()).{.$rule->disable();.con |
40600 | 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6e 66 6c 69 63 74 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 | tinue;.}..$conflict.=.$this->dec |
40620 | 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 52 75 6c 65 28 24 6c 69 74 65 72 61 6c 29 3b 0a | isions->decisionRule($literal);. |
40640 | 0a 69 66 20 28 24 63 6f 6e 66 6c 69 63 74 20 26 26 20 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f | .if.($conflict.&&.RuleSet::TYPE_ |
40660 | 50 41 43 4b 41 47 45 20 3d 3d 3d 20 24 63 6f 6e 66 6c 69 63 74 2d 3e 67 65 74 54 79 70 65 28 29 | PACKAGE.===.$conflict->getType() |
40680 | 29 20 7b 0a 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 3b 0a 0a 24 70 | ).{..$problem.=.new.Problem;..$p |
406a0 | 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 72 75 6c 65 29 3b 0a 24 70 72 6f 62 6c 65 6d | roblem->addRule($rule);.$problem |
406c0 | 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 | ->addRule($conflict);.$this->dis |
406e0 | 61 62 6c 65 50 72 6f 62 6c 65 6d 28 24 72 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c | ableProblem($rule);.$this->probl |
40700 | 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a | ems[].=.$problem;.continue;.}... |
40720 | 20 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 3b 0a 24 70 72 6f 62 6c 65 | .$problem.=.new.Problem;.$proble |
40740 | 6d 2d 3e 61 64 64 52 75 6c 65 28 24 72 75 6c 65 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 | m->addRule($rule);.$problem->add |
40760 | 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 29 3b 0a 0a 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 | Rule($conflict);......foreach.($ |
40780 | 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 46 6f 72 28 52 75 6c 65 | this->rules->getIteratorFor(Rule |
407a0 | 53 65 74 3a 3a 54 59 50 45 5f 4a 4f 42 29 20 61 73 20 24 61 73 73 65 72 74 52 75 6c 65 29 20 7b | Set::TYPE_JOB).as.$assertRule).{ |
407c0 | 0a 69 66 20 28 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 20 7c | .if.($assertRule->isDisabled().| |
407e0 | 7c 20 21 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 29 20 7b | |.!$assertRule->isAssertion()).{ |
40800 | 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c | .continue;.}..$assertRuleLiteral |
40820 | 73 20 3d 20 24 61 73 73 65 72 74 52 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a | s.=.$assertRule->getLiterals();. |
40840 | 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 20 3d 20 24 61 73 73 65 72 74 52 75 6c 65 | $assertRuleLiteral.=.$assertRule |
40860 | 4c 69 74 65 72 61 6c 73 5b 30 5d 3b 0a 0a 69 66 20 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 20 | Literals[0];..if.(abs($literal). |
40880 | 21 3d 3d 20 61 62 73 28 24 61 73 73 65 72 74 52 75 6c 65 4c 69 74 65 72 61 6c 29 29 20 7b 0a 63 | !==.abs($assertRuleLiteral)).{.c |
408a0 | 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 61 | ontinue;.}..$problem->addRule($a |
408c0 | 73 73 65 72 74 52 75 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 6f 62 6c 65 | ssertRule);.$this->disableProble |
408e0 | 6d 28 24 61 73 73 65 72 74 52 75 6c 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d | m($assertRule);.}.$this->problem |
40900 | 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 73 65 74 54 6f 4f | s[].=.$problem;..$this->resetToO |
40920 | 66 66 73 65 74 28 24 64 65 63 69 73 69 6f 6e 53 74 61 72 74 29 3b 0a 24 72 75 6c 65 49 6e 64 65 | ffset($decisionStart);.$ruleInde |
40940 | 78 20 3d 20 2d 31 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | x.=.-1;.}.}..protected.function. |
40960 | 73 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 4d 61 70 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 | setupInstalledMap().{.$this->ins |
40980 | 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 | talledMap.=.array();.foreach.($t |
409a0 | 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 | his->installed->getPackages().as |
409c0 | 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 | .$package).{.$this->installedMap |
409e0 | 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 24 70 61 63 6b 61 67 65 3b 0a | [$package->getId()].=.$package;. |
40a00 | 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6a 6f 62 73 20 61 73 20 24 6a 6f 62 29 | }..foreach.($this->jobs.as.$job) |
40a20 | 20 7b 0a 73 77 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d 29 20 7b 0a 63 61 73 65 20 27 | .{.switch.($job['cmd']).{.case.' |
40a40 | 75 70 64 61 74 65 27 3a 0a 66 6f 72 65 61 63 68 20 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 73 | update':.foreach.($job['packages |
40a60 | 27 5d 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 | '].as.$package).{.if.(isset($thi |
40a80 | 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 | s->installedMap[$package->getId( |
40aa0 | 29 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 | )])).{.$this->updateMap[$package |
40ac0 | 2d 3e 67 65 74 49 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 | ->getId()].=.true;.}.}.break;..c |
40ae0 | 61 73 65 20 27 75 70 64 61 74 65 2d 61 6c 6c 27 3a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 | ase.'update-all':.foreach.($this |
40b00 | 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 74 | ->installedMap.as.$package).{.$t |
40b20 | 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 | his->updateMap[$package->getId() |
40b40 | 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 27 69 6e 73 74 61 6c | ].=.true;.}.break;..case.'instal |
40b60 | 6c 27 3a 0a 69 66 20 28 21 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 73 27 5d 29 20 7b 0a 24 70 72 | l':.if.(!$job['packages']).{.$pr |
40b80 | 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 28 29 3b 0a 24 70 72 6f 62 6c 65 6d 2d | oblem.=.new.Problem();.$problem- |
40ba0 | 3e 61 64 64 52 75 6c 65 28 6e 65 77 20 52 75 6c 65 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 61 | >addRule(new.Rule($this->pool,.a |
40bc0 | 72 72 61 79 28 29 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 24 6a 6f 62 29 29 3b 0a 24 74 68 69 | rray(),.null,.null,.$job));.$thi |
40be0 | 73 2d 3e 70 72 6f 62 6c 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 7d 0a 62 72 65 61 | s->problems[].=.$problem;.}.brea |
40c00 | 6b 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 6c 76 65 28 | k;.}.}.}..public.function.solve( |
40c20 | 52 65 71 75 65 73 74 20 24 72 65 71 75 65 73 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 | Request.$request).{.$this->jobs. |
40c40 | 3d 20 24 72 65 71 75 65 73 74 2d 3e 67 65 74 4a 6f 62 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 | =.$request->getJobs();..$this->s |
40c60 | 65 74 75 70 49 6e 73 74 61 6c 6c 65 64 4d 61 70 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 | etupInstalledMap();..$this->deci |
40c80 | 73 69 6f 6e 73 20 3d 20 6e 65 77 20 44 65 63 69 73 69 6f 6e 73 28 24 74 68 69 73 2d 3e 70 6f 6f | sions.=.new.Decisions($this->poo |
40ca0 | 6c 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 53 | l);..$this->rules.=.$this->ruleS |
40cc0 | 65 74 47 65 6e 65 72 61 74 6f 72 2d 3e 67 65 74 52 75 6c 65 73 46 6f 72 28 24 74 68 69 73 2d 3e | etGenerator->getRulesFor($this-> |
40ce0 | 6a 6f 62 73 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 3b 0a 24 74 68 69 | jobs,.$this->installedMap);.$thi |
40d00 | 73 2d 3e 77 61 74 63 68 47 72 61 70 68 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 47 72 61 | s->watchGraph.=.new.RuleWatchGra |
40d20 | 70 68 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 72 | ph;..foreach.($this->rules.as.$r |
40d40 | 75 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 69 6e 73 65 72 74 | ule).{.$this->watchGraph->insert |
40d60 | 28 6e 65 77 20 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 28 24 72 75 6c 65 29 29 3b 0a 7d 0a 0a 0a | (new.RuleWatchNode($rule));.}... |
40d80 | 24 74 68 69 73 2d 3e 6d 61 6b 65 41 73 73 65 72 74 69 6f 6e 52 75 6c 65 44 65 63 69 73 69 6f 6e | $this->makeAssertionRuleDecision |
40da0 | 73 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6e 53 61 74 28 74 72 75 65 29 3b 0a 0a 0a 20 66 6f | s();..$this->runSat(true);....fo |
40dc0 | 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 61 73 20 24 70 | reach.($this->installedMap.as.$p |
40de0 | 61 63 6b 61 67 65 49 64 20 3d 3e 20 24 76 6f 69 64 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e | ackageId.=>.$void).{.if.($this-> |
40e00 | 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 70 61 63 6b 61 67 65 49 64 29 | decisions->undecided($packageId) |
40e20 | 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 2d 24 70 | ).{.$this->decisions->decide(-$p |
40e40 | 61 63 6b 61 67 65 49 64 2c 20 31 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 | ackageId,.1,.null);.}.}..if.($th |
40e60 | 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 | is->problems).{.throw.new.Solver |
40e80 | 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d | ProblemsException($this->problem |
40ea0 | 73 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 29 3b 0a 7d 0a 0a 24 74 72 61 | s,.$this->installedMap);.}..$tra |
40ec0 | 6e 73 61 63 74 69 6f 6e 20 3d 20 6e 65 77 20 54 72 61 6e 73 61 63 74 69 6f 6e 28 24 74 68 69 73 | nsaction.=.new.Transaction($this |
40ee0 | 2d 3e 70 6f 6c 69 63 79 2c 20 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 73 2d 3e 69 6e | ->policy,.$this->pool,.$this->in |
40f00 | 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 3b 0a 0a | stalledMap,.$this->decisions);.. |
40f20 | 72 65 74 75 72 6e 20 24 74 72 61 6e 73 61 63 74 69 6f 6e 2d 3e 67 65 74 4f 70 65 72 61 74 69 6f | return.$transaction->getOperatio |
40f40 | 6e 73 28 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6c 69 74 65 | ns();.}..protected.function.lite |
40f60 | 72 61 6c 46 72 6f 6d 49 64 28 24 69 64 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 | ralFromId($id).{.$package.=.$thi |
40f80 | 73 2d 3e 70 6f 6f 6c 2d 3e 70 61 63 6b 61 67 65 42 79 49 64 28 61 62 73 28 24 69 64 29 29 3b 0a | s->pool->packageById(abs($id));. |
40fa0 | 0a 72 65 74 75 72 6e 20 6e 65 77 20 4c 69 74 65 72 61 6c 28 24 70 61 63 6b 61 67 65 2c 20 24 69 | .return.new.Literal($package,.$i |
40fc0 | 64 20 3e 20 30 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e | d.>.0);.}..........protected.fun |
40fe0 | 63 74 69 6f 6e 20 70 72 6f 70 61 67 61 74 65 28 24 6c 65 76 65 6c 29 0a 7b 0a 77 68 69 6c 65 20 | ction.propagate($level).{.while. |
41000 | 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 76 61 6c 69 64 4f 66 66 73 65 74 28 24 | ($this->decisions->validOffset($ |
41020 | 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 29 29 20 7b 0a 24 64 65 63 69 73 69 | this->propagateIndex)).{.$decisi |
41040 | 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 | on.=.$this->decisions->atOffset( |
41060 | 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 29 3b 0a 0a 24 63 6f 6e 66 6c 69 | $this->propagateIndex);..$confli |
41080 | 63 74 20 3d 20 24 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 70 72 6f 70 61 67 61 74 | ct.=.$this->watchGraph->propagat |
410a0 | 65 4c 69 74 65 72 61 6c 28 0a 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 | eLiteral(.$decision[Decisions::D |
410c0 | 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 2c 0a 24 6c 65 76 65 6c 2c 0a 24 74 68 69 73 2d | ECISION_LITERAL],.$level,.$this- |
410e0 | 3e 64 65 63 69 73 69 6f 6e 73 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 | >decisions.);..$this->propagateI |
41100 | 6e 64 65 78 2b 2b 3b 0a 0a 69 66 20 28 24 63 6f 6e 66 6c 69 63 74 29 20 7b 0a 72 65 74 75 72 6e | ndex++;..if.($conflict).{.return |
41120 | 20 24 63 6f 6e 66 6c 69 63 74 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a | .$conflict;.}.}..return.null;.}. |
41140 | 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 76 65 72 74 28 24 6c 65 76 | ....private.function.revert($lev |
41160 | 65 6c 29 0a 7b 0a 77 68 69 6c 65 20 28 21 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e | el).{.while.(!$this->decisions-> |
41180 | 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 74 68 69 73 2d 3e 64 | isEmpty()).{.$literal.=.$this->d |
411a0 | 65 63 69 73 69 6f 6e 73 2d 3e 6c 61 73 74 4c 69 74 65 72 61 6c 28 29 3b 0a 0a 69 66 20 28 24 74 | ecisions->lastLiteral();..if.($t |
411c0 | 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 | his->decisions->undecided($liter |
411e0 | 61 6c 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 20 | al)).{.break;.}..$decisionLevel. |
41200 | 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 | =.$this->decisions->decisionLeve |
41220 | 6c 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 24 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c | l($literal);..if.($decisionLevel |
41240 | 20 3c 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 | .<=.$level).{.break;.}..$this->d |
41260 | 65 63 69 73 69 6f 6e 73 2d 3e 72 65 76 65 72 74 4c 61 73 74 28 29 3b 0a 24 74 68 69 73 2d 3e 70 | ecisions->revertLast();.$this->p |
41280 | 72 6f 70 61 67 61 74 65 49 6e 64 65 78 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 64 65 63 | ropagateIndex.=.count($this->dec |
412a0 | 69 73 69 6f 6e 73 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 21 65 6d 70 74 79 28 24 74 68 69 73 2d | isions);.}..while.(!empty($this- |
412c0 | 3e 62 72 61 6e 63 68 65 73 29 20 26 26 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 63 6f | >branches).&&.$this->branches[co |
412e0 | 75 6e 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 2d 20 31 5d 5b 73 65 6c 66 3a 3a | unt($this->branches).-.1][self:: |
41300 | 42 52 41 4e 43 48 5f 4c 45 56 45 4c 5d 20 3e 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 61 72 72 61 79 | BRANCH_LEVEL].>=.$level).{.array |
41320 | 5f 70 6f 70 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a | _pop($this->branches);.}.}...... |
41340 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 | ...........private.function.setP |
41360 | 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 65 6c 2c 20 24 6c 69 74 65 72 61 6c 2c 20 | ropagateLearn($level,.$literal,. |
41380 | 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 24 6c 65 | $disableRules,.Rule.$rule).{.$le |
413a0 | 76 65 6c 2b 2b 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 | vel++;..$this->decisions->decide |
413c0 | 28 24 6c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 72 75 6c 65 29 3b 0a 0a 77 68 69 6c | ($literal,.$level,.$rule);..whil |
413e0 | 65 20 28 74 72 75 65 29 20 7b 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 | e.(true).{.$rule.=.$this->propag |
41400 | 61 74 65 28 24 6c 65 76 65 6c 29 3b 0a 0a 69 66 20 28 21 24 72 75 6c 65 29 20 7b 0a 62 72 65 61 | ate($level);..if.(!$rule).{.brea |
41420 | 6b 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 20 31 29 20 7b 0a 72 65 74 75 72 6e 20 | k;.}..if.($level.==.1).{.return. |
41440 | 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 28 24 72 75 6c 65 2c 20 | $this->analyzeUnsolvable($rule,. |
41460 | 24 64 69 73 61 62 6c 65 52 75 6c 65 73 29 3b 0a 7d 0a 0a 0a 20 6c 69 73 74 28 24 6c 65 61 72 6e | $disableRules);.}....list($learn |
41480 | 4c 69 74 65 72 61 6c 2c 20 24 6e 65 77 4c 65 76 65 6c 2c 20 24 6e 65 77 52 75 6c 65 2c 20 24 77 | Literal,.$newLevel,.$newRule,.$w |
414a0 | 68 79 29 20 3d 20 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 28 24 6c 65 76 65 6c 2c 20 24 72 75 | hy).=.$this->analyze($level,.$ru |
414c0 | 6c 65 29 3b 0a 0a 69 66 20 28 24 6e 65 77 4c 65 76 65 6c 20 3c 3d 20 30 20 7c 7c 20 24 6e 65 77 | le);..if.($newLevel.<=.0.||.$new |
414e0 | 4c 65 76 65 6c 20 3e 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c | Level.>=.$level).{.throw.new.Sol |
41500 | 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 54 72 79 69 6e 67 20 74 6f 20 72 65 76 65 | verBugException(."Trying.to.reve |
41520 | 72 74 20 74 6f 20 69 6e 76 61 6c 69 64 20 6c 65 76 65 6c 20 22 2e 28 69 6e 74 29 20 24 6e 65 77 | rt.to.invalid.level.".(int).$new |
41540 | 4c 65 76 65 6c 2e 22 20 66 72 6f 6d 20 6c 65 76 65 6c 20 22 2e 28 69 6e 74 29 20 24 6c 65 76 65 | Level.".from.level.".(int).$leve |
41560 | 6c 2e 22 2e 22 0a 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 6e 65 77 52 75 6c 65 29 20 7b 0a | l.".".);.}.elseif.(!$newRule).{. |
41580 | 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 4e | throw.new.SolverBugException(."N |
415a0 | 6f 20 72 75 6c 65 20 77 61 73 20 6c 65 61 72 6e 65 64 20 66 72 6f 6d 20 61 6e 61 6c 79 7a 69 6e | o.rule.was.learned.from.analyzin |
415c0 | 67 20 24 72 75 6c 65 20 61 74 20 6c 65 76 65 6c 20 24 6c 65 76 65 6c 2e 22 0a 29 3b 0a 7d 0a 0a | g.$rule.at.level.$level.".);.}.. |
415e0 | 24 6c 65 76 65 6c 20 3d 20 24 6e 65 77 4c 65 76 65 6c 3b 0a 0a 24 74 68 69 73 2d 3e 72 65 76 65 | $level.=.$newLevel;..$this->reve |
41600 | 72 74 28 24 6c 65 76 65 6c 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 61 64 64 28 24 | rt($level);..$this->rules->add($ |
41620 | 6e 65 77 52 75 6c 65 2c 20 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 29 3b | newRule,.RuleSet::TYPE_LEARNED); |
41640 | 0a 0a 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 57 68 79 5b 24 6e 65 77 52 75 6c 65 2d 3e 67 65 | ..$this->learnedWhy[$newRule->ge |
41660 | 74 49 64 28 29 5d 20 3d 20 24 77 68 79 3b 0a 0a 24 72 75 6c 65 4e 6f 64 65 20 3d 20 6e 65 77 20 | tId()].=.$why;..$ruleNode.=.new. |
41680 | 52 75 6c 65 57 61 74 63 68 4e 6f 64 65 28 24 6e 65 77 52 75 6c 65 29 3b 0a 24 72 75 6c 65 4e 6f | RuleWatchNode($newRule);.$ruleNo |
416a0 | 64 65 2d 3e 77 61 74 63 68 32 4f 6e 48 69 67 68 65 73 74 28 24 74 68 69 73 2d 3e 64 65 63 69 73 | de->watch2OnHighest($this->decis |
416c0 | 69 6f 6e 73 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 47 72 61 70 68 2d 3e 69 6e 73 65 72 74 | ions);.$this->watchGraph->insert |
416e0 | 28 24 72 75 6c 65 4e 6f 64 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e | ($ruleNode);..$this->decisions-> |
41700 | 64 65 63 69 64 65 28 24 6c 65 61 72 6e 4c 69 74 65 72 61 6c 2c 20 24 6c 65 76 65 6c 2c 20 24 6e | decide($learnLiteral,.$level,.$n |
41720 | 65 77 52 75 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 65 76 65 6c 3b 0a 7d 0a 0a 70 72 | ewRule);.}..return.$level;.}..pr |
41740 | 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 6c 65 63 74 41 6e 64 49 6e 73 74 61 6c 6c 28 | ivate.function.selectAndInstall( |
41760 | 24 6c 65 76 65 6c 2c 20 61 72 72 61 79 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 2c 20 24 64 | $level,.array.$decisionQueue,.$d |
41780 | 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 0a 20 24 6c 69 | isableRules,.Rule.$rule).{...$li |
417a0 | 74 65 72 61 6c 73 20 3d 20 24 74 68 69 73 2d 3e 70 6f 6c 69 63 79 2d 3e 73 65 6c 65 63 74 50 72 | terals.=.$this->policy->selectPr |
417c0 | 65 66 65 72 65 64 50 61 63 6b 61 67 65 73 28 24 74 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 74 68 69 | eferedPackages($this->pool,.$thi |
417e0 | 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 2c 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 | s->installedMap,.$decisionQueue) |
41800 | 3b 0a 0a 24 73 65 6c 65 63 74 65 64 4c 69 74 65 72 61 6c 20 3d 20 61 72 72 61 79 5f 73 68 69 66 | ;..$selectedLiteral.=.array_shif |
41820 | 74 28 24 6c 69 74 65 72 61 6c 73 29 3b 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 6c 69 74 65 | t($literals);....if.(count($lite |
41840 | 72 61 6c 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 5d 20 3d 20 61 72 72 | rals)).{.$this->branches[].=.arr |
41860 | 61 79 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 6c 65 76 65 6c 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e | ay($literals,.$level);.}..return |
41880 | 20 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 65 6c | .$this->setPropagateLearn($level |
418a0 | 2c 20 24 73 65 6c 65 63 74 65 64 4c 69 74 65 72 61 6c 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 | ,.$selectedLiteral,.$disableRule |
418c0 | 73 2c 20 24 72 75 6c 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | s,.$rule);.}..protected.function |
418e0 | 20 61 6e 61 6c 79 7a 65 28 24 6c 65 76 65 6c 2c 20 24 72 75 6c 65 29 0a 7b 0a 24 61 6e 61 6c 79 | .analyze($level,.$rule).{.$analy |
41900 | 7a 65 64 52 75 6c 65 20 3d 20 24 72 75 6c 65 3b 0a 24 72 75 6c 65 4c 65 76 65 6c 20 3d 20 31 3b | zedRule.=.$rule;.$ruleLevel.=.1; |
41920 | 0a 24 6e 75 6d 20 3d 20 30 3b 0a 24 6c 31 6e 75 6d 20 3d 20 30 3b 0a 24 73 65 65 6e 20 3d 20 61 | .$num.=.0;.$l1num.=.0;.$seen.=.a |
41940 | 72 72 61 79 28 29 3b 0a 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 20 3d 20 61 72 72 61 79 | rray();.$learnedLiterals.=.array |
41960 | 28 6e 75 6c 6c 29 3b 0a 0a 24 64 65 63 69 73 69 6f 6e 49 64 20 3d 20 63 6f 75 6e 74 28 24 74 68 | (null);..$decisionId.=.count($th |
41980 | 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 | is->decisions);..$this->learnedP |
419a0 | 6f 6f 6c 5b 5d 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b | ool[].=.array();..while.(true).{ |
419c0 | 0a 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d | .$this->learnedPool[count($this- |
419e0 | 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 29 20 2d 20 31 5d 5b 5d 20 3d 20 24 72 75 6c 65 3b 0a 0a 66 | >learnedPool).-.1][].=.$rule;..f |
41a00 | 6f 72 65 61 63 68 20 28 24 72 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 20 61 73 20 | oreach.($rule->getLiterals().as. |
41a20 | 24 6c 69 74 65 72 61 6c 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f | $literal).{...if.($this->decisio |
41a40 | 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 | ns->satisfy($literal)).{.continu |
41a60 | 65 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 | e;.}..if.(isset($seen[abs($liter |
41a80 | 61 6c 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 65 65 6e 5b 61 62 73 28 24 | al)])).{.continue;.}.$seen[abs($ |
41aa0 | 6c 69 74 65 72 61 6c 29 5d 20 3d 20 74 72 75 65 3b 0a 0a 24 6c 20 3d 20 24 74 68 69 73 2d 3e 64 | literal)].=.true;..$l.=.$this->d |
41ac0 | 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c | ecisions->decisionLevel($literal |
41ae0 | 29 3b 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 24 6c 29 20 7b 0a 24 6c 31 6e 75 6d 2b 2b 3b 0a 7d 20 | );..if.(1.===.$l).{.$l1num++;.}. |
41b00 | 65 6c 73 65 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 3d 20 24 6c 29 20 7b 0a 24 6e 75 6d 2b 2b 3b | elseif.($level.===.$l).{.$num++; |
41b20 | 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 5d 20 3d | .}.else.{...$learnedLiterals[].= |
41b40 | 20 24 6c 69 74 65 72 61 6c 3b 0a 0a 69 66 20 28 24 6c 20 3e 20 24 72 75 6c 65 4c 65 76 65 6c 29 | .$literal;..if.($l.>.$ruleLevel) |
41b60 | 20 7b 0a 24 72 75 6c 65 4c 65 76 65 6c 20 3d 20 24 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6c 31 72 65 | .{.$ruleLevel.=.$l;.}.}.}..$l1re |
41b80 | 74 72 79 20 3d 20 74 72 75 65 3b 0a 77 68 69 6c 65 20 28 24 6c 31 72 65 74 72 79 29 20 7b 0a 24 | try.=.true;.while.($l1retry).{.$ |
41ba0 | 6c 31 72 65 74 72 79 20 3d 20 66 61 6c 73 65 3b 0a 0a 69 66 20 28 21 24 6e 75 6d 20 26 26 20 21 | l1retry.=.false;..if.(!$num.&&.! |
41bc0 | 2d 2d 24 6c 31 6e 75 6d 29 20 7b 0a 0a 20 62 72 65 61 6b 20 32 3b 0a 7d 0a 0a 77 68 69 6c 65 20 | --$l1num).{...break.2;.}..while. |
41be0 | 28 74 72 75 65 29 20 7b 0a 69 66 20 28 24 64 65 63 69 73 69 6f 6e 49 64 20 3c 3d 20 30 29 20 7b | (true).{.if.($decisionId.<=.0).{ |
41c00 | 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 0a 22 | .throw.new.SolverBugException(." |
41c20 | 52 65 61 63 68 65 64 20 69 6e 76 61 6c 69 64 20 64 65 63 69 73 69 6f 6e 20 69 64 20 24 64 65 63 | Reached.invalid.decision.id.$dec |
41c40 | 69 73 69 6f 6e 49 64 20 77 68 69 6c 65 20 6c 6f 6f 6b 69 6e 67 20 74 68 72 6f 75 67 68 20 24 72 | isionId.while.looking.through.$r |
41c60 | 75 6c 65 20 66 6f 72 20 61 20 6c 69 74 65 72 61 6c 20 70 72 65 73 65 6e 74 20 69 6e 20 74 68 65 | ule.for.a.literal.present.in.the |
41c80 | 20 61 6e 61 6c 79 7a 65 64 20 72 75 6c 65 20 24 61 6e 61 6c 79 7a 65 64 52 75 6c 65 2e 22 0a 29 | .analyzed.rule.$analyzedRule.".) |
41ca0 | 3b 0a 7d 0a 0a 24 64 65 63 69 73 69 6f 6e 49 64 2d 2d 3b 0a 0a 24 64 65 63 69 73 69 6f 6e 20 3d | ;.}..$decisionId--;..$decision.= |
41cc0 | 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 24 64 65 63 | .$this->decisions->atOffset($dec |
41ce0 | 69 73 69 6f 6e 49 64 29 3b 0a 24 6c 69 74 65 72 61 6c 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 | isionId);.$literal.=.$decision[D |
41d00 | 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 4c 49 54 45 52 41 4c 5d 3b 0a 0a 69 66 | ecisions::DECISION_LITERAL];..if |
41d20 | 20 28 69 73 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b | .(isset($seen[abs($literal)])).{ |
41d40 | 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 75 6e 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 | .break;.}.}..unset($seen[abs($li |
41d60 | 74 65 72 61 6c 29 5d 29 3b 0a 0a 69 66 20 28 24 6e 75 6d 20 26 26 20 30 20 3d 3d 3d 20 2d 2d 24 | teral)]);..if.($num.&&.0.===.--$ |
41d80 | 6e 75 6d 29 20 7b 0a 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 30 5d 20 3d 20 2d 61 62 | num).{.$learnedLiterals[0].=.-ab |
41da0 | 73 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 21 24 6c 31 6e 75 6d 29 20 7b 0a 62 72 65 | s($literal);..if.(!$l1num).{.bre |
41dc0 | 61 6b 20 32 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 | ak.2;.}..foreach.($learnedLitera |
41de0 | 6c 73 20 61 73 20 24 69 20 3d 3e 20 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 29 20 7b 0a 69 | ls.as.$i.=>.$learnedLiteral).{.i |
41e00 | 66 20 28 24 69 20 21 3d 3d 20 30 29 20 7b 0a 75 6e 73 65 74 28 24 73 65 65 6e 5b 61 62 73 28 24 | f.($i.!==.0).{.unset($seen[abs($ |
41e20 | 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 29 5d 29 3b 0a 7d 0a 7d 0a 0a 20 24 6c 31 6e 75 6d 2b | learnedLiteral)]);.}.}...$l1num+ |
41e40 | 2b 3b 0a 24 6c 31 72 65 74 72 79 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 24 64 65 63 69 73 69 | +;.$l1retry.=.true;.}.}..$decisi |
41e60 | 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 61 74 4f 66 66 73 65 74 28 | on.=.$this->decisions->atOffset( |
41e80 | 24 64 65 63 69 73 69 6f 6e 49 64 29 3b 0a 24 72 75 6c 65 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b | $decisionId);.$rule.=.$decision[ |
41ea0 | 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 7d 0a 0a | Decisions::DECISION_REASON];.}.. |
41ec0 | 24 77 68 79 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 29 | $why.=.count($this->learnedPool) |
41ee0 | 20 2d 20 31 3b 0a 0a 69 66 20 28 21 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 30 5d 29 | .-.1;..if.(!$learnedLiterals[0]) |
41f00 | 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 53 6f 6c 76 65 72 42 75 67 45 78 63 65 70 74 69 6f 6e 28 | .{.throw.new.SolverBugException( |
41f20 | 0a 22 44 69 64 20 6e 6f 74 20 66 69 6e 64 20 61 20 6c 65 61 72 6e 61 62 6c 65 20 6c 69 74 65 72 | ."Did.not.find.a.learnable.liter |
41f40 | 61 6c 20 69 6e 20 61 6e 61 6c 79 7a 65 64 20 72 75 6c 65 20 24 61 6e 61 6c 79 7a 65 64 52 75 6c | al.in.analyzed.rule.$analyzedRul |
41f60 | 65 2e 22 0a 29 3b 0a 7d 0a 0a 24 6e 65 77 52 75 6c 65 20 3d 20 6e 65 77 20 52 75 6c 65 28 24 74 | e.".);.}..$newRule.=.new.Rule($t |
41f80 | 68 69 73 2d 3e 70 6f 6f 6c 2c 20 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 2c 20 52 75 6c | his->pool,.$learnedLiterals,.Rul |
41fa0 | 65 3a 3a 52 55 4c 45 5f 4c 45 41 52 4e 45 44 2c 20 24 77 68 79 29 3b 0a 0a 72 65 74 75 72 6e 20 | e::RULE_LEARNED,.$why);..return. |
41fc0 | 61 72 72 61 79 28 24 6c 65 61 72 6e 65 64 4c 69 74 65 72 61 6c 73 5b 30 5d 2c 20 24 72 75 6c 65 | array($learnedLiterals[0],.$rule |
41fe0 | 4c 65 76 65 6c 2c 20 24 6e 65 77 52 75 6c 65 2c 20 24 77 68 79 29 3b 0a 7d 0a 0a 70 72 69 76 61 | Level,.$newRule,.$why);.}..priva |
42000 | 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c | te.function.analyzeUnsolvableRul |
42020 | 65 28 24 70 72 6f 62 6c 65 6d 2c 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 0a 7b 0a 24 77 68 | e($problem,.$conflictRule).{.$wh |
42040 | 79 20 3d 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 67 65 74 49 64 28 29 3b 0a 0a 69 66 20 | y.=.$conflictRule->getId();..if. |
42060 | 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 20 52 75 6c | ($conflictRule->getType().==.Rul |
42080 | 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 29 20 7b 0a 24 6c 65 61 72 6e 65 64 57 68 | eSet::TYPE_LEARNED).{.$learnedWh |
420a0 | 79 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 57 68 79 5b 24 77 68 79 5d 3b 0a 24 70 72 | y.=.$this->learnedWhy[$why];.$pr |
420c0 | 6f 62 6c 65 6d 52 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b | oblemRules.=.$this->learnedPool[ |
420e0 | 24 6c 65 61 72 6e 65 64 57 68 79 5d 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 72 6f 62 6c 65 6d | $learnedWhy];..foreach.($problem |
42100 | 52 75 6c 65 73 20 61 73 20 24 70 72 6f 62 6c 65 6d 52 75 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e | Rules.as.$problemRule).{.$this-> |
42120 | 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c 65 28 24 70 72 6f 62 6c 65 6d 2c 20 | analyzeUnsolvableRule($problem,. |
42140 | 24 70 72 6f 62 6c 65 6d 52 75 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 | $problemRule);.}..return;.}..if. |
42160 | 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2d 3e 67 65 74 54 79 70 65 28 29 20 3d 3d 20 52 75 6c | ($conflictRule->getType().==.Rul |
42180 | 65 53 65 74 3a 3a 54 59 50 45 5f 50 41 43 4b 41 47 45 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a | eSet::TYPE_PACKAGE).{...return;. |
421a0 | 7d 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 6e 65 78 74 53 65 63 74 69 6f 6e 28 29 3b 0a 24 70 72 6f | }..$problem->nextSection();.$pro |
421c0 | 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 7d 0a | blem->addRule($conflictRule);.}. |
421e0 | 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 | .private.function.analyzeUnsolva |
42200 | 62 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 | ble($conflictRule,.$disableRules |
42220 | 29 0a 7b 0a 24 70 72 6f 62 6c 65 6d 20 3d 20 6e 65 77 20 50 72 6f 62 6c 65 6d 3b 0a 24 70 72 6f | ).{.$problem.=.new.Problem;.$pro |
42240 | 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 0a 24 | blem->addRule($conflictRule);..$ |
42260 | 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 6c 65 28 24 70 72 6f | this->analyzeUnsolvableRule($pro |
42280 | 62 6c 65 6d 2c 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 | blem,.$conflictRule);..$this->pr |
422a0 | 6f 62 6c 65 6d 73 5b 5d 20 3d 20 24 70 72 6f 62 6c 65 6d 3b 0a 0a 24 73 65 65 6e 20 3d 20 61 72 | oblems[].=.$problem;..$seen.=.ar |
422c0 | 72 61 79 28 29 3b 0a 24 6c 69 74 65 72 61 6c 73 20 3d 20 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 | ray();.$literals.=.$conflictRule |
422e0 | 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 | ->getLiterals();..foreach.($lite |
42300 | 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d | rals.as.$literal).{...if.($this- |
42320 | 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 6c 29 29 20 7b | >decisions->satisfy($literal)).{ |
42340 | 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 | .continue;.}.$seen[abs($literal) |
42360 | 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 65 63 | ].=.true;.}..foreach.($this->dec |
42380 | 69 73 69 6f 6e 73 20 61 73 20 24 64 65 63 69 73 69 6f 6e 29 20 7b 0a 24 6c 69 74 65 72 61 6c 20 | isions.as.$decision).{.$literal. |
423a0 | 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 4f 4e 5f | =.$decision[Decisions::DECISION_ |
423c0 | 4c 49 54 45 52 41 4c 5d 3b 0a 0a 0a 20 69 66 20 28 21 69 73 73 65 74 28 24 73 65 65 6e 5b 61 62 | LITERAL];....if.(!isset($seen[ab |
423e0 | 73 28 24 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 77 | s($literal)])).{.continue;.}..$w |
42400 | 68 79 20 3d 20 24 64 65 63 69 73 69 6f 6e 5b 44 65 63 69 73 69 6f 6e 73 3a 3a 44 45 43 49 53 49 | hy.=.$decision[Decisions::DECISI |
42420 | 4f 4e 5f 52 45 41 53 4f 4e 5d 3b 0a 0a 24 70 72 6f 62 6c 65 6d 2d 3e 61 64 64 52 75 6c 65 28 24 | ON_REASON];..$problem->addRule($ |
42440 | 77 68 79 29 3b 0a 24 74 68 69 73 2d 3e 61 6e 61 6c 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 52 75 | why);.$this->analyzeUnsolvableRu |
42460 | 6c 65 28 24 70 72 6f 62 6c 65 6d 2c 20 24 77 68 79 29 3b 0a 0a 24 6c 69 74 65 72 61 6c 73 20 3d | le($problem,.$why);..$literals.= |
42480 | 20 24 77 68 79 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 | .$why->getLiterals();..foreach.( |
424a0 | 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 0a 20 69 66 20 28 24 | $literals.as.$literal).{...if.($ |
424c0 | 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 72 61 | this->decisions->satisfy($litera |
424e0 | 6c 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 73 65 65 6e 5b 61 62 73 28 24 6c 69 74 | l)).{.continue;.}.$seen[abs($lit |
42500 | 65 72 61 6c 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 69 73 61 62 6c 65 | eral)].=.true;.}.}..if.($disable |
42520 | 52 75 6c 65 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d | Rules).{.foreach.($this->problem |
42540 | 73 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 70 72 6f 62 6c 65 6d 73 29 20 2d 20 31 5d 20 61 73 | s[count($this->problems).-.1].as |
42560 | 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 64 69 73 61 62 6c 65 50 72 6f 62 6c 65 | .$reason).{.$this->disableProble |
42580 | 6d 28 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 72 65 | m($reason['rule']);.}..$this->re |
425a0 | 73 65 74 53 6f 6c 76 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 | setSolver();..return.1;.}..retur |
425c0 | 6e 20 30 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 61 62 6c 65 | n.0;.}..private.function.disable |
425e0 | 50 72 6f 62 6c 65 6d 28 24 77 68 79 29 0a 7b 0a 24 6a 6f 62 20 3d 20 24 77 68 79 2d 3e 67 65 74 | Problem($why).{.$job.=.$why->get |
42600 | 4a 6f 62 28 29 3b 0a 0a 69 66 20 28 21 24 6a 6f 62 29 20 7b 0a 24 77 68 79 2d 3e 64 69 73 61 62 | Job();..if.(!$job).{.$why->disab |
42620 | 6c 65 28 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 | le();..return;.}....foreach.($th |
42640 | 69 73 2d 3e 72 75 6c 65 73 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 69 66 20 28 24 6a 6f 62 20 3d | is->rules.as.$rule).{.if.($job.= |
42660 | 3d 3d 20 24 72 75 6c 65 2d 3e 67 65 74 4a 6f 62 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 | ==.$rule->getJob()).{.$rule->dis |
42680 | 61 62 6c 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 | able();.}.}.}..private.function. |
426a0 | 72 65 73 65 74 53 6f 6c 76 65 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 | resetSolver().{.$this->decisions |
426c0 | 2d 3e 72 65 73 65 74 28 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 | ->reset();..$this->propagateInde |
426e0 | 78 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 20 3d 20 61 72 72 61 79 28 29 | x.=.0;.$this->branches.=.array() |
42700 | 3b 0a 0a 24 74 68 69 73 2d 3e 65 6e 61 62 6c 65 44 69 73 61 62 6c 65 4c 65 61 72 6e 65 64 52 75 | ;..$this->enableDisableLearnedRu |
42720 | 6c 65 73 28 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 6b 65 41 73 73 65 72 74 69 6f 6e 52 75 6c 65 44 | les();.$this->makeAssertionRuleD |
42740 | 65 63 69 73 69 6f 6e 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 | ecisions();.}.........private.fu |
42760 | 6e 63 74 69 6f 6e 20 65 6e 61 62 6c 65 44 69 73 61 62 6c 65 4c 65 61 72 6e 65 64 52 75 6c 65 73 | nction.enableDisableLearnedRules |
42780 | 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 2d 3e 67 65 74 49 | ().{.foreach.($this->rules->getI |
427a0 | 74 65 72 61 74 6f 72 46 6f 72 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4c 45 41 52 4e 45 44 | teratorFor(RuleSet::TYPE_LEARNED |
427c0 | 29 20 61 73 20 24 72 75 6c 65 29 20 7b 0a 24 77 68 79 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 | ).as.$rule).{.$why.=.$this->lear |
427e0 | 6e 65 64 57 68 79 5b 24 72 75 6c 65 2d 3e 67 65 74 49 64 28 29 5d 3b 0a 24 70 72 6f 62 6c 65 6d | nedWhy[$rule->getId()];.$problem |
42800 | 52 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 65 61 72 6e 65 64 50 6f 6f 6c 5b 24 77 68 79 5d | Rules.=.$this->learnedPool[$why] |
42820 | 3b 0a 0a 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 | ;..$foundDisabled.=.false;.forea |
42840 | 63 68 20 28 24 70 72 6f 62 6c 65 6d 52 75 6c 65 73 20 61 73 20 24 70 72 6f 62 6c 65 6d 52 75 6c | ch.($problemRules.as.$problemRul |
42860 | 65 29 20 7b 0a 69 66 20 28 24 70 72 6f 62 6c 65 6d 52 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 | e).{.if.($problemRule->isDisable |
42880 | 64 28 29 29 20 7b 0a 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 3d 20 74 72 75 65 3b 0a 62 72 | d()).{.$foundDisabled.=.true;.br |
428a0 | 65 61 6b 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 64 20 26 26 20 | eak;.}.}..if.($foundDisabled.&&. |
428c0 | 24 72 75 6c 65 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 72 75 6c 65 2d 3e 64 69 73 | $rule->isEnabled()).{.$rule->dis |
428e0 | 61 62 6c 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 24 66 6f 75 6e 64 44 69 73 61 62 6c 65 | able();.}.elseif.(!$foundDisable |
42900 | 64 20 26 26 20 24 72 75 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 24 72 75 6c | d.&&.$rule->isDisabled()).{.$rul |
42920 | 65 2d 3e 65 6e 61 62 6c 65 28 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 | e->enable();.}.}.}..private.func |
42940 | 74 69 6f 6e 20 72 75 6e 53 61 74 28 24 64 69 73 61 62 6c 65 52 75 6c 65 73 20 3d 20 74 72 75 65 | tion.runSat($disableRules.=.true |
42960 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 70 61 67 61 74 65 49 6e 64 65 78 20 3d 20 30 3b 0a 0a | ).{.$this->propagateIndex.=.0;.. |
42980 | 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 20 0a 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 | ..................$decisionQueue |
429a0 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 65 63 69 73 69 6f 6e 53 75 70 70 6c 65 6d 65 6e 74 51 | .=.array();.$decisionSupplementQ |
429c0 | 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 64 69 73 61 62 6c 65 52 75 6c 65 73 20 3d 20 | ueue.=.array();.$disableRules.=. |
429e0 | 61 72 72 61 79 28 29 3b 0a 0a 24 6c 65 76 65 6c 20 3d 20 31 3b 0a 24 73 79 73 74 65 6d 4c 65 76 | array();..$level.=.1;.$systemLev |
42a00 | 65 6c 20 3d 20 24 6c 65 76 65 6c 20 2b 20 31 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 50 6f 73 20 3d | el.=.$level.+.1;.$installedPos.= |
42a20 | 20 30 3b 0a 0a 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 24 | .0;..while.(true).{..if.(1.===.$ |
42a40 | 6c 65 76 65 6c 29 20 7b 0a 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 20 3d 20 24 74 68 69 73 2d 3e | level).{.$conflictRule.=.$this-> |
42a60 | 70 72 6f 70 61 67 61 74 65 28 24 6c 65 76 65 6c 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 | propagate($level);.if.(null.!==. |
42a80 | 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 6e 61 6c | $conflictRule).{.if.($this->anal |
42aa0 | 79 7a 65 55 6e 73 6f 6c 76 61 62 6c 65 28 24 63 6f 6e 66 6c 69 63 74 52 75 6c 65 2c 20 24 64 69 | yzeUnsolvable($conflictRule,.$di |
42ac0 | 73 61 62 6c 65 52 75 6c 65 73 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 | sableRules)).{.continue;.}..retu |
42ae0 | 72 6e 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 73 79 73 74 65 6d 4c | rn;.}.}....if.($level.<.$systemL |
42b00 | 65 76 65 6c 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 24 74 68 69 73 2d 3e 72 75 6c 65 73 | evel).{.$iterator.=.$this->rules |
42b20 | 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 46 6f 72 28 52 75 6c 65 53 65 74 3a 3a 54 59 50 45 5f 4a | ->getIteratorFor(RuleSet::TYPE_J |
42b40 | 4f 42 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 69 74 65 72 61 74 6f 72 20 61 73 20 24 72 75 6c 65 | OB);.foreach.($iterator.as.$rule |
42b60 | 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 64 | ).{.if.($rule->isEnabled()).{.$d |
42b80 | 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6e 6f 6e 65 53 61 74 | ecisionQueue.=.array();.$noneSat |
42ba0 | 69 73 66 69 65 64 20 3d 20 74 72 75 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 75 6c 65 2d 3e | isfied.=.true;..foreach.($rule-> |
42bc0 | 67 65 74 4c 69 74 65 72 61 6c 73 28 29 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 | getLiterals().as.$literal).{.if. |
42be0 | 28 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6c 69 74 65 | ($this->decisions->satisfy($lite |
42c00 | 72 61 6c 29 29 20 7b 0a 24 6e 6f 6e 65 53 61 74 69 73 66 69 65 64 20 3d 20 66 61 6c 73 65 3b 0a | ral)).{.$noneSatisfied.=.false;. |
42c20 | 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3e 20 30 20 26 26 20 24 74 68 | break;.}.if.($literal.>.0.&&.$th |
42c40 | 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 24 6c 69 74 65 72 61 | is->decisions->undecided($litera |
42c60 | 6c 29 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 65 72 61 | l)).{.$decisionQueue[].=.$litera |
42c80 | 6c 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6e 6f 6e 65 53 61 74 69 73 66 69 65 64 20 26 26 20 63 6f | l;.}.}..if.($noneSatisfied.&&.co |
42ca0 | 75 6e 74 28 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 29 29 20 7b 0a 0a 20 0a 20 69 66 20 28 63 | unt($decisionQueue)).{.....if.(c |
42cc0 | 6f 75 6e 74 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 29 20 21 3d 20 63 6f 75 6e 74 28 | ount($this->installed).!=.count( |
42ce0 | 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 29 29 20 7b 0a 24 70 72 75 6e 65 64 51 75 65 75 | $this->updateMap)).{.$prunedQueu |
42d00 | 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 63 69 73 69 6f 6e 51 | e.=.array();.foreach.($decisionQ |
42d20 | 75 65 75 65 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 | ueue.as.$literal).{.if.(isset($t |
42d40 | 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 64 4d 61 70 5b 61 62 73 28 24 6c 69 74 65 72 61 6c 29 5d | his->installedMap[abs($literal)] |
42d60 | 29 29 20 7b 0a 24 70 72 75 6e 65 64 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a | )).{.$prunedQueue[].=.$literal;. |
42d80 | 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4d 61 70 5b 61 62 73 28 24 | if.(isset($this->updateMap[abs($ |
42da0 | 6c 69 74 65 72 61 6c 29 5d 29 29 20 7b 0a 24 70 72 75 6e 65 64 51 75 65 75 65 20 3d 20 24 64 65 | literal)])).{.$prunedQueue.=.$de |
42dc0 | 63 69 73 69 6f 6e 51 75 65 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 24 64 65 63 69 73 | cisionQueue;.break;.}.}.}.$decis |
42de0 | 69 6f 6e 51 75 65 75 65 20 3d 20 24 70 72 75 6e 65 64 51 75 65 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 | ionQueue.=.$prunedQueue;.}.}..if |
42e00 | 20 28 24 6e 6f 6e 65 53 61 74 69 73 66 69 65 64 20 26 26 20 63 6f 75 6e 74 28 24 64 65 63 69 73 | .($noneSatisfied.&&.count($decis |
42e20 | 69 6f 6e 51 75 65 75 65 29 29 20 7b 0a 0a 24 6f 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a | ionQueue)).{..$oLevel.=.$level;. |
42e40 | 24 6c 65 76 65 6c 20 3d 20 24 74 68 69 73 2d 3e 73 65 6c 65 63 74 41 6e 64 49 6e 73 74 61 6c 6c | $level.=.$this->selectAndInstall |
42e60 | 28 24 6c 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 2c 20 24 64 69 73 61 62 6c | ($level,.$decisionQueue,.$disabl |
42e80 | 65 52 75 6c 65 73 2c 20 24 72 75 6c 65 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 24 6c 65 76 65 | eRules,.$rule);..if.(0.===.$leve |
42ea0 | 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 3d 20 24 6f 4c | l).{.return;.}.if.($level.<=.$oL |
42ec0 | 65 76 65 6c 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 24 73 79 73 74 65 6d 4c | evel).{.break;.}.}.}.}..$systemL |
42ee0 | 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 20 2b 20 31 3b 0a 0a 0a 20 24 69 74 65 72 61 74 6f 72 2d | evel.=.$level.+.1;....$iterator- |
42f00 | 3e 6e 65 78 74 28 29 3b 0a 69 66 20 28 24 69 74 65 72 61 74 6f 72 2d 3e 76 61 6c 69 64 28 29 29 | >next();.if.($iterator->valid()) |
42f20 | 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 | .{.continue;.}.}..if.($level.<.$ |
42f40 | 73 79 73 74 65 6d 4c 65 76 65 6c 29 20 7b 0a 24 73 79 73 74 65 6d 4c 65 76 65 6c 20 3d 20 24 6c | systemLevel).{.$systemLevel.=.$l |
42f60 | 65 76 65 6c 3b 0a 7d 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 6e 20 3d 20 30 3b 20 24 6e | evel;.}..for.($i.=.0,.$n.=.0;.$n |
42f80 | 20 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 29 3b 20 24 69 2b 2b 2c 20 24 6e | .<.count($this->rules);.$i++,.$n |
42fa0 | 2b 2b 29 20 7b 0a 69 66 20 28 24 69 20 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 72 75 6c | ++).{.if.($i.==.count($this->rul |
42fc0 | 65 73 29 29 20 7b 0a 24 69 20 3d 20 30 3b 0a 7d 0a 0a 24 72 75 6c 65 20 3d 20 24 74 68 69 73 2d | es)).{.$i.=.0;.}..$rule.=.$this- |
42fe0 | 3e 72 75 6c 65 73 2d 3e 72 75 6c 65 42 79 49 64 28 24 69 29 3b 0a 24 6c 69 74 65 72 61 6c 73 20 | >rules->ruleById($i);.$literals. |
43000 | 3d 20 24 72 75 6c 65 2d 3e 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 0a 69 66 20 28 24 72 75 | =.$rule->getLiterals();..if.($ru |
43020 | 6c 65 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a | le->isDisabled()).{.continue;.}. |
43040 | 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 0a 20 | .$decisionQueue.=.array();...... |
43060 | 0a 20 0a 20 0a 20 0a 20 66 6f 72 65 61 63 68 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6c | ........foreach.($literals.as.$l |
43080 | 69 74 65 72 61 6c 29 20 7b 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 3c 3d 20 30 29 20 7b 0a 69 | iteral).{.if.($literal.<=.0).{.i |
430a0 | 66 20 28 21 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 49 6e 73 | f.(!$this->decisions->decidedIns |
430c0 | 74 61 6c 6c 28 61 62 73 28 24 6c 69 74 65 72 61 6c 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 | tall(abs($literal))).{.continue. |
430e0 | 32 3b 20 0a 20 7d 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 63 69 73 | 2;...}.}.else.{.if.($this->decis |
43100 | 69 6f 6e 73 2d 3e 64 65 63 69 64 65 64 49 6e 73 74 61 6c 6c 28 61 62 73 28 24 6c 69 74 65 72 61 | ions->decidedInstall(abs($litera |
43120 | 6c 29 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 20 32 3b 20 0a 20 7d 0a 69 66 20 28 24 74 68 69 73 | l))).{.continue.2;...}.if.($this |
43140 | 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 75 6e 64 65 63 69 64 65 64 28 61 62 73 28 24 6c 69 74 65 | ->decisions->undecided(abs($lite |
43160 | 72 61 6c 29 29 29 20 7b 0a 24 64 65 63 69 73 69 6f 6e 51 75 65 75 65 5b 5d 20 3d 20 24 6c 69 74 | ral))).{.$decisionQueue[].=.$lit |
43180 | 65 72 61 6c 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 64 65 63 69 73 69 | eral;.}.}.}....if.(count($decisi |
431a0 | 6f 6e 51 75 65 75 65 29 20 3c 20 32 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6f 4c | onQueue).<.2).{.continue;.}..$oL |
431c0 | 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 24 6c 65 76 65 6c 20 3d 20 24 74 68 69 73 2d 3e 73 | evel.=.$level;.$level.=.$this->s |
431e0 | 65 6c 65 63 74 41 6e 64 49 6e 73 74 61 6c 6c 28 24 6c 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f | electAndInstall($level,.$decisio |
43200 | 6e 51 75 65 75 65 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 24 72 75 6c 65 29 3b 0a 0a | nQueue,.$disableRules,.$rule);.. |
43220 | 69 66 20 28 30 20 3d 3d 3d 20 24 6c 65 76 65 6c 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 0a | if.(0.===.$level).{.return;.}... |
43240 | 20 24 6e 20 3d 20 2d 31 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3c 20 24 73 79 73 74 65 | .$n.=.-1;.}..if.($level.<.$syste |
43260 | 6d 4c 65 76 65 6c 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 | mLevel).{.continue;.}....if.(cou |
43280 | 6e 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 29 20 7b 0a 0a 24 6c 61 73 74 4c 69 74 | nt($this->branches)).{..$lastLit |
432a0 | 65 72 61 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 61 73 74 4c 65 76 65 6c 20 3d 20 6e 75 6c 6c 3b 0a | eral.=.null;.$lastLevel.=.null;. |
432c0 | 24 6c 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 20 3d 20 30 3b 0a 24 6c 61 73 74 42 72 61 6e 63 | $lastBranchIndex.=.0;.$lastBranc |
432e0 | 68 4f 66 66 73 65 74 20 3d 20 30 3b 0a 24 6c 20 3d 20 30 3b 0a 0a 66 6f 72 20 28 24 69 20 3d 20 | hOffset.=.0;.$l.=.0;..for.($i.=. |
43300 | 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 29 20 2d 20 31 3b 20 24 69 20 3e | count($this->branches).-.1;.$i.> |
43320 | 3d 20 30 3b 20 24 69 2d 2d 29 20 7b 0a 6c 69 73 74 28 24 6c 69 74 65 72 61 6c 73 2c 20 24 6c 29 | =.0;.$i--).{.list($literals,.$l) |
43340 | 20 3d 20 24 74 68 69 73 2d 3e 62 72 61 6e 63 68 65 73 5b 24 69 5d 3b 0a 0a 66 6f 72 65 61 63 68 | .=.$this->branches[$i];..foreach |
43360 | 20 28 24 6c 69 74 65 72 61 6c 73 20 61 73 20 24 6f 66 66 73 65 74 20 3d 3e 20 24 6c 69 74 65 72 | .($literals.as.$offset.=>.$liter |
43380 | 61 6c 29 20 7b 0a 69 66 20 28 24 6c 69 74 65 72 61 6c 20 26 26 20 24 6c 69 74 65 72 61 6c 20 3e | al).{.if.($literal.&&.$literal.> |
433a0 | 20 30 20 26 26 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 73 69 6f 6e | .0.&&.$this->decisions->decision |
433c0 | 4c 65 76 65 6c 28 24 6c 69 74 65 72 61 6c 29 20 3e 20 24 6c 20 2b 20 31 29 20 7b 0a 24 6c 61 73 | Level($literal).>.$l.+.1).{.$las |
433e0 | 74 4c 69 74 65 72 61 6c 20 3d 20 24 6c 69 74 65 72 61 6c 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 | tLiteral.=.$literal;.$lastBranch |
43400 | 49 6e 64 65 78 20 3d 20 24 69 3b 0a 24 6c 61 73 74 42 72 61 6e 63 68 4f 66 66 73 65 74 20 3d 20 | Index.=.$i;.$lastBranchOffset.=. |
43420 | 24 6f 66 66 73 65 74 3b 0a 24 6c 61 73 74 4c 65 76 65 6c 20 3d 20 24 6c 3b 0a 7d 0a 7d 0a 7d 0a | $offset;.$lastLevel.=.$l;.}.}.}. |
43440 | 0a 69 66 20 28 24 6c 61 73 74 4c 69 74 65 72 61 6c 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 | .if.($lastLiteral).{.unset($this |
43460 | 2d 3e 62 72 61 6e 63 68 65 73 5b 24 6c 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 5d 5b 73 65 6c | ->branches[$lastBranchIndex][sel |
43480 | 66 3a 3a 42 52 41 4e 43 48 5f 4c 49 54 45 52 41 4c 53 5d 5b 24 6c 61 73 74 42 72 61 6e 63 68 4f | f::BRANCH_LITERALS][$lastBranchO |
434a0 | 66 66 73 65 74 5d 29 3b 0a 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 62 72 61 | ffset]);.array_values($this->bra |
434c0 | 6e 63 68 65 73 5b 24 6c 61 73 74 42 72 61 6e 63 68 49 6e 64 65 78 5d 5b 73 65 6c 66 3a 3a 42 52 | nches[$lastBranchIndex][self::BR |
434e0 | 41 4e 43 48 5f 4c 49 54 45 52 41 4c 53 5d 29 3b 0a 0a 24 6c 65 76 65 6c 20 3d 20 24 6c 61 73 74 | ANCH_LITERALS]);..$level.=.$last |
43500 | 4c 65 76 65 6c 3b 0a 24 74 68 69 73 2d 3e 72 65 76 65 72 74 28 24 6c 65 76 65 6c 29 3b 0a 0a 24 | Level;.$this->revert($level);..$ |
43520 | 77 68 79 20 3d 20 24 74 68 69 73 2d 3e 64 65 63 69 73 69 6f 6e 73 2d 3e 6c 61 73 74 52 65 61 73 | why.=.$this->decisions->lastReas |
43540 | 6f 6e 28 29 3b 0a 0a 24 6f 4c 65 76 65 6c 20 3d 20 24 6c 65 76 65 6c 3b 0a 24 6c 65 76 65 6c 20 | on();..$oLevel.=.$level;.$level. |
43560 | 3d 20 24 74 68 69 73 2d 3e 73 65 74 50 72 6f 70 61 67 61 74 65 4c 65 61 72 6e 28 24 6c 65 76 65 | =.$this->setPropagateLearn($leve |
43580 | 6c 2c 20 24 6c 61 73 74 4c 69 74 65 72 61 6c 2c 20 24 64 69 73 61 62 6c 65 52 75 6c 65 73 2c 20 | l,.$lastLiteral,.$disableRules,. |
435a0 | 24 77 68 79 29 3b 0a 0a 69 66 20 28 24 6c 65 76 65 6c 20 3d 3d 20 30 29 20 7b 0a 72 65 74 75 72 | $why);..if.($level.==.0).{.retur |
435c0 | 6e 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 7d 0a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a | n;.}..continue;.}.}..break;.}.}. |
435e0 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d | }.<?php............namespace.Com |
43600 | 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 75 73 65 20 43 | poser\DependencyResolver;..use.C |
43620 | 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 4c | omposer\Package\LinkConstraint\L |
43640 | 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 63 6c 61 73 | inkConstraintInterface;.....clas |
43660 | 73 20 52 65 71 75 65 73 74 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6a 6f 62 73 3b 0a 70 72 6f | s.Request.{.protected.$jobs;.pro |
43680 | 74 65 63 74 65 64 20 24 70 6f 6f 6c 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f | tected.$pool;..public.function._ |
436a0 | 5f 63 6f 6e 73 74 72 75 63 74 28 50 6f 6f 6c 20 24 70 6f 6f 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e | _construct(Pool.$pool).{.$this-> |
436c0 | 70 6f 6f 6c 20 3d 20 24 70 6f 6f 6c 3b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 20 3d 20 61 72 72 61 | pool.=.$pool;.$this->jobs.=.arra |
436e0 | 79 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 | y();.}..public.function.install( |
43700 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 | $packageName,.LinkConstraintInte |
43720 | 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 | rface.$constraint.=.null).{.$thi |
43740 | 73 2d 3e 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 69 6e 73 74 61 6c 6c | s->addJob($packageName,.'install |
43760 | 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | ',.$constraint);.}..public.funct |
43780 | 69 6f 6e 20 75 70 64 61 74 65 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 4c 69 6e 6b 43 6f 6e | ion.update($packageName,.LinkCon |
437a0 | 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e | straintInterface.$constraint.=.n |
437c0 | 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4a 6f 62 28 24 70 61 63 6b 61 67 65 4e 61 6d | ull).{.$this->addJob($packageNam |
437e0 | 65 2c 20 27 75 70 64 61 74 65 27 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 0a 70 75 | e,.'update',.$constraint);.}..pu |
43800 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 4e 61 6d | blic.function.remove($packageNam |
43820 | 65 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 | e,.LinkConstraintInterface.$cons |
43840 | 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4a 6f 62 28 24 | traint.=.null).{.$this->addJob($ |
43860 | 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 27 72 65 6d 6f 76 65 27 2c 20 24 63 6f 6e 73 74 72 61 69 | packageName,.'remove',.$constrai |
43880 | 6e 74 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4a 6f | nt);.}..protected.function.addJo |
438a0 | 62 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 20 24 63 6d 64 2c 20 4c 69 6e 6b 43 6f 6e 73 74 72 | b($packageName,.$cmd,.LinkConstr |
438c0 | 61 69 6e 74 49 6e 74 65 72 66 61 63 65 20 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 75 6c 6c | aintInterface.$constraint.=.null |
438e0 | 29 0a 7b 0a 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 70 | ).{.$packageName.=.strtolower($p |
43900 | 61 63 6b 61 67 65 4e 61 6d 65 29 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e | ackageName);.$packages.=.$this-> |
43920 | 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c | pool->whatProvides($packageName, |
43940 | 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 5b 5d 20 3d 20 | .$constraint);..$this->jobs[].=. |
43960 | 61 72 72 61 79 28 0a 27 70 61 63 6b 61 67 65 73 27 20 3d 3e 20 24 70 61 63 6b 61 67 65 73 2c 0a | array(.'packages'.=>.$packages,. |
43980 | 27 63 6d 64 27 20 3d 3e 20 24 63 6d 64 2c 0a 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 20 3d 3e 20 | 'cmd'.=>.$cmd,.'packageName'.=>. |
439a0 | 24 70 61 63 6b 61 67 65 4e 61 6d 65 2c 0a 27 63 6f 6e 73 74 72 61 69 6e 74 27 20 3d 3e 20 24 63 | $packageName,.'constraint'.=>.$c |
439c0 | 6f 6e 73 74 72 61 69 6e 74 2c 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | onstraint,.);.}..public.function |
439e0 | 20 75 70 64 61 74 65 41 6c 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6a 6f 62 73 5b 5d 20 3d 20 61 | .updateAll().{.$this->jobs[].=.a |
43a00 | 72 72 61 79 28 27 63 6d 64 27 20 3d 3e 20 27 75 70 64 61 74 65 2d 61 6c 6c 27 2c 20 27 70 61 63 | rray('cmd'.=>.'update-all',.'pac |
43a20 | 6b 61 67 65 73 27 20 3d 3e 20 61 72 72 61 79 28 29 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 | kages'.=>.array());.}..public.fu |
43a40 | 6e 63 74 69 6f 6e 20 67 65 74 4a 6f 62 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | nction.getJobs().{.return.$this- |
43a60 | 3e 6a 6f 62 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | >jobs;.}.}.<?php............name |
43a80 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 | space.Composer\DependencyResolve |
43aa0 | 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 62 6c 65 6d 0a 7b 0a 0a 0a 0a 0a 70 72 6f | r;.......class.Problem.{.....pro |
43ac0 | 74 65 63 74 65 64 20 24 72 65 61 73 6f 6e 53 65 65 6e 3b 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | tected.$reasonSeen;......protect |
43ae0 | 65 64 20 24 72 65 61 73 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 72 6f 74 65 63 74 65 | ed.$reasons.=.array();..protecte |
43b00 | 64 20 24 73 65 63 74 69 6f 6e 20 3d 20 30 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | d.$section.=.0;.......public.fun |
43b20 | 63 74 69 6f 6e 20 61 64 64 52 75 6c 65 28 52 75 6c 65 20 24 72 75 6c 65 29 0a 7b 0a 24 74 68 69 | ction.addRule(Rule.$rule).{.$thi |
43b40 | 73 2d 3e 61 64 64 52 65 61 73 6f 6e 28 24 72 75 6c 65 2d 3e 67 65 74 49 64 28 29 2c 20 61 72 72 | s->addReason($rule->getId(),.arr |
43b60 | 61 79 28 0a 27 72 75 6c 65 27 20 3d 3e 20 24 72 75 6c 65 2c 0a 27 6a 6f 62 27 20 3d 3e 20 24 72 | ay(.'rule'.=>.$rule,.'job'.=>.$r |
43b80 | 75 6c 65 2d 3e 67 65 74 4a 6f 62 28 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | ule->getJob(),.));.}.......publi |
43ba0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 61 73 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e | c.function.getReasons().{.return |
43bc0 | 20 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .$this->reasons;.}.......public. |
43be0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 61 72 72 61 79 20 24 | function.getPrettyString(array.$ |
43c00 | 69 6e 73 74 61 6c 6c 65 64 4d 61 70 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 72 65 61 73 6f | installedMap.=.array()).{.$reaso |
43c20 | 6e 73 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 5f 61 72 72 61 79 28 27 61 72 72 61 79 | ns.=.call_user_func_array('array |
43c40 | 5f 6d 65 72 67 65 27 2c 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 | _merge',.array_reverse($this->re |
43c60 | 61 73 6f 6e 73 29 29 3b 0a 0a 69 66 20 28 63 6f 75 6e 74 28 24 72 65 61 73 6f 6e 73 29 20 3d 3d | asons));..if.(count($reasons).== |
43c80 | 3d 20 31 29 20 7b 0a 72 65 73 65 74 28 24 72 65 61 73 6f 6e 73 29 3b 0a 24 72 65 61 73 6f 6e 20 | =.1).{.reset($reasons);.$reason. |
43ca0 | 3d 20 63 75 72 72 65 6e 74 28 24 72 65 61 73 6f 6e 73 29 3b 0a 0a 24 72 75 6c 65 20 3d 20 24 72 | =.current($reasons);..$rule.=.$r |
43cc0 | 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 3b 0a 24 6a 6f 62 20 3d 20 24 72 65 61 73 6f 6e 5b 27 6a | eason['rule'];.$job.=.$reason['j |
43ce0 | 6f 62 27 5d 3b 0a 0a 69 66 20 28 24 6a 6f 62 20 26 26 20 24 6a 6f 62 5b 27 63 6d 64 27 5d 20 3d | ob'];..if.($job.&&.$job['cmd'].= |
43d00 | 3d 3d 20 27 69 6e 73 74 61 6c 6c 27 20 26 26 20 65 6d 70 74 79 28 24 6a 6f 62 5b 27 70 61 63 6b | ==.'install'.&&.empty($job['pack |
43d20 | 61 67 65 73 27 5d 29 29 20 7b 0a 0a 20 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 | ages'])).{...if.(0.===.stripos($ |
43d40 | 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2c 20 27 65 78 74 2d 27 29 29 20 7b 0a 24 | job['packageName'],.'ext-')).{.$ |
43d60 | 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d | ext.=.substr($job['packageName'] |
43d80 | 2c 20 34 29 3b 0a 24 65 72 72 6f 72 20 3d 20 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 | ,.4);.$error.=.extension_loaded( |
43da0 | 24 65 78 74 29 20 3f 20 27 68 61 73 20 74 68 65 20 77 72 6f 6e 67 20 76 65 72 73 69 6f 6e 20 28 | $ext).?.'has.the.wrong.version.( |
43dc0 | 27 2e 70 68 70 76 65 72 73 69 6f 6e 28 24 65 78 74 29 2e 27 29 20 69 6e 73 74 61 6c 6c 65 64 27 | '.phpversion($ext).').installed' |
43de0 | 20 3a 20 27 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 73 79 73 74 65 6d 27 | .:.'is.missing.from.your.system' |
43e00 | 3b 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 64 | ;..return."\n....-.The.requested |
43e20 | 20 50 48 50 20 65 78 74 65 6e 73 69 6f 6e 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 | .PHP.extension.".$job['packageNa |
43e40 | 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f | me'].$this->constraintToText($jo |
43e60 | 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 27 2e 24 65 72 72 6f 72 2e 27 2e 27 3b | b['constraint']).'.'.$error.'.'; |
43e80 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 54 68 65 20 72 65 71 75 65 73 74 65 | .}..return."\n....-.The.requeste |
43ea0 | 64 20 70 61 63 6b 61 67 65 20 22 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e | d.package.".$job['packageName']. |
43ec0 | 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f | $this->constraintToText($job['co |
43ee0 | 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 66 6f 75 6e 64 | nstraint']).'.could.not.be.found |
43f00 | 2e 27 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 | .';.}.}..$messages.=.array();..f |
43f20 | 6f 72 65 61 63 68 20 28 24 72 65 61 73 6f 6e 73 20 61 73 20 24 72 65 61 73 6f 6e 29 20 7b 0a 0a | oreach.($reasons.as.$reason).{.. |
43f40 | 24 72 75 6c 65 20 3d 20 24 72 65 61 73 6f 6e 5b 27 72 75 6c 65 27 5d 3b 0a 24 6a 6f 62 20 3d 20 | $rule.=.$reason['rule'];.$job.=. |
43f60 | 24 72 65 61 73 6f 6e 5b 27 6a 6f 62 27 5d 3b 0a 0a 69 66 20 28 24 6a 6f 62 29 20 7b 0a 24 6d 65 | $reason['job'];..if.($job).{.$me |
43f80 | 73 73 61 67 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 6a 6f 62 54 6f 54 65 78 74 28 24 6a 6f 62 | ssages[].=.$this->jobToText($job |
43fa0 | 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 72 75 6c 65 29 20 7b 0a 69 66 20 28 24 72 75 6c 65 20 | );.}.elseif.($rule).{.if.($rule. |
43fc0 | 69 6e 73 74 61 6e 63 65 6f 66 20 52 75 6c 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d | instanceof.Rule).{.$messages[].= |
43fe0 | 20 24 72 75 6c 65 2d 3e 67 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 24 69 6e 73 74 61 6c 6c | .$rule->getPrettyString($install |
44000 | 65 64 4d 61 70 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 22 5c 6e 20 20 20 20 2d 20 22 | edMap);.}.}.}..return."\n....-." |
44020 | 2e 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 2d 20 22 2c 20 24 6d 65 73 73 61 67 65 73 29 3b | .implode("\n....-.",.$messages); |
44040 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 | .}........protected.function.add |
44060 | 52 65 61 73 6f 6e 28 24 69 64 2c 20 24 72 65 61 73 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 | Reason($id,.$reason).{.if.(!isse |
44080 | 74 28 24 74 68 69 73 2d 3e 72 65 61 73 6f 6e 53 65 65 6e 5b 24 69 64 5d 29 29 20 7b 0a 24 74 68 | t($this->reasonSeen[$id])).{.$th |
440a0 | 69 73 2d 3e 72 65 61 73 6f 6e 53 65 65 6e 5b 24 69 64 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 | is->reasonSeen[$id].=.true;.$thi |
440c0 | 73 2d 3e 72 65 61 73 6f 6e 73 5b 24 74 68 69 73 2d 3e 73 65 63 74 69 6f 6e 5d 5b 5d 20 3d 20 24 | s->reasons[$this->section][].=.$ |
440e0 | 72 65 61 73 6f 6e 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 65 78 | reason;.}.}..public.function.nex |
44100 | 74 53 65 63 74 69 6f 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 63 74 69 6f 6e 2b 2b 3b 0a 7d | tSection().{.$this->section++;.} |
44120 | 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6a 6f 62 54 6f | ........protected.function.jobTo |
44140 | 54 65 78 74 28 24 6a 6f 62 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6a 6f 62 5b 27 63 6d 64 27 5d | Text($job).{.switch.($job['cmd'] |
44160 | 29 20 7b 0a 63 61 73 65 20 27 69 6e 73 74 61 6c 6c 27 3a 0a 69 66 20 28 21 24 6a 6f 62 5b 27 70 | ).{.case.'install':.if.(!$job['p |
44180 | 61 63 6b 61 67 65 73 27 5d 29 20 7b 0a 72 65 74 75 72 6e 20 27 4e 6f 20 70 61 63 6b 61 67 65 20 | ackages']).{.return.'No.package. |
441a0 | 66 6f 75 6e 64 20 74 6f 20 73 61 74 69 73 66 79 20 69 6e 73 74 61 6c 6c 20 72 65 71 75 65 73 74 | found.to.satisfy.install.request |
441c0 | 20 66 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 | .for.'.$job['packageName'].$this |
441e0 | 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 | ->constraintToText($job['constra |
44200 | 69 6e 74 27 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 | int']);.}..return.'Installation. |
44220 | 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 | request.for.'.$job['packageName' |
44240 | 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 | ].$this->constraintToText($job[' |
44260 | 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 20 2d 3e 20 73 61 74 69 73 66 69 61 62 6c 65 20 62 | constraint']).'.->.satisfiable.b |
44280 | 79 20 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 6a 6f 62 5b 27 | y.'.$this->getPackageList($job[' |
442a0 | 70 61 63 6b 61 67 65 73 27 5d 29 2e 27 2e 27 3b 0a 63 61 73 65 20 27 75 70 64 61 74 65 27 3a 0a | packages']).'.';.case.'update':. |
442c0 | 72 65 74 75 72 6e 20 27 55 70 64 61 74 65 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a 6f | return.'Update.request.for.'.$jo |
442e0 | 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 | b['packageName'].$this->constrai |
44300 | 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 2e 27 | ntToText($job['constraint']).'.' |
44320 | 3b 0a 63 61 73 65 20 27 72 65 6d 6f 76 65 27 3a 0a 72 65 74 75 72 6e 20 27 52 65 6d 6f 76 61 6c | ;.case.'remove':.return.'Removal |
44340 | 20 72 65 71 75 65 73 74 20 66 6f 72 20 27 2e 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 | .request.for.'.$job['packageName |
44360 | 27 5d 2e 24 74 68 69 73 2d 3e 63 6f 6e 73 74 72 61 69 6e 74 54 6f 54 65 78 74 28 24 6a 6f 62 5b | '].$this->constraintToText($job[ |
44380 | 27 63 6f 6e 73 74 72 61 69 6e 74 27 5d 29 2e 27 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 4a 6f | 'constraint']).'';.}..return.'Jo |
443a0 | 62 28 63 6d 64 3d 27 2e 24 6a 6f 62 5b 27 63 6d 64 27 5d 2e 27 2c 20 74 61 72 67 65 74 3d 27 2e | b(cmd='.$job['cmd'].',.target='. |
443c0 | 24 6a 6f 62 5b 27 70 61 63 6b 61 67 65 4e 61 6d 65 27 5d 2e 27 2c 20 70 61 63 6b 61 67 65 73 3d | $job['packageName'].',.packages= |
443e0 | 5b 27 2e 24 74 68 69 73 2d 3e 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 6a 6f 62 5b 27 70 | ['.$this->getPackageList($job['p |
44400 | 61 63 6b 61 67 65 73 27 5d 29 2e 27 5d 29 27 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 | ackages']).'])';.}..protected.fu |
44420 | 6e 63 74 69 6f 6e 20 67 65 74 50 61 63 6b 61 67 65 4c 69 73 74 28 24 70 61 63 6b 61 67 65 73 29 | nction.getPackageList($packages) |
44440 | 0a 7b 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 75 6e | .{.return.implode(',.',.array_un |
44460 | 69 71 75 65 28 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 70 61 63 6b 61 67 | ique(array_map(function.($packag |
44480 | 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 53 | e).{.return.$package->getPrettyS |
444a0 | 74 72 69 6e 67 28 29 3b 0a 7d 2c 0a 24 70 61 63 6b 61 67 65 73 0a 29 29 29 3b 0a 7d 0a 0a 0a 0a | tring();.},.$packages.)));.}.... |
444c0 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e | ....protected.function.constrain |
444e0 | 74 54 6f 54 65 78 74 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 72 65 74 75 72 6e 20 28 24 | tToText($constraint).{.return.($ |
44500 | 63 6f 6e 73 74 72 61 69 6e 74 29 20 3f 20 27 20 27 2e 24 63 6f 6e 73 74 72 61 69 6e 74 2d 3e 67 | constraint).?.'.'.$constraint->g |
44520 | 65 74 50 72 65 74 74 79 53 74 72 69 6e 67 28 29 20 3a 20 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 | etPrettyString().:.'';.}.}.<?php |
44540 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 44 | ............namespace.Composer\D |
44560 | 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c | ependencyResolver;............cl |
44580 | 61 73 73 20 52 75 6c 65 57 61 74 63 68 47 72 61 70 68 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 | ass.RuleWatchGraph.{.protected.$ |
445a0 | 77 61 74 63 68 43 68 61 69 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | watchChains.=.array();.......... |
445c0 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 65 72 74 28 52 75 6c 65 57 | ....public.function.insert(RuleW |
445e0 | 61 74 63 68 4e 6f 64 65 20 24 6e 6f 64 65 29 0a 7b 0a 69 66 20 28 24 6e 6f 64 65 2d 3e 67 65 74 | atchNode.$node).{.if.($node->get |
44600 | 52 75 6c 65 28 29 2d 3e 69 73 41 73 73 65 72 74 69 6f 6e 28 29 29 20 7b 0a 72 65 74 75 72 6e 3b | Rule()->isAssertion()).{.return; |
44620 | 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 28 24 6e 6f 64 65 2d 3e 77 61 74 63 68 31 | .}..foreach.(array($node->watch1 |
44640 | 2c 20 24 6e 6f 64 65 2d 3e 77 61 74 63 68 32 29 20 61 73 20 24 6c 69 74 65 72 61 6c 29 20 7b 0a | ,.$node->watch2).as.$literal).{. |
44660 | 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c | if.(!isset($this->watchChains[$l |
44680 | 69 74 65 72 61 6c 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 | iteral])).{.$this->watchChains[$ |
446a0 | 6c 69 74 65 72 61 6c 5d 20 3d 20 6e 65 77 20 52 75 6c 65 57 61 74 63 68 43 68 61 69 6e 3b 0a 7d | literal].=.new.RuleWatchChain;.} |
446c0 | 0a 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 2d 3e | ..$this->watchChains[$literal]-> |
446e0 | 75 6e 73 68 69 66 74 28 24 6e 6f 64 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | unshift($node);.}.}............. |
44700 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 72 6f 70 | ............public.function.prop |
44720 | 61 67 61 74 65 4c 69 74 65 72 61 6c 28 24 64 65 63 69 64 65 64 4c 69 74 65 72 61 6c 2c 20 24 6c | agateLiteral($decidedLiteral,.$l |
44740 | 65 76 65 6c 2c 20 24 64 65 63 69 73 69 6f 6e 73 29 0a 7b 0a 0a 20 0a 20 0a 20 24 6c 69 74 65 72 | evel,.$decisions).{.......$liter |
44760 | 61 6c 20 3d 20 2d 24 64 65 63 69 64 65 64 4c 69 74 65 72 61 6c 3b 0a 0a 69 66 20 28 21 69 73 73 | al.=.-$decidedLiteral;..if.(!iss |
44780 | 65 74 28 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 29 | et($this->watchChains[$literal]) |
447a0 | 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 24 63 68 61 69 6e 20 3d 20 24 74 68 | ).{.return.null;.}..$chain.=.$th |
447c0 | 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 6c 69 74 65 72 61 6c 5d 3b 0a 0a 24 63 68 61 | is->watchChains[$literal];..$cha |
447e0 | 69 6e 2d 3e 72 65 77 69 6e 64 28 29 3b 0a 77 68 69 6c 65 20 28 24 63 68 61 69 6e 2d 3e 76 61 6c | in->rewind();.while.($chain->val |
44800 | 69 64 28 29 29 20 7b 0a 24 6e 6f 64 65 20 3d 20 24 63 68 61 69 6e 2d 3e 63 75 72 72 65 6e 74 28 | id()).{.$node.=.$chain->current( |
44820 | 29 3b 0a 24 6f 74 68 65 72 57 61 74 63 68 20 3d 20 24 6e 6f 64 65 2d 3e 67 65 74 4f 74 68 65 72 | );.$otherWatch.=.$node->getOther |
44840 | 57 61 74 63 68 28 24 6c 69 74 65 72 61 6c 29 3b 0a 0a 69 66 20 28 21 24 6e 6f 64 65 2d 3e 67 65 | Watch($literal);..if.(!$node->ge |
44860 | 74 52 75 6c 65 28 29 2d 3e 69 73 44 69 73 61 62 6c 65 64 28 29 20 26 26 20 21 24 64 65 63 69 73 | tRule()->isDisabled().&&.!$decis |
44880 | 69 6f 6e 73 2d 3e 73 61 74 69 73 66 79 28 24 6f 74 68 65 72 57 61 74 63 68 29 29 20 7b 0a 24 72 | ions->satisfy($otherWatch)).{.$r |
448a0 | 75 6c 65 4c 69 74 65 72 61 6c 73 20 3d 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 2d 3e | uleLiterals.=.$node->getRule()-> |
448c0 | 67 65 74 4c 69 74 65 72 61 6c 73 28 29 3b 0a 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 65 | getLiterals();..$alternativeLite |
448e0 | 72 61 6c 73 20 3d 20 61 72 72 61 79 5f 66 69 6c 74 65 72 28 24 72 75 6c 65 4c 69 74 65 72 61 6c | rals.=.array_filter($ruleLiteral |
44900 | 73 2c 20 66 75 6e 63 74 69 6f 6e 20 28 24 72 75 6c 65 4c 69 74 65 72 61 6c 29 20 75 73 65 20 28 | s,.function.($ruleLiteral).use.( |
44920 | 24 6c 69 74 65 72 61 6c 2c 20 24 6f 74 68 65 72 57 61 74 63 68 2c 20 24 64 65 63 69 73 69 6f 6e | $literal,.$otherWatch,.$decision |
44940 | 73 29 20 7b 0a 72 65 74 75 72 6e 20 24 6c 69 74 65 72 61 6c 20 21 3d 3d 20 24 72 75 6c 65 4c 69 | s).{.return.$literal.!==.$ruleLi |
44960 | 74 65 72 61 6c 20 26 26 0a 24 6f 74 68 65 72 57 61 74 63 68 20 21 3d 3d 20 24 72 75 6c 65 4c 69 | teral.&&.$otherWatch.!==.$ruleLi |
44980 | 74 65 72 61 6c 20 26 26 0a 21 24 64 65 63 69 73 69 6f 6e 73 2d 3e 63 6f 6e 66 6c 69 63 74 28 24 | teral.&&.!$decisions->conflict($ |
449a0 | 72 75 6c 65 4c 69 74 65 72 61 6c 29 3b 0a 7d 29 3b 0a 0a 69 66 20 28 24 61 6c 74 65 72 6e 61 74 | ruleLiteral);.});..if.($alternat |
449c0 | 69 76 65 4c 69 74 65 72 61 6c 73 29 20 7b 0a 72 65 73 65 74 28 24 61 6c 74 65 72 6e 61 74 69 76 | iveLiterals).{.reset($alternativ |
449e0 | 65 4c 69 74 65 72 61 6c 73 29 3b 0a 24 74 68 69 73 2d 3e 6d 6f 76 65 57 61 74 63 68 28 24 6c 69 | eLiterals);.$this->moveWatch($li |
44a00 | 74 65 72 61 6c 2c 20 63 75 72 72 65 6e 74 28 24 61 6c 74 65 72 6e 61 74 69 76 65 4c 69 74 65 72 | teral,.current($alternativeLiter |
44a20 | 61 6c 73 29 2c 20 24 6e 6f 64 65 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 24 | als),.$node);.continue;.}..if.($ |
44a40 | 64 65 63 69 73 69 6f 6e 73 2d 3e 63 6f 6e 66 6c 69 63 74 28 24 6f 74 68 65 72 57 61 74 63 68 29 | decisions->conflict($otherWatch) |
44a60 | 29 20 7b 0a 72 65 74 75 72 6e 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 3b 0a 7d 0a 0a | ).{.return.$node->getRule();.}.. |
44a80 | 24 64 65 63 69 73 69 6f 6e 73 2d 3e 64 65 63 69 64 65 28 24 6f 74 68 65 72 57 61 74 63 68 2c 20 | $decisions->decide($otherWatch,. |
44aa0 | 24 6c 65 76 65 6c 2c 20 24 6e 6f 64 65 2d 3e 67 65 74 52 75 6c 65 28 29 29 3b 0a 7d 0a 0a 24 63 | $level,.$node->getRule());.}..$c |
44ac0 | 68 61 69 6e 2d 3e 6e 65 78 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a | hain->next();.}..return.null;.}. |
44ae0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 76 | ..........protected.function.mov |
44b00 | 65 57 61 74 63 68 28 24 66 72 6f 6d 4c 69 74 65 72 61 6c 2c 20 24 74 6f 4c 69 74 65 72 61 6c 2c | eWatch($fromLiteral,.$toLiteral, |
44b20 | 20 24 6e 6f 64 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 77 61 74 63 | .$node).{.if.(!isset($this->watc |
44b40 | 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 77 | hChains[$toLiteral])).{.$this->w |
44b60 | 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 74 65 72 61 6c 5d 20 3d 20 6e 65 77 20 52 75 6c | atchChains[$toLiteral].=.new.Rul |
44b80 | 65 57 61 74 63 68 43 68 61 69 6e 3b 0a 7d 0a 0a 24 6e 6f 64 65 2d 3e 6d 6f 76 65 57 61 74 63 68 | eWatchChain;.}..$node->moveWatch |
44ba0 | 28 24 66 72 6f 6d 4c 69 74 65 72 61 6c 2c 20 24 74 6f 4c 69 74 65 72 61 6c 29 3b 0a 24 74 68 69 | ($fromLiteral,.$toLiteral);.$thi |
44bc0 | 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 66 72 6f 6d 4c 69 74 65 72 61 6c 5d 2d 3e 72 65 | s->watchChains[$fromLiteral]->re |
44be0 | 6d 6f 76 65 28 29 3b 0a 24 74 68 69 73 2d 3e 77 61 74 63 68 43 68 61 69 6e 73 5b 24 74 6f 4c 69 | move();.$this->watchChains[$toLi |
44c00 | 74 65 72 61 6c 5d 2d 3e 75 6e 73 68 69 66 74 28 24 6e 6f 64 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | teral]->unshift($node);.}.}.<?ph |
44c20 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b | p............namespace.Composer; |
44c40 | 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 75 73 | ..use.Composer\Json\JsonFile;.us |
44c60 | 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 | e.Composer\IO\IOInterface;.use.C |
44c80 | 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 | omposer\Repository\ComposerRepos |
44ca0 | 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 | itory;.use.Composer\Repository\R |
44cc0 | 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 | epositoryManager;.use.Composer\U |
44ce0 | 74 69 6c 5c 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | til\ProcessExecutor;.use.Compose |
44d00 | 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a | r\Util\RemoteFilesystem;........ |
44d20 | 0a 63 6c 61 73 73 20 46 61 63 74 6f 72 79 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 | .class.Factory.{....public.stati |
44d40 | 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 43 6f 6e 66 69 67 28 29 0a 7b 0a 0a 20 69 66 | c.function.createConfig().{...if |
44d60 | 20 28 21 24 68 6f 6d 65 20 3d 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 5f 48 4f 4d 45 | .(!$home.=.getenv('COMPOSER_HOME |
44d80 | 27 29 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 | ')).{.if.(defined('PHP_WINDOWS_V |
44da0 | 45 52 53 49 4f 4e 5f 4d 41 4a 4f 52 27 29 29 20 7b 0a 24 68 6f 6d 65 20 3d 20 67 65 74 65 6e 76 | ERSION_MAJOR')).{.$home.=.getenv |
44dc0 | 28 27 41 50 50 44 41 54 41 27 29 20 2e 20 27 2f 43 6f 6d 70 6f 73 65 72 27 3b 0a 7d 20 65 6c 73 | ('APPDATA')...'/Composer';.}.els |
44de0 | 65 20 7b 0a 24 68 6f 6d 65 20 3d 20 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 20 2e 20 27 2f 2e | e.{.$home.=.getenv('HOME')...'/. |
44e00 | 63 6f 6d 70 6f 73 65 72 27 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 66 69 6c 65 5f 65 78 69 73 | composer';.}.}....if.(!file_exis |
44e20 | 74 73 28 24 68 6f 6d 65 20 2e 20 27 2f 2e 68 74 61 63 63 65 73 73 27 29 29 20 7b 0a 69 66 20 28 | ts($home...'/.htaccess')).{.if.( |
44e40 | 21 69 73 5f 64 69 72 28 24 68 6f 6d 65 29 29 20 7b 0a 40 6d 6b 64 69 72 28 24 68 6f 6d 65 2c 20 | !is_dir($home)).{.@mkdir($home,. |
44e60 | 30 37 37 37 2c 20 74 72 75 65 29 3b 0a 7d 0a 40 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 | 0777,.true);.}.@file_put_content |
44e80 | 73 28 24 68 6f 6d 65 20 2e 20 27 2f 2e 68 74 61 63 63 65 73 73 27 2c 20 27 44 65 6e 79 20 66 72 | s($home...'/.htaccess',.'Deny.fr |
44ea0 | 6f 6d 20 61 6c 6c 27 29 3b 0a 7d 0a 0a 24 63 6f 6e 66 69 67 20 3d 20 6e 65 77 20 43 6f 6e 66 69 | om.all');.}..$config.=.new.Confi |
44ec0 | 67 28 29 3b 0a 0a 0a 20 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 61 72 72 61 79 28 27 63 6f | g();....$config->merge(array('co |
44ee0 | 6e 66 69 67 27 20 3d 3e 20 61 72 72 61 79 28 27 68 6f 6d 65 27 20 3d 3e 20 24 68 6f 6d 65 29 29 | nfig'.=>.array('home'.=>.$home)) |
44f00 | 29 3b 0a 0a 24 66 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 68 6f 6d 65 2e 27 | );..$file.=.new.JsonFile($home.' |
44f20 | 2f 63 6f 6e 66 69 67 2e 6a 73 6f 6e 27 29 3b 0a 69 66 20 28 24 66 69 6c 65 2d 3e 65 78 69 73 74 | /config.json');.if.($file->exist |
44f40 | 73 28 29 29 20 7b 0a 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 24 66 69 6c 65 2d 3e 72 65 61 | s()).{.$config->merge($file->rea |
44f60 | 64 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 70 75 62 6c | d());.}..return.$config;.}..publ |
44f80 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 0a 7b 0a | ic.function.getComposerFile().{. |
44fa0 | 72 65 74 75 72 6e 20 67 65 74 65 6e 76 28 27 43 4f 4d 50 4f 53 45 52 27 29 20 3f 3a 20 27 63 6f | return.getenv('COMPOSER').?:.'co |
44fc0 | 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 | mposer.json';.}..public.static.f |
44fe0 | 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f 72 69 65 | unction.createDefaultRepositorie |
45000 | 73 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 20 3d 20 6e 75 6c 6c 2c 20 43 6f 6e 66 69 67 | s(IOInterface.$io.=.null,.Config |
45020 | 20 24 63 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 | .$config.=.null,.RepositoryManag |
45040 | 65 72 20 24 72 6d 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 28 | er.$rm.=.null).{.$repos.=.array( |
45060 | 29 3b 0a 0a 69 66 20 28 21 24 63 6f 6e 66 69 67 29 20 7b 0a 24 63 6f 6e 66 69 67 20 3d 20 73 74 | );..if.(!$config).{.$config.=.st |
45080 | 61 74 69 63 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 28 29 3b 0a 7d 0a 69 66 20 28 21 24 72 6d | atic::createConfig();.}.if.(!$rm |
450a0 | 29 20 7b 0a 69 66 20 28 21 24 69 6f 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c | ).{.if.(!$io).{.throw.new.\Inval |
450c0 | 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 66 75 6e 63 74 69 | idArgumentException('This.functi |
450e0 | 6f 6e 20 72 65 71 75 69 72 65 73 20 65 69 74 68 65 72 20 61 6e 20 49 4f 49 6e 74 65 72 66 61 63 | on.requires.either.an.IOInterfac |
45100 | 65 20 6f 72 20 61 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 27 29 3b 0a 7d 0a 24 66 | e.or.a.RepositoryManager');.}.$f |
45120 | 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 73 74 61 74 69 63 3b 0a 24 72 6d 20 3d 20 24 66 61 63 74 | actory.=.new.static;.$rm.=.$fact |
45140 | 6f 72 79 2d 3e 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 69 6f | ory->createRepositoryManager($io |
45160 | 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6e 66 69 67 2d | ,.$config);.}..foreach.($config- |
45180 | 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 61 73 20 24 69 6e 64 65 78 20 3d 3e 20 | >getRepositories().as.$index.=>. |
451a0 | 24 72 65 70 6f 29 20 7b 0a 69 66 20 28 21 69 73 5f 61 72 72 61 79 28 24 72 65 70 6f 29 29 20 7b | $repo).{.if.(!is_array($repo)).{ |
451c0 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 | .throw.new.\UnexpectedValueExcep |
451e0 | 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 69 6e 64 65 78 2e 27 20 28 27 2e 6a | tion('Repository.'.$index.'.('.j |
45200 | 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 72 65 70 6f 29 2e 27 29 20 73 68 6f 75 6c 64 20 62 65 20 61 | son_encode($repo).').should.be.a |
45220 | 6e 20 61 72 72 61 79 2c 20 27 2e 67 65 74 74 79 70 65 28 24 72 65 70 6f 29 2e 27 20 67 69 76 65 | n.array,.'.gettype($repo).'.give |
45240 | 6e 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 73 65 74 28 24 72 65 70 6f 5b 27 74 79 70 65 27 5d 29 | n');.}.if.(!isset($repo['type']) |
45260 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 | ).{.throw.new.\UnexpectedValueEx |
45280 | 63 65 70 74 69 6f 6e 28 27 52 65 70 6f 73 69 74 6f 72 79 20 27 2e 24 69 6e 64 65 78 2e 27 20 28 | ception('Repository.'.$index.'.( |
452a0 | 27 2e 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 72 65 70 6f 29 2e 27 29 20 6d 75 73 74 20 68 61 76 | '.json_encode($repo).').must.hav |
452c0 | 65 20 61 20 74 79 70 65 20 64 65 66 69 6e 65 64 27 29 3b 0a 7d 0a 24 6e 61 6d 65 20 3d 20 69 73 | e.a.type.defined');.}.$name.=.is |
452e0 | 5f 69 6e 74 28 24 69 6e 64 65 78 29 20 26 26 20 69 73 73 65 74 28 24 72 65 70 6f 5b 27 75 72 6c | _int($index).&&.isset($repo['url |
45300 | 27 5d 29 20 3f 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d | ']).?.preg_replace('{^https?://} |
45320 | 69 27 2c 20 27 27 2c 20 24 72 65 70 6f 5b 27 75 72 6c 27 5d 29 20 3a 20 24 69 6e 64 65 78 3b 0a | i',.'',.$repo['url']).:.$index;. |
45340 | 77 68 69 6c 65 20 28 69 73 73 65 74 28 24 72 65 70 6f 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 24 | while.(isset($repos[$name])).{.$ |
45360 | 6e 61 6d 65 20 2e 3d 20 27 32 27 3b 0a 7d 0a 24 72 65 70 6f 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 | name..=.'2';.}.$repos[$name].=.$ |
45380 | 72 6d 2d 3e 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 5b 27 74 79 70 65 | rm->createRepository($repo['type |
453a0 | 27 5d 2c 20 24 72 65 70 6f 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 72 65 70 6f 73 3b 0a 7d 0a | '],.$repo);.}..return.$repos;.}. |
453c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 | ..........public.function.create |
453e0 | 43 6f 6d 70 6f 73 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 6c 6f 63 61 6c | Composer(IOInterface.$io,.$local |
45400 | 43 6f 6e 66 69 67 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 | Config.=.null).{...if.(null.===. |
45420 | 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 20 7b 0a 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 20 3d 20 24 | $localConfig).{.$localConfig.=.$ |
45440 | 74 68 69 73 2d 3e 67 65 74 43 6f 6d 70 6f 73 65 72 46 69 6c 65 28 29 3b 0a 7d 0a 0a 69 66 20 28 | this->getComposerFile();.}..if.( |
45460 | 69 73 5f 73 74 72 69 6e 67 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 29 20 7b 0a 24 63 6f 6d 70 | is_string($localConfig)).{.$comp |
45480 | 6f 73 65 72 46 69 6c 65 20 3d 20 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 3b 0a 24 66 69 6c 65 20 3d | oserFile.=.$localConfig;.$file.= |
454a0 | 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 2c 20 6e 65 77 20 | .new.JsonFile($localConfig,.new. |
454c0 | 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 29 29 3b 0a 0a 69 66 20 28 21 24 66 | RemoteFilesystem($io));..if.(!$f |
454e0 | 69 6c 65 2d 3e 65 78 69 73 74 73 28 29 29 20 7b 0a 69 66 20 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 | ile->exists()).{.if.($localConfi |
45500 | 67 20 3d 3d 3d 20 27 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 27 29 20 7b 0a 24 6d 65 73 73 61 67 | g.===.'composer.json').{.$messag |
45520 | 65 20 3d 20 27 43 6f 6d 70 6f 73 65 72 20 63 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 61 20 63 | e.=.'Composer.could.not.find.a.c |
45540 | 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 69 6e 20 27 2e 67 65 74 63 77 64 28 29 3b | omposer.json.file.in.'.getcwd(); |
45560 | 0a 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 27 43 6f 6d 70 6f 73 65 72 20 63 | .}.else.{.$message.=.'Composer.c |
45580 | 6f 75 6c 64 20 6e 6f 74 20 66 69 6e 64 20 74 68 65 20 63 6f 6e 66 69 67 20 66 69 6c 65 3a 20 27 | ould.not.find.the.config.file:.' |
455a0 | 2e 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 3b 0a 7d 0a 24 69 6e 73 74 72 75 63 74 69 6f 6e 73 20 3d | .$localConfig;.}.$instructions.= |
455c0 | 20 27 54 6f 20 69 6e 69 74 69 61 6c 69 7a 65 20 61 20 70 72 6f 6a 65 63 74 2c 20 70 6c 65 61 73 | .'To.initialize.a.project,.pleas |
455e0 | 65 20 63 72 65 61 74 65 20 61 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 20 66 69 6c 65 20 61 73 | e.create.a.composer.json.file.as |
45600 | 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 74 68 65 20 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 | .described.in.the.http://getcomp |
45620 | 6f 73 65 72 2e 6f 72 67 2f 20 22 47 65 74 74 69 6e 67 20 53 74 61 72 74 65 64 22 20 73 65 63 74 | oser.org/."Getting.Started".sect |
45640 | 69 6f 6e 27 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 | ion';.throw.new.\InvalidArgument |
45660 | 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2e 50 48 50 5f 45 4f 4c 2e 24 69 6e 73 74 | Exception($message.PHP_EOL.$inst |
45680 | 72 75 63 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 24 66 69 6c 65 2d 3e 76 61 6c 69 64 61 74 65 53 63 68 | ructions);.}..$file->validateSch |
456a0 | 65 6d 61 28 4a 73 6f 6e 46 69 6c 65 3a 3a 4c 41 58 5f 53 43 48 45 4d 41 29 3b 0a 24 6c 6f 63 61 | ema(JsonFile::LAX_SCHEMA);.$loca |
456c0 | 6c 43 6f 6e 66 69 67 20 3d 20 24 66 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 7d 0a 0a 0a 20 24 63 | lConfig.=.$file->read();.}....$c |
456e0 | 6f 6e 66 69 67 20 3d 20 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 43 6f 6e 66 69 67 28 29 3b 0a | onfig.=.static::createConfig();. |
45700 | 24 63 6f 6e 66 69 67 2d 3e 6d 65 72 67 65 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 3b 0a 0a 24 | $config->merge($localConfig);..$ |
45720 | 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 | vendorDir.=.$config->get('vendor |
45740 | 2d 64 69 72 27 29 3b 0a 24 62 69 6e 44 69 72 20 3d 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 | -dir');.$binDir.=.$config->get(' |
45760 | 62 69 6e 2d 64 69 72 27 29 3b 0a 0a 0a 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 3a 3a 73 | bin-dir');....ProcessExecutor::s |
45780 | 65 74 54 69 6d 65 6f 75 74 28 28 69 6e 74 29 20 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 70 72 | etTimeout((int).$config->get('pr |
457a0 | 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 29 29 3b 0a 0a 0a 20 24 72 6d 20 3d 20 24 74 68 69 73 | ocess-timeout'));....$rm.=.$this |
457c0 | 2d 3e 63 72 65 61 74 65 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 | ->createRepositoryManager($io,.$ |
457e0 | 63 6f 6e 66 69 67 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 61 64 64 4c 6f 63 61 6c 52 65 70 6f 73 | config);....$this->addLocalRepos |
45800 | 69 74 6f 72 79 28 24 72 6d 2c 20 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 0a 20 24 6c 6f 61 64 | itory($rm,.$vendorDir);....$load |
45820 | 65 72 20 3d 20 6e 65 77 20 50 61 63 6b 61 67 65 5c 4c 6f 61 64 65 72 5c 52 6f 6f 74 50 61 63 6b | er.=.new.Package\Loader\RootPack |
45840 | 61 67 65 4c 6f 61 64 65 72 28 24 72 6d 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 70 61 63 6b 61 67 | ageLoader($rm,.$config);.$packag |
45860 | 65 20 3d 20 24 6c 6f 61 64 65 72 2d 3e 6c 6f 61 64 28 24 6c 6f 63 61 6c 43 6f 6e 66 69 67 29 3b | e.=.$loader->load($localConfig); |
45880 | 0a 0a 0a 20 24 64 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d | ....$dm.=.$this->createDownloadM |
458a0 | 61 6e 61 67 65 72 28 24 69 6f 29 3b 0a 0a 0a 20 24 69 6d 20 3d 20 24 74 68 69 73 2d 3e 63 72 65 | anager($io);....$im.=.$this->cre |
458c0 | 61 74 65 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 24 63 6f 6e 66 69 67 29 3b | ateInstallationManager($config); |
458e0 | 0a 0a 0a 20 24 63 6f 6d 70 6f 73 65 72 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 65 72 28 29 3b 0a | ....$composer.=.new.Composer();. |
45900 | 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 43 6f 6e 66 69 67 28 24 63 6f 6e 66 69 67 29 3b 0a 24 | $composer->setConfig($config);.$ |
45920 | 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a | composer->setPackage($package);. |
45940 | 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 | $composer->setRepositoryManager( |
45960 | 24 72 6d 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 | $rm);.$composer->setDownloadMana |
45980 | 67 65 72 28 24 64 6d 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 49 6e 73 74 61 6c 6c 61 | ger($dm);.$composer->setInstalla |
459a0 | 74 69 6f 6e 4d 61 6e 61 67 65 72 28 24 69 6d 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 63 72 65 61 | tionManager($im);....$this->crea |
459c0 | 74 65 44 65 66 61 75 6c 74 49 6e 73 74 61 6c 6c 65 72 73 28 24 69 6d 2c 20 24 63 6f 6d 70 6f 73 | teDefaultInstallers($im,.$compos |
459e0 | 65 72 2c 20 24 69 6f 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 70 75 72 67 65 50 61 63 6b 61 67 65 | er,.$io);....$this->purgePackage |
45a00 | 73 28 24 72 6d 2c 20 24 69 6d 29 3b 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 63 6f 6d 70 6f | s($rm,.$im);....if.(isset($compo |
45a20 | 73 65 72 46 69 6c 65 29 29 20 7b 0a 24 6c 6f 63 6b 46 69 6c 65 20 3d 20 22 6a 73 6f 6e 22 20 3d | serFile)).{.$lockFile.=."json".= |
45a40 | 3d 3d 20 70 61 74 68 69 6e 66 6f 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c 65 2c 20 50 41 54 48 49 | ==.pathinfo($composerFile,.PATHI |
45a60 | 4e 46 4f 5f 45 58 54 45 4e 53 49 4f 4e 29 0a 3f 20 73 75 62 73 74 72 28 24 63 6f 6d 70 6f 73 65 | NFO_EXTENSION).?.substr($compose |
45a80 | 72 46 69 6c 65 2c 20 30 2c 20 2d 34 29 2e 27 6c 6f 63 6b 27 0a 3a 20 24 63 6f 6d 70 6f 73 65 72 | rFile,.0,.-4).'lock'.:.$composer |
45aa0 | 46 69 6c 65 20 2e 20 27 2e 6c 6f 63 6b 27 3b 0a 24 6c 6f 63 6b 65 72 20 3d 20 6e 65 77 20 50 61 | File...'.lock';.$locker.=.new.Pa |
45ac0 | 63 6b 61 67 65 5c 4c 6f 63 6b 65 72 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 24 6c 6f 63 6b 46 | ckage\Locker(new.JsonFile($lockF |
45ae0 | 69 6c 65 2c 20 6e 65 77 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 28 24 69 6f 29 29 2c | ile,.new.RemoteFilesystem($io)), |
45b00 | 20 24 72 6d 2c 20 24 69 6d 2c 20 6d 64 35 5f 66 69 6c 65 28 24 63 6f 6d 70 6f 73 65 72 46 69 6c | .$rm,.$im,.md5_file($composerFil |
45b20 | 65 29 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 73 65 74 4c 6f 63 6b 65 72 28 24 6c 6f 63 6b 65 | e));.$composer->setLocker($locke |
45b40 | 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a | r);.}..return.$composer;.}...... |
45b60 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 52 65 70 6f 73 69 | .protected.function.createReposi |
45b80 | 74 6f 72 79 4d 61 6e 61 67 65 72 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6e | toryManager(IOInterface.$io,.Con |
45ba0 | 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 72 6d 20 3d 20 6e 65 77 20 52 65 70 6f 73 69 74 | fig.$config).{.$rm.=.new.Reposit |
45bc0 | 6f 72 79 4d 61 6e 61 67 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 24 72 6d 2d 3e 73 | oryManager($io,.$config);.$rm->s |
45be0 | 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 63 6f 6d 70 6f 73 65 72 27 2c 20 27 43 | etRepositoryClass('composer',.'C |
45c00 | 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 43 6f 6d 70 6f 73 65 72 52 65 70 6f 73 | omposer\Repository\ComposerRepos |
45c20 | 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 | itory');.$rm->setRepositoryClass |
45c40 | 28 27 76 63 73 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 | ('vcs',.'Composer\Repository\Vcs |
45c60 | 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 | Repository');.$rm->setRepository |
45c80 | 43 6c 61 73 73 28 27 70 61 63 6b 61 67 65 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 | Class('package',.'Composer\Repos |
45ca0 | 69 74 6f 72 79 5c 50 61 63 6b 61 67 65 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e | itory\PackageRepository');.$rm-> |
45cc0 | 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 70 65 61 72 27 2c 20 27 43 6f 6d 70 | setRepositoryClass('pear',.'Comp |
45ce0 | 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 65 61 72 52 65 70 6f 73 69 74 6f 72 79 27 29 | oser\Repository\PearRepository') |
45d00 | 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 67 69 74 27 2c | ;.$rm->setRepositoryClass('git', |
45d20 | 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 70 6f 73 69 74 | .'Composer\Repository\VcsReposit |
45d40 | 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c 61 73 73 28 27 | ory');.$rm->setRepositoryClass(' |
45d60 | 73 76 6e 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 63 73 52 65 | svn',.'Composer\Repository\VcsRe |
45d80 | 70 6f 73 69 74 6f 72 79 27 29 3b 0a 24 72 6d 2d 3e 73 65 74 52 65 70 6f 73 69 74 6f 72 79 43 6c | pository');.$rm->setRepositoryCl |
45da0 | 61 73 73 28 27 68 67 27 2c 20 27 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 56 | ass('hg',.'Composer\Repository\V |
45dc0 | 63 73 52 65 70 6f 73 69 74 6f 72 79 27 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 6d 3b 0a 7d 0a 0a | csRepository');..return.$rm;.}.. |
45de0 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 6f 63 61 6c 52 | ....protected.function.addLocalR |
45e00 | 65 70 6f 73 69 74 6f 72 79 28 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 72 6d 2c | epository(RepositoryManager.$rm, |
45e20 | 20 24 76 65 6e 64 6f 72 44 69 72 29 0a 7b 0a 24 72 6d 2d 3e 73 65 74 4c 6f 63 61 6c 52 65 70 6f | .$vendorDir).{.$rm->setLocalRepo |
45e40 | 73 69 74 6f 72 79 28 6e 65 77 20 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 | sitory(new.Repository\InstalledF |
45e60 | 69 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 | ilesystemRepository(new.JsonFile |
45e80 | 28 24 76 65 6e 64 6f 72 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 69 6e 73 74 61 6c 6c 65 64 | ($vendorDir.'/composer/installed |
45ea0 | 2e 6a 73 6f 6e 27 29 29 29 3b 0a 24 72 6d 2d 3e 73 65 74 4c 6f 63 61 6c 44 65 76 52 65 70 6f 73 | .json')));.$rm->setLocalDevRepos |
45ec0 | 69 74 6f 72 79 28 6e 65 77 20 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 46 69 | itory(new.Repository\InstalledFi |
45ee0 | 6c 65 73 79 73 74 65 6d 52 65 70 6f 73 69 74 6f 72 79 28 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 | lesystemRepository(new.JsonFile( |
45f00 | 24 76 65 6e 64 6f 72 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2f 69 6e 73 74 61 6c 6c 65 64 5f | $vendorDir.'/composer/installed_ |
45f20 | 64 65 76 2e 6a 73 6f 6e 27 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | dev.json')));.}......public.func |
45f40 | 74 69 6f 6e 20 63 72 65 61 74 65 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 49 4f 49 6e 74 | tion.createDownloadManager(IOInt |
45f60 | 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 64 6d 20 3d 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 | erface.$io).{.$dm.=.new.Download |
45f80 | 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f | er\DownloadManager();.$dm->setDo |
45fa0 | 77 6e 6c 6f 61 64 65 72 28 27 67 69 74 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 47 | wnloader('git',.new.Downloader\G |
45fc0 | 69 74 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e | itDownloader($io));.$dm->setDown |
45fe0 | 6c 6f 61 64 65 72 28 27 73 76 6e 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 53 76 6e | loader('svn',.new.Downloader\Svn |
46000 | 44 6f 77 6e 6c 6f 61 64 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f | Downloader($io));.$dm->setDownlo |
46020 | 61 64 65 72 28 27 68 67 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 48 67 44 6f 77 6e | ader('hg',.new.Downloader\HgDown |
46040 | 6c 6f 61 64 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 | loader($io));.$dm->setDownloader |
46060 | 28 27 7a 69 70 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 5a 69 70 44 6f 77 6e 6c 6f | ('zip',.new.Downloader\ZipDownlo |
46080 | 61 64 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 | ader($io));.$dm->setDownloader(' |
460a0 | 74 61 72 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 61 72 44 6f 77 6e 6c 6f 61 64 | tar',.new.Downloader\TarDownload |
460c0 | 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 70 68 | er($io));.$dm->setDownloader('ph |
460e0 | 61 72 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 50 68 61 72 44 6f 77 6e 6c 6f 61 64 | ar',.new.Downloader\PharDownload |
46100 | 65 72 28 24 69 6f 29 29 3b 0a 24 64 6d 2d 3e 73 65 74 44 6f 77 6e 6c 6f 61 64 65 72 28 27 66 69 | er($io));.$dm->setDownloader('fi |
46120 | 6c 65 27 2c 20 6e 65 77 20 44 6f 77 6e 6c 6f 61 64 65 72 5c 46 69 6c 65 44 6f 77 6e 6c 6f 61 64 | le',.new.Downloader\FileDownload |
46140 | 65 72 28 24 69 6f 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 64 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 72 | er($io));..return.$dm;.}......pr |
46160 | 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 49 6e 73 74 61 6c 6c 61 74 | otected.function.createInstallat |
46180 | 69 6f 6e 4d 61 6e 61 67 65 72 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 72 65 74 | ionManager(Config.$config).{.ret |
461a0 | 75 72 6e 20 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 | urn.new.Installer\InstallationMa |
461c0 | 6e 61 67 65 72 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 | nager($config->get('vendor-dir') |
461e0 | 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 72 | );.}.......protected.function.cr |
46200 | 65 61 74 65 44 65 66 61 75 6c 74 49 6e 73 74 61 6c 6c 65 72 73 28 49 6e 73 74 61 6c 6c 65 72 5c | eateDefaultInstallers(Installer\ |
46220 | 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6d 2c 20 43 6f 6d 70 6f 73 65 | InstallationManager.$im,.Compose |
46240 | 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a | r.$composer,.IOInterface.$io).{. |
46260 | 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c | $im->addInstaller(new.Installer\ |
46280 | 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c | LibraryInstaller($io,.$composer, |
462a0 | 20 6e 75 6c 6c 29 29 3b 0a 24 69 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 | .null));.$im->addInstaller(new.I |
462c0 | 6e 73 74 61 6c 6c 65 72 5c 50 65 61 72 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d | nstaller\PearInstaller($io,.$com |
462e0 | 70 6f 73 65 72 2c 20 27 70 65 61 72 2d 6c 69 62 72 61 72 79 27 29 29 3b 0a 24 69 6d 2d 3e 61 64 | poser,.'pear-library'));.$im->ad |
46300 | 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c | dInstaller(new.Installer\Install |
46320 | 65 72 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 29 29 3b 0a 24 69 | erInstaller($io,.$composer));.$i |
46340 | 6d 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 49 6e 73 74 61 6c 6c 65 72 5c 4d 65 | m->addInstaller(new.Installer\Me |
46360 | 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 72 28 24 69 6f 29 29 3b 0a 7d 0a 0a 0a 0a 0a | tapackageInstaller($io));.}..... |
46380 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 75 72 67 65 50 61 63 6b 61 67 65 | .protected.function.purgePackage |
463a0 | 73 28 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 | s(Repository\RepositoryManager.$ |
463c0 | 72 6d 2c 20 49 6e 73 74 61 6c 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 | rm,.Installer\InstallationManage |
463e0 | 72 20 24 69 6d 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 6d 2d 3e 67 65 74 4c 6f 63 61 6c 52 | r.$im).{.foreach.($rm->getLocalR |
46400 | 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 0a 66 6f 72 65 61 | epositories().as.$repo).{..forea |
46420 | 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 | ch.($repo->getPackages().as.$pac |
46440 | 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 24 69 6d 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 | kage).{.if.(!$im->isPackageInsta |
46460 | 6c 6c 65 64 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d 3e | lled($repo,.$package)).{.$repo-> |
46480 | 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d | removePackage($package);.}.}.}.} |
464a0 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 | ........public.static.function.c |
464c0 | 72 65 61 74 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 24 63 6f 6e 66 69 67 20 3d | reate(IOInterface.$io,.$config.= |
464e0 | 20 6e 75 6c 6c 29 0a 7b 0a 24 66 61 63 74 6f 72 79 20 3d 20 6e 65 77 20 73 74 61 74 69 63 28 29 | .null).{.$factory.=.new.static() |
46500 | 3b 0a 0a 72 65 74 75 72 6e 20 24 66 61 63 74 6f 72 79 2d 3e 63 72 65 61 74 65 43 6f 6d 70 6f 73 | ;..return.$factory->createCompos |
46520 | 65 72 28 24 69 6f 2c 20 24 63 6f 6e 66 69 67 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | er($io,.$config);.}.}.<?php..... |
46540 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a | .......namespace.Composer\Util;. |
46560 | 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 73 79 73 74 65 6d 0a 7b 0a 70 75 62 6c 69 63 20 66 75 | ....class.Filesystem.{.public.fu |
46580 | 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 65 63 74 6f 72 | nction.removeDirectory($director |
465a0 | 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 29 20 7b 0a | y).{.if.(!is_dir($directory)).{. |
465c0 | 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 | return.true;.}..if.(defined('PHP |
465e0 | 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 63 6d 64 | _WINDOWS_VERSION_BUILD')).{.$cmd |
46600 | 20 3d 20 73 70 72 69 6e 74 66 28 27 72 6d 64 69 72 20 2f 53 20 2f 51 20 25 73 27 2c 20 65 73 63 | .=.sprintf('rmdir./S./Q.%s',.esc |
46620 | 61 70 65 73 68 65 6c 6c 61 72 67 28 72 65 61 6c 70 61 74 68 28 24 64 69 72 65 63 74 6f 72 79 29 | apeshellarg(realpath($directory) |
46640 | 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 72 6d 20 | ));.}.else.{.$cmd.=.sprintf('rm. |
46660 | 2d 72 66 20 25 73 27 2c 20 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 64 69 72 65 63 74 6f | -rf.%s',.escapeshellarg($directo |
46680 | 72 79 29 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f | ry));.}..$result.=.$this->getPro |
466a0 | 63 65 73 73 28 29 2d 3e 65 78 65 63 75 74 65 28 24 63 6d 64 29 20 3d 3d 3d 20 30 3b 0a 0a 0a 20 | cess()->execute($cmd).===.0;.... |
466c0 | 63 6c 65 61 72 73 74 61 74 63 61 63 68 65 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 72 65 73 75 6c | clearstatcache();..return.$resul |
466e0 | 74 20 26 26 20 21 69 73 5f 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 29 3b 0a 7d 0a 0a 70 75 62 | t.&&.!is_dir($directory);.}..pub |
46700 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 | lic.function.ensureDirectoryExis |
46720 | 74 73 28 24 64 69 72 65 63 74 6f 72 79 29 0a 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 | ts($directory).{.if.(!is_dir($di |
46740 | 72 65 63 74 6f 72 79 29 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 | rectory)).{.if.(file_exists($dir |
46760 | 65 63 74 6f 72 79 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 | ectory)).{.throw.new.\RuntimeExc |
46780 | 65 70 74 69 6f 6e 28 0a 24 64 69 72 65 63 74 6f 72 79 2e 27 20 65 78 69 73 74 73 20 61 6e 64 20 | eption(.$directory.'.exists.and. |
467a0 | 69 73 20 6e 6f 74 20 61 20 64 69 72 65 63 74 6f 72 79 2e 27 0a 29 3b 0a 7d 0a 69 66 20 28 21 6d | is.not.a.directory.'.);.}.if.(!m |
467c0 | 6b 64 69 72 28 24 64 69 72 65 63 74 6f 72 79 2c 20 30 37 37 37 2c 20 74 72 75 65 29 29 20 7b 0a | kdir($directory,.0777,.true)).{. |
467e0 | 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 24 64 69 | throw.new.\RuntimeException(.$di |
46800 | 72 65 63 74 6f 72 79 2e 27 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 20 61 6e 64 20 63 6f 75 | rectory.'.does.not.exist.and.cou |
46820 | 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 64 2e 27 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a | ld.not.be.created.'.);.}.}.}.... |
46840 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 53 68 6f 72 74 65 | ......public.function.findShorte |
46860 | 73 74 50 61 74 68 28 24 66 72 6f 6d 2c 20 24 74 6f 2c 20 24 64 69 72 65 63 74 6f 72 69 65 73 20 | stPath($from,.$to,.$directories. |
46880 | 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 74 | =.false).{.if.(!$this->isAbsolut |
468a0 | 65 50 61 74 68 28 24 66 72 6f 6d 29 20 7c 7c 20 21 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 | ePath($from).||.!$this->isAbsolu |
468c0 | 74 65 50 61 74 68 28 24 74 6f 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 | tePath($to)).{.throw.new.\Invali |
468e0 | 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 24 66 72 6f | dArgumentException(sprintf('$fro |
46900 | 6d 20 28 25 73 29 20 61 6e 64 20 24 74 6f 20 28 25 73 29 20 6d 75 73 74 20 62 65 20 61 62 73 6f | m.(%s).and.$to.(%s).must.be.abso |
46920 | 6c 75 74 65 20 70 61 74 68 73 2e 27 2c 20 24 66 72 6f 6d 2c 20 24 74 6f 29 29 3b 0a 7d 0a 0a 24 | lute.paths.',.$from,.$to));.}..$ |
46940 | 66 72 6f 6d 20 3d 20 6c 63 66 69 72 73 74 28 72 74 72 69 6d 28 73 74 72 74 72 28 24 66 72 6f 6d | from.=.lcfirst(rtrim(strtr($from |
46960 | 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 27 2f 27 29 29 3b 0a 24 74 6f 20 3d 20 6c 63 66 69 72 | ,.'\\',.'/'),.'/'));.$to.=.lcfir |
46980 | 73 74 28 72 74 72 69 6d 28 73 74 72 74 72 28 24 74 6f 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 2c 20 | st(rtrim(strtr($to,.'\\',.'/'),. |
469a0 | 27 2f 27 29 29 3b 0a 0a 69 66 20 28 24 64 69 72 65 63 74 6f 72 69 65 73 29 20 7b 0a 24 66 72 6f | '/'));..if.($directories).{.$fro |
469c0 | 6d 20 2e 3d 20 27 2f 64 75 6d 6d 79 5f 66 69 6c 65 27 3b 0a 7d 0a 0a 69 66 20 28 64 69 72 6e 61 | m..=.'/dummy_file';.}..if.(dirna |
469e0 | 6d 65 28 24 66 72 6f 6d 29 20 3d 3d 3d 20 64 69 72 6e 61 6d 65 28 24 74 6f 29 29 20 7b 0a 72 65 | me($from).===.dirname($to)).{.re |
46a00 | 74 75 72 6e 20 27 2e 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 74 6f 29 3b 0a 7d 0a 0a 24 63 6f 6d | turn.'./'.basename($to);.}..$com |
46a20 | 6d 6f 6e 50 61 74 68 20 3d 20 24 74 6f 3b 0a 77 68 69 6c 65 20 28 73 74 72 70 6f 73 28 24 66 72 | monPath.=.$to;.while.(strpos($fr |
46a40 | 6f 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 21 3d 3d 20 30 20 26 26 20 27 2f 27 20 21 3d | om,.$commonPath).!==.0.&&.'/'.!= |
46a60 | 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e | =.$commonPath.&&.!preg_match('{^ |
46a80 | 5b 61 2d 7a 5d 3a 2f 3f 24 7d 69 27 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 26 26 20 27 2e | [a-z]:/?$}i',.$commonPath).&&.'. |
46aa0 | 27 20 21 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 | '.!==.$commonPath).{.$commonPath |
46ac0 | 20 3d 20 73 74 72 74 72 28 64 69 72 6e 61 6d 65 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 2c 20 27 | .=.strtr(dirname($commonPath),.' |
46ae0 | 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 | \\',.'/');.}..if.(0.!==.strpos($ |
46b00 | 66 72 6f 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7c 7c 20 27 2f 27 20 3d 3d 3d 20 24 63 | from,.$commonPath).||.'/'.===.$c |
46b20 | 6f 6d 6d 6f 6e 50 61 74 68 20 7c 7c 20 27 2e 27 20 3d 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 | ommonPath.||.'.'.===.$commonPath |
46b40 | 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 6f 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d | ).{.return.$to;.}..$commonPath.= |
46b60 | 20 72 74 72 69 6d 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 2c 20 27 2f 27 29 20 2e 20 27 2f 27 3b 0a | .rtrim($commonPath,.'/')...'/';. |
46b80 | 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 20 3d 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 | $sourcePathDepth.=.substr_count( |
46ba0 | 73 75 62 73 74 72 28 24 66 72 6f 6d 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 | substr($from,.strlen($commonPath |
46bc0 | 29 29 2c 20 27 2f 27 29 3b 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 6f 64 65 20 3d 20 73 74 72 5f | )),.'/');.$commonPathCode.=.str_ |
46be0 | 72 65 70 65 61 74 28 27 2e 2e 2f 27 2c 20 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 29 3b | repeat('../',.$sourcePathDepth); |
46c00 | 0a 0a 72 65 74 75 72 6e 20 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 43 6f 64 65 20 2e 20 73 75 62 73 | ..return.($commonPathCode...subs |
46c20 | 74 72 28 24 74 6f 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 29 29 20 3f 3a | tr($to,.strlen($commonPath))).?: |
46c40 | 20 27 2e 2f 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | .'./';.}..........public.functio |
46c60 | 6e 20 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 66 72 6f 6d 2c 20 24 74 | n.findShortestPathCode($from,.$t |
46c80 | 6f 2c 20 24 64 69 72 65 63 74 6f 72 69 65 73 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 69 66 20 28 21 | o,.$directories.=.false).{.if.(! |
46ca0 | 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 66 72 6f 6d 29 20 7c 7c 20 | $this->isAbsolutePath($from).||. |
46cc0 | 21 24 74 68 69 73 2d 3e 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 74 6f 29 29 20 7b 0a 74 | !$this->isAbsolutePath($to)).{.t |
46ce0 | 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 | hrow.new.\InvalidArgumentExcepti |
46d00 | 6f 6e 28 73 70 72 69 6e 74 66 28 27 24 66 72 6f 6d 20 28 25 73 29 20 61 6e 64 20 24 74 6f 20 28 | on(sprintf('$from.(%s).and.$to.( |
46d20 | 25 73 29 20 6d 75 73 74 20 62 65 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73 2e 27 2c 20 24 66 | %s).must.be.absolute.paths.',.$f |
46d40 | 72 6f 6d 2c 20 24 74 6f 29 29 3b 0a 7d 0a 0a 24 66 72 6f 6d 20 3d 20 6c 63 66 69 72 73 74 28 73 | rom,.$to));.}..$from.=.lcfirst(s |
46d60 | 74 72 74 72 28 24 66 72 6f 6d 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 3b 0a 24 74 6f 20 3d 20 6c | trtr($from,.'\\',.'/'));.$to.=.l |
46d80 | 63 66 69 72 73 74 28 73 74 72 74 72 28 24 74 6f 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 29 3b 0a 0a | cfirst(strtr($to,.'\\',.'/'));.. |
46da0 | 69 66 20 28 24 66 72 6f 6d 20 3d 3d 3d 20 24 74 6f 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 69 72 | if.($from.===.$to).{.return.$dir |
46dc0 | 65 63 74 6f 72 69 65 73 20 3f 20 27 5f 5f 44 49 52 5f 5f 27 20 3a 20 27 5f 5f 46 49 4c 45 5f 5f | ectories.?.'__DIR__'.:.'__FILE__ |
46de0 | 27 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 24 74 6f 3b 0a 77 68 69 6c 65 20 28 | ';.}..$commonPath.=.$to;.while.( |
46e00 | 73 74 72 70 6f 73 28 24 66 72 6f 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 21 3d 3d 20 30 | strpos($from,.$commonPath).!==.0 |
46e20 | 20 26 26 20 27 2f 27 20 21 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 26 26 20 21 70 72 65 67 | .&&.'/'.!==.$commonPath.&&.!preg |
46e40 | 5f 6d 61 74 63 68 28 27 7b 5e 5b 61 2d 7a 5d 3a 2f 3f 24 7d 69 27 2c 20 24 63 6f 6d 6d 6f 6e 50 | _match('{^[a-z]:/?$}i',.$commonP |
46e60 | 61 74 68 29 20 26 26 20 27 2e 27 20 21 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7b 0a 24 | ath).&&.'.'.!==.$commonPath).{.$ |
46e80 | 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 73 74 72 74 72 28 64 69 72 6e 61 6d 65 28 24 63 6f 6d 6d | commonPath.=.strtr(dirname($comm |
46ea0 | 6f 6e 50 61 74 68 29 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d | onPath),.'\\',.'/');.}..if.(0.!= |
46ec0 | 3d 20 73 74 72 70 6f 73 28 24 66 72 6f 6d 2c 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7c 7c 20 | =.strpos($from,.$commonPath).||. |
46ee0 | 27 2f 27 20 3d 3d 3d 20 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 7c 7c 20 27 2e 27 20 3d 3d 3d 20 24 | '/'.===.$commonPath.||.'.'.===.$ |
46f00 | 63 6f 6d 6d 6f 6e 50 61 74 68 29 20 7b 0a 72 65 74 75 72 6e 20 76 61 72 5f 65 78 70 6f 72 74 28 | commonPath).{.return.var_export( |
46f20 | 24 74 6f 2c 20 74 72 75 65 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 6f 6e 50 61 74 68 20 3d 20 72 74 72 | $to,.true);.}..$commonPath.=.rtr |
46f40 | 69 6d 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 2c 20 27 2f 27 29 20 2e 20 27 2f 27 3b 0a 69 66 20 28 | im($commonPath,.'/')...'/';.if.( |
46f60 | 73 74 72 70 6f 73 28 24 74 6f 2c 20 24 66 72 6f 6d 2e 27 2f 27 29 20 3d 3d 3d 20 30 29 20 7b 0a | strpos($to,.$from.'/').===.0).{. |
46f80 | 72 65 74 75 72 6e 20 27 5f 5f 44 49 52 5f 5f 20 2e 20 27 2e 76 61 72 5f 65 78 70 6f 72 74 28 73 | return.'__DIR__...'.var_export(s |
46fa0 | 75 62 73 74 72 28 24 74 6f 2c 20 73 74 72 6c 65 6e 28 24 66 72 6f 6d 29 29 2c 20 74 72 75 65 29 | ubstr($to,.strlen($from)),.true) |
46fc0 | 3b 0a 7d 0a 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 20 3d 20 73 75 62 73 74 72 5f 63 6f | ;.}.$sourcePathDepth.=.substr_co |
46fe0 | 75 6e 74 28 73 75 62 73 74 72 28 24 66 72 6f 6d 2c 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e | unt(substr($from,.strlen($common |
47000 | 50 61 74 68 29 29 2c 20 27 2f 27 29 20 2b 20 24 64 69 72 65 63 74 6f 72 69 65 73 3b 0a 24 63 6f | Path)),.'/').+.$directories;.$co |
47020 | 6d 6d 6f 6e 50 61 74 68 43 6f 64 65 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 64 69 72 6e 61 | mmonPathCode.=.str_repeat('dirna |
47040 | 6d 65 28 27 2c 20 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 74 68 29 2e 27 5f 5f 44 49 52 5f 5f | me(',.$sourcePathDepth).'__DIR__ |
47060 | 27 2e 73 74 72 5f 72 65 70 65 61 74 28 27 29 27 2c 20 24 73 6f 75 72 63 65 50 61 74 68 44 65 70 | '.str_repeat(')',.$sourcePathDep |
47080 | 74 68 29 3b 0a 24 72 65 6c 54 61 72 67 65 74 20 3d 20 73 75 62 73 74 72 28 24 74 6f 2c 20 73 74 | th);.$relTarget.=.substr($to,.st |
470a0 | 72 6c 65 6e 28 24 63 6f 6d 6d 6f 6e 50 61 74 68 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d | rlen($commonPath));..return.$com |
470c0 | 6d 6f 6e 50 61 74 68 43 6f 64 65 20 2e 20 28 73 74 72 6c 65 6e 28 24 72 65 6c 54 61 72 67 65 74 | monPathCode...(strlen($relTarget |
470e0 | 29 20 3f 20 27 2e 27 20 2e 20 76 61 72 5f 65 78 70 6f 72 74 28 27 2f 27 20 2e 20 24 72 65 6c 54 | ).?.'.'...var_export('/'...$relT |
47100 | 61 72 67 65 74 2c 20 74 72 75 65 29 20 3a 20 27 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | arget,.true).:.'');.}........pub |
47120 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 62 73 6f 6c 75 74 65 50 61 74 68 28 24 70 61 74 | lic.function.isAbsolutePath($pat |
47140 | 68 29 0a 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 30 2c 20 31 29 20 | h).{.return.substr($path,.0,.1). |
47160 | 3d 3d 3d 20 27 2f 27 20 7c 7c 20 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 31 2c 20 31 29 20 3d | ===.'/'.||.substr($path,.1,.1).= |
47180 | 3d 3d 20 27 3a 27 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 | ==.':';.}..protected.function.ge |
471a0 | 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 63 65 73 73 45 | tProcess().{.return.new.ProcessE |
471c0 | 78 65 63 75 74 6f 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 | xecutor;.}.}.<?php............na |
471e0 | 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 53 79 6d 66 | mespace.Composer\Util;..use.Symf |
47200 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a | ony\Component\Process\Process;.. |
47220 | 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 0a 7b 0a 70 72 6f 74 65 | ...class.ProcessExecutor.{.prote |
47240 | 63 74 65 64 20 73 74 61 74 69 63 20 24 74 69 6d 65 6f 75 74 20 3d 20 33 30 30 3b 0a 0a 70 72 6f | cted.static.$timeout.=.300;..pro |
47260 | 74 65 63 74 65 64 20 24 63 61 70 74 75 72 65 4f 75 74 70 75 74 3b 0a 70 72 6f 74 65 63 74 65 64 | tected.$captureOutput;.protected |
47280 | 20 24 65 72 72 6f 72 4f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .$errorOutput;...........public. |
472a0 | 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 26 24 6f 75 74 | function.execute($command,.&$out |
472c0 | 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 | put.=.null,.$cwd.=.null).{.$this |
472e0 | 2d 3e 63 61 70 74 75 72 65 4f 75 74 70 75 74 20 3d 20 63 6f 75 6e 74 28 66 75 6e 63 5f 67 65 74 | ->captureOutput.=.count(func_get |
47300 | 5f 61 72 67 73 28 29 29 20 3e 20 31 3b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 4f 75 74 70 75 74 | _args()).>.1;.$this->errorOutput |
47320 | 20 3d 20 6e 75 6c 6c 3b 0a 24 70 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 28 | .=.null;.$process.=.new.Process( |
47340 | 24 63 6f 6d 6d 61 6e 64 2c 20 24 63 77 64 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 73 74 61 74 | $command,.$cwd,.null,.null,.stat |
47360 | 69 63 3a 3a 67 65 74 54 69 6d 65 6f 75 74 28 29 29 3b 0a 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 | ic::getTimeout());..$callback.=. |
47380 | 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 6f 75 74 70 75 74 29 20 3f 20 24 6f 75 74 70 75 74 20 3a | is_callable($output).?.$output.: |
473a0 | 20 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6f 75 74 70 75 74 48 61 6e 64 6c 65 72 27 29 3b 0a | .array($this,.'outputHandler');. |
473c0 | 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 69 66 20 28 24 | $process->run($callback);..if.($ |
473e0 | 74 68 69 73 2d 3e 63 61 70 74 75 72 65 4f 75 74 70 75 74 20 26 26 20 21 69 73 5f 63 61 6c 6c 61 | this->captureOutput.&&.!is_calla |
47400 | 62 6c 65 28 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 70 72 6f 63 65 | ble($output)).{.$output.=.$proce |
47420 | 73 73 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 | ss->getOutput();.}..$this->error |
47440 | 4f 75 74 70 75 74 20 3d 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 | Output.=.$process->getErrorOutpu |
47460 | 74 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f | t();..return.$process->getExitCo |
47480 | 64 65 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 70 6c 69 74 4c 69 | de();.}..public.function.splitLi |
474a0 | 6e 65 73 28 24 6f 75 74 70 75 74 29 0a 7b 0a 72 65 74 75 72 6e 20 28 28 73 74 72 69 6e 67 29 20 | nes($output).{.return.((string). |
474c0 | 24 6f 75 74 70 75 74 20 3d 3d 3d 20 27 27 29 20 3f 20 61 72 72 61 79 28 29 20 3a 20 70 72 65 67 | $output.===.'').?.array().:.preg |
474e0 | 5f 73 70 6c 69 74 28 27 7b 5c 72 3f 5c 6e 7d 27 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a | _split('{\r?\n}',.$output);.}... |
47500 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 | ....public.function.getErrorOutp |
47520 | 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 72 72 6f 72 4f 75 74 70 75 74 | ut().{.return.$this->errorOutput |
47540 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6f 75 74 70 75 74 48 61 6e 64 6c | ;.}..public.function.outputHandl |
47560 | 65 72 28 24 74 79 70 65 2c 20 24 62 75 66 66 65 72 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e | er($type,.$buffer).{.if.($this-> |
47580 | 63 61 70 74 75 72 65 4f 75 74 70 75 74 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 65 63 68 6f | captureOutput).{.return;.}..echo |
475a0 | 20 24 62 75 66 66 65 72 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | .$buffer;.}..public.static.funct |
475c0 | 69 6f 6e 20 67 65 74 54 69 6d 65 6f 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 74 61 74 69 63 | ion.getTimeout().{.return.static |
475e0 | 3a 3a 24 74 69 6d 65 6f 75 74 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e | ::$timeout;.}..public.static.fun |
47600 | 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 0a 7b 0a 73 74 61 | ction.setTimeout($timeout).{.sta |
47620 | 74 69 63 3a 3a 24 74 69 6d 65 6f 75 74 20 3d 20 24 74 69 6d 65 6f 75 74 3b 0a 7d 0a 7d 0a 3c 3f | tic::$timeout.=.$timeout;.}.}.<? |
47640 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 | php............namespace.Compose |
47660 | 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a | r\Util;..use.Composer\Composer;. |
47680 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 | use.Composer\IO\IOInterface;.use |
476a0 | 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 | .Composer\Downloader\TransportEx |
476c0 | 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 | ception;.....class.RemoteFilesys |
476e0 | 74 65 6d 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 70 72 69 76 61 74 65 20 24 66 69 72 73 | tem.{.private.$io;.private.$firs |
47700 | 74 43 61 6c 6c 3b 0a 70 72 69 76 61 74 65 20 24 62 79 74 65 73 4d 61 78 3b 0a 70 72 69 76 61 74 | tCall;.private.$bytesMax;.privat |
47720 | 65 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 65 55 72 6c 3b 0a | e.$originUrl;.private.$fileUrl;. |
47740 | 70 72 69 76 61 74 65 20 24 66 69 6c 65 4e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 72 65 73 75 | private.$fileName;.private.$resu |
47760 | 6c 74 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 67 72 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 | lt;.private.$progress;.private.$ |
47780 | 6c 61 73 74 50 72 6f 67 72 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | lastProgress;.......public.funct |
477a0 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 | ion.__construct(IOInterface.$io) |
477c0 | 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | .{.$this->io.=.$io;.}........... |
477e0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 6f 70 79 28 24 6f 72 69 67 69 6e 55 72 6c | .public.function.copy($originUrl |
47800 | 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 2c 20 24 70 72 6f 67 72 65 73 73 | ,.$fileUrl,.$fileName,.$progress |
47820 | 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 28 24 6f 72 69 67 69 6e 55 72 6c | .=.true).{.$this->get($originUrl |
47840 | 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 2c 20 24 70 72 6f 67 72 65 73 73 | ,.$fileUrl,.$fileName,.$progress |
47860 | 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a | );..return.$this->result;.}..... |
47880 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 | ......public.function.getContent |
478a0 | 73 28 24 6f 72 69 67 69 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 70 72 6f 67 72 65 73 | s($originUrl,.$fileUrl,.$progres |
478c0 | 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 67 65 74 28 24 6f 72 69 67 69 6e 55 72 | s.=.true).{.$this->get($originUr |
478e0 | 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 6e 75 6c 6c 2c 20 24 70 72 6f 67 72 65 73 73 29 3b 0a 0a | l,.$fileUrl,.null,.$progress);.. |
47900 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | return.$this->result;.}......... |
47920 | 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 28 24 6f 72 69 67 69 | ...protected.function.get($origi |
47940 | 6e 55 72 6c 2c 20 24 66 69 6c 65 55 72 6c 2c 20 24 66 69 6c 65 4e 61 6d 65 20 3d 20 6e 75 6c 6c | nUrl,.$fileUrl,.$fileName.=.null |
47960 | 2c 20 24 70 72 6f 67 72 65 73 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 62 79 74 | ,.$progress.=.true).{.$this->byt |
47980 | 65 73 4d 61 78 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 72 65 73 75 6c 74 20 3d 20 6e 75 6c 6c 3b | esMax.=.0;.$this->result.=.null; |
479a0 | 0a 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 20 3d 20 24 6f 72 69 67 69 6e 55 72 6c 3b 0a | .$this->originUrl.=.$originUrl;. |
479c0 | 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 20 3d 20 24 66 69 6c 65 55 72 6c 3b 0a 24 74 68 69 73 | $this->fileUrl.=.$fileUrl;.$this |
479e0 | 2d 3e 66 69 6c 65 4e 61 6d 65 20 3d 20 24 66 69 6c 65 4e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 70 | ->fileName.=.$fileName;.$this->p |
47a00 | 72 6f 67 72 65 73 73 20 3d 20 24 70 72 6f 67 72 65 73 73 3b 0a 24 74 68 69 73 2d 3e 6c 61 73 74 | rogress.=.$progress;.$this->last |
47a20 | 50 72 6f 67 72 65 73 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 24 74 68 | Progress.=.null;..$options.=.$th |
47a40 | 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 46 6f 72 55 72 6c 28 24 6f 72 69 67 69 6e 55 72 6c 29 | is->getOptionsForUrl($originUrl) |
47a60 | 3b 0a 24 63 74 78 20 3d 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 3a 3a 67 | ;.$ctx.=.StreamContextFactory::g |
47a80 | 65 74 43 6f 6e 74 65 78 74 28 24 6f 70 74 69 6f 6e 73 2c 20 61 72 72 61 79 28 27 6e 6f 74 69 66 | etContext($options,.array('notif |
47aa0 | 69 63 61 74 69 6f 6e 27 20 3d 3e 20 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 63 61 6c 6c 62 61 | ication'.=>.array($this,.'callba |
47ac0 | 63 6b 47 65 74 27 29 29 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 | ckGet')));..if.($this->progress) |
47ae0 | 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 | .{.$this->io->write("....Downloa |
47b00 | 64 69 6e 67 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 63 6f 6e 6e 65 63 74 69 6f 6e 2e 2e 2e 3c 2f 63 6f | ding:.<comment>connection...</co |
47b20 | 6d 6d 65 6e 74 3e 22 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 40 66 | mment>",.false);.}..$result.=.@f |
47b40 | 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 55 72 6c 2c 20 66 61 6c 73 65 | ile_get_contents($fileUrl,.false |
47b60 | 2c 20 24 63 74 78 29 3b 0a 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 68 74 74 70 5f 72 65 73 | ,.$ctx);....if.(!empty($http_res |
47b80 | 70 6f 6e 73 65 5f 68 65 61 64 65 72 5b 30 5d 29 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 | ponse_header[0]).&&.preg_match(' |
47ba0 | 7b 5e 48 54 54 50 2f 5c 53 2b 20 34 30 34 7d 69 27 2c 20 24 68 74 74 70 5f 72 65 73 70 6f 6e 73 | {^HTTP/\S+.404}i',.$http_respons |
47bc0 | 65 5f 68 65 61 64 65 72 5b 30 5d 29 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 66 61 6c 73 65 3b | e_header[0])).{.$result.=.false; |
47be0 | 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 72 65 73 75 6c 74 20 26 26 20 65 | .}....if.(false.!==.$result.&&.e |
47c00 | 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 7a 6c 69 62 27 29 20 26 26 20 73 75 62 73 74 | xtension_loaded('zlib').&&.subst |
47c20 | 72 28 24 66 69 6c 65 55 72 6c 2c 20 30 2c 20 34 29 20 3d 3d 3d 20 27 68 74 74 70 27 29 20 7b 0a | r($fileUrl,.0,.4).===.'http').{. |
47c40 | 24 64 65 63 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 68 74 74 70 5f | $decode.=.false;.foreach.($http_ |
47c60 | 72 65 73 70 6f 6e 73 65 5f 68 65 61 64 65 72 20 61 73 20 24 68 65 61 64 65 72 29 20 7b 0a 69 66 | response_header.as.$header).{.if |
47c80 | 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 63 6f 6e 74 65 6e 74 2d 65 6e 63 6f 64 69 6e 67 | .(preg_match('{^content-encoding |
47ca0 | 3a 20 2a 67 7a 69 70 20 2a 24 7d 69 27 2c 20 24 68 65 61 64 65 72 29 29 20 7b 0a 24 64 65 63 6f | :.*gzip.*$}i',.$header)).{.$deco |
47cc0 | 64 65 20 3d 20 74 72 75 65 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 | de.=.true;.continue;.}.elseif.(p |
47ce0 | 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 48 54 54 50 2f 7d 69 27 2c 20 24 68 65 61 64 65 72 29 29 | reg_match('{^HTTP/}i',.$header)) |
47d00 | 20 7b 0a 24 64 65 63 6f 64 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 24 64 65 | .{.$decode.=.false;.}.}..if.($de |
47d20 | 63 6f 64 65 29 20 7b 0a 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 50 48 50 5f | code).{.if.(version_compare(PHP_ |
47d40 | 56 45 52 53 49 4f 4e 2c 20 27 35 2e 34 2e 30 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 24 72 65 73 75 | VERSION,.'5.4.0',.'>=')).{.$resu |
47d60 | 6c 74 20 3d 20 7a 6c 69 62 5f 64 65 63 6f 64 65 28 24 72 65 73 75 6c 74 29 3b 0a 7d 20 65 6c 73 | lt.=.zlib_decode($result);.}.els |
47d80 | 65 20 7b 0a 0a 20 24 72 65 73 75 6c 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 | e.{...$result.=.file_get_content |
47da0 | 73 28 27 63 6f 6d 70 72 65 73 73 2e 7a 6c 69 62 3a 2f 2f 64 61 74 61 3a 61 70 70 6c 69 63 61 74 | s('compress.zlib://data:applicat |
47dc0 | 69 6f 6e 2f 6f 63 74 65 74 2d 73 74 72 65 61 6d 3b 62 61 73 65 36 34 2c 27 2e 62 61 73 65 36 34 | ion/octet-stream;base64,'.base64 |
47de0 | 5f 65 6e 63 6f 64 65 28 24 72 65 73 75 6c 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 | _encode($result));.}.}.}..if.($t |
47e00 | 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 | his->progress).{.$this->io->over |
47e20 | 77 72 69 74 65 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e 67 3a 20 3c 63 6f 6d 6d 65 6e 74 | write("....Downloading:.<comment |
47e40 | 3e 31 30 30 25 3c 2f 63 6f 6d 6d 65 6e 74 3e 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 | >100%</comment>");.}....if.(fals |
47e60 | 65 20 21 3d 3d 20 24 72 65 73 75 6c 74 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 66 69 6c 65 4e | e.!==.$result.&&.null.!==.$fileN |
47e80 | 61 6d 65 29 20 7b 0a 24 72 65 73 75 6c 74 20 3d 20 28 62 6f 6f 6c 29 20 40 66 69 6c 65 5f 70 75 | ame).{.$result.=.(bool).@file_pu |
47ea0 | 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 4e 61 6d 65 2c 20 24 72 65 73 75 6c 74 29 3b 0a | t_contents($fileName,.$result);. |
47ec0 | 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e | if.(false.===.$result).{.throw.n |
47ee0 | 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 22 27 2e 24 66 | ew.TransportException('The."'.$f |
47f00 | 69 6c 65 55 72 6c 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 77 72 69 74 | ileUrl.'".file.could.not.be.writ |
47f20 | 74 65 6e 20 74 6f 20 27 2e 24 66 69 6c 65 4e 61 6d 65 29 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 | ten.to.'.$fileName);.}.}....if.( |
47f40 | 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 65 73 75 6c 74 29 20 7b 0a 24 74 68 69 73 2d | null.===.$this->result).{.$this- |
47f60 | 3e 72 65 73 75 6c 74 20 3d 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 | >result.=.$result;.}..if.(false. |
47f80 | 3d 3d 3d 20 24 74 68 69 73 2d 3e 72 65 73 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 54 | ===.$this->result).{.throw.new.T |
47fa0 | 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 22 27 2e 24 66 69 6c 65 55 | ransportException('The."'.$fileU |
47fc0 | 72 6c 2e 27 22 20 66 69 6c 65 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 | rl.'".file.could.not.be.download |
47fe0 | 65 64 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 | ed');.}.}............protected.f |
48000 | 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 62 61 63 6b 47 65 74 28 24 6e 6f 74 69 66 69 63 61 74 69 6f | unction.callbackGet($notificatio |
48020 | 6e 43 6f 64 65 2c 20 24 73 65 76 65 72 69 74 79 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 6d 65 73 | nCode,.$severity,.$message,.$mes |
48040 | 73 61 67 65 43 6f 64 65 2c 20 24 62 79 74 65 73 54 72 61 6e 73 66 65 72 72 65 64 2c 20 24 62 79 | sageCode,.$bytesTransferred,.$by |
48060 | 74 65 73 4d 61 78 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6e 6f 74 69 66 69 63 61 74 69 6f 6e 43 | tesMax).{.switch.($notificationC |
48080 | 6f 64 65 29 20 7b 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e 4f 54 49 46 59 5f 46 41 49 4c 55 52 | ode).{.case.STREAM_NOTIFY_FAILUR |
480a0 | 45 3a 0a 74 68 72 6f 77 20 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 | E:.throw.new.TransportException( |
480c0 | 27 54 68 65 20 22 27 2e 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2e 27 22 20 66 69 6c 65 20 63 | 'The."'.$this->fileUrl.'".file.c |
480e0 | 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 28 27 2e 74 72 69 6d 28 24 | ould.not.be.downloaded.('.trim($ |
48100 | 6d 65 73 73 61 67 65 29 2e 27 29 27 2c 20 24 6d 65 73 73 61 67 65 43 6f 64 65 29 3b 0a 62 72 65 | message).')',.$messageCode);.bre |
48120 | 61 6b 3b 0a 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e 4f 54 49 46 59 5f 41 55 54 48 5f 52 45 51 | ak;..case.STREAM_NOTIFY_AUTH_REQ |
48140 | 55 49 52 45 44 3a 0a 69 66 20 28 34 30 31 20 3d 3d 3d 20 24 6d 65 73 73 61 67 65 43 6f 64 65 29 | UIRED:.if.(401.===.$messageCode) |
48160 | 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 | .{.if.(!$this->io->isInteractive |
48180 | 28 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 54 68 65 20 27 22 20 2e 20 24 74 68 69 73 | ()).{.$message.=."The.'"...$this |
481a0 | 2d 3e 66 69 6c 65 55 72 6c 20 2e 20 22 27 20 55 52 4c 20 72 65 71 75 69 72 65 64 20 61 75 74 68 | ->fileUrl..."'.URL.required.auth |
481c0 | 65 6e 74 69 63 61 74 69 6f 6e 2e 5c 6e 59 6f 75 20 6d 75 73 74 20 62 65 20 75 73 69 6e 67 20 74 | entication.\nYou.must.be.using.t |
481e0 | 68 65 20 69 6e 74 65 72 61 63 74 69 76 65 20 63 6f 6e 73 6f 6c 65 22 3b 0a 0a 74 68 72 6f 77 20 | he.interactive.console";..throw. |
48200 | 6e 65 77 20 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c | new.TransportException($message, |
48220 | 20 34 30 31 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 28 27 | .401);.}..$this->io->overwrite(' |
48240 | 20 20 20 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 72 65 71 75 69 72 65 64 20 28 3c 69 6e | ....Authentication.required.(<in |
48260 | 66 6f 3e 27 2e 70 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 50 | fo>'.parse_url($this->fileUrl,.P |
48280 | 48 50 5f 55 52 4c 5f 48 4f 53 54 29 2e 27 3c 2f 69 6e 66 6f 3e 29 3a 27 29 3b 0a 24 75 73 65 72 | HP_URL_HOST).'</info>):');.$user |
482a0 | 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 73 6b 28 27 20 20 20 20 20 20 55 73 65 | name.=.$this->io->ask('......Use |
482c0 | 72 6e 61 6d 65 3a 20 27 29 3b 0a 24 70 61 73 73 77 6f 72 64 20 3d 20 24 74 68 69 73 2d 3e 69 6f | rname:.');.$password.=.$this->io |
482e0 | 2d 3e 61 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 27 20 20 20 20 20 20 50 61 73 73 77 6f | ->askAndHideAnswer('......Passwo |
48300 | 72 64 3a 20 27 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 73 65 74 41 75 74 68 6f 72 69 7a 61 74 | rd:.');.$this->io->setAuthorizat |
48320 | 69 6f 6e 28 24 74 68 69 73 2d 3e 6f 72 69 67 69 6e 55 72 6c 2c 20 24 75 73 65 72 6e 61 6d 65 2c | ion($this->originUrl,.$username, |
48340 | 20 24 70 61 73 73 77 6f 72 64 29 3b 0a 0a 24 74 68 69 73 2d 3e 67 65 74 28 24 74 68 69 73 2d 3e | .$password);..$this->get($this-> |
48360 | 6f 72 69 67 69 6e 55 72 6c 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 55 72 6c 2c 20 24 74 68 69 73 | originUrl,.$this->fileUrl,.$this |
48380 | 2d 3e 66 69 6c 65 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 3b 0a 7d 0a | ->fileName,.$this->progress);.}. |
483a0 | 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e 4f 54 49 46 59 5f 46 49 4c 45 5f | break;..case.STREAM_NOTIFY_FILE_ |
483c0 | 53 49 5a 45 5f 49 53 3a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 79 74 65 73 4d 61 78 20 3c 20 24 | SIZE_IS:.if.($this->bytesMax.<.$ |
483e0 | 62 79 74 65 73 4d 61 78 29 20 7b 0a 24 74 68 69 73 2d 3e 62 79 74 65 73 4d 61 78 20 3d 20 24 62 | bytesMax).{.$this->bytesMax.=.$b |
48400 | 79 74 65 73 4d 61 78 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 53 54 52 45 41 4d 5f 4e | ytesMax;.}.break;..case.STREAM_N |
48420 | 4f 54 49 46 59 5f 50 52 4f 47 52 45 53 53 3a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 79 74 65 73 | OTIFY_PROGRESS:.if.($this->bytes |
48440 | 4d 61 78 20 3e 20 30 20 26 26 20 24 74 68 69 73 2d 3e 70 72 6f 67 72 65 73 73 29 20 7b 0a 24 70 | Max.>.0.&&.$this->progress).{.$p |
48460 | 72 6f 67 72 65 73 73 69 6f 6e 20 3d 20 30 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 62 79 74 65 | rogression.=.0;..if.($this->byte |
48480 | 73 4d 61 78 20 3e 20 30 29 20 7b 0a 24 70 72 6f 67 72 65 73 73 69 6f 6e 20 3d 20 72 6f 75 6e 64 | sMax.>.0).{.$progression.=.round |
484a0 | 28 24 62 79 74 65 73 54 72 61 6e 73 66 65 72 72 65 64 20 2f 20 24 74 68 69 73 2d 3e 62 79 74 65 | ($bytesTransferred./.$this->byte |
484c0 | 73 4d 61 78 20 2a 20 31 30 30 29 3b 0a 7d 0a 0a 69 66 20 28 28 30 20 3d 3d 3d 20 24 70 72 6f 67 | sMax.*.100);.}..if.((0.===.$prog |
484e0 | 72 65 73 73 69 6f 6e 20 25 20 35 29 20 26 26 20 24 70 72 6f 67 72 65 73 73 69 6f 6e 20 21 3d 3d | ression.%.5).&&.$progression.!== |
48500 | 20 24 74 68 69 73 2d 3e 6c 61 73 74 50 72 6f 67 72 65 73 73 29 20 7b 0a 24 74 68 69 73 2d 3e 6c | .$this->lastProgress).{.$this->l |
48520 | 61 73 74 50 72 6f 67 72 65 73 73 20 3d 20 24 70 72 6f 67 72 65 73 73 69 6f 6e 3b 0a 24 74 68 69 | astProgress.=.$progression;.$thi |
48540 | 73 2d 3e 69 6f 2d 3e 6f 76 65 72 77 72 69 74 65 28 22 20 20 20 20 44 6f 77 6e 6c 6f 61 64 69 6e | s->io->overwrite("....Downloadin |
48560 | 67 3a 20 3c 63 6f 6d 6d 65 6e 74 3e 24 70 72 6f 67 72 65 73 73 69 6f 6e 25 3c 2f 63 6f 6d 6d 65 | g:.<comment>$progression%</comme |
48580 | 6e 74 3e 22 2c 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 64 65 66 61 75 6c | nt>",.false);.}.}.break;..defaul |
485a0 | 74 3a 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f | t:.break;.}.}..protected.functio |
485c0 | 6e 20 67 65 74 4f 70 74 69 6f 6e 73 46 6f 72 55 72 6c 28 24 6f 72 69 67 69 6e 55 72 6c 29 0a 7b | n.getOptionsForUrl($originUrl).{ |
485e0 | 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 20 3d 20 73 70 | .$options['http']['header'].=.sp |
48600 | 72 69 6e 74 66 28 0a 22 55 73 65 72 2d 41 67 65 6e 74 3a 20 43 6f 6d 70 6f 73 65 72 2f 25 73 20 | rintf(."User-Agent:.Composer/%s. |
48620 | 28 25 73 3b 20 25 73 3b 20 50 48 50 20 25 73 2e 25 73 2e 25 73 29 5c 72 5c 6e 22 2c 0a 43 6f 6d | (%s;.%s;.PHP.%s.%s.%s)\r\n",.Com |
48640 | 70 6f 73 65 72 3a 3a 56 45 52 53 49 4f 4e 2c 0a 70 68 70 5f 75 6e 61 6d 65 28 27 73 27 29 2c 0a | poser::VERSION,.php_uname('s'),. |
48660 | 70 68 70 5f 75 6e 61 6d 65 28 27 72 27 29 2c 0a 50 48 50 5f 4d 41 4a 4f 52 5f 56 45 52 53 49 4f | php_uname('r'),.PHP_MAJOR_VERSIO |
48680 | 4e 2c 0a 50 48 50 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 4f 4e 2c 0a 50 48 50 5f 52 45 4c 45 41 53 | N,.PHP_MINOR_VERSION,.PHP_RELEAS |
486a0 | 45 5f 56 45 52 53 49 4f 4e 0a 29 3b 0a 69 66 20 28 65 78 74 65 6e 73 69 6f 6e 5f 6c 6f 61 64 65 | E_VERSION.);.if.(extension_loade |
486c0 | 64 28 27 7a 6c 69 62 27 29 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 | d('zlib')).{.$options['http']['h |
486e0 | 65 61 64 65 72 27 5d 20 2e 3d 20 27 41 63 63 65 70 74 2d 45 6e 63 6f 64 69 6e 67 3a 20 67 7a 69 | eader']..=.'Accept-Encoding:.gzi |
48700 | 70 27 2e 22 5c 72 5c 6e 22 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 68 61 73 | p'."\r\n";.}..if.($this->io->has |
48720 | 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 28 24 6f 72 69 67 69 6e 55 72 6c 29 29 20 7b 0a 24 61 75 | Authorization($originUrl)).{.$au |
48740 | 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 67 65 74 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e | th.=.$this->io->getAuthorization |
48760 | 28 24 6f 72 69 67 69 6e 55 72 6c 29 3b 0a 24 61 75 74 68 53 74 72 20 3d 20 62 61 73 65 36 34 5f | ($originUrl);.$authStr.=.base64_ |
48780 | 65 6e 63 6f 64 65 28 24 61 75 74 68 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 2e 20 27 3a 27 20 2e | encode($auth['username']...':'.. |
487a0 | 20 24 61 75 74 68 5b 27 70 61 73 73 77 6f 72 64 27 5d 29 3b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 | .$auth['password']);.$options['h |
487c0 | 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 20 2e 3d 20 22 41 75 74 68 6f 72 69 7a 61 74 69 6f | ttp']['header']..=."Authorizatio |
487e0 | 6e 3a 20 42 61 73 69 63 20 24 61 75 74 68 53 74 72 5c 72 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 | n:.Basic.$authStr\r\n";.}..retur |
48800 | 6e 20 24 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | n.$options;.}.}.<?php........... |
48820 | 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 0a 0a 0a 0a 0a | .namespace.Composer\Util;....... |
48840 | 66 69 6e 61 6c 20 63 6c 61 73 73 20 53 74 72 65 61 6d 43 6f 6e 74 65 78 74 46 61 63 74 6f 72 79 | final.class.StreamContextFactory |
48860 | 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f | .{.........public.static.functio |
48880 | 6e 20 67 65 74 43 6f 6e 74 65 78 74 28 61 72 72 61 79 20 24 64 65 66 61 75 6c 74 4f 70 74 69 6f | n.getContext(array.$defaultOptio |
488a0 | 6e 73 20 3d 20 61 72 72 61 79 28 29 2c 20 61 72 72 61 79 20 24 64 65 66 61 75 6c 74 50 61 72 61 | ns.=.array(),.array.$defaultPara |
488c0 | 6d 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 | ms.=.array()).{.$options.=.array |
488e0 | 28 27 68 74 74 70 27 20 3d 3e 20 61 72 72 61 79 28 29 29 3b 0a 0a 0a 20 69 66 20 28 21 65 6d 70 | ('http'.=>.array());....if.(!emp |
48900 | 74 79 28 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 5f 50 52 4f 58 59 27 5d 29 20 7c 7c 20 21 65 | ty($_SERVER['HTTP_PROXY']).||.!e |
48920 | 6d 70 74 79 28 24 5f 53 45 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 27 5d 29 29 20 7b 0a | mpty($_SERVER['http_proxy'])).{. |
48940 | 0a 20 24 70 72 6f 78 79 20 3d 20 70 61 72 73 65 5f 75 72 6c 28 21 65 6d 70 74 79 28 24 5f 53 45 | ..$proxy.=.parse_url(!empty($_SE |
48960 | 52 56 45 52 5b 27 68 74 74 70 5f 70 72 6f 78 79 27 5d 29 20 3f 20 24 5f 53 45 52 56 45 52 5b 27 | RVER['http_proxy']).?.$_SERVER[' |
48980 | 68 74 74 70 5f 70 72 6f 78 79 27 5d 20 3a 20 24 5f 53 45 52 56 45 52 5b 27 48 54 54 50 5f 50 52 | http_proxy'].:.$_SERVER['HTTP_PR |
489a0 | 4f 58 59 27 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 70 72 6f 78 79 29 29 20 7b | OXY']);.}..if.(!empty($proxy)).{ |
489c0 | 0a 24 70 72 6f 78 79 55 52 4c 20 3d 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 73 63 68 65 | .$proxyURL.=.(isset($proxy['sche |
489e0 | 6d 65 27 5d 29 20 3f 20 24 70 72 6f 78 79 5b 27 73 63 68 65 6d 65 27 5d 20 3a 20 27 27 29 20 2e | me']).?.$proxy['scheme'].:.'').. |
48a00 | 20 27 3a 2f 2f 27 3b 0a 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 69 73 73 65 74 28 24 70 72 6f 78 | .'://';.$proxyURL..=.isset($prox |
48a20 | 79 5b 27 68 6f 73 74 27 5d 29 20 3f 20 24 70 72 6f 78 79 5b 27 68 6f 73 74 27 5d 20 3a 20 27 27 | y['host']).?.$proxy['host'].:.'' |
48a40 | 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 70 6f 72 74 27 5d 29 29 20 7b 0a | ;..if.(isset($proxy['port'])).{. |
48a60 | 24 70 72 6f 78 79 55 52 4c 20 2e 3d 20 22 3a 22 20 2e 20 24 70 72 6f 78 79 5b 27 70 6f 72 74 27 | $proxyURL..=.":"...$proxy['port' |
48a80 | 5d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 68 74 74 70 3a 2f 2f 27 20 3d 3d 20 73 75 62 73 74 72 | ];.}.elseif.('http://'.==.substr |
48aa0 | 28 24 70 72 6f 78 79 55 52 4c 2c 20 30 2c 20 37 29 29 20 7b 0a 24 70 72 6f 78 79 55 52 4c 20 2e | ($proxyURL,.0,.7)).{.$proxyURL.. |
48ac0 | 3d 20 22 3a 38 30 22 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 68 74 74 70 73 3a 2f 2f 27 20 3d 3d | =.":80";.}.elseif.('https://'.== |
48ae0 | 20 73 75 62 73 74 72 28 24 70 72 6f 78 79 55 52 4c 2c 20 30 2c 20 38 29 29 20 7b 0a 24 70 72 6f | .substr($proxyURL,.0,.8)).{.$pro |
48b00 | 78 79 55 52 4c 20 2e 3d 20 22 3a 34 34 33 22 3b 0a 7d 0a 0a 0a 20 24 70 72 6f 78 79 55 52 4c 20 | xyURL..=.":443";.}....$proxyURL. |
48b20 | 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 68 74 74 70 3a 2f 2f 27 2c 20 27 | =.str_replace(array('http://',.' |
48b40 | 68 74 74 70 73 3a 2f 2f 27 29 2c 20 61 72 72 61 79 28 27 74 63 70 3a 2f 2f 27 2c 20 27 73 73 6c | https://'),.array('tcp://',.'ssl |
48b60 | 3a 2f 2f 27 29 2c 20 24 70 72 6f 78 79 55 52 4c 29 3b 0a 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 | ://'),.$proxyURL);..if.(0.===.st |
48b80 | 72 70 6f 73 28 24 70 72 6f 78 79 55 52 4c 2c 20 27 73 73 6c 3a 27 29 20 26 26 20 21 65 78 74 65 | rpos($proxyURL,.'ssl:').&&.!exte |
48ba0 | 6e 73 69 6f 6e 5f 6c 6f 61 64 65 64 28 27 6f 70 65 6e 73 73 6c 27 29 29 20 7b 0a 74 68 72 6f 77 | nsion_loaded('openssl')).{.throw |
48bc0 | 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 | .new.\RuntimeException('You.must |
48be0 | 20 65 6e 61 62 6c 65 20 74 68 65 20 6f 70 65 6e 73 73 6c 20 65 78 74 65 6e 73 69 6f 6e 20 74 6f | .enable.the.openssl.extension.to |
48c00 | 20 75 73 65 20 61 20 70 72 6f 78 79 20 6f 76 65 72 20 68 74 74 70 73 27 29 3b 0a 7d 0a 0a 24 6f | .use.a.proxy.over.https');.}..$o |
48c20 | 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 20 3d 20 61 72 72 61 79 28 0a 27 70 72 6f 78 79 27 20 | ptions['http'].=.array(.'proxy'. |
48c40 | 3d 3e 20 24 70 72 6f 78 79 55 52 4c 2c 0a 27 72 65 71 75 65 73 74 5f 66 75 6c 6c 75 72 69 27 20 | =>.$proxyURL,.'request_fulluri'. |
48c60 | 3d 3e 20 74 72 75 65 2c 0a 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 75 | =>.true,.);..if.(isset($proxy['u |
48c80 | 73 65 72 27 5d 29 29 20 7b 0a 24 61 75 74 68 20 3d 20 24 70 72 6f 78 79 5b 27 75 73 65 72 27 5d | ser'])).{.$auth.=.$proxy['user'] |
48ca0 | 3b 0a 69 66 20 28 69 73 73 65 74 28 24 70 72 6f 78 79 5b 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 | ;.if.(isset($proxy['pass'])).{.$ |
48cc0 | 61 75 74 68 20 2e 3d 20 27 3a 27 20 2e 20 24 70 72 6f 78 79 5b 27 70 61 73 73 27 5d 3b 0a 7d 0a | auth..=.':'...$proxy['pass'];.}. |
48ce0 | 24 61 75 74 68 20 3d 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 61 75 74 68 29 3b 0a 0a 0a | $auth.=.base64_encode($auth);... |
48d00 | 20 69 66 20 28 69 73 73 65 74 28 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 5b 27 68 74 74 70 | .if.(isset($defaultOptions['http |
48d20 | 27 5d 5b 27 68 65 61 64 65 72 27 5d 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 | ']['header'])).{.$defaultOptions |
48d40 | 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 72 27 5d 20 2e 3d 20 22 50 72 6f 78 79 2d 41 75 74 | ['http']['header']..=."Proxy-Aut |
48d60 | 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 7b 24 61 75 74 68 7d 5c 72 5c 6e 22 3b 0a | horization:.Basic.{$auth}\r\n";. |
48d80 | 7d 20 65 6c 73 65 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 27 68 74 74 70 27 5d 5b 27 68 65 61 64 65 | }.else.{.$options['http']['heade |
48da0 | 72 27 5d 20 3d 20 22 50 72 6f 78 79 2d 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 | r'].=."Proxy-Authorization:.Basi |
48dc0 | 63 20 7b 24 61 75 74 68 7d 5c 72 5c 6e 22 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 | c.{$auth}\r\n";.}.}.}..$options. |
48de0 | 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 73 69 76 65 28 24 6f 70 74 69 6f | =.array_replace_recursive($optio |
48e00 | 6e 73 2c 20 24 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 | ns,.$defaultOptions);..return.st |
48e20 | 72 65 61 6d 5f 63 6f 6e 74 65 78 74 5f 63 72 65 61 74 65 28 24 6f 70 74 69 6f 6e 73 2c 20 24 64 | ream_context_create($options,.$d |
48e40 | 65 66 61 75 6c 74 50 61 72 61 6d 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | efaultParams);.}.}.<?php........ |
48e60 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 0a 0a | ....namespace.Composer\Util;.... |
48e80 | 0a 0a 0a 63 6c 61 73 73 20 45 72 72 6f 72 48 61 6e 64 6c 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a | ...class.ErrorHandler.{......... |
48ea0 | 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 6e 64 6c 65 | ...public.static.function.handle |
48ec0 | 28 24 6c 65 76 65 6c 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 66 69 6c 65 2c 20 24 6c 69 6e 65 29 | ($level,.$message,.$file,.$line) |
48ee0 | 0a 7b 0a 0a 20 69 66 20 28 21 65 72 72 6f 72 5f 72 65 70 6f 72 74 69 6e 67 28 29 29 20 7b 0a 72 | .{...if.(!error_reporting()).{.r |
48f00 | 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 69 6e 69 5f 67 65 74 28 27 78 64 65 62 75 67 2e 73 63 | eturn;.}..if.(ini_get('xdebug.sc |
48f20 | 72 65 61 6d 27 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 57 61 72 6e 69 | ream')).{.$message..=."\n\nWarni |
48f40 | 6e 67 3a 20 59 6f 75 20 68 61 76 65 20 78 64 65 62 75 67 2e 73 63 72 65 61 6d 20 65 6e 61 62 6c | ng:.You.have.xdebug.scream.enabl |
48f60 | 65 64 2c 20 74 68 65 20 77 61 72 6e 69 6e 67 20 61 62 6f 76 65 20 6d 61 79 20 62 65 22 2e 0a 22 | ed,.the.warning.above.may.be".." |
48f80 | 5c 6e 61 20 6c 65 67 69 74 69 6d 61 74 65 6c 79 20 73 75 70 70 72 65 73 73 65 64 20 65 72 72 6f | \na.legitimately.suppressed.erro |
48fa0 | 72 20 74 68 61 74 20 79 6f 75 20 77 65 72 65 20 6e 6f 74 20 73 75 70 70 6f 73 65 64 20 74 6f 20 | r.that.you.were.not.supposed.to. |
48fc0 | 73 65 65 2e 22 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 72 72 6f 72 45 78 63 65 70 74 | see.";.}..throw.new.\ErrorExcept |
48fe0 | 69 6f 6e 28 24 6d 65 73 73 61 67 65 2c 20 30 2c 20 24 6c 65 76 65 6c 2c 20 24 66 69 6c 65 2c 20 | ion($message,.0,.$level,.$file,. |
49000 | 24 6c 69 6e 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 | $line);.}.......public.static.fu |
49020 | 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 29 0a 7b 0a 73 65 74 5f 65 72 72 6f 72 5f 68 61 | nction.register().{.set_error_ha |
49040 | 6e 64 6c 65 72 28 61 72 72 61 79 28 5f 5f 43 4c 41 53 53 5f 5f 2c 20 27 68 61 6e 64 6c 65 27 29 | ndler(array(__CLASS__,.'handle') |
49060 | 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | );.}.}.<?php............namespac |
49080 | 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 4a | e.Composer\Util;..use.Composer\J |
490a0 | 73 6f 6e 5c 4a 73 6f 6e 46 69 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 70 64 78 4c | son\JsonFile;........class.SpdxL |
490c0 | 69 63 65 6e 73 65 49 64 65 6e 74 69 66 69 65 72 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 | icenseIdentifier.{....private.$i |
490e0 | 64 65 6e 74 69 66 69 65 72 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 | dentifiers;..public.function.__c |
49100 | 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 49 64 65 6e 74 69 66 69 | onstruct().{.$this->initIdentifi |
49120 | 65 72 73 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ers();.}........public.function. |
49140 | 76 61 6c 69 64 61 74 65 28 24 6c 69 63 65 6e 73 65 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 | validate($license).{.if.(is_arra |
49160 | 79 28 24 6c 69 63 65 6e 73 65 29 29 20 7b 0a 24 63 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 6c | y($license)).{.$count.=.count($l |
49180 | 69 63 65 6e 73 65 29 3b 0a 69 66 20 28 24 63 6f 75 6e 74 20 21 3d 3d 20 63 6f 75 6e 74 28 61 72 | icense);.if.($count.!==.count(ar |
491a0 | 72 61 79 5f 66 69 6c 74 65 72 28 24 6c 69 63 65 6e 73 65 2c 20 27 69 73 5f 73 74 72 69 6e 67 27 | ray_filter($license,.'is_string' |
491c0 | 29 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 | ))).{.throw.new.\InvalidArgument |
491e0 | 45 78 63 65 70 74 69 6f 6e 28 27 41 72 72 61 79 20 6f 66 20 73 74 72 69 6e 67 73 20 65 78 70 65 | Exception('Array.of.strings.expe |
49200 | 63 74 65 64 2e 27 29 3b 0a 7d 0a 24 6c 69 63 65 6e 73 65 20 3d 20 24 63 6f 75 6e 74 20 3e 20 31 | cted.');.}.$license.=.$count.>.1 |
49220 | 20 3f 20 27 28 27 2e 69 6d 70 6c 6f 64 65 28 27 20 6f 72 20 27 2c 20 24 6c 69 63 65 6e 73 65 29 | .?.'('.implode('.or.',.$license) |
49240 | 2e 27 29 27 20 3a 20 28 73 74 72 69 6e 67 29 20 72 65 73 65 74 28 24 6c 69 63 65 6e 73 65 29 3b | .')'.:.(string).reset($license); |
49260 | 0a 7d 0a 69 66 20 28 21 69 73 5f 73 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 29 20 7b 0a 74 | .}.if.(!is_string($license)).{.t |
49280 | 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 | hrow.new.\InvalidArgumentExcepti |
492a0 | 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 41 72 72 61 79 20 6f 72 20 53 74 72 69 6e 67 20 65 78 70 | on(sprintf(.'Array.or.String.exp |
492c0 | 65 63 74 65 64 2c 20 25 73 20 67 69 76 65 6e 2e 27 2c 20 67 65 74 74 79 70 65 28 24 6c 69 63 65 | ected,.%s.given.',.gettype($lice |
492e0 | 6e 73 65 29 0a 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 69 | nse).));.}..return.$this->isVali |
49300 | 64 4c 69 63 65 6e 73 65 53 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 65 29 3b 0a 7d 0a 0a 0a 0a 0a | dLicenseString($license);.}..... |
49320 | 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 49 64 65 6e 74 69 66 69 65 72 73 | private.function.initIdentifiers |
49340 | 28 29 0a 7b 0a 24 6a 73 6f 6e 46 69 6c 65 20 3d 20 6e 65 77 20 4a 73 6f 6e 46 69 6c 65 28 5f 5f | ().{.$jsonFile.=.new.JsonFile(__ |
49360 | 44 49 52 5f 5f 20 2e 20 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 72 65 73 2f 73 70 64 78 2d 69 64 65 6e | DIR__...'/../../../res/spdx-iden |
49380 | 74 69 66 69 65 72 2e 6a 73 6f 6e 27 29 3b 0a 24 74 68 69 73 2d 3e 69 64 65 6e 74 69 66 69 65 72 | tifier.json');.$this->identifier |
493a0 | 73 20 3d 20 24 6a 73 6f 6e 46 69 6c 65 2d 3e 72 65 61 64 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | s.=.$jsonFile->read();.}.......p |
493c0 | 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 49 64 | rivate.function.isValidLicenseId |
493e0 | 65 6e 74 69 66 69 65 72 28 24 69 64 65 6e 74 69 66 69 65 72 29 0a 7b 0a 72 65 74 75 72 6e 20 69 | entifier($identifier).{.return.i |
49400 | 6e 5f 61 72 72 61 79 28 24 69 64 65 6e 74 69 66 69 65 72 2c 20 24 74 68 69 73 2d 3e 69 64 65 6e | n_array($identifier,.$this->iden |
49420 | 74 69 66 69 65 72 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 | tifiers);.}........private.funct |
49440 | 69 6f 6e 20 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 53 74 72 69 6e 67 28 24 6c 69 63 65 6e 73 | ion.isValidLicenseString($licens |
49460 | 65 29 0a 7b 0a 24 74 6f 6b 65 6e 73 20 3d 20 61 72 72 61 79 28 0a 27 70 6f 27 20 3d 3e 20 27 5c | e).{.$tokens.=.array(.'po'.=>.'\ |
49480 | 28 27 2c 0a 27 70 63 27 20 3d 3e 20 27 5c 29 27 2c 0a 27 6f 70 27 20 3d 3e 20 27 28 3f 3a 6f 72 | (',.'pc'.=>.'\)',.'op'.=>.'(?:or |
494a0 | 7c 61 6e 64 29 27 2c 0a 27 6c 69 78 27 20 3d 3e 20 27 28 3f 3a 4e 4f 4e 45 7c 4e 4f 41 53 53 45 | |and)',.'lix'.=>.'(?:NONE|NOASSE |
494c0 | 52 54 49 4f 4e 29 27 2c 0a 27 6c 69 72 27 20 3d 3e 20 27 4c 69 63 65 6e 73 65 52 65 66 2d 5c 64 | RTION)',.'lir'.=>.'LicenseRef-\d |
494e0 | 2b 27 2c 0a 27 6c 69 63 27 20 3d 3e 20 27 5b 2d 2b 5f 2e 61 2d 7a 41 2d 5a 30 2d 39 5d 7b 33 2c | +',.'lic'.=>.'[-+_.a-zA-Z0-9]{3, |
49500 | 7d 27 2c 0a 27 77 73 27 20 3d 3e 20 27 5c 73 2b 27 2c 0a 27 5f 27 20 3d 3e 20 27 2e 27 2c 0a 29 | }',.'ws'.=>.'\s+',.'_'.=>.'.',.) |
49520 | 3b 0a 0a 24 6e 65 78 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 75 73 65 20 28 24 6c 69 63 | ;..$next.=.function.().use.($lic |
49540 | 65 6e 73 65 2c 20 24 74 6f 6b 65 6e 73 29 20 7b 0a 73 74 61 74 69 63 20 24 6f 66 66 73 65 74 20 | ense,.$tokens).{.static.$offset. |
49560 | 3d 20 30 3b 0a 0a 69 66 20 28 24 6f 66 66 73 65 74 20 3e 3d 20 73 74 72 6c 65 6e 28 24 6c 69 63 | =.0;..if.($offset.>=.strlen($lic |
49580 | 65 6e 73 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 | ense)).{.return.null;.}..foreach |
495a0 | 20 28 24 74 6f 6b 65 6e 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 74 6f 6b 65 6e 29 20 7b 0a | .($tokens.as.$name.=>.$token).{. |
495c0 | 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 20 3d 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b | if.(false.===.$r.=.preg_match('{ |
495e0 | 27 20 2e 20 24 74 6f 6b 65 6e 20 2e 20 27 7d 27 2c 20 24 6c 69 63 65 6e 73 65 2c 20 24 6d 61 74 | '...$token...'}',.$license,.$mat |
49600 | 63 68 65 73 2c 20 50 52 45 47 5f 4f 46 46 53 45 54 5f 43 41 50 54 55 52 45 2c 20 24 6f 66 66 73 | ches,.PREG_OFFSET_CAPTURE,.$offs |
49620 | 65 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 | et)).{.throw.new.\RuntimeExcepti |
49640 | 6f 6e 28 27 50 61 74 74 65 72 6e 20 66 6f 72 20 74 6f 6b 65 6e 20 25 73 20 66 61 69 6c 65 64 20 | on('Pattern.for.token.%s.failed. |
49660 | 28 72 65 67 65 78 20 65 72 72 6f 72 29 2e 27 2c 20 24 6e 61 6d 65 29 3b 0a 7d 0a 69 66 20 28 24 | (regex.error).',.$name);.}.if.($ |
49680 | 72 20 3d 3d 3d 20 30 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 24 6d 61 74 63 | r.===.0).{.continue;.}.if.($matc |
496a0 | 68 65 73 5b 30 5d 5b 31 5d 20 21 3d 3d 20 24 6f 66 66 73 65 74 29 20 7b 0a 63 6f 6e 74 69 6e 75 | hes[0][1].!==.$offset).{.continu |
496c0 | 65 3b 0a 7d 0a 24 6f 66 66 73 65 74 20 2b 3d 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 65 73 5b | e;.}.$offset.+=.strlen($matches[ |
496e0 | 30 5d 5b 30 5d 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 24 6e 61 6d 65 2c 20 24 6d 61 | 0][0]);..return.array($name,.$ma |
49700 | 74 63 68 65 73 5b 30 5d 5b 30 5d 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 | tches[0][0]);.}..throw.new.\Runt |
49720 | 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 41 74 20 6c 65 61 73 74 20 74 68 65 20 6c 61 73 74 20 | imeException('At.least.the.last. |
49740 | 70 61 74 74 65 72 6e 20 6e 65 65 64 73 20 74 6f 20 6d 61 74 63 68 2c 20 62 75 74 20 69 74 20 64 | pattern.needs.to.match,.but.it.d |
49760 | 69 64 20 6e 6f 74 20 28 64 6f 74 2d 6d 61 74 63 68 2d 61 6c 6c 20 69 73 20 6d 69 73 73 69 6e 67 | id.not.(dot-match-all.is.missing |
49780 | 3f 29 2e 27 29 3b 0a 7d 3b 0a 0a 24 6f 70 65 6e 20 3d 20 30 3b 0a 24 72 65 71 75 69 72 65 20 3d | ?).');.};..$open.=.0;.$require.= |
497a0 | 20 31 3b 0a 24 6c 61 73 74 6f 70 20 3d 20 6e 75 6c 6c 3b 0a 0a 77 68 69 6c 65 20 28 6c 69 73 74 | .1;.$lastop.=.null;..while.(list |
497c0 | 28 24 74 6f 6b 65 6e 2c 20 24 73 74 72 69 6e 67 29 20 3d 20 24 6e 65 78 74 28 29 29 20 7b 0a 73 | ($token,.$string).=.$next()).{.s |
497e0 | 77 69 74 63 68 20 28 24 74 6f 6b 65 6e 29 20 7b 0a 63 61 73 65 20 27 70 6f 27 3a 0a 69 66 20 28 | witch.($token).{.case.'po':.if.( |
49800 | 24 6f 70 65 6e 20 7c 7c 20 21 24 72 65 71 75 69 72 65 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c | $open.||.!$require).{.return.fal |
49820 | 73 65 3b 0a 7d 0a 24 6f 70 65 6e 20 3d 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 70 63 | se;.}.$open.=.1;.break;.case.'pc |
49840 | 27 3a 0a 69 66 20 28 24 6f 70 65 6e 20 21 3d 3d 20 31 20 7c 7c 20 24 72 65 71 75 69 72 65 20 7c | ':.if.($open.!==.1.||.$require.| |
49860 | 7c 20 21 24 6c 61 73 74 6f 70 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 24 6f | |.!$lastop).{.return.false;.}.$o |
49880 | 70 65 6e 20 3d 20 32 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 6f 70 27 3a 0a 69 66 20 28 24 | pen.=.2;.break;.case.'op':.if.($ |
498a0 | 72 65 71 75 69 72 65 20 7c 7c 20 21 24 6f 70 65 6e 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 | require.||.!$open).{.return.fals |
498c0 | 65 3b 0a 7d 0a 24 6c 61 73 74 6f 70 20 7c 7c 20 24 6c 61 73 74 6f 70 20 3d 20 24 73 74 72 69 6e | e;.}.$lastop.||.$lastop.=.$strin |
498e0 | 67 3b 0a 69 66 20 28 24 6c 61 73 74 6f 70 20 21 3d 3d 20 24 73 74 72 69 6e 67 29 20 7b 0a 72 65 | g;.if.($lastop.!==.$string).{.re |
49900 | 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 24 72 65 71 75 69 72 65 20 3d 20 31 3b 0a 62 72 65 61 | turn.false;.}.$require.=.1;.brea |
49920 | 6b 3b 0a 63 61 73 65 20 27 6c 69 78 27 3a 0a 69 66 20 28 24 6f 70 65 6e 29 20 7b 0a 72 65 74 75 | k;.case.'lix':.if.($open).{.retu |
49940 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 67 6f 74 6f 20 6c 69 72 3b 0a 63 61 73 65 20 27 6c 69 63 27 | rn.false;.}.goto.lir;.case.'lic' |
49960 | 3a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 69 73 56 61 6c 69 64 4c 69 63 65 6e 73 65 49 64 65 6e | :.if.(!$this->isValidLicenseIden |
49980 | 74 69 66 69 65 72 28 24 73 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b | tifier($string)).{.return.false; |
499a0 | 0a 7d 0a 0a 20 63 61 73 65 20 27 6c 69 72 27 3a 0a 6c 69 72 3a 0a 69 66 20 28 21 24 72 65 71 75 | .}...case.'lir':.lir:.if.(!$requ |
499c0 | 69 72 65 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 24 72 65 71 75 69 72 65 20 | ire).{.return.false;.}.$require. |
499e0 | 3d 20 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 77 73 27 3a 0a 62 72 65 61 6b 3b 0a 63 61 | =.0;.break;.case.'ws':.break;.ca |
49a00 | 73 65 20 27 5f 27 3a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 64 65 66 61 75 6c 74 3a 0a 74 | se.'_':.return.false;.default:.t |
49a20 | 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e | hrow.new.\RuntimeException(sprin |
49a40 | 74 66 28 27 55 6e 70 61 72 73 65 64 20 74 6f 6b 65 6e 3a 20 25 73 2e 27 2c 20 70 72 69 6e 74 5f | tf('Unparsed.token:.%s.',.print_ |
49a60 | 72 28 24 74 6f 6b 65 6e 2c 20 74 72 75 65 29 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 | r($token,.true)));.}.}..return.! |
49a80 | 28 24 6f 70 65 6e 20 25 20 32 20 7c 7c 20 24 72 65 71 75 69 72 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 | ($open.%.2.||.$require);.}.}.<?p |
49aa0 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
49ac0 | 5c 55 74 69 6c 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 | \Util;..use.Composer\IO\IOInterf |
49ae0 | 61 63 65 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 76 6e 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 | ace;......class.Svn.{....protect |
49b00 | 65 64 20 24 63 72 65 64 65 6e 74 69 61 6c 73 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 | ed.$credentials;.....protected.$ |
49b20 | 68 61 73 41 75 74 68 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 0a 0a 0a | hasAuth;.....protected.$io;..... |
49b40 | 70 72 6f 74 65 63 74 65 64 20 24 75 72 6c 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 | protected.$url;.....protected.$c |
49b60 | 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 74 72 75 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 | acheCredentials.=.true;.....prot |
49b80 | 65 63 74 65 64 20 24 70 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | ected.$process;.......public.fun |
49ba0 | 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 75 72 6c 2c 20 49 4f 49 6e 74 65 72 66 | ction.__construct($url,.IOInterf |
49bc0 | 61 63 65 20 24 69 6f 2c 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 20 24 70 72 6f 63 65 73 | ace.$io,.ProcessExecutor.$proces |
49be0 | 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 72 6c 20 3d 20 24 75 72 6c 3b 0a 24 | s.=.null).{.$this->url.=.$url;.$ |
49c00 | 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d | this->io.=.$io;.$this->process.= |
49c20 | 20 24 70 72 6f 63 65 73 73 20 3f 3a 20 6e 65 77 20 50 72 6f 63 65 73 73 45 78 65 63 75 74 6f 72 | .$process.?:.new.ProcessExecutor |
49c40 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | ;.}................public.functi |
49c60 | 6f 6e 20 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 64 20 | on.execute($command,.$url,.$cwd. |
49c80 | 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 76 65 72 62 6f 73 65 20 3d | =.null,.$path.=.null,.$verbose.= |
49ca0 | 20 66 61 6c 73 65 29 0a 7b 0a 24 73 76 6e 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 | .false).{.$svnCommand.=.$this->g |
49cc0 | 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 29 | etCommand($command,.$url,.$path) |
49ce0 | 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 3b 0a 24 69 6f 20 3d 20 24 74 68 69 73 2d 3e 69 | ;.$output.=.null;.$io.=.$this->i |
49d00 | 6f 3b 0a 24 68 61 6e 64 6c 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 | o;.$handler.=.function.($type,.$ |
49d20 | 62 75 66 66 65 72 29 20 75 73 65 20 28 26 24 6f 75 74 70 75 74 2c 20 24 69 6f 2c 20 24 76 65 72 | buffer).use.(&$output,.$io,.$ver |
49d40 | 62 6f 73 65 29 20 7b 0a 69 66 20 28 24 74 79 70 65 20 21 3d 3d 20 27 6f 75 74 27 29 20 7b 0a 72 | bose).{.if.($type.!==.'out').{.r |
49d60 | 65 74 75 72 6e 3b 0a 7d 0a 24 6f 75 74 70 75 74 20 2e 3d 20 24 62 75 66 66 65 72 3b 0a 69 66 20 | eturn;.}.$output..=.$buffer;.if. |
49d80 | 28 24 76 65 72 62 6f 73 65 29 20 7b 0a 24 69 6f 2d 3e 77 72 69 74 65 28 24 62 75 66 66 65 72 2c | ($verbose).{.$io->write($buffer, |
49da0 | 20 66 61 6c 73 65 29 3b 0a 7d 0a 7d 3b 0a 24 73 74 61 74 75 73 20 3d 20 24 74 68 69 73 2d 3e 70 | .false);.}.};.$status.=.$this->p |
49dc0 | 72 6f 63 65 73 73 2d 3e 65 78 65 63 75 74 65 28 24 73 76 6e 43 6f 6d 6d 61 6e 64 2c 20 24 68 61 | rocess->execute($svnCommand,.$ha |
49de0 | 6e 64 6c 65 72 2c 20 24 63 77 64 29 3b 0a 69 66 20 28 30 20 3d 3d 3d 20 24 73 74 61 74 75 73 29 | ndler,.$cwd);.if.(0.===.$status) |
49e00 | 20 7b 0a 72 65 74 75 72 6e 20 24 6f 75 74 70 75 74 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 | .{.return.$output;.}..if.(empty( |
49e20 | 24 6f 75 74 70 75 74 29 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f | $output)).{.$output.=.$this->pro |
49e40 | 63 65 73 73 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a 7d 0a 0a 0a 20 69 66 20 | cess->getErrorOutput();.}....if. |
49e60 | 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 69 70 6f 73 28 24 6f 75 74 70 75 74 2c 20 27 43 6f 75 | (false.===.stripos($output,.'Cou |
49e80 | 6c 64 20 6e 6f 74 20 61 75 74 68 65 6e 74 69 63 61 74 65 20 74 6f 20 73 65 72 76 65 72 3a 27 29 | ld.not.authenticate.to.server:') |
49ea0 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 | ).{.throw.new.\RuntimeException( |
49ec0 | 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 | $output);.}....if.(!$this->io->i |
49ee0 | 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e | sInteractive()).{.throw.new.\Run |
49f00 | 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 63 61 6e 20 6e 6f 74 20 61 73 6b 20 66 6f 72 20 | timeException(.'can.not.ask.for. |
49f20 | 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 69 6e 20 6e 6f 6e 20 69 6e 74 65 72 61 63 74 69 76 | authentication.in.non.interactiv |
49f40 | 65 20 6d 6f 64 65 20 28 27 2e 24 6f 75 74 70 75 74 2e 27 29 27 0a 29 3b 0a 7d 0a 0a 0a 20 0a 0a | e.mode.('.$output.')'.);.}...... |
49f60 | 0a 20 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 28 29 29 20 7b 0a 24 74 68 69 73 | ..if.(!$this->hasAuth()).{.$this |
49f80 | 2d 3e 64 6f 41 75 74 68 44 61 6e 63 65 28 29 3b 0a 0a 0a 20 72 65 74 75 72 6e 20 24 74 68 69 73 | ->doAuthDance();....return.$this |
49fa0 | 2d 3e 65 78 65 63 75 74 65 28 24 63 6f 6d 6d 61 6e 64 2c 20 24 75 72 6c 2c 20 24 63 77 64 2c 20 | ->execute($command,.$url,.$cwd,. |
49fc0 | 24 70 61 74 68 2c 20 24 76 65 72 62 6f 73 65 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c | $path,.$verbose);.}..throw.new.\ |
49fe0 | 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 0a 27 77 72 6f 6e 67 20 63 72 65 64 65 6e 74 | RuntimeException(.'wrong.credent |
4a000 | 69 61 6c 73 20 70 72 6f 76 69 64 65 64 20 28 27 2e 24 6f 75 74 70 75 74 2e 27 29 27 0a 29 3b 0a | ials.provided.('.$output.')'.);. |
4a020 | 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 64 6f 41 75 74 | }.......protected.function.doAut |
4a040 | 68 44 61 6e 63 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 22 54 68 65 | hDance().{.$this->io->write("The |
4a060 | 20 53 75 62 76 65 72 73 69 6f 6e 20 73 65 72 76 65 72 20 28 7b 24 74 68 69 73 2d 3e 75 72 6c 7d | .Subversion.server.({$this->url} |
4a080 | 29 20 72 65 71 75 65 73 74 65 64 20 63 72 65 64 65 6e 74 69 61 6c 73 3a 22 29 3b 0a 0a 24 74 68 | ).requested.credentials:");..$th |
4a0a0 | 69 73 2d 3e 68 61 73 41 75 74 68 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 | is->hasAuth.=.true;.$this->crede |
4a0c0 | 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e | ntials['username'].=.$this->io-> |
4a0e0 | 61 73 6b 28 22 55 73 65 72 6e 61 6d 65 3a 20 22 29 3b 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e | ask("Username:.");.$this->creden |
4a100 | 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 61 | tials['password'].=.$this->io->a |
4a120 | 73 6b 41 6e 64 48 69 64 65 41 6e 73 77 65 72 28 22 50 61 73 73 77 6f 72 64 3a 20 22 29 3b 0a 0a | skAndHideAnswer("Password:.");.. |
4a140 | 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3d 20 24 74 68 69 73 2d | $this->cacheCredentials.=.$this- |
4a160 | 3e 69 6f 2d 3e 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 22 53 68 6f 75 6c 64 20 53 75 62 | >io->askConfirmation("Should.Sub |
4a180 | 76 65 72 73 69 6f 6e 20 63 61 63 68 65 20 74 68 65 73 65 20 63 72 65 64 65 6e 74 69 61 6c 73 3f | version.cache.these.credentials? |
4a1a0 | 20 28 79 65 73 2f 6e 6f 29 20 22 2c 20 74 72 75 65 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 | .(yes/no).",.true);..return.$thi |
4a1c0 | 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f | s;.}...........protected.functio |
4a1e0 | 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 24 63 6d 64 2c 20 24 75 72 6c 2c 20 24 70 61 74 68 20 3d | n.getCommand($cmd,.$url,.$path.= |
4a200 | 20 6e 75 6c 6c 29 0a 7b 0a 24 63 6d 64 20 3d 20 73 70 72 69 6e 74 66 28 27 25 73 20 25 73 25 73 | .null).{.$cmd.=.sprintf('%s.%s%s |
4a220 | 20 25 73 27 2c 0a 24 63 6d 64 2c 0a 27 2d 2d 6e 6f 6e 2d 69 6e 74 65 72 61 63 74 69 76 65 20 27 | .%s',.$cmd,.'--non-interactive.' |
4a240 | 2c 0a 24 74 68 69 73 2d 3e 67 65 74 43 72 65 64 65 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 2c 0a | ,.$this->getCredentialString(),. |
4a260 | 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 75 72 6c 29 0a 29 3b 0a 0a 69 66 20 28 24 70 61 | escapeshellarg($url).);..if.($pa |
4a280 | 74 68 29 20 7b 0a 24 63 6d 64 20 2e 3d 20 27 20 27 20 2e 20 65 73 63 61 70 65 73 68 65 6c 6c 61 | th).{.$cmd..=.'.'...escapeshella |
4a2a0 | 72 67 28 24 70 61 74 68 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6d 64 3b 0a 7d 0a 0a 0a 0a | rg($path);.}..return.$cmd;.}.... |
4a2c0 | 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 72 65 64 65 | .....protected.function.getCrede |
4a2e0 | 6e 74 69 61 6c 53 74 72 69 6e 67 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 41 | ntialString().{.if.(!$this->hasA |
4a300 | 75 74 68 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 70 | uth()).{.return.'';.}..return.sp |
4a320 | 72 69 6e 74 66 28 0a 27 20 25 73 2d 2d 75 73 65 72 6e 61 6d 65 20 25 73 20 2d 2d 70 61 73 73 77 | rintf(.'.%s--username.%s.--passw |
4a340 | 6f 72 64 20 25 73 20 27 2c 0a 24 74 68 69 73 2d 3e 67 65 74 41 75 74 68 43 61 63 68 65 28 29 2c | ord.%s.',.$this->getAuthCache(), |
4a360 | 0a 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 67 65 74 55 73 65 72 6e 61 | .escapeshellarg($this->getUserna |
4a380 | 6d 65 28 29 29 2c 0a 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 28 24 74 68 69 73 2d 3e 67 65 74 | me()),.escapeshellarg($this->get |
4a3a0 | 50 61 73 73 77 6f 72 64 28 29 29 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 | Password()).);.}........protecte |
4a3c0 | 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 73 73 77 6f 72 64 28 29 0a 7b 0a 69 66 20 28 24 | d.function.getPassword().{.if.($ |
4a3e0 | 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 74 68 | this->credentials.===.null).{.th |
4a400 | 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 22 4e 6f 20 73 76 6e 20 | row.new.\LogicException("No.svn. |
4a420 | 61 75 74 68 20 64 65 74 65 63 74 65 64 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 | auth.detected.");.}..return.isse |
4a440 | 74 28 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d | t($this->credentials['password'] |
4a460 | 29 20 3f 20 24 74 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 | ).?.$this->credentials['password |
4a480 | 27 5d 20 3a 20 27 27 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 | '].:.'';.}........protected.func |
4a4a0 | 74 69 6f 6e 20 67 65 74 55 73 65 72 6e 61 6d 65 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e | tion.getUsername().{.if.($this-> |
4a4c0 | 63 72 65 64 65 6e 74 69 61 6c 73 20 3d 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 | credentials.===.null).{.throw.ne |
4a4e0 | 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 22 4e 6f 20 73 76 6e 20 61 75 74 68 20 64 | w.\LogicException("No.svn.auth.d |
4a500 | 65 74 65 63 74 65 64 2e 22 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 65 | etected.");.}..return.$this->cre |
4a520 | 64 65 6e 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | dentials['username'];.}......... |
4a540 | 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 75 74 68 28 29 0a 7b 0a 69 | protected.function.hasAuth().{.i |
4a560 | 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 29 20 7b 0a 72 65 | f.(null.!==.$this->hasAuth).{.re |
4a580 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 75 74 68 3b 0a 7d 0a 0a 24 75 72 69 20 3d 20 70 | turn.$this->hasAuth;.}..$uri.=.p |
4a5a0 | 61 72 73 65 5f 75 72 6c 28 24 74 68 69 73 2d 3e 75 72 6c 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 | arse_url($this->url);.if.(empty( |
4a5c0 | 24 75 72 69 5b 27 75 73 65 72 27 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 | $uri['user'])).{.return.$this->h |
4a5e0 | 61 73 41 75 74 68 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 72 65 64 65 6e | asAuth.=.false;.}..$this->creden |
4a600 | 74 69 61 6c 73 5b 27 75 73 65 72 6e 61 6d 65 27 5d 20 3d 20 24 75 72 69 5b 27 75 73 65 72 27 5d | tials['username'].=.$uri['user'] |
4a620 | 3b 0a 69 66 20 28 21 65 6d 70 74 79 28 24 75 72 69 5b 27 70 61 73 73 27 5d 29 29 20 7b 0a 24 74 | ;.if.(!empty($uri['pass'])).{.$t |
4a640 | 68 69 73 2d 3e 63 72 65 64 65 6e 74 69 61 6c 73 5b 27 70 61 73 73 77 6f 72 64 27 5d 20 3d 20 24 | his->credentials['password'].=.$ |
4a660 | 75 72 69 5b 27 70 61 73 73 27 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 | uri['pass'];.}..return.$this->ha |
4a680 | 73 41 75 74 68 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 | sAuth.=.true;.}.......protected. |
4a6a0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 75 74 68 43 61 63 68 65 28 29 0a 7b 0a 72 65 74 75 72 6e | function.getAuthCache().{.return |
4a6c0 | 20 24 74 68 69 73 2d 3e 63 61 63 68 65 43 72 65 64 65 6e 74 69 61 6c 73 20 3f 20 27 27 20 3a 20 | .$this->cacheCredentials.?.''.:. |
4a6e0 | 27 2d 2d 6e 6f 2d 61 75 74 68 2d 63 61 63 68 65 20 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | '--no-auth-cache.';.}.}.<?php... |
4a700 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 73 | .........namespace.Composer;..us |
4a720 | 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | e.Composer\Package\PackageInterf |
4a740 | 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 63 6b 65 72 | ace;.use.Composer\Package\Locker |
4a760 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 | ;.use.Composer\Repository\Reposi |
4a780 | 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c | toryManager;.use.Composer\Instal |
4a7a0 | 6c 65 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d | ler\InstallationManager;.use.Com |
4a7c0 | 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 | poser\Downloader\DownloadManager |
4a7e0 | 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 6f 73 65 72 0a 7b 0a 63 6f 6e 73 74 20 56 45 | ;......class.Composer.{.const.VE |
4a800 | 52 53 49 4f 4e 20 3d 20 27 39 38 37 34 33 62 61 27 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 | RSION.=.'98743ba';.....private.$ |
4a820 | 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 6c 6f 63 6b 65 72 3b 0a 0a 0a | package;.....private.$locker;... |
4a840 | 0a 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 0a 0a | ..private.$repositoryManager;... |
4a860 | 0a 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a | ..private.$downloadManager;..... |
4a880 | 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 0a 0a | private.$installationManager;... |
4a8a0 | 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | ..private.$config;......public.f |
4a8c0 | 75 6e 63 74 69 6f 6e 20 73 65 74 50 61 63 6b 61 67 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 | unction.setPackage(PackageInterf |
4a8e0 | 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d | ace.$package).{.$this->package.= |
4a900 | 20 24 70 61 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | .$package;.}.....public.function |
4a920 | 20 67 65 74 50 61 63 6b 61 67 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 | .getPackage().{.return.$this->pa |
4a940 | 63 6b 61 67 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | ckage;.}.....public.function.set |
4a960 | 43 6f 6e 66 69 67 28 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e | Config(Config.$config).{.$this-> |
4a980 | 63 6f 6e 66 69 67 20 3d 20 24 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | config.=.$config;.}.....public.f |
4a9a0 | 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 66 69 67 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | unction.getConfig().{.return.$th |
4a9c0 | 69 73 2d 3e 63 6f 6e 66 69 67 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | is->config;.}.....public.functio |
4a9e0 | 6e 20 73 65 74 4c 6f 63 6b 65 72 28 4c 6f 63 6b 65 72 20 24 6c 6f 63 6b 65 72 29 0a 7b 0a 24 74 | n.setLocker(Locker.$locker).{.$t |
4aa00 | 68 69 73 2d 3e 6c 6f 63 6b 65 72 20 3d 20 24 6c 6f 63 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | his->locker.=.$locker;.}.....pub |
4aa20 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 63 6b 65 72 28 29 0a 7b 0a 72 65 74 75 72 | lic.function.getLocker().{.retur |
4aa40 | 6e 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | n.$this->locker;.}.....public.fu |
4aa60 | 6e 63 74 69 6f 6e 20 73 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 52 65 70 6f | nction.setRepositoryManager(Repo |
4aa80 | 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 73 2d | sitoryManager.$manager).{.$this- |
4aaa0 | 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 72 3b 0a 7d | >repositoryManager.=.$manager;.} |
4aac0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f | .....public.function.getReposito |
4aae0 | 72 79 4d 61 6e 61 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f | ryManager().{.return.$this->repo |
4ab00 | 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | sitoryManager;.}.....public.func |
4ab20 | 74 69 6f 6e 20 73 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 44 6f 77 6e 6c 6f 61 64 | tion.setDownloadManager(Download |
4ab40 | 4d 61 6e 61 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c | Manager.$manager).{.$this->downl |
4ab60 | 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | oadManager.=.$manager;.}.....pub |
4ab80 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 | lic.function.getDownloadManager( |
4aba0 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 | ).{.return.$this->downloadManage |
4abc0 | 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 73 74 | r;.}.....public.function.setInst |
4abe0 | 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 | allationManager(InstallationMana |
4ac00 | 67 65 72 20 24 6d 61 6e 61 67 65 72 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 | ger.$manager).{.$this->installat |
4ac20 | 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 6d 61 6e 61 67 65 72 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | ionManager.=.$manager;.}.....pub |
4ac40 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 | lic.function.getInstallationMana |
4ac60 | 67 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 | ger().{.return.$this->installati |
4ac80 | 6f 6e 4d 61 6e 61 67 65 72 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | onManager;.}.}.<?php............ |
4aca0 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 | namespace.Composer\Json;.....cla |
4acc0 | 73 73 20 4a 73 6f 6e 4d 61 6e 69 70 75 6c 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f | ss.JsonManipulator.{.private.$co |
4ace0 | 6e 74 65 6e 74 73 3b 0a 70 72 69 76 61 74 65 20 24 6e 65 77 6c 69 6e 65 3b 0a 70 72 69 76 61 74 | ntents;.private.$newline;.privat |
4ad00 | 65 20 24 69 6e 64 65 6e 74 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f | e.$indent;..public.function.__co |
4ad20 | 6e 73 74 72 75 63 74 28 24 63 6f 6e 74 65 6e 74 73 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d | nstruct($contents).{.$contents.= |
4ad40 | 20 74 72 69 6d 28 24 63 6f 6e 74 65 6e 74 73 29 3b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 | .trim($contents);.if.(!preg_matc |
4ad60 | 68 28 27 23 5e 5c 7b 28 2e 2a 29 5c 7d 24 23 73 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 29 20 7b | h('#^\{(.*)\}$#s',.$contents)).{ |
4ad80 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 | .throw.new.\InvalidArgumentExcep |
4ada0 | 74 69 6f 6e 28 27 54 68 65 20 6a 73 6f 6e 20 66 69 6c 65 20 6d 75 73 74 20 62 65 20 61 6e 20 6f | tion('The.json.file.must.be.an.o |
4adc0 | 62 6a 65 63 74 20 28 7b 7d 29 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 3d | bject.({})');.}.$this->newline.= |
4ade0 | 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 22 5c 72 5c 6e 22 2c 20 24 63 6f 6e 74 65 | .false.!==.strpos("\r\n",.$conte |
4ae00 | 6e 74 73 29 20 3f 20 22 5c 72 5c 6e 22 3a 20 22 5c 6e 22 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 | nts).?."\r\n":."\n";.$this->cont |
4ae20 | 65 6e 74 73 20 3d 20 24 63 6f 6e 74 65 6e 74 73 3b 0a 24 74 68 69 73 2d 3e 64 65 74 65 63 74 49 | ents.=.$contents;.$this->detectI |
4ae40 | 6e 64 65 6e 74 69 6e 67 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | ndenting();.}..public.function.g |
4ae60 | 65 74 43 6f 6e 74 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e | etContents().{.return.$this->con |
4ae80 | 74 65 6e 74 73 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 | tents...$this->newline;.}..publi |
4aea0 | 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 69 6e 6b 28 24 74 79 70 65 2c 20 24 70 61 63 6b 61 | c.function.addLink($type,.$packa |
4aec0 | 67 65 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 0a 7b 0a 0a 20 69 66 20 28 21 70 72 65 67 5f 6d | ge,.$constraint).{...if.(!preg_m |
4aee0 | 61 74 63 68 28 27 23 22 27 2e 24 74 79 70 65 2e 27 22 3a 5c 73 2a 5c 7b 23 27 2c 20 24 74 68 69 | atch('#"'.$type.'":\s*\{#',.$thi |
4af00 | 73 2d 3e 63 6f 6e 74 65 6e 74 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4d 61 69 6e 4b 65 | s->contents)).{.$this->addMainKe |
4af20 | 79 28 24 74 79 70 65 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 61 72 72 61 79 28 24 70 61 | y($type,.$this->format(array($pa |
4af40 | 63 6b 61 67 65 20 3d 3e 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 29 29 3b 0a 0a 72 65 74 75 72 6e | ckage.=>.$constraint)));..return |
4af60 | 20 74 72 75 65 3b 0a 7d 0a 0a 24 6c 69 6e 6b 73 52 65 67 65 78 20 3d 20 27 23 28 22 27 2e 24 74 | .true;.}..$linksRegex.=.'#("'.$t |
4af80 | 79 70 65 2e 27 22 3a 5c 73 2a 5c 7b 29 28 5b 5e 7d 5d 2b 29 28 5c 7d 29 23 73 27 3b 0a 69 66 20 | ype.'":\s*\{)([^}]+)(\})#s';.if. |
4afa0 | 28 21 70 72 65 67 5f 6d 61 74 63 68 28 24 6c 69 6e 6b 73 52 65 67 65 78 2c 20 24 74 68 69 73 2d | (!preg_match($linksRegex,.$this- |
4afc0 | 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c | >contents,.$match)).{.return.fal |
4afe0 | 73 65 3b 0a 7d 0a 0a 24 6c 69 6e 6b 73 20 3d 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 24 70 61 63 6b | se;.}..$links.=.$match[2];.$pack |
4b000 | 61 67 65 52 65 67 65 78 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 2f 27 2c 20 27 5c 5c 5c | ageRegex.=.str_replace('/',.'\\\ |
4b020 | 5c 3f 2f 27 2c 20 70 72 65 67 5f 71 75 6f 74 65 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 0a 0a 20 | \?/',.preg_quote($package));.... |
4b040 | 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 22 27 2e 24 70 61 63 6b 61 67 65 52 65 67 65 | if.(preg_match('{"'.$packageRege |
4b060 | 78 2e 27 22 5c 73 2a 3a 7d 69 27 2c 20 24 6c 69 6e 6b 73 29 29 20 7b 0a 24 6c 69 6e 6b 73 20 3d | x.'"\s*:}i',.$links)).{.$links.= |
4b080 | 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 22 27 2e 24 70 61 63 6b 61 67 65 52 65 67 65 78 | .preg_replace('{"'.$packageRegex |
4b0a0 | 2e 27 22 28 5c 73 2a 3a 5c 73 2a 29 22 5b 5e 22 5d 2b 22 7d 69 27 2c 20 4a 73 6f 6e 46 69 6c 65 | .'"(\s*:\s*)"[^"]+"}i',.JsonFile |
4b0c0 | 3a 3a 65 6e 63 6f 64 65 28 24 70 61 63 6b 61 67 65 29 2e 27 24 31 22 27 2e 24 63 6f 6e 73 74 72 | ::encode($package).'$1"'.$constr |
4b0e0 | 61 69 6e 74 2e 27 22 27 2c 20 24 6c 69 6e 6b 73 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 | aint.'"',.$links);.}.elseif.(pre |
4b100 | 67 5f 6d 61 74 63 68 28 27 23 5b 5e 5c 73 5d 28 5c 73 2a 29 24 23 27 2c 20 24 6c 69 6e 6b 73 2c | g_match('#[^\s](\s*)$#',.$links, |
4b120 | 20 24 6d 61 74 63 68 29 29 20 7b 0a 0a 20 24 6c 69 6e 6b 73 20 3d 20 70 72 65 67 5f 72 65 70 6c | .$match)).{...$links.=.preg_repl |
4b140 | 61 63 65 28 0a 27 23 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 24 23 27 2c 0a 27 2c 27 20 2e 20 24 | ace(.'#'.$match[1].'$#',.','...$ |
4b160 | 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 | this->newline...$this->indent... |
4b180 | 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 | $this->indent...JsonFile::encode |
4b1a0 | 28 24 70 61 63 6b 61 67 65 29 2e 27 3a 20 27 2e 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 | ($package).':.'.JsonFile::encode |
4b1c0 | 28 24 63 6f 6e 73 74 72 61 69 6e 74 29 20 2e 20 24 6d 61 74 63 68 5b 31 5d 2c 0a 24 6c 69 6e 6b | ($constraint)...$match[1],.$link |
4b1e0 | 73 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 6c 69 6e 6b 73 20 3d 20 24 74 68 69 73 2d 3e | s.);.}.else.{...$links.=.$this-> |
4b200 | 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d | newline...$this->indent...$this- |
4b220 | 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 70 61 63 6b | >indent...JsonFile::encode($pack |
4b240 | 61 67 65 29 2e 27 3a 20 27 2e 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 63 6f 6e 73 | age).':.'.JsonFile::encode($cons |
4b260 | 74 72 61 69 6e 74 29 20 2e 20 24 6c 69 6e 6b 73 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 | traint)...$links;.}..$this->cont |
4b280 | 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 24 6c 69 6e 6b 73 52 65 67 65 78 2c | ents.=.preg_replace($linksRegex, |
4b2a0 | 20 27 24 31 27 2e 24 6c 69 6e 6b 73 2e 27 24 33 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e | .'$1'.$links.'$3',.$this->conten |
4b2c0 | 74 73 29 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | ts);..return.true;.}..public.fun |
4b2e0 | 63 74 69 6f 6e 20 61 64 64 4d 61 69 6e 4b 65 79 28 24 6b 65 79 2c 20 24 63 6f 6e 74 65 6e 74 29 | ction.addMainKey($key,.$content) |
4b300 | 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5b 5e 7b 5c 73 5d 28 5c 73 2a 29 5c | .{.if.(preg_match('#[^{\s](\s*)\ |
4b320 | 7d 24 23 27 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 | }$#',.$this->contents,.$match)). |
4b340 | 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 | {.$this->contents.=.preg_replace |
4b360 | 28 0a 27 23 27 2e 24 6d 61 74 63 68 5b 31 5d 2e 27 5c 7d 24 23 27 2c 0a 27 2c 27 20 2e 20 24 74 | (.'#'.$match[1].'\}$#',.','...$t |
4b380 | 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a | his->newline...$this->indent...J |
4b3a0 | 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 2e 20 27 3a 20 27 2e 20 24 63 6f | sonFile::encode($key)..':.'..$co |
4b3c0 | 6e 74 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 27 7d 27 2c 0a 24 74 | ntent...$this->newline...'}',.$t |
4b3e0 | 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d | his->contents.);.}.else.{.$this- |
4b400 | 3e 63 6f 6e 74 65 6e 74 73 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 0a 27 23 5c 7d 24 23 | >contents.=.preg_replace(.'#\}$# |
4b420 | 27 2c 0a 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 | ',.$this->indent...JsonFile::enc |
4b440 | 6f 64 65 28 24 6b 65 79 29 2e 20 27 3a 20 27 2e 24 63 6f 6e 74 65 6e 74 20 2e 20 24 74 68 69 73 | ode($key)..':.'.$content...$this |
4b460 | 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 27 7d 27 2c 0a 24 74 68 69 73 2d 3e 63 6f 6e 74 65 6e 74 73 | ->newline...'}',.$this->contents |
4b480 | 0a 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d | .);.}.}..protected.function.form |
4b4a0 | 61 74 28 24 64 61 74 61 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 64 61 74 61 29 29 | at($data).{.if.(is_array($data)) |
4b4c0 | 20 7b 0a 72 65 73 65 74 28 24 64 61 74 61 29 3b 0a 0a 69 66 20 28 69 73 5f 6e 75 6d 65 72 69 63 | .{.reset($data);..if.(is_numeric |
4b4e0 | 28 6b 65 79 28 24 64 61 74 61 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 27 5b 27 2e 69 6d 70 6c 6f | (key($data))).{.return.'['.implo |
4b500 | 64 65 28 27 2c 20 27 2c 20 24 64 61 74 61 29 2e 27 5d 27 3b 0a 7d 0a 0a 24 6f 75 74 20 3d 20 27 | de(',.',.$data).']';.}..$out.=.' |
4b520 | 7b 27 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 | {'...$this->newline;.foreach.($d |
4b540 | 61 74 61 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 29 20 7b 0a 24 65 6c 65 6d 73 5b 5d 20 | ata.as.$key.=>.$val).{.$elems[]. |
4b560 | 3d 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 24 74 68 69 73 2d 3e 69 6e 64 65 6e 74 20 | =.$this->indent...$this->indent. |
4b580 | 2e 20 4a 73 6f 6e 46 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 6b 65 79 29 2e 20 27 3a 20 27 2e 24 | ..JsonFile::encode($key)..':.'.$ |
4b5a0 | 74 68 69 73 2d 3e 66 6f 72 6d 61 74 28 24 76 61 6c 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6f | this->format($val);.}..return.$o |
4b5c0 | 75 74 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2c 27 2e 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 2c | ut...implode(','.$this->newline, |
4b5e0 | 20 24 65 6c 65 6d 73 29 20 2e 20 24 74 68 69 73 2d 3e 6e 65 77 6c 69 6e 65 20 2e 20 24 74 68 69 | .$elems)...$this->newline...$thi |
4b600 | 73 2d 3e 69 6e 64 65 6e 74 20 2e 20 27 7d 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 4a 73 6f 6e 46 | s->indent...'}';.}..return.JsonF |
4b620 | 69 6c 65 3a 3a 65 6e 63 6f 64 65 28 24 64 61 74 61 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 | ile::encode($data);.}..protected |
4b640 | 20 66 75 6e 63 74 69 6f 6e 20 64 65 74 65 63 74 49 6e 64 65 6e 74 69 6e 67 28 29 0a 7b 0a 69 66 | .function.detectIndenting().{.if |
4b660 | 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 28 5c 73 2b 29 22 7d 27 2c 20 24 74 68 69 73 2d | .(preg_match('{^(\s+)"}',.$this- |
4b680 | 3e 63 6f 6e 74 65 6e 74 73 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 64 | >contents,.$match)).{.$this->ind |
4b6a0 | 65 6e 74 20 3d 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d | ent.=.$match[1];.}.else.{.$this- |
4b6c0 | 3e 69 6e 64 65 6e 74 20 3d 20 27 20 20 20 20 27 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | >indent.=.'....';.}.}.}.<?php... |
4b6e0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 4a 73 6f 6e | .........namespace.Composer\Json |
4b700 | 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 4a 73 | ;..use.Composer\Composer;.use.Js |
4b720 | 6f 6e 53 63 68 65 6d 61 5c 56 61 6c 69 64 61 74 6f 72 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f | onSchema\Validator;.use.Seld\Jso |
4b740 | 6e 4c 69 6e 74 5c 4a 73 6f 6e 50 61 72 73 65 72 3b 0a 75 73 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c | nLint\JsonParser;.use.Seld\JsonL |
4b760 | 69 6e 74 5c 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | int\ParsingException;.use.Compos |
4b780 | 65 72 5c 55 74 69 6c 5c 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 3b 0a 75 73 65 20 43 6f | er\Util\RemoteFilesystem;.use.Co |
4b7a0 | 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 | mposer\Downloader\TransportExcep |
4b7c0 | 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e 46 69 6c 65 0a 7b 0a 63 6f | tion;........class.JsonFile.{.co |
4b7e0 | 6e 73 74 20 4c 41 58 5f 53 43 48 45 4d 41 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 53 54 52 49 43 54 | nst.LAX_SCHEMA.=.1;.const.STRICT |
4b800 | 5f 53 43 48 45 4d 41 20 3d 20 32 3b 0a 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 | _SCHEMA.=.2;..const.JSON_UNESCAP |
4b820 | 45 44 5f 53 4c 41 53 48 45 53 20 3d 20 36 34 3b 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 50 52 45 54 | ED_SLASHES.=.64;.const.JSON_PRET |
4b840 | 54 59 5f 50 52 49 4e 54 20 3d 20 31 32 38 3b 0a 63 6f 6e 73 74 20 4a 53 4f 4e 5f 55 4e 45 53 43 | TY_PRINT.=.128;.const.JSON_UNESC |
4b860 | 41 50 45 44 5f 55 4e 49 43 4f 44 45 20 3d 20 32 35 36 3b 0a 0a 70 72 69 76 61 74 65 20 24 70 61 | APED_UNICODE.=.256;..private.$pa |
4b880 | 74 68 3b 0a 70 72 69 76 61 74 65 20 24 72 66 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | th;.private.$rfs;........public. |
4b8a0 | 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 70 61 74 68 2c 20 52 65 6d 6f | function.__construct($path,.Remo |
4b8c0 | 74 65 46 69 6c 65 73 79 73 74 65 6d 20 24 72 66 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 | teFilesystem.$rfs.=.null).{.$thi |
4b8e0 | 73 2d 3e 70 61 74 68 20 3d 20 24 70 61 74 68 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 | s->path.=.$path;..if.(null.===.$ |
4b900 | 72 66 73 20 26 26 20 70 72 65 67 5f 6d 61 74 63 68 28 27 7b 5e 68 74 74 70 73 3f 3a 2f 2f 7d 69 | rfs.&&.preg_match('{^https?://}i |
4b920 | 27 2c 20 24 70 61 74 68 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 | ',.$path)).{.throw.new.\InvalidA |
4b940 | 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 68 74 74 70 20 75 72 6c 73 20 72 65 71 75 | rgumentException('http.urls.requ |
4b960 | 69 72 65 20 61 20 52 65 6d 6f 74 65 46 69 6c 65 73 79 73 74 65 6d 20 69 6e 73 74 61 6e 63 65 20 | ire.a.RemoteFilesystem.instance. |
4b980 | 74 6f 20 62 65 20 70 61 73 73 65 64 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 72 66 73 20 3d 20 24 | to.be.passed');.}.$this->rfs.=.$ |
4b9a0 | 72 66 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 | rfs;.}.....public.function.getPa |
4b9c0 | 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 74 68 3b 0a 7d 0a 0a 0a 0a | th().{.return.$this->path;.}.... |
4b9e0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 69 73 74 73 28 29 0a 7b 0a 72 65 | ...public.function.exists().{.re |
4ba00 | 74 75 72 6e 20 69 73 5f 66 69 6c 65 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a | turn.is_file($this->path);.}.... |
4ba20 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 28 29 0a 7b 0a 74 72 79 20 | ...public.function.read().{.try. |
4ba40 | 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 66 73 29 20 7b 0a 24 6a 73 6f 6e 20 3d 20 24 74 68 69 | {.if.($this->rfs).{.$json.=.$thi |
4ba60 | 73 2d 3e 72 66 73 2d 3e 67 65 74 43 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 2c | s->rfs->getContents($this->path, |
4ba80 | 20 24 74 68 69 73 2d 3e 70 61 74 68 2c 20 66 61 6c 73 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 | .$this->path,.false);.}.else.{.$ |
4baa0 | 6a 73 6f 6e 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e | json.=.file_get_contents($this-> |
4bac0 | 70 61 74 68 29 3b 0a 7d 0a 7d 20 63 61 74 63 68 20 28 54 72 61 6e 73 70 6f 72 74 45 78 63 65 70 | path);.}.}.catch.(TransportExcep |
4bae0 | 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 | tion.$e).{.throw.new.\RuntimeExc |
4bb00 | 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 27 2e 24 74 68 69 73 2d 3e | eption('Could.not.read.'.$this-> |
4bb20 | 70 61 74 68 2e 27 2c 20 65 69 74 68 65 72 20 79 6f 75 20 6f 72 20 74 68 65 20 72 65 6d 6f 74 65 | path.',.either.you.or.the.remote |
4bb40 | 20 68 6f 73 74 20 69 73 20 70 72 6f 62 61 62 6c 79 20 6f 66 66 6c 69 6e 65 27 2e 22 5c 6e 5c 6e | .host.is.probably.offline'."\n\n |
4bb60 | 22 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 | ".$e->getMessage());.}.catch.(\E |
4bb80 | 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d | xception.$e).{.throw.new.\Runtim |
4bba0 | 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 27 2e 24 74 68 | eException('Could.not.read.'.$th |
4bbc0 | 69 73 2d 3e 70 61 74 68 2e 22 5c 6e 5c 6e 22 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 | is->path."\n\n".$e->getMessage() |
4bbe0 | 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 61 74 69 63 3a 3a 70 61 72 73 65 4a 73 6f 6e 28 24 | );.}..return.static::parseJson($ |
4bc00 | 6a 73 6f 6e 2c 20 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | json,.$this->path);.}........pub |
4bc20 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 61 72 72 61 79 20 24 68 61 73 68 2c 20 | lic.function.write(array.$hash,. |
4bc40 | 24 6f 70 74 69 6f 6e 73 20 3d 20 34 34 38 29 0a 7b 0a 24 64 69 72 20 3d 20 64 69 72 6e 61 6d 65 | $options.=.448).{.$dir.=.dirname |
4bc60 | 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 | ($this->path);.if.(!is_dir($dir) |
4bc80 | 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 29 29 20 7b 0a 74 68 72 | ).{.if.(file_exists($dir)).{.thr |
4bca0 | 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e | ow.new.\UnexpectedValueException |
4bcc0 | 28 0a 24 64 69 72 2e 27 20 65 78 69 73 74 73 20 61 6e 64 20 69 73 20 6e 6f 74 20 61 20 64 69 72 | (.$dir.'.exists.and.is.not.a.dir |
4bce0 | 65 63 74 6f 72 79 2e 27 0a 29 3b 0a 7d 0a 69 66 20 28 21 6d 6b 64 69 72 28 24 64 69 72 2c 20 30 | ectory.'.);.}.if.(!mkdir($dir,.0 |
4bd00 | 37 37 37 2c 20 74 72 75 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 | 777,.true)).{.throw.new.\Unexpec |
4bd20 | 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 0a 24 64 69 72 2e 27 20 64 6f 65 73 20 6e | tedValueException(.$dir.'.does.n |
4bd40 | 6f 74 20 65 78 69 73 74 20 61 6e 64 20 63 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 72 65 61 74 65 | ot.exist.and.could.not.be.create |
4bd60 | 64 2e 27 0a 29 3b 0a 7d 0a 7d 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 | d.'.);.}.}.file_put_contents($th |
4bd80 | 69 73 2d 3e 70 61 74 68 2c 20 73 74 61 74 69 63 3a 3a 65 6e 63 6f 64 65 28 24 68 61 73 68 2c 20 | is->path,.static::encode($hash,. |
4bda0 | 24 6f 70 74 69 6f 6e 73 29 2e 20 28 24 6f 70 74 69 6f 6e 73 20 26 20 73 65 6c 66 3a 3a 4a 53 4f | $options)..($options.&.self::JSO |
4bdc0 | 4e 5f 50 52 45 54 54 59 5f 50 52 49 4e 54 20 3f 20 22 5c 6e 22 20 3a 20 27 27 29 29 3b 0a 7d 0a | N_PRETTY_PRINT.?."\n".:.''));.}. |
4bde0 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 | ........public.function.validate |
4be00 | 53 63 68 65 6d 61 28 24 73 63 68 65 6d 61 20 3d 20 73 65 6c 66 3a 3a 53 54 52 49 43 54 5f 53 43 | Schema($schema.=.self::STRICT_SC |
4be20 | 48 45 4d 41 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 | HEMA).{.$content.=.file_get_cont |
4be40 | 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 24 64 61 74 61 20 3d 20 6a 73 6f 6e 5f | ents($this->path);.$data.=.json_ |
4be60 | 64 65 63 6f 64 65 28 24 63 6f 6e 74 65 6e 74 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 | decode($content);..if.(null.===. |
4be80 | 24 64 61 74 61 20 26 26 20 27 6e 75 6c 6c 27 20 21 3d 3d 20 24 63 6f 6e 74 65 6e 74 29 20 7b 0a | $data.&&.'null'.!==.$content).{. |
4bea0 | 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 53 79 6e 74 61 78 28 24 63 6f 6e 74 65 6e 74 2c 20 24 | self::validateSyntax($content,.$ |
4bec0 | 74 68 69 73 2d 3e 70 61 74 68 29 3b 0a 7d 0a 0a 24 73 63 68 65 6d 61 46 69 6c 65 20 3d 20 5f 5f | this->path);.}..$schemaFile.=.__ |
4bee0 | 44 49 52 5f 5f 20 2e 20 27 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 72 65 73 2f 63 6f 6d 70 6f 73 65 72 2d | DIR__...'/../../../res/composer- |
4bf00 | 73 63 68 65 6d 61 2e 6a 73 6f 6e 27 3b 0a 24 73 63 68 65 6d 61 44 61 74 61 20 3d 20 6a 73 6f 6e | schema.json';.$schemaData.=.json |
4bf20 | 5f 64 65 63 6f 64 65 28 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 73 63 68 65 6d | _decode(file_get_contents($schem |
4bf40 | 61 46 69 6c 65 29 29 3b 0a 0a 69 66 20 28 24 73 63 68 65 6d 61 20 3d 3d 3d 20 73 65 6c 66 3a 3a | aFile));..if.($schema.===.self:: |
4bf60 | 4c 41 58 5f 53 43 48 45 4d 41 29 20 7b 0a 24 73 63 68 65 6d 61 44 61 74 61 2d 3e 61 64 64 69 74 | LAX_SCHEMA).{.$schemaData->addit |
4bf80 | 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 20 3d 20 74 72 75 65 3b 0a 24 73 63 68 65 6d 61 44 | ionalProperties.=.true;.$schemaD |
4bfa0 | 61 74 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 2d 3e 6e 61 6d 65 2d 3e 72 65 71 75 69 72 65 64 20 | ata->properties->name->required. |
4bfc0 | 3d 20 66 61 6c 73 65 3b 0a 24 73 63 68 65 6d 61 44 61 74 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 | =.false;.$schemaData->properties |
4bfe0 | 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 2d 3e 72 65 71 75 69 72 65 64 20 3d 20 66 61 6c 73 65 3b | ->description->required.=.false; |
4c000 | 0a 7d 0a 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 56 61 6c 69 64 61 74 6f 72 28 29 | .}..$validator.=.new.Validator() |
4c020 | 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 64 61 74 61 2c 20 24 73 63 68 65 | ;.$validator->check($data,.$sche |
4c040 | 6d 61 44 61 74 61 29 3b 0a 0a 0a 0a 69 66 20 28 21 24 76 61 6c 69 64 61 74 6f 72 2d 3e 69 73 56 | maData);....if.(!$validator->isV |
4c060 | 61 6c 69 64 28 29 29 20 7b 0a 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 | alid()).{.$errors.=.array();.for |
4c080 | 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 | each.((array).$validator->getErr |
4c0a0 | 6f 72 73 28 29 20 61 73 20 24 65 72 72 6f 72 29 20 7b 0a 24 65 72 72 6f 72 73 5b 5d 20 3d 20 28 | ors().as.$error).{.$errors[].=.( |
4c0c0 | 24 65 72 72 6f 72 5b 27 70 72 6f 70 65 72 74 79 27 5d 20 3f 20 24 65 72 72 6f 72 5b 27 70 72 6f | $error['property'].?.$error['pro |
4c0e0 | 70 65 72 74 79 27 5d 2e 27 20 3a 20 27 20 3a 20 27 27 29 2e 24 65 72 72 6f 72 5b 27 6d 65 73 73 | perty'].'.:.'.:.'').$error['mess |
4c100 | 61 67 65 27 5d 3b 0a 7d 0a 74 68 72 6f 77 20 6e 65 77 20 4a 73 6f 6e 56 61 6c 69 64 61 74 69 6f | age'];.}.throw.new.JsonValidatio |
4c120 | 6e 45 78 63 65 70 74 69 6f 6e 28 27 22 27 2e 24 74 68 69 73 2d 3e 70 61 74 68 2e 27 22 20 64 6f | nException('"'.$this->path.'".do |
4c140 | 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 65 78 70 65 63 74 65 64 20 4a 53 4f 4e 20 73 | es.not.match.the.expected.JSON.s |
4c160 | 63 68 65 6d 61 27 2c 20 24 65 72 72 6f 72 73 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 | chema',.$errors);.}..return.true |
4c180 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 | ;.}..............public.static.f |
4c1a0 | 75 6e 63 74 69 6f 6e 20 65 6e 63 6f 64 65 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f 6e 73 20 3d | unction.encode($data,.$options.= |
4c1c0 | 20 34 34 38 29 0a 7b 0a 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 61 72 65 28 50 48 50 5f | .448).{.if.(version_compare(PHP_ |
4c1e0 | 56 45 52 53 49 4f 4e 2c 20 27 35 2e 34 27 2c 20 27 3e 3d 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 | VERSION,.'5.4',.'>=')).{.return. |
4c200 | 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a | json_encode($data,.$options);.}. |
4c220 | 0a 24 6a 73 6f 6e 20 3d 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 61 74 61 29 3b 0a 0a 24 70 | .$json.=.json_encode($data);..$p |
4c240 | 72 65 74 74 79 50 72 69 6e 74 20 3d 20 28 62 6f 6f 6c 29 20 28 24 6f 70 74 69 6f 6e 73 20 26 20 | rettyPrint.=.(bool).($options.&. |
4c260 | 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 50 52 45 54 54 59 5f 50 52 49 4e 54 29 3b 0a 24 75 6e 65 73 63 | self::JSON_PRETTY_PRINT);.$unesc |
4c280 | 61 70 65 55 6e 69 63 6f 64 65 20 3d 20 28 62 6f 6f 6c 29 20 28 24 6f 70 74 69 6f 6e 73 20 26 20 | apeUnicode.=.(bool).($options.&. |
4c2a0 | 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f 55 4e 49 43 4f 44 45 29 3b 0a 24 | self::JSON_UNESCAPED_UNICODE);.$ |
4c2c0 | 75 6e 65 73 63 61 70 65 53 6c 61 73 68 65 73 20 3d 20 28 62 6f 6f 6c 29 20 28 24 6f 70 74 69 6f | unescapeSlashes.=.(bool).($optio |
4c2e0 | 6e 73 20 26 20 73 65 6c 66 3a 3a 4a 53 4f 4e 5f 55 4e 45 53 43 41 50 45 44 5f 53 4c 41 53 48 45 | ns.&.self::JSON_UNESCAPED_SLASHE |
4c300 | 53 29 3b 0a 0a 69 66 20 28 21 24 70 72 65 74 74 79 50 72 69 6e 74 20 26 26 20 21 24 75 6e 65 73 | S);..if.(!$prettyPrint.&&.!$unes |
4c320 | 63 61 70 65 55 6e 69 63 6f 64 65 20 26 26 20 21 24 75 6e 65 73 63 61 70 65 53 6c 61 73 68 65 73 | capeUnicode.&&.!$unescapeSlashes |
4c340 | 29 20 7b 0a 72 65 74 75 72 6e 20 24 6a 73 6f 6e 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 3d 20 27 | ).{.return.$json;.}..$result.=.' |
4c360 | 27 3b 0a 24 70 6f 73 20 3d 20 30 3b 0a 24 73 74 72 4c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 6a | ';.$pos.=.0;.$strLen.=.strlen($j |
4c380 | 73 6f 6e 29 3b 0a 24 69 6e 64 65 6e 74 53 74 72 20 3d 20 27 20 20 20 20 27 3b 0a 24 6e 65 77 4c | son);.$indentStr.=.'....';.$newL |
4c3a0 | 69 6e 65 20 3d 20 22 5c 6e 22 3b 0a 24 6f 75 74 4f 66 51 75 6f 74 65 73 20 3d 20 74 72 75 65 3b | ine.=."\n";.$outOfQuotes.=.true; |
4c3c0 | 0a 24 62 75 66 66 65 72 20 3d 20 27 27 3b 0a 24 6e 6f 65 73 63 61 70 65 20 3d 20 74 72 75 65 3b | .$buffer.=.'';.$noescape.=.true; |
4c3e0 | 0a 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 3d 20 24 73 74 72 4c 65 6e 3b 20 24 69 | ..for.($i.=.0;.$i.<=.$strLen;.$i |
4c400 | 2b 2b 29 20 7b 0a 0a 20 24 63 68 61 72 20 3d 20 73 75 62 73 74 72 28 24 6a 73 6f 6e 2c 20 24 69 | ++).{...$char.=.substr($json,.$i |
4c420 | 2c 20 31 29 3b 0a 0a 0a 20 69 66 20 28 27 22 27 20 3d 3d 3d 20 24 63 68 61 72 20 26 26 20 24 6e | ,.1);....if.('"'.===.$char.&&.$n |
4c440 | 6f 65 73 63 61 70 65 29 20 7b 0a 24 6f 75 74 4f 66 51 75 6f 74 65 73 20 3d 20 21 24 6f 75 74 4f | oescape).{.$outOfQuotes.=.!$outO |
4c460 | 66 51 75 6f 74 65 73 3b 0a 7d 0a 0a 69 66 20 28 21 24 6f 75 74 4f 66 51 75 6f 74 65 73 29 20 7b | fQuotes;.}..if.(!$outOfQuotes).{ |
4c480 | 0a 24 62 75 66 66 65 72 20 2e 3d 20 24 63 68 61 72 3b 0a 24 6e 6f 65 73 63 61 70 65 20 3d 20 27 | .$buffer..=.$char;.$noescape.=.' |
4c4a0 | 5c 5c 27 20 3d 3d 3d 20 24 63 68 61 72 20 3f 20 21 24 6e 6f 65 73 63 61 70 65 20 3a 20 74 72 75 | \\'.===.$char.?.!$noescape.:.tru |
4c4c0 | 65 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 27 20 21 3d 3d 20 24 62 | e;.continue;.}.elseif.(''.!==.$b |
4c4e0 | 75 66 66 65 72 29 20 7b 0a 69 66 20 28 24 75 6e 65 73 63 61 70 65 53 6c 61 73 68 65 73 29 20 7b | uffer).{.if.($unescapeSlashes).{ |
4c500 | 0a 24 62 75 66 66 65 72 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 2f 27 2c 20 27 2f | .$buffer.=.str_replace('\\/',.'/ |
4c520 | 27 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 75 6e 65 73 63 61 70 65 55 6e 69 | ',.$buffer);.}..if.($unescapeUni |
4c540 | 63 6f 64 65 20 26 26 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 6d 62 5f 63 6f 6e 76 | code.&&.function_exists('mb_conv |
4c560 | 65 72 74 5f 65 6e 63 6f 64 69 6e 67 27 29 29 20 7b 0a 0a 20 24 62 75 66 66 65 72 20 3d 20 70 72 | ert_encoding')).{...$buffer.=.pr |
4c580 | 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 27 2f 5c 5c 5c 5c 75 28 5b 30 2d 39 | eg_replace_callback('/\\\\u([0-9 |
4c5a0 | 61 2d 66 5d 7b 34 7d 29 2f 69 27 2c 20 66 75 6e 63 74 69 6f 6e 28 24 6d 61 74 63 68 29 20 7b 0a | a-f]{4})/i',.function($match).{. |
4c5c0 | 72 65 74 75 72 6e 20 6d 62 5f 63 6f 6e 76 65 72 74 5f 65 6e 63 6f 64 69 6e 67 28 70 61 63 6b 28 | return.mb_convert_encoding(pack( |
4c5e0 | 27 48 2a 27 2c 20 24 6d 61 74 63 68 5b 31 5d 29 2c 20 27 55 54 46 2d 38 27 2c 20 27 55 43 53 2d | 'H*',.$match[1]),.'UTF-8',.'UCS- |
4c600 | 32 42 45 27 29 3b 0a 7d 2c 20 24 62 75 66 66 65 72 29 3b 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 2e | 2BE');.},.$buffer);.}..$result.. |
4c620 | 3d 20 24 62 75 66 66 65 72 2e 24 63 68 61 72 3b 0a 24 62 75 66 66 65 72 20 3d 20 27 27 3b 0a 63 | =.$buffer.$char;.$buffer.=.'';.c |
4c640 | 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 3a 27 20 3d 3d 3d 20 24 63 68 61 72 29 20 7b | ontinue;.}..if.(':'.===.$char).{ |
4c660 | 0a 0a 20 24 63 68 61 72 20 2e 3d 20 27 20 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 28 27 7d 27 20 | ...$char..=.'.';.}.elseif.(('}'. |
4c680 | 3d 3d 3d 20 24 63 68 61 72 20 7c 7c 20 27 5d 27 20 3d 3d 3d 20 24 63 68 61 72 29 29 20 7b 0a 24 | ===.$char.||.']'.===.$char)).{.$ |
4c6a0 | 70 6f 73 2d 2d 3b 0a 24 70 72 65 76 43 68 61 72 20 3d 20 73 75 62 73 74 72 28 24 6a 73 6f 6e 2c | pos--;.$prevChar.=.substr($json, |
4c6c0 | 20 24 69 20 2d 20 31 2c 20 31 29 3b 0a 0a 69 66 20 28 27 7b 27 20 21 3d 3d 20 24 70 72 65 76 43 | .$i.-.1,.1);..if.('{'.!==.$prevC |
4c6e0 | 68 61 72 20 26 26 20 27 5b 27 20 21 3d 3d 20 24 70 72 65 76 43 68 61 72 29 20 7b 0a 0a 20 0a 20 | har.&&.'['.!==.$prevChar).{..... |
4c700 | 24 72 65 73 75 6c 74 20 2e 3d 20 24 6e 65 77 4c 69 6e 65 3b 0a 66 6f 72 20 28 24 6a 20 3d 20 30 | $result..=.$newLine;.for.($j.=.0 |
4c720 | 3b 20 24 6a 20 3c 20 24 70 6f 73 3b 20 24 6a 2b 2b 29 20 7b 0a 24 72 65 73 75 6c 74 20 2e 3d 20 | ;.$j.<.$pos;.$j++).{.$result..=. |
4c740 | 24 69 6e 64 65 6e 74 53 74 72 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 72 65 73 75 6c 74 | $indentStr;.}.}.else.{...$result |
4c760 | 20 3d 20 72 74 72 69 6d 28 24 72 65 73 75 6c 74 29 2e 22 5c 6e 5c 6e 22 2e 24 69 6e 64 65 6e 74 | .=.rtrim($result)."\n\n".$indent |
4c780 | 53 74 72 3b 0a 7d 0a 7d 0a 0a 24 72 65 73 75 6c 74 20 2e 3d 20 24 63 68 61 72 3b 0a 0a 0a 20 0a | Str;.}.}..$result..=.$char;..... |
4c7a0 | 20 69 66 20 28 27 2c 27 20 3d 3d 3d 20 24 63 68 61 72 20 7c 7c 20 27 7b 27 20 3d 3d 3d 20 24 63 | .if.(','.===.$char.||.'{'.===.$c |
4c7c0 | 68 61 72 20 7c 7c 20 27 5b 27 20 3d 3d 3d 20 24 63 68 61 72 29 20 7b 0a 24 72 65 73 75 6c 74 20 | har.||.'['.===.$char).{.$result. |
4c7e0 | 2e 3d 20 24 6e 65 77 4c 69 6e 65 3b 0a 0a 69 66 20 28 27 7b 27 20 3d 3d 3d 20 24 63 68 61 72 20 | .=.$newLine;..if.('{'.===.$char. |
4c800 | 7c 7c 20 27 5b 27 20 3d 3d 3d 20 24 63 68 61 72 29 20 7b 0a 24 70 6f 73 2b 2b 3b 0a 7d 0a 0a 66 | ||.'['.===.$char).{.$pos++;.}..f |
4c820 | 6f 72 20 28 24 6a 20 3d 20 30 3b 20 24 6a 20 3c 20 24 70 6f 73 3b 20 24 6a 2b 2b 29 20 7b 0a 24 | or.($j.=.0;.$j.<.$pos;.$j++).{.$ |
4c840 | 72 65 73 75 6c 74 20 2e 3d 20 24 69 6e 64 65 6e 74 53 74 72 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 | result..=.$indentStr;.}.}.}..ret |
4c860 | 75 72 6e 20 24 72 65 73 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 | urn.$result;.}..........public.s |
4c880 | 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4a 73 6f 6e 28 24 6a 73 6f 6e 2c 20 | tatic.function.parseJson($json,. |
4c8a0 | 24 66 69 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 64 61 74 61 20 3d 20 6a 73 6f 6e 5f 64 65 63 | $file.=.null).{.$data.=.json_dec |
4c8c0 | 6f 64 65 28 24 6a 73 6f 6e 2c 20 74 72 75 65 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 | ode($json,.true);.if.(null.===.$ |
4c8e0 | 64 61 74 61 20 26 26 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 4e 4f 4e 45 20 21 3d 3d 20 6a 73 6f 6e | data.&&.JSON_ERROR_NONE.!==.json |
4c900 | 5f 6c 61 73 74 5f 65 72 72 6f 72 28 29 29 20 7b 0a 73 65 6c 66 3a 3a 76 61 6c 69 64 61 74 65 53 | _last_error()).{.self::validateS |
4c920 | 79 6e 74 61 78 28 24 6a 73 6f 6e 2c 20 24 66 69 6c 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | yntax($json,.$file);.}..return.$ |
4c940 | 64 61 74 61 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 73 74 61 74 | data;.}...........protected.stat |
4c960 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 53 79 6e 74 61 78 28 24 6a 73 6f 6e | ic.function.validateSyntax($json |
4c980 | 2c 20 24 66 69 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 70 61 72 73 65 72 20 3d 20 6e 65 77 20 | ,.$file.=.null).{.$parser.=.new. |
4c9a0 | 4a 73 6f 6e 50 61 72 73 65 72 28 29 3b 0a 24 72 65 73 75 6c 74 20 3d 20 24 70 61 72 73 65 72 2d | JsonParser();.$result.=.$parser- |
4c9c0 | 3e 6c 69 6e 74 28 24 6a 73 6f 6e 29 3b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 72 65 73 75 | >lint($json);.if.(null.===.$resu |
4c9e0 | 6c 74 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 4a 53 4f 4e 5f 45 52 52 4f 52 5f 55 54 | lt).{.if.(defined('JSON_ERROR_UT |
4ca00 | 46 38 27 29 20 26 26 20 4a 53 4f 4e 5f 45 52 52 4f 52 5f 55 54 46 38 20 3d 3d 3d 20 6a 73 6f 6e | F8').&&.JSON_ERROR_UTF8.===.json |
4ca20 | 5f 6c 61 73 74 5f 65 72 72 6f 72 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 | _last_error()).{.throw.new.\Unex |
4ca40 | 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 22 27 2e 24 66 69 6c 65 2e 27 | pectedValueException('"'.$file.' |
4ca60 | 22 20 69 73 20 6e 6f 74 20 55 54 46 2d 38 2c 20 63 6f 75 6c 64 20 6e 6f 74 20 70 61 72 73 65 20 | ".is.not.UTF-8,.could.not.parse. |
4ca80 | 61 73 20 4a 53 4f 4e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 74 68 | as.JSON');.}..return.true;.}..th |
4caa0 | 72 6f 77 20 6e 65 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 27 22 27 2e 24 66 69 | row.new.ParsingException('"'.$fi |
4cac0 | 6c 65 2e 27 22 20 64 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 76 61 6c 69 64 20 4a 53 4f | le.'".does.not.contain.valid.JSO |
4cae0 | 4e 27 2e 22 5c 6e 22 2e 24 72 65 73 75 6c 74 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 24 | N'."\n".$result->getMessage(),.$ |
4cb00 | 72 65 73 75 6c 74 2d 3e 67 65 74 44 65 74 61 69 6c 73 28 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 | result->getDetails());.}.}.<?php |
4cb20 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 4a | ............namespace.Composer\J |
4cb40 | 73 6f 6e 3b 0a 0a 75 73 65 20 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a | son;..use.Exception;.....class.J |
4cb60 | 73 6f 6e 56 61 6c 69 64 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 45 | sonValidationException.extends.E |
4cb80 | 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 72 72 6f 72 73 3b 0a 0a 70 | xception.{.protected.$errors;..p |
4cba0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 | ublic.function.__construct($mess |
4cbc0 | 61 67 65 2c 20 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d | age,.$errors.=.array()).{.$this- |
4cbe0 | 3e 65 72 72 6f 72 73 20 3d 20 24 65 72 72 6f 72 73 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e | >errors.=.$errors;.parent::__con |
4cc00 | 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | struct($message);.}..public.func |
4cc20 | 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d | tion.getErrors().{.return.$this- |
4cc40 | 3e 65 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 | >errors;.}.}.<?php............na |
4cc60 | 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 66 | mespace.Composer;.....class.Conf |
4cc80 | 69 67 0a 7b 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 64 65 66 61 75 6c 74 43 6f 6e 66 69 | ig.{.public.static.$defaultConfi |
4cca0 | 67 20 3d 20 61 72 72 61 79 28 0a 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 20 3d 3e 20 | g.=.array(.'process-timeout'.=>. |
4ccc0 | 33 30 30 2c 0a 27 76 65 6e 64 6f 72 2d 64 69 72 27 20 3d 3e 20 27 76 65 6e 64 6f 72 27 2c 0a 27 | 300,.'vendor-dir'.=>.'vendor',.' |
4cce0 | 62 69 6e 2d 64 69 72 27 20 3d 3e 20 27 7b 24 76 65 6e 64 6f 72 2d 64 69 72 7d 2f 62 69 6e 27 2c | bin-dir'.=>.'{$vendor-dir}/bin', |
4cd00 | 0a 27 6e 6f 74 69 66 79 2d 6f 6e 2d 69 6e 73 74 61 6c 6c 27 20 3d 3e 20 74 72 75 65 2c 0a 29 3b | .'notify-on-install'.=>.true,.); |
4cd20 | 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 64 65 66 61 75 6c 74 52 65 70 6f 73 69 74 6f | ..public.static.$defaultReposito |
4cd40 | 72 69 65 73 20 3d 20 61 72 72 61 79 28 0a 27 70 61 63 6b 61 67 69 73 74 27 20 3d 3e 20 61 72 72 | ries.=.array(.'packagist'.=>.arr |
4cd60 | 61 79 28 0a 27 74 79 70 65 27 20 3d 3e 20 27 63 6f 6d 70 6f 73 65 72 27 2c 0a 27 75 72 6c 27 20 | ay(.'type'.=>.'composer',.'url'. |
4cd80 | 3d 3e 20 27 68 74 74 70 3a 2f 2f 70 61 63 6b 61 67 69 73 74 2e 6f 72 67 27 2c 0a 29 0a 29 3b 0a | =>.'http://packagist.org',.).);. |
4cda0 | 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 66 69 67 3b 0a 70 72 69 76 61 74 65 20 24 72 65 70 6f 73 | .private.$config;.private.$repos |
4cdc0 | 69 74 6f 72 69 65 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 | itories;..public.function.__cons |
4cde0 | 74 72 75 63 74 28 29 0a 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 73 74 61 74 | truct().{...$this->config.=.stat |
4ce00 | 69 63 3a 3a 24 64 65 66 61 75 6c 74 43 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 | ic::$defaultConfig;.$this->repos |
4ce20 | 69 74 6f 72 69 65 73 20 3d 20 73 74 61 74 69 63 3a 3a 24 64 65 66 61 75 6c 74 52 65 70 6f 73 69 | itories.=.static::$defaultReposi |
4ce40 | 74 6f 72 69 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | tories;.}.......public.function. |
4ce60 | 6d 65 72 67 65 28 61 72 72 61 79 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 0a 20 69 66 20 28 21 65 6d | merge(array.$config).{...if.(!em |
4ce80 | 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 29 20 26 26 20 69 73 5f 61 72 72 | pty($config['config']).&&.is_arr |
4cea0 | 61 79 28 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e | ay($config['config'])).{.$this-> |
4cec0 | 63 6f 6e 66 69 67 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 5f 72 65 63 75 72 73 69 76 65 | config.=.array_replace_recursive |
4cee0 | 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 2c 20 24 63 6f 6e 66 69 67 5b 27 63 6f 6e 66 69 67 27 | ($this->config,.$config['config' |
4cf00 | 5d 29 3b 0a 7d 0a 0a 69 66 20 28 21 65 6d 70 74 79 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 | ]);.}..if.(!empty($config['repos |
4cf20 | 69 74 6f 72 69 65 73 27 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 63 6f 6e 66 69 67 5b 27 | itories']).&&.is_array($config[' |
4cf40 | 72 65 70 6f 73 69 74 6f 72 69 65 73 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 | repositories'])).{.$this->reposi |
4cf60 | 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 74 68 69 73 2d 3e 72 65 | tories.=.array_reverse($this->re |
4cf80 | 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 24 6e 65 77 52 65 70 6f 73 20 3d 20 61 | positories,.true);.$newRepos.=.a |
4cfa0 | 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 63 6f 6e 66 69 67 5b 27 72 65 70 6f 73 69 74 6f 72 69 | rray_reverse($config['repositori |
4cfc0 | 65 73 27 5d 2c 20 74 72 75 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 65 77 52 65 70 6f 73 20 | es'],.true);.foreach.($newRepos. |
4cfe0 | 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 0a 20 69 66 20 | as.$name.=>.$repository).{...if. |
4d000 | 28 66 61 6c 73 65 20 3d 3d 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 75 6e 73 65 74 28 | (false.===.$repository).{.unset( |
4d020 | 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 24 6e 61 6d 65 5d 29 3b 0a 63 6f 6e | $this->repositories[$name]);.con |
4d040 | 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 72 65 70 | tinue;.}....if.(1.===.count($rep |
4d060 | 6f 73 69 74 6f 72 79 29 20 26 26 20 66 61 6c 73 65 20 3d 3d 3d 20 63 75 72 72 65 6e 74 28 24 72 | ository).&&.false.===.current($r |
4d080 | 65 70 6f 73 69 74 6f 72 79 29 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 | epository)).{.unset($this->repos |
4d0a0 | 69 74 6f 72 69 65 73 5b 6b 65 79 28 24 72 65 70 6f 73 69 74 6f 72 79 29 5d 29 3b 0a 63 6f 6e 74 | itories[key($repository)]);.cont |
4d0c0 | 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a | inue;.}....if.(is_int($name)).{. |
4d0e0 | 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 5b 5d 20 3d 20 24 72 65 70 6f 73 69 74 | $this->repositories[].=.$reposit |
4d100 | 6f 72 79 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 | ory;.}.else.{.$this->repositorie |
4d120 | 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 3b 0a 7d 0a 7d 0a 24 74 68 69 | s[$name].=.$repository;.}.}.$thi |
4d140 | 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 20 3d 20 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 | s->repositories.=.array_reverse( |
4d160 | 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 65 73 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a | $this->repositories,.true);.}.}. |
4d180 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 70 6f 73 69 74 6f 72 | ....public.function.getRepositor |
4d1a0 | 69 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 69 | ies().{.return.$this->repositori |
4d1c0 | 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | es;.}........public.function.get |
4d1e0 | 28 24 6b 65 79 29 0a 7b 0a 73 77 69 74 63 68 20 28 24 6b 65 79 29 20 7b 0a 63 61 73 65 20 27 76 | ($key).{.switch.($key).{.case.'v |
4d200 | 65 6e 64 6f 72 2d 64 69 72 27 3a 0a 63 61 73 65 20 27 62 69 6e 2d 64 69 72 27 3a 0a 63 61 73 65 | endor-dir':.case.'bin-dir':.case |
4d220 | 20 27 70 72 6f 63 65 73 73 2d 74 69 6d 65 6f 75 74 27 3a 0a 0a 20 24 65 6e 76 20 3d 20 27 43 4f | .'process-timeout':...$env.=.'CO |
4d240 | 4d 50 4f 53 45 52 5f 27 20 2e 20 73 74 72 74 6f 75 70 70 65 72 28 73 74 72 74 72 28 24 6b 65 79 | MPOSER_'...strtoupper(strtr($key |
4d260 | 2c 20 27 2d 27 2c 20 27 5f 27 29 29 3b 0a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 74 68 69 | ,.'-',.'_'));..return.rtrim($thi |
4d280 | 73 2d 3e 70 72 6f 63 65 73 73 28 67 65 74 65 6e 76 28 24 65 6e 76 29 20 3f 3a 20 24 74 68 69 73 | s->process(getenv($env).?:.$this |
4d2a0 | 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 2c 20 27 2f 5c 5c 27 29 3b 0a 0a 63 61 73 65 20 27 | ->config[$key]),.'/\\');..case.' |
4d2c0 | 68 6f 6d 65 27 3a 0a 72 65 74 75 72 6e 20 72 74 72 69 6d 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 | home':.return.rtrim($this->proce |
4d2e0 | 73 73 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 2c 20 27 2f 5c 5c 27 29 3b | ss($this->config[$key]),.'/\\'); |
4d300 | 0a 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 | ..default:.return.$this->process |
4d320 | 28 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 5b 24 6b 65 79 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a | ($this->config[$key]);.}.}...... |
4d340 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6b 65 79 29 0a 7b 0a 72 65 | ..public.function.has($key).{.re |
4d360 | 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 6b 65 79 2c 20 24 74 68 69 | turn.array_key_exists($key,.$thi |
4d380 | 73 2d 3e 63 6f 6e 66 69 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e | s->config);.}........private.fun |
4d3a0 | 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 28 24 76 61 6c 75 65 29 0a 7b 0a 24 63 6f 6e 66 69 67 20 | ction.process($value).{.$config. |
4d3c0 | 3d 20 24 74 68 69 73 3b 0a 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 | =.$this;..return.preg_replace_ca |
4d3e0 | 6c 6c 62 61 63 6b 28 27 23 5c 7b 5c 24 28 2e 2b 29 5c 7d 23 27 2c 20 66 75 6e 63 74 69 6f 6e 20 | llback('#\{\$(.+)\}#',.function. |
4d400 | 28 24 6d 61 74 63 68 29 20 75 73 65 20 28 24 63 6f 6e 66 69 67 29 20 7b 0a 72 65 74 75 72 6e 20 | ($match).use.($config).{.return. |
4d420 | 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 2c 20 24 76 61 6c | $config->get($match[1]);.},.$val |
4d440 | 75 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ue);.}.}.<?php............namesp |
4d460 | 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 | ace.Composer\Script;..use.Compos |
4d480 | 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 | er\Composer;.use.Composer\IO\IOI |
4d4a0 | 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a | nterface;.......class.Event.{... |
4d4c0 | 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d | .private.$name;.....private.$com |
4d4e0 | 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 69 6f 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a | poser;.....private.$io;......... |
4d500 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d | public.function.__construct($nam |
4d520 | 65 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 | e,.Composer.$composer,.IOInterfa |
4d540 | 63 65 20 24 69 6f 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 | ce.$io).{.$this->name.=.$name;.$ |
4d560 | 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 | this->composer.=.$composer;.$thi |
4d580 | 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | s->io.=.$io;.}.......public.func |
4d5a0 | 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e | tion.getName().{.return.$this->n |
4d5c0 | 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ame;.}.......public.function.get |
4d5e0 | 43 6f 6d 70 6f 73 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f | Composer().{.return.$this->compo |
4d600 | 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ser;.}.......public.function.get |
4d620 | 49 4f 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d 0a 7d 0a 3c 3f 70 | IO().{.return.$this->io;.}.}.<?p |
4d640 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 | hp............namespace.Composer |
4d660 | 5c 53 63 72 69 70 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 63 72 69 70 74 45 76 65 6e | \Script;........class.ScriptEven |
4d680 | 74 73 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d | ts.{........const.PRE_INSTALL_CM |
4d6a0 | 44 20 3d 20 27 70 72 65 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 | D.=.'pre-install-cmd';.........c |
4d6c0 | 6f 6e 73 74 20 50 4f 53 54 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 20 3d 20 27 70 6f 73 74 2d 69 6e | onst.POST_INSTALL_CMD.=.'post-in |
4d6e0 | 73 74 61 6c 6c 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 55 50 | stall-cmd';.........const.PRE_UP |
4d700 | 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 72 65 2d 75 70 64 61 74 65 2d 63 6d 64 27 3b 0a 0a 0a 0a | DATE_CMD.=.'pre-update-cmd';.... |
4d720 | 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 55 50 44 41 54 45 5f 43 4d 44 20 3d 20 27 70 6f | .....const.POST_UPDATE_CMD.=.'po |
4d740 | 73 74 2d 75 70 64 61 74 65 2d 63 6d 64 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 | st-update-cmd';.........const.PR |
4d760 | 45 5f 50 41 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 | E_PACKAGE_INSTALL.=.'pre-package |
4d780 | 2d 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 | -install';.........const.POST_PA |
4d7a0 | 43 4b 41 47 45 5f 49 4e 53 54 41 4c 4c 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 69 6e | CKAGE_INSTALL.=.'post-package-in |
4d7c0 | 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 | stall';.........const.PRE_PACKAG |
4d7e0 | 45 5f 55 50 44 41 54 45 20 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 27 3b | E_UPDATE.=.'pre-package-update'; |
4d800 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 50 44 41 | .........const.POST_PACKAGE_UPDA |
4d820 | 54 45 20 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 70 64 61 74 65 27 3b 0a 0a 0a 0a 0a | TE.=.'post-package-update';..... |
4d840 | 0a 0a 0a 0a 63 6f 6e 73 74 20 50 52 45 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 | ....const.PRE_PACKAGE_UNINSTALL. |
4d860 | 3d 20 27 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 0a 0a 0a 0a 0a | =.'pre-package-uninstall';...... |
4d880 | 0a 0a 0a 63 6f 6e 73 74 20 50 4f 53 54 5f 50 41 43 4b 41 47 45 5f 55 4e 49 4e 53 54 41 4c 4c 20 | ...const.POST_PACKAGE_UNINSTALL. |
4d8a0 | 3d 20 27 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 27 3b 0a 7d 0a 3c 3f | =.'post-package-uninstall';.}.<? |
4d8c0 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 | php............namespace.Compose |
4d8e0 | 72 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 | r\Script;..use.Composer\Composer |
4d900 | 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 20 65 78 74 65 6e | ;.......class.CommandEvent.exten |
4d920 | 64 73 20 45 76 65 6e 74 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 | ds.Event.{.}.<?php............na |
4d940 | 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 43 6f | mespace.Composer\Script;..use.Co |
4d960 | 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f | mposer\Composer;.use.Composer\IO |
4d980 | 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e | \IOInterface;.use.Composer\Depen |
4d9a0 | 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f | dencyResolver\Operation\Operatio |
4d9c0 | 6e 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 61 63 6b 61 67 65 45 | nInterface;.......class.PackageE |
4d9e0 | 76 65 6e 74 20 65 78 74 65 6e 64 73 20 45 76 65 6e 74 0a 7b 0a 0a 0a 0a 70 72 69 76 61 74 65 20 | vent.extends.Event.{....private. |
4da00 | 24 6f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | $operation;..........public.func |
4da20 | 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 43 6f 6d 70 6f 73 65 72 | tion.__construct($name,.Composer |
4da40 | 20 24 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 4f 70 65 | .$composer,.IOInterface.$io,.Ope |
4da60 | 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 70 61 | rationInterface.$operation).{.pa |
4da80 | 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 63 6f 6d 70 6f 73 | rent::__construct($name,.$compos |
4daa0 | 65 72 2c 20 24 69 6f 29 3b 0a 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 69 6f 6e 20 3d 20 24 6f 70 | er,.$io);.$this->operation.=.$op |
4dac0 | 65 72 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | eration;.}.......public.function |
4dae0 | 20 67 65 74 4f 70 65 72 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | .getOperation().{.return.$this-> |
4db00 | 6f 70 65 72 61 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | operation;.}.}.<?php............ |
4db20 | 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 3b 0a 0a 75 73 65 20 | namespace.Composer\Script;..use. |
4db40 | 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 | Composer\Autoload\AutoloadGenera |
4db60 | 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 | tor;.use.Composer\IO\IOInterface |
4db80 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d | ;.use.Composer\Composer;.use.Com |
4dba0 | 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 | poser\DependencyResolver\Operati |
4dbc0 | 6f 6e 5c 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | on\OperationInterface;.......... |
4dbe0 | 0a 0a 0a 0a 63 6c 61 73 73 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 0a 7b 0a 70 72 6f 74 | ....class.EventDispatcher.{.prot |
4dc00 | 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a | ected.$composer;.protected.$io;. |
4dc20 | 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 61 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | protected.$loader;........public |
4dc40 | 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 43 6f 6d 70 6f 73 65 72 20 24 | .function.__construct(Composer.$ |
4dc60 | 63 6f 6d 70 6f 73 65 72 2c 20 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 29 0a 7b 0a 24 74 68 | composer,.IOInterface.$io).{.$th |
4dc80 | 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d | is->composer.=.$composer;.$this- |
4dca0 | 3e 69 6f 20 3d 20 24 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | >io.=.$io;.}........public.funct |
4dcc0 | 69 6f 6e 20 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 65 45 76 65 6e 74 28 24 65 76 65 6e 74 4e | ion.dispatchPackageEvent($eventN |
4dce0 | 61 6d 65 2c 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 65 20 24 6f 70 65 72 61 74 69 | ame,.OperationInterface.$operati |
4dd00 | 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 6f 44 69 73 70 61 74 63 68 28 6e 65 77 20 50 61 63 6b | on).{.$this->doDispatch(new.Pack |
4dd20 | 61 67 65 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 70 | ageEvent($eventName,.$this->comp |
4dd40 | 6f 73 65 72 2c 20 24 74 68 69 73 2d 3e 69 6f 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 29 3b 0a 7d | oser,.$this->io,.$operation));.} |
4dd60 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 70 61 74 63 68 43 | .......public.function.dispatchC |
4dd80 | 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d | ommandEvent($eventName).{.$this- |
4dda0 | 3e 64 6f 44 69 73 70 61 74 63 68 28 6e 65 77 20 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 24 65 76 | >doDispatch(new.CommandEvent($ev |
4ddc0 | 65 6e 74 4e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 2c 20 24 74 68 69 73 2d | entName,.$this->composer,.$this- |
4dde0 | 3e 69 6f 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f | >io));.}.......protected.functio |
4de00 | 6e 20 64 6f 44 69 73 70 61 74 63 68 28 45 76 65 6e 74 20 24 65 76 65 6e 74 29 0a 7b 0a 24 6c 69 | n.doDispatch(Event.$event).{.$li |
4de20 | 73 74 65 6e 65 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4c 69 73 74 65 6e 65 72 73 28 24 65 | steners.=.$this->getListeners($e |
4de40 | 76 65 6e 74 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 73 74 65 6e 65 72 73 20 61 73 20 24 | vent);..foreach.($listeners.as.$ |
4de60 | 63 61 6c 6c 61 62 6c 65 29 20 7b 0a 24 63 6c 61 73 73 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 | callable).{.$className.=.substr( |
4de80 | 24 63 61 6c 6c 61 62 6c 65 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 | $callable,.0,.strpos($callable,. |
4dea0 | 27 3a 3a 27 29 29 3b 0a 24 6d 65 74 68 6f 64 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 61 | '::'));.$methodName.=.substr($ca |
4dec0 | 6c 6c 61 62 6c 65 2c 20 73 74 72 70 6f 73 28 24 63 61 6c 6c 61 62 6c 65 2c 20 27 3a 3a 27 29 20 | llable,.strpos($callable,.'::'). |
4dee0 | 2b 20 32 29 3b 0a 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 24 63 6c 61 73 73 4e | +.2);..if.(!class_exists($classN |
4df00 | 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c | ame)).{.throw.new.\UnexpectedVal |
4df20 | 75 65 45 78 63 65 70 74 69 6f 6e 28 27 43 6c 61 73 73 20 27 2e 24 63 6c 61 73 73 4e 61 6d 65 2e | ueException('Class.'.$className. |
4df40 | 27 20 69 73 20 6e 6f 74 20 61 75 74 6f 6c 6f 61 64 61 62 6c 65 2c 20 63 61 6e 20 6e 6f 74 20 63 | '.is.not.autoloadable,.can.not.c |
4df60 | 61 6c 6c 20 27 2e 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 73 63 72 69 70 74 | all.'.$event->getName().'.script |
4df80 | 27 29 3b 0a 7d 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 63 61 6c 6c 61 62 6c 65 | ');.}.if.(!is_callable($callable |
4dfa0 | 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 | )).{.throw.new.\UnexpectedValueE |
4dfc0 | 78 63 65 70 74 69 6f 6e 28 27 4d 65 74 68 6f 64 20 27 2e 24 63 61 6c 6c 61 62 6c 65 2e 27 20 69 | xception('Method.'.$callable.'.i |
4dfe0 | 73 20 6e 6f 74 20 63 61 6c 6c 61 62 6c 65 2c 20 63 61 6e 20 6e 6f 74 20 63 61 6c 6c 20 27 2e 24 | s.not.callable,.can.not.call.'.$ |
4e000 | 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 73 63 72 69 70 74 27 29 3b 0a 7d 0a 0a | event->getName().'.script');.}.. |
4e020 | 74 72 79 20 7b 0a 24 63 6c 61 73 73 4e 61 6d 65 3a 3a 24 6d 65 74 68 6f 64 4e 61 6d 65 28 24 65 | try.{.$className::$methodName($e |
4e040 | 76 65 6e 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b | vent);.}.catch.(\Exception.$e).{ |
4e060 | 0a 24 6d 65 73 73 61 67 65 20 3d 20 22 53 63 72 69 70 74 20 25 73 20 68 61 6e 64 6c 69 6e 67 20 | .$message.=."Script.%s.handling. |
4e080 | 74 68 65 20 25 73 20 65 76 65 6e 74 20 74 65 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 61 6e 20 | the.%s.event.terminated.with.an. |
4e0a0 | 65 78 63 65 70 74 69 6f 6e 22 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 65 | exception";.$this->io->write('<e |
4e0c0 | 72 72 6f 72 3e 27 2e 73 70 72 69 6e 74 66 28 24 6d 65 73 73 61 67 65 2c 20 24 63 61 6c 6c 61 62 | rror>'.sprintf($message,.$callab |
4e0e0 | 6c 65 2c 20 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 2e 27 3c 2f 65 72 72 6f 72 3e | le,.$event->getName()).'</error> |
4e100 | 27 29 3b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | ');.throw.$e;.}.}.}......protect |
4e120 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 69 73 74 65 6e 65 72 73 28 45 76 65 6e 74 20 24 | ed.function.getListeners(Event.$ |
4e140 | 65 76 65 6e 74 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f | event).{.$package.=.$this->compo |
4e160 | 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 73 63 72 69 70 74 73 20 3d 20 24 70 | ser->getPackage();.$scripts.=.$p |
4e180 | 61 63 6b 61 67 65 2d 3e 67 65 74 53 63 72 69 70 74 73 28 29 3b 0a 0a 69 66 20 28 65 6d 70 74 79 | ackage->getScripts();..if.(empty |
4e1a0 | 28 24 73 63 72 69 70 74 73 5b 24 65 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b | ($scripts[$event->getName()])).{ |
4e1c0 | 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6c | .return.array();.}..if.($this->l |
4e1e0 | 6f 61 64 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d 3e 75 6e 72 65 67 69 73 74 | oader).{.$this->loader->unregist |
4e200 | 65 72 28 29 3b 0a 7d 0a 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 41 75 74 6f 6c 6f | er();.}..$generator.=.new.Autolo |
4e220 | 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 24 70 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e | adGenerator;.$packages.=.$this-> |
4e240 | 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 28 29 | composer->getRepositoryManager() |
4e260 | 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 67 65 74 50 61 63 6b 61 | ->getLocalRepository()->getPacka |
4e280 | 67 65 73 28 29 3b 0a 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d | ges();.$packageMap.=.$generator- |
4e2a0 | 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 | >buildPackageMap($this->composer |
4e2c0 | 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2c 20 24 70 61 63 | ->getInstallationManager(),.$pac |
4e2e0 | 6b 61 67 65 2c 20 24 70 61 63 6b 61 67 65 73 29 3b 0a 24 6d 61 70 20 3d 20 24 67 65 6e 65 72 61 | kage,.$packages);.$map.=.$genera |
4e300 | 74 6f 72 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 24 70 61 63 6b 61 67 65 4d 61 70 29 | tor->parseAutoloads($packageMap) |
4e320 | 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d 3e 63 72 | ;.$this->loader.=.$generator->cr |
4e340 | 65 61 74 65 4c 6f 61 64 65 72 28 24 6d 61 70 29 3b 0a 24 74 68 69 73 2d 3e 6c 6f 61 64 65 72 2d | eateLoader($map);.$this->loader- |
4e360 | 3e 72 65 67 69 73 74 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 73 63 72 69 70 74 73 5b 24 65 | >register();..return.$scripts[$e |
4e380 | 76 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | vent->getName()];.}.}.<?php..... |
4e3a0 | 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c | .......namespace.Composer\Instal |
4e3c0 | 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e | ler;..use.Composer\Repository\In |
4e3e0 | 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 | stalledRepositoryInterface;.use. |
4e400 | 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | Composer\Package\PackageInterfac |
4e420 | 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 20 69 | e;.........class.NoopInstaller.i |
4e440 | 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a | mplements.InstallerInterface.{.. |
4e460 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b | ..public.function.supports($pack |
4e480 | 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 | ageType).{.return.true;.}.....pu |
4e4a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c | blic.function.isInstalled(Instal |
4e4c0 | 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 | ledRepositoryInterface.$repo,.Pa |
4e4e0 | 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 | ckageInterface.$package).{.retur |
4e500 | 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d | n.$repo->hasPackage($package);.} |
4e520 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 | .....public.function.install(Ins |
4e540 | 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c | talledRepositoryInterface.$repo, |
4e560 | 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 | .PackageInterface.$package).{.if |
4e580 | 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 | .(!$repo->hasPackage($package)). |
4e5a0 | 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 6b 61 | {.$repo->addPackage(clone.$packa |
4e5c0 | 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 | ge);.}.}.....public.function.upd |
4e5e0 | 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 | ate(InstalledRepositoryInterface |
4e600 | 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 | .$repo,.PackageInterface.$initia |
4e620 | 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 69 | l,.PackageInterface.$target).{.i |
4e640 | 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 29 | f.(!$repo->hasPackage($initial)) |
4e660 | 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 | .{.throw.new.\InvalidArgumentExc |
4e680 | 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 | eption('Package.is.not.installed |
4e6a0 | 3a 20 27 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 | :.'.$initial);.}..if.(!$repo->ha |
4e6c0 | 73 50 61 63 6b 61 67 65 28 24 74 61 72 67 65 74 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 | sPackage($target)).{.$repo->addP |
4e6e0 | 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 | ackage(clone.$target);.}.}.....p |
4e700 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c | ublic.function.uninstall(Install |
4e720 | 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 | edRepositoryInterface.$repo,.Pac |
4e740 | 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 | kageInterface.$package).{.if.(!$ |
4e760 | 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 0a 20 | repo->hasPackage($package)).{... |
4e780 | 72 65 74 75 72 6e 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 | return;.throw.new.\InvalidArgume |
4e7a0 | 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 | ntException('Package.is.not.inst |
4e7c0 | 61 6c 6c 65 64 3a 20 27 2e 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 24 72 65 70 6f 2d 3e 72 65 6d | alled:.'.$package);.}.$repo->rem |
4e7e0 | 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c | ovePackage($package);.}.....publ |
4e800 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 | ic.function.getInstallPath(Packa |
4e820 | 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 61 72 67 65 74 44 | geInterface.$package).{.$targetD |
4e840 | 69 72 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a | ir.=.$package->getTargetDir();.. |
4e860 | 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 | return.$package->getPrettyName() |
4e880 | 20 2e 20 28 24 74 61 72 67 65 74 44 69 72 20 3f 20 27 2f 27 2e 24 74 61 72 67 65 74 44 69 72 20 | ...($targetDir.?.'/'.$targetDir. |
4e8a0 | 3a 20 27 27 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | :.'');.}.}.<?php............name |
4e8c0 | 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 | space.Composer\Installer;..use.C |
4e8e0 | 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f | omposer\Repository\InstalledRepo |
4e900 | 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 | sitoryInterface;.use.Composer\Pa |
4e920 | 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c | ckage\PackageInterface;.......cl |
4e940 | 61 73 73 20 4d 65 74 61 70 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 | ass.MetapackageInstaller.impleme |
4e960 | 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 70 75 62 6c | nts.InstallerInterface.{....publ |
4e980 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 | ic.function.supports($packageTyp |
4e9a0 | 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 54 79 70 65 20 3d 3d 3d 20 27 6d 65 | e).{.return.$packageType.===.'me |
4e9c0 | 74 61 70 61 63 6b 61 67 65 27 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | tapackage';.}.....public.functio |
4e9e0 | 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 | n.isInstalled(InstalledRepositor |
4ea00 | 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | yInterface.$repo,.PackageInterfa |
4ea20 | 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 | ce.$package).{.return.$repo->has |
4ea40 | 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | Package($package);.}.....public. |
4ea60 | 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 | function.install(InstalledReposi |
4ea80 | 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 | toryInterface.$repo,.PackageInte |
4eaa0 | 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b | rface.$package).{.$repo->addPack |
4eac0 | 61 67 65 28 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | age(clone.$package);.}.....publi |
4eae0 | 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 | c.function.update(InstalledRepos |
4eb00 | 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 | itoryInterface.$repo,.PackageInt |
4eb20 | 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | erface.$initial,.PackageInterfac |
4eb40 | 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b | e.$target).{.if.(!$repo->hasPack |
4eb60 | 61 67 65 28 24 69 6e 69 74 69 61 6c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 | age($initial)).{.throw.new.\Inva |
4eb80 | 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 | lidArgumentException('Package.is |
4eba0 | 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a | .not.installed:.'.$initial);.}.. |
4ebc0 | 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 3b 0a | $repo->removePackage($initial);. |
4ebe0 | 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 74 61 72 67 65 74 29 | $repo->addPackage(clone.$target) |
4ec00 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c | ;.}.....public.function.uninstal |
4ec20 | 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 | l(InstalledRepositoryInterface.$ |
4ec40 | 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 | repo,.PackageInterface.$package) |
4ec60 | 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 | .{.if.(!$repo->hasPackage($packa |
4ec80 | 67 65 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 | ge)).{...return;.throw.new.\Inva |
4eca0 | 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 | lidArgumentException('Package.is |
4ecc0 | 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a | .not.installed:.'.$package);.}.. |
4ece0 | 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a | $repo->removePackage($package);. |
4ed00 | 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c | }.....public.function.getInstall |
4ed20 | 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a | Path(PackageInterface.$package). |
4ed40 | 7b 0a 72 65 74 75 72 6e 20 27 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | {.return.'';.}.}.<?php.......... |
4ed60 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a | ..namespace.Composer\Installer;. |
4ed80 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 | .use.Composer\IO\IOInterface;.us |
4eda0 | 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | e.Composer\Composer;.use.Compose |
4edc0 | 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 50 65 61 72 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f | r\Downloader\PearPackageExtracto |
4ede0 | 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 | r;.use.Composer\Repository\Insta |
4ee00 | 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d | lledRepositoryInterface;.use.Com |
4ee20 | 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a | poser\Package\PackageInterface;. |
4ee40 | 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 65 61 72 49 6e 73 74 61 6c 6c 65 72 20 65 78 74 65 6e | .......class.PearInstaller.exten |
4ee60 | 64 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | ds.LibraryInstaller.{........pub |
4ee80 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 | lic.function.__construct(IOInter |
4eea0 | 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 | face.$io,.Composer.$composer,.$t |
4eec0 | 79 70 65 20 3d 20 27 70 65 61 72 2d 6c 69 62 72 61 72 79 27 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a | ype.=.'pear-library').{.parent:: |
4eee0 | 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 70 | __construct($io,.$composer,.$typ |
4ef00 | 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 | e);.}.....public.function.update |
4ef20 | 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 | (InstalledRepositoryInterface.$r |
4ef40 | 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 | epo,.PackageInterface.$initial,. |
4ef60 | 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 74 68 69 | PackageInterface.$target).{.$thi |
4ef80 | 73 2d 3e 75 6e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 29 3b 0a 24 | s->uninstall($repo,.$initial);.$ |
4efa0 | 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 28 24 72 65 70 6f 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d | this->install($repo,.$target);.} |
4efc0 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 43 6f 64 65 | ..protected.function.installCode |
4efe0 | 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 70 61 | (PackageInterface.$package).{.pa |
4f000 | 72 65 6e 74 3a 3a 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 70 61 72 | rent::installCode($package);.par |
4f020 | 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 3b 0a 0a 24 69 73 57 69 6e | ent::initializeBinDir();..$isWin |
4f040 | 64 6f 77 73 20 3d 20 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 | dows.=.defined('PHP_WINDOWS_VERS |
4f060 | 49 4f 4e 5f 42 55 49 4c 44 27 29 20 3f 20 74 72 75 65 20 3a 20 66 61 6c 73 65 3b 0a 24 70 68 70 | ION_BUILD').?.true.:.false;.$php |
4f080 | 5f 62 69 6e 20 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 2e 20 28 24 69 73 57 69 6e 64 6f | _bin.=.$this->binDir...($isWindo |
4f0a0 | 77 73 20 3f 20 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 20 3a 20 27 2f 63 6f 6d | ws.?.'/composer-php.bat'.:.'/com |
4f0c0 | 70 6f 73 65 72 2d 70 68 70 27 29 3b 0a 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 24 74 68 | poser-php');..$installPath.=.$th |
4f0e0 | 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 76 | is->getInstallPath($package);.$v |
4f100 | 61 72 73 20 3d 20 61 72 72 61 79 28 0a 27 6f 73 27 20 3d 3e 20 24 69 73 57 69 6e 64 6f 77 73 20 | ars.=.array(.'os'.=>.$isWindows. |
4f120 | 3f 20 27 77 69 6e 64 6f 77 73 27 20 3a 20 27 6c 69 6e 75 78 27 2c 0a 27 70 68 70 5f 62 69 6e 27 | ?.'windows'.:.'linux',.'php_bin' |
4f140 | 20 3d 3e 20 24 70 68 70 5f 62 69 6e 2c 0a 27 70 65 61 72 5f 70 68 70 27 20 3d 3e 20 24 69 6e 73 | .=>.$php_bin,.'pear_php'.=>.$ins |
4f160 | 74 61 6c 6c 50 61 74 68 2c 0a 27 70 68 70 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 | tallPath,.'php_dir'.=>.$installP |
4f180 | 61 74 68 2c 0a 27 62 69 6e 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 2e | ath,.'bin_dir'.=>.$installPath.. |
4f1a0 | 20 27 2f 62 69 6e 27 2c 0a 27 64 61 74 61 5f 64 69 72 27 20 3d 3e 20 24 69 6e 73 74 61 6c 6c 50 | .'/bin',.'data_dir'.=>.$installP |
4f1c0 | 61 74 68 20 2e 20 27 2f 64 61 74 61 27 2c 0a 27 76 65 72 73 69 6f 6e 27 20 3d 3e 20 24 70 61 63 | ath...'/data',.'version'.=>.$pac |
4f1e0 | 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 56 65 72 73 69 6f 6e 28 29 2c 0a 29 3b 0a 0a 24 70 | kage->getPrettyVersion(),.);..$p |
4f200 | 61 63 6b 61 67 65 41 72 63 68 69 76 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c | ackageArchive.=.$this->getInstal |
4f220 | 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2e 27 2f 27 2e 70 61 74 68 69 6e 66 6f 28 24 70 61 | lPath($package).'/'.pathinfo($pa |
4f240 | 63 6b 61 67 65 2d 3e 67 65 74 44 69 73 74 55 72 6c 28 29 2c 20 50 41 54 48 49 4e 46 4f 5f 42 41 | ckage->getDistUrl(),.PATHINFO_BA |
4f260 | 53 45 4e 41 4d 45 29 3b 0a 24 70 65 61 72 45 78 74 72 61 63 74 6f 72 20 3d 20 6e 65 77 20 50 65 | SENAME);.$pearExtractor.=.new.Pe |
4f280 | 61 72 50 61 63 6b 61 67 65 45 78 74 72 61 63 74 6f 72 28 24 70 61 63 6b 61 67 65 41 72 63 68 69 | arPackageExtractor($packageArchi |
4f2a0 | 76 65 29 3b 0a 24 70 65 61 72 45 78 74 72 61 63 74 6f 72 2d 3e 65 78 74 72 61 63 74 54 6f 28 24 | ve);.$pearExtractor->extractTo($ |
4f2c0 | 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2c 20 | this->getInstallPath($package),. |
4f2e0 | 61 72 72 61 79 28 27 70 68 70 27 20 3d 3e 20 27 2f 27 2c 20 27 73 63 72 69 70 74 27 20 3d 3e 20 | array('php'.=>.'/',.'script'.=>. |
4f300 | 27 2f 62 69 6e 27 2c 20 27 64 61 74 61 27 20 3d 3e 20 27 2f 64 61 74 61 27 29 2c 20 24 76 61 72 | '/bin',.'data'.=>.'/data'),.$var |
4f320 | 73 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6f 2d 3e 69 73 56 65 72 62 6f 73 65 28 29 29 | s);..if.($this->io->isVerbose()) |
4f340 | 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 20 20 20 20 43 6c 65 61 6e 69 6e | .{.$this->io->write('....Cleanin |
4f360 | 67 20 75 70 27 29 3b 0a 7d 0a 75 6e 6c 69 6e 6b 28 24 70 61 63 6b 61 67 65 41 72 63 68 69 76 65 | g.up');.}.unlink($packageArchive |
4f380 | 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 42 69 6e 61 | );.}..protected.function.getBina |
4f3a0 | 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a | ries(PackageInterface.$package). |
4f3c0 | 7b 0a 24 62 69 6e 61 72 69 65 73 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 | {.$binariesPath.=.$this->getInst |
4f3e0 | 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 20 2e 20 27 2f 62 69 6e 2f 27 3b 0a 24 62 69 | allPath($package)...'/bin/';.$bi |
4f400 | 6e 61 72 69 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 | naries.=.array();.if.(file_exist |
4f420 | 73 28 24 62 69 6e 61 72 69 65 73 50 61 74 68 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 6e 65 77 | s($binariesPath)).{.foreach.(new |
4f440 | 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 28 24 62 69 6e 61 72 69 65 73 50 61 | .\FilesystemIterator($binariesPa |
4f460 | 74 68 2c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a 4b 45 59 5f 41 53 5f | th,.\FilesystemIterator::KEY_AS_ |
4f480 | 46 49 4c 45 4e 41 4d 45 20 7c 20 5c 46 69 6c 65 73 79 73 74 65 6d 49 74 65 72 61 74 6f 72 3a 3a | FILENAME.|.\FilesystemIterator:: |
4f4a0 | 43 55 52 52 45 4e 54 5f 41 53 5f 46 49 4c 45 49 4e 46 4f 29 20 61 73 20 24 66 69 6c 65 4e 61 6d | CURRENT_AS_FILEINFO).as.$fileNam |
4f4c0 | 65 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 21 24 76 61 6c 75 65 2d 3e 69 73 44 69 | e.=>.$value).{.if.(!$value->isDi |
4f4e0 | 72 28 29 29 20 7b 0a 24 62 69 6e 61 72 69 65 73 5b 5d 20 3d 20 27 62 69 6e 2f 27 2e 24 66 69 6c | r()).{.$binaries[].=.'bin/'.$fil |
4f500 | 65 4e 61 6d 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 62 69 6e 61 72 69 65 73 3b 0a | eName;.}.}.}..return.$binaries;. |
4f520 | 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 | }..protected.function.initialize |
4f540 | 42 69 6e 44 69 72 28 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e | BinDir().{.parent::initializeBin |
4f560 | 44 69 72 28 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e | Dir();.file_put_contents($this-> |
4f580 | 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 | binDir.'/composer-php',.$this->g |
4f5a0 | 65 6e 65 72 61 74 65 55 6e 69 78 79 50 68 70 50 72 6f 78 79 43 6f 64 65 28 29 29 3b 0a 63 68 6d | enerateUnixyPhpProxyCode());.chm |
4f5c0 | 6f 64 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 27 | od($this->binDir.'/composer-php' |
4f5e0 | 2c 20 30 37 37 37 29 3b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 | ,.0777);.file_put_contents($this |
4f600 | 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f 73 65 72 2d 70 68 70 2e 62 61 74 27 2c 20 24 74 | ->binDir.'/composer-php.bat',.$t |
4f620 | 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 68 70 50 72 6f 78 79 43 6f 64 65 | his->generateWindowsPhpProxyCode |
4f640 | 28 29 29 3b 0a 63 68 6d 6f 64 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 2e 27 2f 63 6f 6d 70 6f | ());.chmod($this->binDir.'/compo |
4f660 | 73 65 72 2d 70 68 70 2e 62 61 74 27 2c 20 30 37 37 37 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 | ser-php.bat',.0777);.}..private. |
4f680 | 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 68 70 50 72 6f 78 79 | function.generateWindowsPhpProxy |
4f6a0 | 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 0a 22 40 65 63 68 6f 20 6f 66 66 5c 72 5c 6e 22 20 | Code().{.return."@echo.off\r\n". |
4f6c0 | 2e 0a 22 73 65 74 6c 6f 63 61 6c 20 65 6e 61 62 6c 65 64 65 6c 61 79 65 64 65 78 70 61 6e 73 69 | .."setlocal.enabledelayedexpansi |
4f6e0 | 6f 6e 5c 72 5c 6e 22 20 2e 0a 22 73 65 74 20 42 49 4e 5f 44 49 52 3d 25 7e 64 70 30 5c 72 5c 6e | on\r\n"..."set.BIN_DIR=%~dp0\r\n |
4f700 | 22 20 2e 0a 22 73 65 74 20 56 45 4e 44 4f 52 5f 44 49 52 3d 25 42 49 4e 5f 44 49 52 25 2e 2e 5c | "..."set.VENDOR_DIR=%BIN_DIR%..\ |
4f720 | 5c 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 73 65 74 20 44 49 52 53 3d 2e 5c 72 5c 6e 22 20 2e 0a | \\r\n"..."....set.DIRS=.\r\n"... |
4f740 | 22 46 4f 52 20 2f 44 20 25 25 56 20 49 4e 20 28 25 56 45 4e 44 4f 52 5f 44 49 52 25 2a 29 20 44 | "FOR./D.%%V.IN.(%VENDOR_DIR%*).D |
4f760 | 4f 20 28 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 46 4f 52 20 2f 44 20 25 25 50 20 49 4e 20 28 25 | O.(\r\n"..."....FOR./D.%%P.IN.(% |
4f780 | 25 56 5c 5c 2a 29 20 44 4f 20 28 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 20 20 20 20 73 65 74 20 | %V\\*).DO.(\r\n"..."........set. |
4f7a0 | 44 49 52 53 3d 21 44 49 52 53 21 3b 25 25 7e 66 50 5c 72 5c 6e 22 20 2e 0a 22 20 20 20 20 29 5c | DIRS=!DIRS!;%%~fP\r\n"..."....)\ |
4f7c0 | 72 5c 6e 22 20 2e 0a 22 29 5c 72 5c 6e 22 20 2e 0a 22 70 68 70 2e 65 78 65 20 2d 64 20 69 6e 63 | r\n"...")\r\n"..."php.exe.-d.inc |
4f7e0 | 6c 75 64 65 5f 70 61 74 68 3d 21 44 49 52 53 21 20 25 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 69 | lude_path=!DIRS!.%*\r\n";.}..pri |
4f800 | 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 55 6e 69 78 79 50 68 70 50 72 | vate.function.generateUnixyPhpPr |
4f820 | 6f 78 79 43 6f 64 65 28 29 0a 7b 0a 72 65 74 75 72 6e 0a 22 23 21 2f 75 73 72 2f 62 69 6e 2f 65 | oxyCode().{.return."#!/usr/bin/e |
4f840 | 6e 76 20 73 68 5c 6e 22 2e 0a 22 53 52 43 5f 44 49 52 3d 60 70 77 64 60 5c 6e 22 2e 0a 22 42 49 | nv.sh\n".."SRC_DIR=`pwd`\n".."BI |
4f860 | 4e 5f 44 49 52 3d 60 64 69 72 6e 61 6d 65 20 24 28 72 65 61 64 6c 69 6e 6b 20 2d 66 20 24 30 29 | N_DIR=`dirname.$(readlink.-f.$0) |
4f880 | 60 5c 6e 22 2e 0a 22 56 45 4e 44 4f 52 5f 44 49 52 3d 60 64 69 72 6e 61 6d 65 20 5c 24 42 49 4e | `\n".."VENDOR_DIR=`dirname.\$BIN |
4f8a0 | 5f 44 49 52 60 5c 6e 22 2e 0a 22 63 64 20 5c 24 42 49 4e 5f 44 49 52 5c 6e 22 2e 0a 22 44 49 52 | _DIR`\n".."cd.\$BIN_DIR\n".."DIR |
4f8c0 | 53 3d 5c 22 5c 22 5c 6e 22 2e 0a 22 66 6f 72 20 76 65 6e 64 6f 72 20 69 6e 20 5c 24 56 45 4e 44 | S=\"\"\n".."for.vendor.in.\$VEND |
4f8e0 | 4f 52 5f 44 49 52 2f 2a 3b 20 64 6f 5c 6e 22 2e 0a 22 20 20 20 20 69 66 20 5b 20 2d 64 20 5c 22 | OR_DIR/*;.do\n".."....if.[.-d.\" |
4f900 | 5c 24 76 65 6e 64 6f 72 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 | \$vendor\".];.then\n".."........ |
4f920 | 66 6f 72 20 70 61 63 6b 61 67 65 20 69 6e 20 5c 24 76 65 6e 64 6f 72 2f 2a 3b 20 64 6f 5c 6e 22 | for.package.in.\$vendor/*;.do\n" |
4f940 | 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 5b 20 2d 64 20 5c 22 5c 24 70 61 63 6b 61 | .."............if.[.-d.\"\$packa |
4f960 | 67 65 5c 22 20 5d 3b 20 74 68 65 6e 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ge\".];.then\n"..".............. |
4f980 | 20 20 44 49 52 53 3d 5c 22 5c 24 7b 44 49 52 53 7d 3a 5c 24 7b 70 61 63 6b 61 67 65 7d 5c 22 5c | ..DIRS=\"\${DIRS}:\${package}\"\ |
4f9a0 | 6e 22 2e 0a 22 20 20 20 20 20 20 20 20 20 20 20 20 66 69 5c 6e 22 2e 0a 22 20 20 20 20 20 20 20 | n".."............fi\n".."....... |
4f9c0 | 20 64 6f 6e 65 5c 6e 22 2e 0a 22 20 20 20 20 66 69 5c 6e 22 2e 0a 22 64 6f 6e 65 5c 6e 22 2e 0a | .done\n".."....fi\n".."done\n".. |
4f9e0 | 22 63 64 20 5c 24 53 52 43 5f 44 49 52 5c 6e 22 2e 0a 22 60 77 68 69 63 68 20 70 68 70 60 20 2d | "cd.\$SRC_DIR\n".."`which.php`.- |
4fa00 | 64 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 3d 5c 22 2e 5c 24 44 49 52 53 5c 22 20 24 40 5c 6e 22 | d.include_path=\".\$DIRS\".$@\n" |
4fa20 | 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 | ;.}.}.<?php............namespace |
4fa40 | 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 | .Composer\Installer;..use.Compos |
4fa60 | 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 | er\Package\PackageInterface;.use |
4fa80 | 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e | .Composer\Downloader\DownloadMan |
4faa0 | 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e | ager;.use.Composer\Repository\In |
4fac0 | 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a | stalledRepositoryInterface;..... |
4fae0 | 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 6a 65 63 74 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d | ...class.ProjectInstaller.implem |
4fb00 | 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 | ents.InstallerInterface.{.privat |
4fb20 | 65 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 64 6f 77 6e 6c 6f 61 | e.$installPath;.private.$downloa |
4fb40 | 64 4d 61 6e 61 67 65 72 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e | dManager;..public.function.__con |
4fb60 | 73 74 72 75 63 74 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 44 6f 77 6e 6c 6f 61 64 4d 61 6e | struct($installPath,.DownloadMan |
4fb80 | 61 67 65 72 20 24 64 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d | ager.$dm).{.$this->installPath.= |
4fba0 | 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 | .$installPath;.$this->downloadMa |
4fbc0 | 6e 61 67 65 72 20 3d 20 24 64 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | nager.=.$dm;.}........public.fun |
4fbe0 | 63 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 | ction.supports($packageType).{.r |
4fc00 | 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | eturn.true;.}.....public.functio |
4fc20 | 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 | n.isInstalled(InstalledRepositor |
4fc40 | 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | yInterface.$repo,.PackageInterfa |
4fc60 | 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a | ce.$package).{.return.false;.}.. |
4fc80 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 | ...public.function.install(Insta |
4fca0 | 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 | lledRepositoryInterface.$repo,.P |
4fcc0 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 | ackageInterface.$package).{.$ins |
4fce0 | 74 61 6c 6c 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 68 3b 0a 69 | tallPath.=.$this->installPath;.i |
4fd00 | 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 20 7b 0a | f.(file_exists($installPath)).{. |
4fd20 | 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 | throw.new.\InvalidArgumentExcept |
4fd40 | 69 6f 6e 28 22 50 72 6f 6a 65 63 74 20 64 69 72 65 63 74 6f 72 79 20 24 69 6e 73 74 61 6c 6c 50 | ion("Project.directory.$installP |
4fd60 | 61 74 68 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 22 29 3b 0a 7d 0a 69 66 20 28 21 66 69 | ath.already.exists.");.}.if.(!fi |
4fd80 | 6c 65 5f 65 78 69 73 74 73 28 64 69 72 6e 61 6d 65 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 29 | le_exists(dirname($installPath)) |
4fda0 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 | ).{.throw.new.\InvalidArgumentEx |
4fdc0 | 63 65 70 74 69 6f 6e 28 22 50 72 6f 6a 65 63 74 20 72 6f 6f 74 20 22 20 2e 20 64 69 72 6e 61 6d | ception("Project.root."...dirnam |
4fde0 | 65 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 2e 20 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 | e($installPath)...".does.not.exi |
4fe00 | 73 74 2e 22 29 3b 0a 7d 0a 6d 6b 64 69 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 37 37 | st.");.}.mkdir($installPath,.077 |
4fe20 | 37 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 64 6f 77 6e | 7);.$this->downloadManager->down |
4fe40 | 6c 6f 61 64 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 3b 0a 7d 0a | load($package,.$installPath);.}. |
4fe60 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 6e 73 74 61 | ....public.function.update(Insta |
4fe80 | 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 | lledRepositoryInterface.$repo,.P |
4fea0 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 | ackageInterface.$initial,.Packag |
4fec0 | 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 | eInterface.$target).{.throw.new. |
4fee0 | 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 6e 6f 74 20 73 | \InvalidArgumentException("not.s |
4ff00 | 75 70 70 6f 72 74 65 64 22 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | upported");.}.....public.functio |
4ff20 | 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 | n.uninstall(InstalledRepositoryI |
4ff40 | 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 | nterface.$repo,.PackageInterface |
4ff60 | 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 | .$package).{.throw.new.\InvalidA |
4ff80 | 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 22 6e 6f 74 20 73 75 70 70 6f 72 74 65 64 22 | rgumentException("not.supported" |
4ffa0 | 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 | );.}........public.function.getI |
4ffc0 | 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 | nstallPath(PackageInterface.$pac |
4ffe0 | 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 50 61 74 | kage).{.return.$this->installPat |
50000 | 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | h;.}.}.<?php............namespac |
50020 | 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f | e.Composer\Installer;..use.Compo |
50040 | 73 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f | ser\Composer;.use.Composer\IO\IO |
50060 | 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 | Interface;.use.Composer\Download |
50080 | 65 72 5c 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | er\DownloadManager;.use.Composer |
500a0 | 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 | \Repository\InstalledRepositoryI |
500c0 | 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 | nterface;.use.Composer\Package\P |
500e0 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 | ackageInterface;.use.Composer\Ut |
50100 | 69 6c 5c 46 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 62 72 | il\Filesystem;........class.Libr |
50120 | 61 72 79 49 6e 73 74 61 6c 6c 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 73 74 61 6c 6c 65 | aryInstaller.implements.Installe |
50140 | 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d 70 6f 73 65 72 | rInterface.{.protected.$composer |
50160 | 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 6e 64 6f 72 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 | ;.protected.$vendorDir;.protecte |
50180 | 64 20 24 62 69 6e 44 69 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 | d.$binDir;.protected.$downloadMa |
501a0 | 6e 61 67 65 72 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 70 72 6f 74 65 63 74 65 64 20 | nager;.protected.$io;.protected. |
501c0 | 24 74 79 70 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 66 69 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a | $type;.protected.$filesystem;... |
501e0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
50200 | 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 24 63 6f 6d 70 | (IOInterface.$io,.Composer.$comp |
50220 | 6f 73 65 72 2c 20 24 74 79 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 29 0a 7b 0a 24 74 68 69 73 | oser,.$type.=.'library').{.$this |
50240 | 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 3b 0a 24 74 68 69 73 2d 3e 64 | ->composer.=.$composer;.$this->d |
50260 | 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 | ownloadManager.=.$composer->getD |
50280 | 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 3b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 24 69 | ownloadManager();.$this->io.=.$i |
502a0 | 6f 3b 0a 24 74 68 69 73 2d 3e 74 79 70 65 20 3d 20 24 74 79 70 65 3b 0a 0a 24 74 68 69 73 2d 3e | o;.$this->type.=.$type;..$this-> |
502c0 | 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 6d 28 29 3b 0a 24 | filesystem.=.new.Filesystem();.$ |
502e0 | 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 20 3d 20 72 74 72 69 6d 28 24 63 6f 6d 70 6f 73 65 | this->vendorDir.=.rtrim($compose |
50300 | 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 | r->getConfig()->get('vendor-dir' |
50320 | 29 2c 20 27 2f 27 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 3d 20 72 74 72 69 6d 28 24 | ),.'/');.$this->binDir.=.rtrim($ |
50340 | 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e 66 69 67 28 29 2d 3e 67 65 74 28 27 62 69 6e 2d | composer->getConfig()->get('bin- |
50360 | 64 69 72 27 29 2c 20 27 2f 27 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | dir'),.'/');.}.....public.functi |
50380 | 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 0a 7b 0a 72 65 74 75 | on.supports($packageType).{.retu |
503a0 | 72 6e 20 24 70 61 63 6b 61 67 65 54 79 70 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 20 | rn.$packageType.===.$this->type. |
503c0 | 7c 7c 20 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 74 79 70 65 3b 0a 7d 0a 0a 0a 0a 0a 70 | ||.null.===.$this->type;.}.....p |
503e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 | ublic.function.isInstalled(Insta |
50400 | 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 | lledRepositoryInterface.$repo,.P |
50420 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 | ackageInterface.$package).{.retu |
50440 | 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 20 26 | rn.$repo->hasPackage($package).& |
50460 | 26 20 69 73 5f 72 65 61 64 61 62 6c 65 28 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 | &.is_readable($this->getInstallP |
50480 | 61 74 68 28 24 70 61 63 6b 61 67 65 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | ath($package));.}.....public.fun |
504a0 | 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 | ction.install(InstalledRepositor |
504c0 | 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | yInterface.$repo,.PackageInterfa |
504e0 | 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 | ce.$package).{.$this->initialize |
50500 | 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 | VendorDir();.$downloadPath.=.$th |
50520 | 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a | is->getInstallPath($package);... |
50540 | 20 69 66 20 28 21 69 73 5f 72 65 61 64 61 62 6c 65 28 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 | .if.(!is_readable($downloadPath) |
50560 | 20 26 26 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 29 | .&&.$repo->hasPackage($package)) |
50580 | 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 | .{.$this->removeBinaries($packag |
505a0 | 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 43 6f 64 65 28 24 70 61 63 6b 61 | e);.}..$this->installCode($packa |
505c0 | 67 65 29 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 70 61 63 | ge);.$this->installBinaries($pac |
505e0 | 6b 61 67 65 29 3b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 | kage);.if.(!$repo->hasPackage($p |
50600 | 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f | ackage)).{.$repo->addPackage(clo |
50620 | 6e 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | ne.$package);.}.}.....public.fun |
50640 | 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 | ction.update(InstalledRepository |
50660 | 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 | Interface.$repo,.PackageInterfac |
50680 | 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 | e.$initial,.PackageInterface.$ta |
506a0 | 72 67 65 74 29 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 | rget).{.if.(!$repo->hasPackage($ |
506c0 | 69 6e 69 74 69 61 6c 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 | initial)).{.throw.new.\InvalidAr |
506e0 | 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 6b 61 67 65 20 69 73 20 6e 6f 74 20 | gumentException('Package.is.not. |
50700 | 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 69 6e 69 74 69 61 6c 29 3b 0a 7d 0a 0a 24 74 68 69 73 | installed:.'.$initial);.}..$this |
50720 | 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 0a 24 74 68 69 73 2d | ->initializeVendorDir();..$this- |
50740 | 3e 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 | >removeBinaries($initial);.$this |
50760 | 2d 3e 75 70 64 61 74 65 43 6f 64 65 28 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 29 3b | ->updateCode($initial,.$target); |
50780 | 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 24 74 61 72 67 65 74 29 | .$this->installBinaries($target) |
507a0 | 3b 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 69 6e 69 74 69 61 6c 29 | ;.$repo->removePackage($initial) |
507c0 | 3b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 74 61 72 67 65 74 | ;.if.(!$repo->hasPackage($target |
507e0 | 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 28 63 6c 6f 6e 65 20 24 74 61 | )).{.$repo->addPackage(clone.$ta |
50800 | 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 | rget);.}.}.....public.function.u |
50820 | 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 | ninstall(InstalledRepositoryInte |
50840 | 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 | rface.$repo,.PackageInterface.$p |
50860 | 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 | ackage).{.if.(!$repo->hasPackage |
50880 | 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 0a 20 72 65 74 75 72 6e 3b 0a 74 68 72 6f 77 20 6e 65 | ($package)).{...return;.throw.ne |
508a0 | 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 50 61 63 | w.\InvalidArgumentException('Pac |
508c0 | 6b 61 67 65 20 69 73 20 6e 6f 74 20 69 6e 73 74 61 6c 6c 65 64 3a 20 27 2e 24 70 61 63 6b 61 67 | kage.is.not.installed:.'.$packag |
508e0 | 65 29 3b 0a 7d 0a 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 | e);.}..$downloadPath.=.$this->ge |
50900 | 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 24 74 68 69 73 2d 3e | tInstallPath($package);..$this-> |
50920 | 72 65 6d 6f 76 65 43 6f 64 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6d | removeCode($package);.$this->rem |
50940 | 6f 76 65 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 72 65 70 6f 2d 3e 72 65 | oveBinaries($package);.$repo->re |
50960 | 6d 6f 76 65 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 0a 69 66 20 28 73 74 72 70 | movePackage($package);..if.(strp |
50980 | 6f 73 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 27 2f 27 29 29 20 7b 0a | os($package->getName(),.'/')).{. |
509a0 | 24 70 61 63 6b 61 67 65 56 65 6e 64 6f 72 44 69 72 20 3d 20 64 69 72 6e 61 6d 65 28 24 64 6f 77 | $packageVendorDir.=.dirname($dow |
509c0 | 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 63 6b 61 67 65 56 | nloadPath);.if.(is_dir($packageV |
509e0 | 65 6e 64 6f 72 44 69 72 29 20 26 26 20 21 67 6c 6f 62 28 24 70 61 63 6b 61 67 65 56 65 6e 64 6f | endorDir).&&.!glob($packageVendo |
50a00 | 72 44 69 72 2e 27 2f 2a 27 29 29 20 7b 0a 40 72 6d 64 69 72 28 24 70 61 63 6b 61 67 65 56 65 6e | rDir.'/*')).{.@rmdir($packageVen |
50a20 | 64 6f 72 44 69 72 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | dorDir);.}.}.}.....public.functi |
50a40 | 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | on.getInstallPath(PackageInterfa |
50a60 | 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 7a 65 | ce.$package).{.$this->initialize |
50a80 | 56 65 6e 64 6f 72 44 69 72 28 29 3b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 24 70 61 63 6b 61 | VendorDir();.$targetDir.=.$packa |
50aa0 | 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 3b 0a 0a 72 65 74 75 72 6e 20 28 24 74 68 | ge->getTargetDir();..return.($th |
50ac0 | 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 20 3f 20 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 | is->vendorDir.?.$this->vendorDir |
50ae0 | 2e 27 2f 27 20 3a 20 27 27 29 20 2e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 72 65 74 74 79 | .'/'.:.'')...$package->getPretty |
50b00 | 4e 61 6d 65 28 29 20 2e 20 28 24 74 61 72 67 65 74 44 69 72 20 3f 20 27 2f 27 2e 24 74 61 72 67 | Name()...($targetDir.?.'/'.$targ |
50b20 | 65 74 44 69 72 20 3a 20 27 27 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | etDir.:.'');.}..protected.functi |
50b40 | 6f 6e 20 69 6e 73 74 61 6c 6c 43 6f 64 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | on.installCode(PackageInterface. |
50b60 | 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 | $package).{.$downloadPath.=.$thi |
50b80 | 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 | s->getInstallPath($package);.$th |
50ba0 | 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 64 6f 77 6e 6c 6f 61 64 28 24 70 | is->downloadManager->download($p |
50bc0 | 61 63 6b 61 67 65 2c 20 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 | ackage,.$downloadPath);.}..prote |
50be0 | 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 43 6f 64 65 28 50 61 63 6b 61 67 65 | cted.function.updateCode(Package |
50c00 | 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 | Interface.$initial,.PackageInter |
50c20 | 66 61 63 65 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 | face.$target).{.$downloadPath.=. |
50c40 | 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 69 6e 69 74 69 61 6c 29 3b | $this->getInstallPath($initial); |
50c60 | 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 75 70 64 61 74 65 28 | .$this->downloadManager->update( |
50c80 | 24 69 6e 69 74 69 61 6c 2c 20 24 74 61 72 67 65 74 2c 20 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 | $initial,.$target,.$downloadPath |
50ca0 | 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 72 65 6d 6f 76 65 43 | );.}..protected.function.removeC |
50cc0 | 6f 64 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b | ode(PackageInterface.$package).{ |
50ce0 | 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 | .$downloadPath.=.$this->getInsta |
50d00 | 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 | llPath($package);.$this->downloa |
50d20 | 64 4d 61 6e 61 67 65 72 2d 3e 72 65 6d 6f 76 65 28 24 70 61 63 6b 61 67 65 2c 20 24 64 6f 77 6e | dManager->remove($package,.$down |
50d40 | 6c 6f 61 64 50 61 74 68 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | loadPath);.}..protected.function |
50d60 | 20 67 65 74 42 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 | .getBinaries(PackageInterface.$p |
50d80 | 61 63 6b 61 67 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 42 69 | ackage).{.return.$package->getBi |
50da0 | 6e 61 72 69 65 73 28 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | naries();.}..protected.function. |
50dc0 | 69 6e 73 74 61 6c 6c 42 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 | installBinaries(PackageInterface |
50de0 | 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 62 69 6e 61 72 69 65 73 20 3d 20 24 74 68 69 73 2d 3e | .$package).{.$binaries.=.$this-> |
50e00 | 67 65 74 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 21 24 62 69 6e | getBinaries($package);.if.(!$bin |
50e20 | 61 72 69 65 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 62 69 6e | aries).{.return;.}.foreach.($bin |
50e40 | 61 72 69 65 73 20 61 73 20 24 62 69 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 61 6c 69 | aries.as.$bin).{.$this->initiali |
50e60 | 7a 65 42 69 6e 44 69 72 28 29 3b 0a 24 6c 69 6e 6b 20 3d 20 24 74 68 69 73 2d 3e 62 69 6e 44 69 | zeBinDir();.$link.=.$this->binDi |
50e80 | 72 2e 27 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 29 3b 0a 69 66 20 28 66 69 6c 65 5f 65 | r.'/'.basename($bin);.if.(file_e |
50ea0 | 78 69 73 74 73 28 24 6c 69 6e 6b 29 29 20 7b 0a 69 66 20 28 69 73 5f 6c 69 6e 6b 28 24 6c 69 6e | xists($link)).{.if.(is_link($lin |
50ec0 | 6b 29 29 20 7b 0a 0a 20 0a 20 0a 20 63 68 6d 6f 64 28 24 6c 69 6e 6b 2c 20 30 37 37 37 20 26 20 | k)).{.......chmod($link,.0777.&. |
50ee0 | 7e 75 6d 61 73 6b 28 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 53 | ~umask());.}.$this->io->write('S |
50f00 | 6b 69 70 70 65 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f 66 20 27 2e 24 62 69 6e 2e 27 20 | kipped.installation.of.'.$bin.'. |
50f20 | 66 6f 72 20 70 61 63 6b 61 67 65 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 | for.package.'.$package->getName( |
50f40 | 29 2e 27 2c 20 6e 61 6d 65 20 63 6f 6e 66 6c 69 63 74 73 20 77 69 74 68 20 61 6e 20 65 78 69 73 | ).',.name.conflicts.with.an.exis |
50f60 | 74 69 6e 67 20 66 69 6c 65 27 29 3b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 62 69 6e 20 3d 20 | ting.file');.continue;.}.$bin.=. |
50f80 | 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 2e | $this->getInstallPath($package). |
50fa0 | 27 2f 27 2e 24 62 69 6e 3b 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 | '/'.$bin;..if.(defined('PHP_WIND |
50fc0 | 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 0a 20 69 66 20 28 27 2e 62 | OWS_VERSION_BUILD')).{...if.('.b |
50fe0 | 61 74 27 20 21 3d 3d 20 73 75 62 73 74 72 28 24 62 69 6e 2c 20 2d 34 29 29 20 7b 0a 66 69 6c 65 | at'.!==.substr($bin,.-4)).{.file |
51000 | 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 6c 69 6e 6b 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 | _put_contents($link,.$this->gene |
51020 | 72 61 74 65 55 6e 69 78 79 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 29 | rateUnixyProxyCode($bin,.$link)) |
51040 | 3b 0a 63 68 6d 6f 64 28 24 6c 69 6e 6b 2c 20 30 37 37 37 20 26 20 7e 75 6d 61 73 6b 28 29 29 3b | ;.chmod($link,.0777.&.~umask()); |
51060 | 0a 24 6c 69 6e 6b 20 2e 3d 20 27 2e 62 61 74 27 3b 0a 7d 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e | .$link..=.'.bat';.}.file_put_con |
51080 | 74 65 6e 74 73 28 24 6c 69 6e 6b 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 57 69 6e 64 | tents($link,.$this->generateWind |
510a0 | 6f 77 73 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 20 65 6c | owsProxyCode($bin,.$link));.}.el |
510c0 | 73 65 20 7b 0a 24 63 77 64 20 3d 20 67 65 74 63 77 64 28 29 3b 0a 74 72 79 20 7b 0a 0a 20 0a 20 | se.{.$cwd.=.getcwd();.try.{..... |
510e0 | 24 72 65 6c 61 74 69 76 65 42 69 6e 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d | $relativeBin.=.$this->filesystem |
51100 | 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 62 69 6e 29 3b | ->findShortestPath($link,.$bin); |
51120 | 0a 63 68 64 69 72 28 64 69 72 6e 61 6d 65 28 24 6c 69 6e 6b 29 29 3b 0a 73 79 6d 6c 69 6e 6b 28 | .chdir(dirname($link));.symlink( |
51140 | 24 72 65 6c 61 74 69 76 65 42 69 6e 2c 20 24 6c 69 6e 6b 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c | $relativeBin,.$link);.}.catch.(\ |
51160 | 45 72 72 6f 72 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f | ErrorException.$e).{.file_put_co |
51180 | 6e 74 65 6e 74 73 28 24 6c 69 6e 6b 2c 20 24 74 68 69 73 2d 3e 67 65 6e 65 72 61 74 65 55 6e 69 | ntents($link,.$this->generateUni |
511a0 | 78 79 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 29 3b 0a 7d 0a 63 68 64 | xyProxyCode($bin,.$link));.}.chd |
511c0 | 69 72 28 24 63 77 64 29 3b 0a 7d 0a 63 68 6d 6f 64 28 24 6c 69 6e 6b 2c 20 30 37 37 37 20 26 20 | ir($cwd);.}.chmod($link,.0777.&. |
511e0 | 7e 75 6d 61 73 6b 28 29 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | ~umask());.}.}..protected.functi |
51200 | 6f 6e 20 72 65 6d 6f 76 65 42 69 6e 61 72 69 65 73 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 | on.removeBinaries(PackageInterfa |
51220 | 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 62 69 6e 61 72 69 65 73 20 3d 20 24 74 68 69 73 | ce.$package).{.$binaries.=.$this |
51240 | 2d 3e 67 65 74 42 69 6e 61 72 69 65 73 28 24 70 61 63 6b 61 67 65 29 3b 0a 69 66 20 28 21 24 62 | ->getBinaries($package);.if.(!$b |
51260 | 69 6e 61 72 69 65 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 62 | inaries).{.return;.}.foreach.($b |
51280 | 69 6e 61 72 69 65 73 20 61 73 20 24 62 69 6e 29 20 7b 0a 24 6c 69 6e 6b 20 3d 20 24 74 68 69 73 | inaries.as.$bin).{.$link.=.$this |
512a0 | 2d 3e 62 69 6e 44 69 72 2e 27 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 29 3b 0a 69 66 20 | ->binDir.'/'.basename($bin);.if. |
512c0 | 28 21 66 69 6c 65 5f 65 78 69 73 74 73 28 24 6c 69 6e 6b 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 | (!file_exists($link)).{.continue |
512e0 | 3b 0a 7d 0a 75 6e 6c 69 6e 6b 28 24 6c 69 6e 6b 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 | ;.}.unlink($link);.}.}..protecte |
51300 | 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 56 65 6e 64 6f 72 44 69 72 28 29 | d.function.initializeVendorDir() |
51320 | 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 | .{.$this->filesystem->ensureDire |
51340 | 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 29 3b 0a 24 | ctoryExists($this->vendorDir);.$ |
51360 | 74 68 69 73 2d 3e 76 65 6e 64 6f 72 44 69 72 20 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 | this->vendorDir.=.realpath($this |
51380 | 2d 3e 76 65 6e 64 6f 72 44 69 72 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 | ->vendorDir);.}..protected.funct |
513a0 | 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 42 69 6e 44 69 72 28 29 0a 7b 0a 24 74 68 69 73 2d 3e | ion.initializeBinDir().{.$this-> |
513c0 | 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 | filesystem->ensureDirectoryExist |
513e0 | 73 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 29 3b 0a 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 20 | s($this->binDir);.$this->binDir. |
51400 | 3d 20 72 65 61 6c 70 61 74 68 28 24 74 68 69 73 2d 3e 62 69 6e 44 69 72 29 3b 0a 7d 0a 0a 70 72 | =.realpath($this->binDir);.}..pr |
51420 | 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 72 61 74 65 57 69 6e 64 6f 77 73 50 72 | ivate.function.generateWindowsPr |
51440 | 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 0a 7b 0a 24 62 69 6e 50 61 74 68 20 | oxyCode($bin,.$link).{.$binPath. |
51460 | 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 | =.$this->filesystem->findShortes |
51480 | 74 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 62 69 6e 29 3b 0a 69 66 20 28 27 2e 62 61 74 27 20 3d | tPath($link,.$bin);.if.('.bat'.= |
514a0 | 3d 3d 20 73 75 62 73 74 72 28 24 62 69 6e 2c 20 2d 34 29 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d | ==.substr($bin,.-4)).{.$caller.= |
514c0 | 20 27 63 61 6c 6c 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 68 61 6e 64 6c 65 20 3d 20 66 6f 70 65 | .'call';.}.else.{.$handle.=.fope |
514e0 | 6e 28 24 62 69 6e 2c 20 27 72 27 29 3b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 24 68 61 6e | n($bin,.'r');.$line.=.fgets($han |
51500 | 64 6c 65 29 3b 0a 66 63 6c 6f 73 65 28 24 68 61 6e 64 6c 65 29 3b 0a 69 66 20 28 70 72 65 67 5f | dle);.fclose($handle);.if.(preg_ |
51520 | 6d 61 74 63 68 28 27 7b 5e 23 21 2f 28 3f 3a 75 73 72 2f 62 69 6e 2f 65 6e 76 20 29 3f 28 3f 3a | match('{^#!/(?:usr/bin/env.)?(?: |
51540 | 5b 5e 2f 5d 2b 2f 29 2a 28 2e 2b 29 24 7d 6d 27 2c 20 24 6c 69 6e 65 2c 20 24 6d 61 74 63 68 29 | [^/]+/)*(.+)$}m',.$line,.$match) |
51560 | 29 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 74 72 69 6d 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d | ).{.$caller.=.trim($match[1]);.} |
51580 | 20 65 6c 73 65 20 7b 0a 24 63 61 6c 6c 65 72 20 3d 20 27 70 68 70 27 3b 0a 7d 0a 7d 0a 0a 72 65 | .else.{.$caller.=.'php';.}.}..re |
515a0 | 74 75 72 6e 20 22 40 65 63 68 6f 20 6f 66 66 5c 72 5c 6e 22 2e 0a 22 70 75 73 68 64 20 2e 5c 72 | turn."@echo.off\r\n".."pushd..\r |
515c0 | 5c 6e 22 2e 0a 22 63 64 20 25 7e 64 70 30 5c 72 5c 6e 22 2e 0a 22 63 64 20 22 2e 65 73 63 61 70 | \n".."cd.%~dp0\r\n".."cd.".escap |
515e0 | 65 73 68 65 6c 6c 61 72 67 28 64 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 2e 22 5c 72 | eshellarg(dirname($binPath))."\r |
51600 | 5c 6e 22 2e 0a 22 73 65 74 20 42 49 4e 5f 54 41 52 47 45 54 3d 25 43 44 25 5c 5c 22 2e 62 61 73 | \n".."set.BIN_TARGET=%CD%\\".bas |
51620 | 65 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 2e 22 5c 72 5c 6e 22 2e 0a 22 70 6f 70 64 5c 72 5c | ename($binPath)."\r\n".."popd\r\ |
51640 | 6e 22 2e 0a 24 63 61 6c 6c 65 72 2e 22 20 5c 22 25 42 49 4e 5f 54 41 52 47 45 54 25 5c 22 20 25 | n"..$caller.".\"%BIN_TARGET%\".% |
51660 | 2a 5c 72 5c 6e 22 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 6e 65 | *\r\n";.}..private.function.gene |
51680 | 72 61 74 65 55 6e 69 78 79 50 72 6f 78 79 43 6f 64 65 28 24 62 69 6e 2c 20 24 6c 69 6e 6b 29 0a | rateUnixyProxyCode($bin,.$link). |
516a0 | 7b 0a 24 62 69 6e 50 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 73 79 73 74 65 6d 2d 3e | {.$binPath.=.$this->filesystem-> |
516c0 | 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 24 6c 69 6e 6b 2c 20 24 62 69 6e 29 3b 0a 0a | findShortestPath($link,.$bin);.. |
516e0 | 72 65 74 75 72 6e 20 22 23 21 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 73 68 5c 6e 22 2e 0a 27 53 | return."#!/usr/bin/env.sh\n"..'S |
51700 | 52 43 5f 44 49 52 3d 60 70 77 64 60 27 2e 22 5c 6e 22 2e 0a 27 63 64 20 60 64 69 72 6e 61 6d 65 | RC_DIR=`pwd`'."\n"..'cd.`dirname |
51720 | 20 22 24 30 22 60 27 2e 22 5c 6e 22 2e 0a 27 63 64 20 27 2e 65 73 63 61 70 65 73 68 65 6c 6c 61 | ."$0"`'."\n"..'cd.'.escapeshella |
51740 | 72 67 28 64 69 72 6e 61 6d 65 28 24 62 69 6e 50 61 74 68 29 29 2e 22 5c 6e 22 2e 0a 27 42 49 4e | rg(dirname($binPath))."\n"..'BIN |
51760 | 5f 54 41 52 47 45 54 3d 60 70 77 64 60 2f 27 2e 62 61 73 65 6e 61 6d 65 28 24 62 69 6e 50 61 74 | _TARGET=`pwd`/'.basename($binPat |
51780 | 68 29 2e 22 5c 6e 22 2e 0a 27 63 64 20 24 53 52 43 5f 44 49 52 27 2e 22 5c 6e 22 2e 0a 27 24 42 | h)."\n"..'cd.$SRC_DIR'."\n"..'$B |
517a0 | 49 4e 5f 54 41 52 47 45 54 20 22 24 40 22 27 2e 22 5c 6e 22 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a | IN_TARGET."$@"'."\n";.}.}.<?php. |
517c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e | ...........namespace.Composer\In |
517e0 | 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 | staller;..use.Composer\Package\P |
51800 | 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 | ackageInterface;.use.Composer\Pa |
51820 | 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | ckage\AliasPackage;.use.Composer |
51840 | 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b | \Repository\RepositoryInterface; |
51860 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 4e 6f 74 69 66 69 61 | .use.Composer\Repository\Notifia |
51880 | 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 | bleRepositoryInterface;.use.Comp |
518a0 | 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 | oser\Repository\InstalledReposit |
518c0 | 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e | oryInterface;.use.Composer\Depen |
518e0 | 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4f 70 65 72 61 74 69 6f | dencyResolver\Operation\Operatio |
51900 | 6e 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 | nInterface;.use.Composer\Depende |
51920 | 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 49 6e 73 74 61 6c 6c 4f 70 65 | ncyResolver\Operation\InstallOpe |
51940 | 72 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 | ration;.use.Composer\DependencyR |
51960 | 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f | esolver\Operation\UpdateOperatio |
51980 | 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 | n;.use.Composer\DependencyResolv |
519a0 | 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f 6e 3b | er\Operation\UninstallOperation; |
519c0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 | .use.Composer\DependencyResolver |
519e0 | 5c 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 | \Operation\MarkAliasInstalledOpe |
51a00 | 72 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 | ration;.use.Composer\DependencyR |
51a20 | 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e 5c 4d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 | esolver\Operation\MarkAliasUnins |
51a40 | 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e | talledOperation;........class.In |
51a60 | 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 | stallationManager.{.private.$ins |
51a80 | 74 61 6c 6c 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 63 61 63 68 | tallers.=.array();.private.$cach |
51aa0 | 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | e.=.array();.......public.functi |
51ac0 | 6f 6e 20 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 49 6e 73 74 61 6c 6c 65 72 49 6e 74 65 72 66 61 | on.addInstaller(InstallerInterfa |
51ae0 | 63 65 20 24 69 6e 73 74 61 6c 6c 65 72 29 0a 7b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 | ce.$installer).{.array_unshift($ |
51b00 | 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 2c 20 24 69 6e 73 74 61 6c 6c 65 72 29 3b 0a 24 | this->installers,.$installer);.$ |
51b20 | 74 68 69 73 2d 3e 63 61 63 68 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | this->cache.=.array();.}........ |
51b40 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 | ...public.function.getInstaller( |
51b60 | 24 74 79 70 65 29 0a 7b 0a 24 74 79 70 65 20 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 74 79 70 | $type).{.$type.=.strtolower($typ |
51b80 | 65 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 61 63 68 65 5b 24 74 79 70 | e);..if.(isset($this->cache[$typ |
51ba0 | 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 61 63 68 65 5b 24 74 79 70 65 | e])).{.return.$this->cache[$type |
51bc0 | 5d 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 65 72 73 | ];.}..foreach.($this->installers |
51be0 | 20 61 73 20 24 69 6e 73 74 61 6c 6c 65 72 29 20 7b 0a 69 66 20 28 24 69 6e 73 74 61 6c 6c 65 72 | .as.$installer).{.if.($installer |
51c00 | 2d 3e 73 75 70 70 6f 72 74 73 28 24 74 79 70 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | ->supports($type)).{.return.$thi |
51c20 | 73 2d 3e 63 61 63 68 65 5b 24 74 79 70 65 5d 20 3d 20 24 69 6e 73 74 61 6c 6c 65 72 3b 0a 7d 0a | s->cache[$type].=.$installer;.}. |
51c40 | 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 | }..throw.new.\InvalidArgumentExc |
51c60 | 65 70 74 69 6f 6e 28 27 55 6e 6b 6e 6f 77 6e 20 69 6e 73 74 61 6c 6c 65 72 20 74 79 70 65 3a 20 | eption('Unknown.installer.type:. |
51c80 | 27 2e 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | '.$type);.}..........public.func |
51ca0 | 74 69 6f 6e 20 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 28 49 6e 73 74 61 6c 6c 65 | tion.isPackageInstalled(Installe |
51cc0 | 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b | dRepositoryInterface.$repo,.Pack |
51ce0 | 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 24 70 61 | ageInterface.$package).{.if.($pa |
51d00 | 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b | ckage.instanceof.AliasPackage).{ |
51d20 | 0a 72 65 74 75 72 6e 20 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 | .return.$repo->hasPackage($packa |
51d40 | 67 65 29 20 26 26 20 24 74 68 69 73 2d 3e 69 73 50 61 63 6b 61 67 65 49 6e 73 74 61 6c 6c 65 64 | ge).&&.$this->isPackageInstalled |
51d60 | 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 4f 66 28 29 29 3b | ($repo,.$package->getAliasOf()); |
51d80 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 | .}..return.$this->getInstaller($ |
51da0 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 79 70 65 28 29 29 2d 3e 69 73 49 6e 73 74 61 6c 6c 65 64 | package->getType())->isInstalled |
51dc0 | 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | ($repo,.$package);.}........publ |
51de0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 52 65 70 6f 73 69 74 6f 72 79 49 6e | ic.function.execute(RepositoryIn |
51e00 | 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 4f 70 65 72 61 74 69 6f 6e 49 6e 74 65 72 66 61 63 | terface.$repo,.OperationInterfac |
51e20 | 65 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 6d 65 74 68 6f 64 20 3d 20 24 6f 70 65 72 61 | e.$operation).{.$method.=.$opera |
51e40 | 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 3b 0a 24 74 68 69 73 2d 3e 24 6d 65 74 68 | tion->getJobType();.$this->$meth |
51e60 | 6f 64 28 24 72 65 70 6f 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | od($repo,.$operation);.}........ |
51e80 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 52 65 70 6f 73 69 74 6f | public.function.install(Reposito |
51ea0 | 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 49 6e 73 74 61 6c 6c 4f 70 65 72 61 74 | ryInterface.$repo,.InstallOperat |
51ec0 | 69 6f 6e 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 | ion.$operation).{.$package.=.$op |
51ee0 | 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 | eration->getPackage();.$installe |
51f00 | 72 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 | r.=.$this->getInstaller($package |
51f20 | 2d 3e 67 65 74 54 79 70 65 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 69 6e 73 74 61 6c | ->getType());.$installer->instal |
51f40 | 6c 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 | l($repo,.$package);.$this->notif |
51f60 | 79 49 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | yInstall($package);.}........pub |
51f80 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 52 65 70 6f 73 69 74 6f 72 79 49 6e | lic.function.update(RepositoryIn |
51fa0 | 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 20 24 | terface.$repo,.UpdateOperation.$ |
51fc0 | 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 69 6e 69 74 69 61 6c 20 3d 20 24 6f 70 65 72 61 74 69 | operation).{.$initial.=.$operati |
51fe0 | 6f 6e 2d 3e 67 65 74 49 6e 69 74 69 61 6c 50 61 63 6b 61 67 65 28 29 3b 0a 24 74 61 72 67 65 74 | on->getInitialPackage();.$target |
52000 | 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 | .=.$operation->getTargetPackage( |
52020 | 29 3b 0a 0a 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 20 24 69 6e 69 74 69 61 6c 2d 3e 67 65 74 | );..$initialType.=.$initial->get |
52040 | 54 79 70 65 28 29 3b 0a 24 74 61 72 67 65 74 54 79 70 65 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 | Type();.$targetType.=.$target->g |
52060 | 65 74 54 79 70 65 28 29 3b 0a 0a 69 66 20 28 24 69 6e 69 74 69 61 6c 54 79 70 65 20 3d 3d 3d 20 | etType();..if.($initialType.===. |
52080 | 24 74 61 72 67 65 74 54 79 70 65 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 24 74 68 69 | $targetType).{.$installer.=.$thi |
520a0 | 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 69 6e 69 74 69 61 6c 54 79 70 65 29 3b 0a 24 | s->getInstaller($initialType);.$ |
520c0 | 69 6e 73 74 61 6c 6c 65 72 2d 3e 75 70 64 61 74 65 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 | installer->update($repo,.$initia |
520e0 | 6c 2c 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 6e 6f 74 69 66 79 49 6e 73 74 61 6c | l,.$target);.$this->notifyInstal |
52100 | 6c 28 24 74 61 72 67 65 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 67 65 74 49 | l($target);.}.else.{.$this->getI |
52120 | 6e 73 74 61 6c 6c 65 72 28 24 69 6e 69 74 69 61 6c 54 79 70 65 29 2d 3e 75 6e 69 6e 73 74 61 6c | nstaller($initialType)->uninstal |
52140 | 6c 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 29 3b 0a 24 74 68 69 73 2d 3e 67 65 74 49 6e | l($repo,.$initial);.$this->getIn |
52160 | 73 74 61 6c 6c 65 72 28 24 74 61 72 67 65 74 54 79 70 65 29 2d 3e 69 6e 73 74 61 6c 6c 28 24 72 | staller($targetType)->install($r |
52180 | 65 70 6f 2c 20 24 74 61 72 67 65 74 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | epo,.$target);.}.}........public |
521a0 | 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 52 65 70 6f 73 69 74 6f 72 79 49 6e | .function.uninstall(RepositoryIn |
521c0 | 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 55 6e 69 6e 73 74 61 6c 6c 4f 70 65 72 61 74 69 6f | terface.$repo,.UninstallOperatio |
521e0 | 6e 20 24 6f 70 65 72 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 | n.$operation).{.$package.=.$oper |
52200 | 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 | ation->getPackage();.$installer. |
52220 | 3d 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 2d 3e | =.$this->getInstaller($package-> |
52240 | 67 65 74 54 79 70 65 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 75 6e 69 6e 73 74 61 6c | getType());.$installer->uninstal |
52260 | 6c 28 24 72 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | l($repo,.$package);.}........pub |
52280 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 28 | lic.function.markAliasInstalled( |
522a0 | 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 4d 61 72 6b 41 | RepositoryInterface.$repo,.MarkA |
522c0 | 6c 69 61 73 49 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 24 6f 70 65 72 61 74 69 6f | liasInstalledOperation.$operatio |
522e0 | 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 | n).{.$package.=.$operation->getP |
52300 | 61 63 6b 61 67 65 28 29 3b 0a 0a 69 66 20 28 21 24 72 65 70 6f 2d 3e 68 61 73 50 61 63 6b 61 67 | ackage();..if.(!$repo->hasPackag |
52320 | 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 24 72 65 70 6f 2d 3e 61 64 64 50 61 63 6b 61 67 65 | e($package)).{.$repo->addPackage |
52340 | 28 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | (clone.$package);.}.}........pub |
52360 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6d 61 72 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 | lic.function.markAliasUninstalle |
52380 | 64 28 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 4d 61 72 | d(RepositoryInterface.$repo,.Mar |
523a0 | 6b 41 6c 69 61 73 55 6e 69 6e 73 74 61 6c 6c 65 64 4f 70 65 72 61 74 69 6f 6e 20 24 6f 70 65 72 | kAliasUninstalledOperation.$oper |
523c0 | 61 74 69 6f 6e 29 0a 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e | ation).{.$package.=.$operation-> |
523e0 | 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 0a 24 72 65 70 6f 2d 3e 72 65 6d 6f 76 65 50 61 63 6b | getPackage();..$repo->removePack |
52400 | 61 67 65 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | age($package);.}........public.f |
52420 | 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 50 61 63 6b 61 67 65 49 6e | unction.getInstallPath(PackageIn |
52440 | 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d | terface.$package).{.$installer.= |
52460 | 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 2d 3e 67 | .$this->getInstaller($package->g |
52480 | 65 74 54 79 70 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 6e 73 74 61 6c 6c 65 72 2d 3e 67 | etType());..return.$installer->g |
524a0 | 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 70 72 69 76 | etInstallPath($package);.}..priv |
524c0 | 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 69 66 79 49 6e 73 74 61 6c 6c 28 50 61 63 6b 61 | ate.function.notifyInstall(Packa |
524e0 | 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 69 66 20 28 24 70 61 63 | geInterface.$package).{.if.($pac |
52500 | 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 69 6e 73 74 61 6e 63 65 6f 66 | kage->getRepository().instanceof |
52520 | 20 4e 6f 74 69 66 69 61 62 6c 65 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 29 20 | .NotifiableRepositoryInterface). |
52540 | 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 6e 6f 74 | {.$package->getRepository()->not |
52560 | 69 66 79 49 6e 73 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 | ifyInstall($package);.}.}.}.<?ph |
52580 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c | p............namespace.Composer\ |
525a0 | 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 | Installer;..use.Composer\Package |
525c0 | 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | \PackageInterface;.use.Composer\ |
525e0 | 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e | Repository\InstalledRepositoryIn |
52600 | 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 73 74 61 6c | terface;........interface.Instal |
52620 | 6c 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | lerInterface.{.......public.func |
52640 | 74 69 6f 6e 20 73 75 70 70 6f 72 74 73 28 24 70 61 63 6b 61 67 65 54 79 70 65 29 3b 0a 0a 0a 0a | tion.supports($packageType);.... |
52660 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 73 74 61 6c 6c 65 | ......public.function.isInstalle |
52680 | 64 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 | d(InstalledRepositoryInterface.$ |
526a0 | 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 | repo,.PackageInterface.$package) |
526c0 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c | ;........public.function.install |
526e0 | 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 | (InstalledRepositoryInterface.$r |
52700 | 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b | epo,.PackageInterface.$package); |
52720 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 | ...........public.function.updat |
52740 | 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 | e(InstalledRepositoryInterface.$ |
52760 | 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c | repo,.PackageInterface.$initial, |
52780 | 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 74 61 72 67 65 74 29 3b 0a 0a 0a 0a 0a | .PackageInterface.$target);..... |
527a0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 69 6e 73 74 61 6c 6c 28 49 6e 73 | ...public.function.uninstall(Ins |
527c0 | 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c | talledRepositoryInterface.$repo, |
527e0 | 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 0a 0a 0a | .PackageInterface.$package);.... |
52800 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 73 74 61 6c 6c 50 61 | ....public.function.getInstallPa |
52820 | 74 68 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d | th(PackageInterface.$package);.} |
52840 | 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 | .<?php............namespace.Comp |
52860 | 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f | oser\Installer;..use.Composer\Co |
52880 | 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 | mposer;.use.Composer\IO\IOInterf |
528a0 | 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c | ace;.use.Composer\Autoload\Autol |
528c0 | 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 | oadGenerator;.use.Composer\Repos |
528e0 | 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 | itory\InstalledRepositoryInterfa |
52900 | 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 | ce;.use.Composer\Package\Package |
52920 | 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 73 74 61 6c 6c 65 72 | Interface;.......class.Installer |
52940 | 49 6e 73 74 61 6c 6c 65 72 20 65 78 74 65 6e 64 73 20 4c 69 62 72 61 72 79 49 6e 73 74 61 6c 6c | Installer.extends.LibraryInstall |
52960 | 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 | er.{.private.$installationManage |
52980 | 72 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 20 | r;.private.static.$classCounter. |
529a0 | 3d 20 30 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 | =.0;......public.function.__cons |
529c0 | 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 6f 73 65 72 20 | truct(IOInterface.$io,.Composer. |
529e0 | 24 63 6f 6d 70 6f 73 65 72 2c 20 24 74 79 70 65 20 3d 20 27 6c 69 62 72 61 72 79 27 29 0a 7b 0a | $composer,.$type.=.'library').{. |
52a00 | 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 6f 2c 20 24 63 6f 6d 70 6f 73 | parent::__construct($io,.$compos |
52a20 | 65 72 2c 20 27 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 29 3b 0a 24 74 68 69 73 | er,.'composer-installer');.$this |
52a40 | 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 63 6f 6d 70 6f 73 65 | ->installationManager.=.$compose |
52a60 | 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 3b 0a 0a 66 6f | r->getInstallationManager();..fo |
52a80 | 72 65 61 63 68 20 28 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d | reach.($composer->getRepositoryM |
52aa0 | 61 6e 61 67 65 72 28 29 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 | anager()->getLocalRepositories() |
52ac0 | 20 61 73 20 24 72 65 70 6f 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 72 65 70 6f 2d 3e 67 65 74 | .as.$repo).{.foreach.($repo->get |
52ae0 | 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 27 63 | Packages().as.$package).{.if.('c |
52b00 | 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d | omposer-installer'.===.$package- |
52b20 | 3e 67 65 74 54 79 70 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 49 6e 73 | >getType()).{.$this->registerIns |
52b40 | 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 70 75 | taller($package);.}.}.}.}.....pu |
52b60 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 73 74 61 6c 6c 28 49 6e 73 74 61 6c 6c 65 64 52 | blic.function.install(InstalledR |
52b80 | 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 | epositoryInterface.$repo,.Packag |
52ba0 | 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 65 78 74 72 61 20 3d 20 | eInterface.$package).{.$extra.=. |
52bc0 | 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 45 78 74 72 61 28 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 | $package->getExtra();.if.(empty( |
52be0 | 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 | $extra['class'])).{.throw.new.\U |
52c00 | 6e 65 78 70 65 63 74 65 64 56 61 6c 75 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 20 77 | nexpectedValueException('Error.w |
52c20 | 68 69 6c 65 20 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 50 | hile.installing.'.$package->getP |
52c40 | 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 2c 20 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 | rettyName().',.composer-installe |
52c60 | 72 20 70 61 63 6b 61 67 65 73 20 73 68 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6c 61 73 73 20 64 | r.packages.should.have.a.class.d |
52c80 | 65 66 69 6e 65 64 20 69 6e 20 74 68 65 69 72 20 65 78 74 72 61 20 6b 65 79 20 74 6f 20 62 65 20 | efined.in.their.extra.key.to.be. |
52ca0 | 75 73 61 62 6c 65 2e 27 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 69 6e 73 74 61 6c 6c 28 24 72 | usable.');.}..parent::install($r |
52cc0 | 65 70 6f 2c 20 24 70 61 63 6b 61 67 65 29 3b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 49 | epo,.$package);.$this->registerI |
52ce0 | 6e 73 74 61 6c 6c 65 72 28 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | nstaller($package);.}.....public |
52d00 | 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 28 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 | .function.update(InstalledReposi |
52d20 | 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 72 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 | toryInterface.$repo,.PackageInte |
52d40 | 72 66 61 63 65 20 24 69 6e 69 74 69 61 6c 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 | rface.$initial,.PackageInterface |
52d60 | 20 24 74 61 72 67 65 74 29 0a 7b 0a 24 65 78 74 72 61 20 3d 20 24 74 61 72 67 65 74 2d 3e 67 65 | .$target).{.$extra.=.$target->ge |
52d80 | 74 45 78 74 72 61 28 29 3b 0a 69 66 20 28 65 6d 70 74 79 28 24 65 78 74 72 61 5b 27 63 6c 61 73 | tExtra();.if.(empty($extra['clas |
52da0 | 73 27 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 55 6e 65 78 70 65 63 74 65 64 56 61 6c | s'])).{.throw.new.\UnexpectedVal |
52dc0 | 75 65 45 78 63 65 70 74 69 6f 6e 28 27 45 72 72 6f 72 20 77 68 69 6c 65 20 69 6e 73 74 61 6c 6c | ueException('Error.while.install |
52de0 | 69 6e 67 20 27 2e 24 74 61 72 67 65 74 2d 3e 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2e 27 | ing.'.$target->getPrettyName().' |
52e00 | 2c 20 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 20 70 61 63 6b 61 67 65 73 20 73 68 | ,.composer-installer.packages.sh |
52e20 | 6f 75 6c 64 20 68 61 76 65 20 61 20 63 6c 61 73 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 | ould.have.a.class.defined.in.the |
52e40 | 69 72 20 65 78 74 72 61 20 6b 65 79 20 74 6f 20 62 65 20 75 73 61 62 6c 65 2e 27 29 3b 0a 7d 0a | ir.extra.key.to.be.usable.');.}. |
52e60 | 0a 70 61 72 65 6e 74 3a 3a 75 70 64 61 74 65 28 24 72 65 70 6f 2c 20 24 69 6e 69 74 69 61 6c 2c | .parent::update($repo,.$initial, |
52e80 | 20 24 74 61 72 67 65 74 29 3b 0a 24 74 68 69 73 2d 3e 72 65 67 69 73 74 65 72 49 6e 73 74 61 6c | .$target);.$this->registerInstal |
52ea0 | 6c 65 72 28 24 74 61 72 67 65 74 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f | ler($target);.}..private.functio |
52ec0 | 6e 20 72 65 67 69 73 74 65 72 49 6e 73 74 61 6c 6c 65 72 28 50 61 63 6b 61 67 65 49 6e 74 65 72 | n.registerInstaller(PackageInter |
52ee0 | 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a 7b 0a 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 20 3d | face.$package).{.$downloadPath.= |
52f00 | 20 24 74 68 69 73 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 74 68 28 24 70 61 63 6b 61 67 65 29 | .$this->getInstallPath($package) |
52f20 | 3b 0a 0a 24 65 78 74 72 61 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 45 78 74 72 61 28 29 | ;..$extra.=.$package->getExtra() |
52f40 | 3b 0a 24 63 6c 61 73 73 65 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 65 78 74 72 61 5b 27 63 6c | ;.$classes.=.is_array($extra['cl |
52f60 | 61 73 73 27 5d 29 20 3f 20 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 20 3a 20 61 72 72 61 79 | ass']).?.$extra['class'].:.array |
52f80 | 28 24 65 78 74 72 61 5b 27 63 6c 61 73 73 27 5d 29 3b 0a 0a 24 67 65 6e 65 72 61 74 6f 72 20 3d | ($extra['class']);..$generator.= |
52fa0 | 20 6e 65 77 20 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 24 6d 61 70 20 3d 20 24 | .new.AutoloadGenerator;.$map.=.$ |
52fc0 | 67 65 6e 65 72 61 74 6f 72 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 61 72 72 61 79 28 | generator->parseAutoloads(array( |
52fe0 | 61 72 72 61 79 28 24 70 61 63 6b 61 67 65 2c 20 24 64 6f 77 6e 6c 6f 61 64 50 61 74 68 29 29 29 | array($package,.$downloadPath))) |
53000 | 3b 0a 24 63 6c 61 73 73 4c 6f 61 64 65 72 20 3d 20 24 67 65 6e 65 72 61 74 6f 72 2d 3e 63 72 65 | ;.$classLoader.=.$generator->cre |
53020 | 61 74 65 4c 6f 61 64 65 72 28 24 6d 61 70 29 3b 0a 24 63 6c 61 73 73 4c 6f 61 64 65 72 2d 3e 72 | ateLoader($map);.$classLoader->r |
53040 | 65 67 69 73 74 65 72 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 73 73 65 73 20 61 73 | egister();..foreach.($classes.as |
53060 | 20 24 63 6c 61 73 73 29 20 7b 0a 69 66 20 28 63 6c 61 73 73 5f 65 78 69 73 74 73 28 24 63 6c 61 | .$class).{.if.(class_exists($cla |
53080 | 73 73 2c 20 66 61 6c 73 65 29 29 20 7b 0a 24 63 6f 64 65 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 | ss,.false)).{.$code.=.file_get_c |
530a0 | 6f 6e 74 65 6e 74 73 28 24 63 6c 61 73 73 4c 6f 61 64 65 72 2d 3e 66 69 6e 64 46 69 6c 65 28 24 | ontents($classLoader->findFile($ |
530c0 | 63 6c 61 73 73 29 29 3b 0a 24 63 6f 64 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b | class));.$code.=.preg_replace('{ |
530e0 | 5e 63 6c 61 73 73 5c 73 2b 28 5c 53 2b 29 7d 6d 69 27 2c 20 27 63 6c 61 73 73 20 24 31 5f 63 6f | ^class\s+(\S+)}mi',.'class.$1_co |
53100 | 6d 70 6f 73 65 72 5f 74 6d 70 27 2e 73 65 6c 66 3a 3a 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 2c | mposer_tmp'.self::$classCounter, |
53120 | 20 24 63 6f 64 65 29 3b 0a 65 76 61 6c 28 27 3f 3e 27 2e 24 63 6f 64 65 29 3b 0a 24 63 6c 61 73 | .$code);.eval('?>'.$code);.$clas |
53140 | 73 20 2e 3d 20 27 5f 63 6f 6d 70 6f 73 65 72 5f 74 6d 70 27 2e 73 65 6c 66 3a 3a 24 63 6c 61 73 | s..=.'_composer_tmp'.self::$clas |
53160 | 73 43 6f 75 6e 74 65 72 3b 0a 73 65 6c 66 3a 3a 24 63 6c 61 73 73 43 6f 75 6e 74 65 72 2b 2b 3b | sCounter;.self::$classCounter++; |
53180 | 0a 7d 0a 0a 24 69 6e 73 74 61 6c 6c 65 72 20 3d 20 6e 65 77 20 24 63 6c 61 73 73 28 24 74 68 69 | .}..$installer.=.new.$class($thi |
531a0 | 73 2d 3e 69 6f 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 3b 0a 24 74 68 69 73 2d 3e | s->io,.$this->composer);.$this-> |
531c0 | 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 | installationManager->addInstalle |
531e0 | 72 28 24 69 6e 73 74 61 6c 6c 65 72 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a | r($installer);.}.}.}.<?php...... |
53200 | 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6e 73 6f 6c 65 | ......namespace.Composer\Console |
53220 | 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | ;..use.Symfony\Component\Console |
53240 | 5c 41 70 70 6c 69 63 61 74 69 6f 6e 20 61 73 20 42 61 73 65 41 70 70 6c 69 63 61 74 69 6f 6e 3b | \Application.as.BaseApplication; |
53260 | 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 | .use.Symfony\Component\Console\I |
53280 | 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 | nput\InputInterface;.use.Symfony |
532a0 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 | \Component\Console\Output\Output |
532c0 | 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 | Interface;.use.Symfony\Component |
532e0 | 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 | \Console\Output\ConsoleOutput;.u |
53300 | 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 | se.Symfony\Component\Console\For |
53320 | 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 | matter\OutputFormatter;.use.Symf |
53340 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c | ony\Component\Console\Formatter\ |
53360 | 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | OutputFormatterStyle;.use.Compos |
53380 | 65 72 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 43 6f 6d 6d 61 6e 64 | er\Command;.use.Composer\Command |
533a0 | 5c 48 65 6c 70 65 72 5c 44 69 61 6c 6f 67 48 65 6c 70 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 | \Helper\DialogHelper;.use.Compos |
533c0 | 65 72 5c 43 6f 6d 70 6f 73 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 46 61 63 74 6f 72 | er\Composer;.use.Composer\Factor |
533e0 | 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a | y;.use.Composer\IO\IOInterface;. |
53400 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 4f 5c 43 6f 6e 73 6f 6c 65 49 4f 3b 0a 75 73 65 20 43 | use.Composer\IO\ConsoleIO;.use.C |
53420 | 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 45 72 72 6f 72 48 61 6e 64 6c 65 72 3b 0a 0a 0a 0a 0a 0a | omposer\Util\ErrorHandler;...... |
53440 | 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 42 61 73 | ...class.Application.extends.Bas |
53460 | 65 41 70 70 6c 69 63 61 74 69 6f 6e 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6d | eApplication.{....protected.$com |
53480 | 70 6f 73 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 70 75 62 6c 69 | poser;.....protected.$io;..publi |
534a0 | 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 45 72 72 6f 72 | c.function.__construct().{.Error |
534c0 | 48 61 6e 64 6c 65 72 3a 3a 72 65 67 69 73 74 65 72 28 29 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 | Handler::register();.parent::__c |
534e0 | 6f 6e 73 74 72 75 63 74 28 27 43 6f 6d 70 6f 73 65 72 27 2c 20 43 6f 6d 70 6f 73 65 72 3a 3a 56 | onstruct('Composer',.Composer::V |
53500 | 45 52 53 49 4f 4e 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 | ERSION);.}.....public.function.r |
53520 | 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 2c | un(InputInterface.$input.=.null, |
53540 | 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 29 | .OutputInterface.$output.=.null) |
53560 | 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 75 74 70 75 74 29 20 7b 0a 24 73 74 79 6c | .{.if.(null.===.$output).{.$styl |
53580 | 65 73 5b 27 68 69 67 68 6c 69 67 68 74 27 5d 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d | es['highlight'].=.new.OutputForm |
535a0 | 61 74 74 65 72 53 74 79 6c 65 28 27 72 65 64 27 29 3b 0a 24 73 74 79 6c 65 73 5b 27 77 61 72 6e | atterStyle('red');.$styles['warn |
535c0 | 69 6e 67 27 5d 20 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 | ing'].=.new.OutputFormatterStyle |
535e0 | 28 27 62 6c 61 63 6b 27 2c 20 27 79 65 6c 6c 6f 77 27 29 3b 0a 24 66 6f 72 6d 61 74 74 65 72 20 | ('black',.'yellow');.$formatter. |
53600 | 3d 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 28 6e 75 6c 6c 2c 20 24 73 74 79 | =.new.OutputFormatter(null,.$sty |
53620 | 6c 65 73 29 3b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 | les);.$output.=.new.ConsoleOutpu |
53640 | 74 28 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 | t(ConsoleOutput::VERBOSITY_NORMA |
53660 | 4c 2c 20 6e 75 6c 6c 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | L,.null,.$formatter);.}..return. |
53680 | 70 61 72 65 6e 74 3a 3a 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a | parent::run($input,.$output);.}. |
536a0 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 52 75 6e 28 49 6e 70 75 74 49 | ....public.function.doRun(InputI |
536c0 | 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 | nterface.$input,.OutputInterface |
536e0 | 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6f 20 3d 20 6e 65 77 20 43 6f 6e 73 | .$output).{.$this->io.=.new.Cons |
53700 | 6f 6c 65 49 4f 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 2c 20 24 74 68 69 73 2d 3e 67 65 | oleIO($input,.$output,.$this->ge |
53720 | 74 48 65 6c 70 65 72 53 65 74 28 29 29 3b 0a 0a 69 66 20 28 76 65 72 73 69 6f 6e 5f 63 6f 6d 70 | tHelperSet());..if.(version_comp |
53740 | 61 72 65 28 50 48 50 5f 56 45 52 53 49 4f 4e 2c 20 27 35 2e 33 2e 32 27 2c 20 27 3c 27 29 29 20 | are(PHP_VERSION,.'5.3.2',.'<')). |
53760 | 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c 77 61 72 6e 69 6e 67 3e 43 6f 6d | {.$output->writeln('<warning>Com |
53780 | 70 6f 73 65 72 20 6f 6e 6c 79 20 6f 66 66 69 63 69 61 6c 6c 79 20 73 75 70 70 6f 72 74 73 20 50 | poser.only.officially.supports.P |
537a0 | 48 50 20 35 2e 33 2e 32 20 61 6e 64 20 61 62 6f 76 65 2c 20 79 6f 75 20 77 69 6c 6c 20 6d 6f 73 | HP.5.3.2.and.above,.you.will.mos |
537c0 | 74 20 6c 69 6b 65 6c 79 20 65 6e 63 6f 75 6e 74 65 72 20 70 72 6f 62 6c 65 6d 73 20 77 69 74 68 | t.likely.encounter.problems.with |
537e0 | 20 79 6f 75 72 20 50 48 50 20 27 2e 50 48 50 5f 56 45 52 53 49 4f 4e 2e 27 2c 20 75 70 67 72 61 | .your.PHP.'.PHP_VERSION.',.upgra |
53800 | 64 69 6e 67 20 69 73 20 73 74 72 6f 6e 67 6c 79 20 72 65 63 6f 6d 6d 65 6e 64 65 64 2e 3c 2f 77 | ding.is.strongly.recommended.</w |
53820 | 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 43 4f 4d 50 4f | arning>');.}..if.(defined('COMPO |
53840 | 53 45 52 5f 44 45 56 5f 57 41 52 4e 49 4e 47 5f 54 49 4d 45 27 29 20 26 26 20 24 74 68 69 73 2d | SER_DEV_WARNING_TIME').&&.$this- |
53860 | 3e 67 65 74 43 6f 6d 6d 61 6e 64 4e 61 6d 65 28 24 69 6e 70 75 74 29 20 21 3d 3d 20 27 73 65 6c | >getCommandName($input).!==.'sel |
53880 | 66 2d 75 70 64 61 74 65 27 29 20 7b 0a 69 66 20 28 74 69 6d 65 28 29 20 3e 20 43 4f 4d 50 4f 53 | f-update').{.if.(time().>.COMPOS |
538a0 | 45 52 5f 44 45 56 5f 57 41 52 4e 49 4e 47 5f 54 49 4d 45 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e | ER_DEV_WARNING_TIME).{.$output-> |
538c0 | 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 77 61 72 6e 69 6e 67 3e 54 68 69 73 20 64 | writeln(sprintf('<warning>This.d |
538e0 | 65 76 20 62 75 69 6c 64 20 6f 66 20 63 6f 6d 70 6f 73 65 72 20 69 73 20 6f 75 74 64 61 74 65 64 | ev.build.of.composer.is.outdated |
53900 | 2c 20 70 6c 65 61 73 65 20 72 75 6e 20 22 25 73 20 73 65 6c 66 2d 75 70 64 61 74 65 22 20 74 6f | ,.please.run."%s.self-update".to |
53920 | 20 67 65 74 20 74 68 65 20 6c 61 74 65 73 74 20 76 65 72 73 69 6f 6e 2e 3c 2f 77 61 72 6e 69 6e | .get.the.latest.version.</warnin |
53940 | 67 3e 27 2c 20 24 5f 53 45 52 56 45 52 5b 27 50 48 50 5f 53 45 4c 46 27 5d 29 29 3b 0a 7d 0a 7d | g>',.$_SERVER['PHP_SELF']));.}.} |
53960 | 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 64 6f 52 75 6e 28 24 69 6e 70 75 74 2c 20 24 | ..return.parent::doRun($input,.$ |
53980 | 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | output);.}......public.function. |
539a0 | 67 65 74 43 6f 6d 70 6f 73 65 72 28 24 72 65 71 75 69 72 65 64 20 3d 20 74 72 75 65 29 0a 7b 0a | getComposer($required.=.true).{. |
539c0 | 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 29 20 7b 0a | if.(null.===.$this->composer).{. |
539e0 | 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 20 3d 20 46 61 63 74 6f 72 79 3a | try.{.$this->composer.=.Factory: |
53a00 | 3a 63 72 65 61 74 65 28 24 74 68 69 73 2d 3e 69 6f 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 49 6e | :create($this->io);.}.catch.(\In |
53a20 | 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 | validArgumentException.$e).{.if. |
53a40 | 28 24 72 65 71 75 69 72 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 24 | ($required).{.$this->io->write($ |
53a60 | 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 29 3b 0a 65 78 69 74 28 31 29 3b 0a 7d 0a 7d 0a 7d | e->getMessage());.exit(1);.}.}.} |
53a80 | 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 70 6f 73 65 72 3b 0a 7d 0a 0a 0a 0a 0a | ..return.$this->composer;.}..... |
53aa0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 4f 28 29 0a 7b 0a 72 65 74 75 72 6e | public.function.getIO().{.return |
53ac0 | 20 24 74 68 69 73 2d 3e 69 6f 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 | .$this->io;.}.....protected.func |
53ae0 | 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 0a 7b 0a 24 63 6f 6d | tion.getDefaultCommands().{.$com |
53b00 | 6d 61 6e 64 73 20 3d 20 70 61 72 65 6e 74 3a 3a 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e | mands.=.parent::getDefaultComman |
53b20 | 64 73 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c | ds();.$commands[].=.new.Command\ |
53b40 | 41 62 6f 75 74 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 | AboutCommand();.$commands[].=.ne |
53b60 | 77 20 43 6f 6d 6d 61 6e 64 5c 44 65 70 65 6e 64 73 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d | w.Command\DependsCommand();.$com |
53b80 | 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 49 6e 69 74 43 6f 6d 6d 61 6e | mands[].=.new.Command\InitComman |
53ba0 | 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 49 | d();.$commands[].=.new.Command\I |
53bc0 | 6e 73 74 61 6c 6c 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e | nstallCommand();.$commands[].=.n |
53be0 | 65 77 20 43 6f 6d 6d 61 6e 64 5c 43 72 65 61 74 65 50 72 6f 6a 65 63 74 43 6f 6d 6d 61 6e 64 28 | ew.Command\CreateProjectCommand( |
53c00 | 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 55 70 64 | );.$commands[].=.new.Command\Upd |
53c20 | 61 74 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 | ateCommand();.$commands[].=.new. |
53c40 | 43 6f 6d 6d 61 6e 64 5c 53 65 61 72 63 68 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e | Command\SearchCommand();.$comman |
53c60 | 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c 56 61 6c 69 64 61 74 65 43 6f 6d 6d 61 | ds[].=.new.Command\ValidateComma |
53c80 | 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c | nd();.$commands[].=.new.Command\ |
53ca0 | 53 68 6f 77 43 6f 6d 6d 61 6e 64 28 29 3b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 | ShowCommand();.$commands[].=.new |
53cc0 | 20 43 6f 6d 6d 61 6e 64 5c 52 65 71 75 69 72 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 0a 69 66 20 28 | .Command\RequireCommand();..if.( |
53ce0 | 27 70 68 61 72 3a 27 20 3d 3d 3d 20 73 75 62 73 74 72 28 5f 5f 46 49 4c 45 5f 5f 2c 20 30 2c 20 | 'phar:'.===.substr(__FILE__,.0,. |
53d00 | 35 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 6d 61 6e 64 5c | 5)).{.$commands[].=.new.Command\ |
53d20 | 53 65 6c 66 55 70 64 61 74 65 43 6f 6d 6d 61 6e 64 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | SelfUpdateCommand();.}..return.$ |
53d40 | 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | commands;.}.....protected.functi |
53d60 | 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 24 68 65 6c 70 | on.getDefaultHelperSet().{.$help |
53d80 | 65 72 53 65 74 20 3d 20 70 61 72 65 6e 74 3a 3a 67 65 74 44 65 66 61 75 6c 74 48 65 6c 70 65 72 | erSet.=.parent::getDefaultHelper |
53da0 | 53 65 74 28 29 3b 0a 0a 24 68 65 6c 70 65 72 53 65 74 2d 3e 73 65 74 28 6e 65 77 20 44 69 61 6c | Set();..$helperSet->set(new.Dial |
53dc0 | 6f 67 48 65 6c 70 65 72 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 65 72 53 65 74 3b | ogHelper());..return.$helperSet; |
53de0 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | .}.}.<?php............namespace. |
53e00 | 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 | Composer\Autoload;..use.Composer |
53e20 | 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 72 5c | \Config;.use.Composer\Installer\ |
53e40 | 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | InstallationManager;.use.Compose |
53e60 | 72 5c 50 61 63 6b 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 | r\Package\AliasPackage;.use.Comp |
53e80 | 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 3b 0a 75 | oser\Package\PackageInterface;.u |
53ea0 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 | se.Composer\Repository\Repositor |
53ec0 | 79 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 55 74 69 6c 5c 46 69 | yInterface;.use.Composer\Util\Fi |
53ee0 | 6c 65 73 79 73 74 65 6d 3b 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 75 74 6f 6c 6f 61 64 47 65 6e | lesystem;......class.AutoloadGen |
53f00 | 65 72 61 74 6f 72 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 75 6d 70 28 43 6f | erator.{.public.function.dump(Co |
53f20 | 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 | nfig.$config,.RepositoryInterfac |
53f40 | 65 20 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 | e.$localRepo,.PackageInterface.$ |
53f60 | 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 | mainPackage,.InstallationManager |
53f80 | 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 24 74 61 72 67 65 74 44 69 | .$installationManager,.$targetDi |
53fa0 | 72 29 0a 7b 0a 24 66 69 6c 65 73 79 73 74 65 6d 20 3d 20 6e 65 77 20 46 69 6c 65 73 79 73 74 65 | r).{.$filesystem.=.new.Filesyste |
53fc0 | 6d 28 29 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 | m();.$filesystem->ensureDirector |
53fe0 | 79 45 78 69 73 74 73 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 | yExists($config->get('vendor-dir |
54000 | 27 29 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 20 3d 20 73 74 72 74 72 28 72 65 61 6c 70 61 74 | '));.$vendorPath.=.strtr(realpat |
54020 | 68 28 24 63 6f 6e 66 69 67 2d 3e 67 65 74 28 27 76 65 6e 64 6f 72 2d 64 69 72 27 29 29 2c 20 27 | h($config->get('vendor-dir')),.' |
54040 | 5c 5c 27 2c 20 27 2f 27 29 3b 0a 24 74 61 72 67 65 74 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 | \\',.'/');.$targetDir.=.$vendorP |
54060 | 61 74 68 2e 27 2f 27 2e 24 74 61 72 67 65 74 44 69 72 3b 0a 24 66 69 6c 65 73 79 73 74 65 6d 2d | ath.'/'.$targetDir;.$filesystem- |
54080 | 3e 65 6e 73 75 72 65 44 69 72 65 63 74 6f 72 79 45 78 69 73 74 73 28 24 74 61 72 67 65 74 44 69 | >ensureDirectoryExists($targetDi |
540a0 | 72 29 3b 0a 0a 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 20 3d 20 24 66 69 6c 65 73 79 73 74 65 | r);..$relVendorPath.=.$filesyste |
540c0 | 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 67 65 74 63 77 64 28 29 2c 20 24 76 | m->findShortestPath(getcwd(),.$v |
540e0 | 65 6e 64 6f 72 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 | endorPath,.true);.$vendorPathCod |
54100 | 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 | e.=.$filesystem->findShortestPat |
54120 | 68 43 6f 64 65 28 72 65 61 6c 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2c 20 24 76 65 6e | hCode(realpath($targetDir),.$ven |
54140 | 64 6f 72 50 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 | dorPath,.true);.$vendorPathToTar |
54160 | 67 65 74 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 | getDirCode.=.$filesystem->findSh |
54180 | 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 72 65 61 6c | ortestPathCode($vendorPath,.real |
541a0 | 70 61 74 68 28 24 74 61 72 67 65 74 44 69 72 29 2c 20 74 72 75 65 29 3b 0a 0a 24 61 70 70 42 61 | path($targetDir),.true);..$appBa |
541c0 | 73 65 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f | seDirCode.=.$filesystem->findSho |
541e0 | 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 67 65 74 63 77 | rtestPathCode($vendorPath,.getcw |
54200 | 64 28 29 2c 20 74 72 75 65 29 3b 0a 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 20 3d 20 73 74 | d(),.true);.$appBaseDirCode.=.st |
54220 | 72 5f 72 65 70 6c 61 63 65 28 27 5f 5f 44 49 52 5f 5f 27 2c 20 27 24 76 65 6e 64 6f 72 44 69 72 | r_replace('__DIR__',.'$vendorDir |
54240 | 27 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 65 | ',.$appBaseDirCode);..$namespace |
54260 | 73 46 69 6c 65 20 3d 20 3c 3c 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 | sFile.=.<<<EOF.<?php..//.autoloa |
54280 | 64 5f 6e 61 6d 65 73 70 61 63 65 2e 70 68 70 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d | d_namespace.php.generated.by.Com |
542a0 | 70 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 | poser..\$vendorDir.=.$vendorPath |
542c0 | 43 6f 64 65 3b 0a 5c 24 62 61 73 65 44 69 72 20 3d 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 | Code;.\$baseDir.=.$appBaseDirCod |
542e0 | 65 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 24 70 61 63 6b 61 67 | e;..return.array(..EOF;..$packag |
54300 | 65 4d 61 70 20 3d 20 24 74 68 69 73 2d 3e 62 75 69 6c 64 50 61 63 6b 61 67 65 4d 61 70 28 24 69 | eMap.=.$this->buildPackageMap($i |
54320 | 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 24 6d 61 69 6e 50 61 63 6b 61 67 65 | nstallationManager,.$mainPackage |
54340 | 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 29 3b 0a 24 61 | ,.$localRepo->getPackages());.$a |
54360 | 75 74 6f 6c 6f 61 64 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 | utoloads.=.$this->parseAutoloads |
54380 | 28 24 70 61 63 6b 61 67 65 4d 61 70 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f | ($packageMap);..foreach.($autolo |
543a0 | 61 64 73 5b 27 70 73 72 2d 30 27 5d 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 | ads['psr-0'].as.$namespace.=>.$p |
543c0 | 61 74 68 73 29 20 7b 0a 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 | aths).{.$exportedPaths.=.array() |
543e0 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 74 68 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 65 | ;.foreach.($paths.as.$path).{.$e |
54400 | 78 70 6f 72 74 65 64 50 61 74 68 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 43 | xportedPaths[].=.$this->getPathC |
54420 | 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 2c | ode($filesystem,.$relVendorPath, |
54440 | 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 24 65 78 70 6f 72 74 65 | .$vendorPath,.$path);.}.$exporte |
54460 | 64 50 72 65 66 69 78 20 3d 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 2c | dPrefix.=.var_export($namespace, |
54480 | 20 74 72 75 65 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 22 20 20 20 20 | .true);.$namespacesFile..=.".... |
544a0 | 24 65 78 70 6f 72 74 65 64 50 72 65 66 69 78 20 3d 3e 20 22 3b 0a 69 66 20 28 63 6f 75 6e 74 28 | $exportedPrefix.=>.";.if.(count( |
544c0 | 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 29 20 3e 20 31 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 | $exportedPaths).>.1).{.$namespac |
544e0 | 65 73 46 69 6c 65 20 2e 3d 20 22 61 72 72 61 79 28 22 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c | esFile..=."array(".implode(',.', |
54500 | 20 24 65 78 70 6f 72 74 65 64 50 61 74 68 73 29 2e 22 29 2c 5c 6e 22 3b 0a 7d 20 65 6c 73 65 20 | .$exportedPaths)."),\n";.}.else. |
54520 | 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 20 2e 3d 20 24 65 78 70 6f 72 74 65 64 50 61 | {.$namespacesFile..=.$exportedPa |
54540 | 74 68 73 5b 30 5d 2e 22 2c 5c 6e 22 3b 0a 7d 0a 7d 0a 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c | ths[0].",\n";.}.}.$namespacesFil |
54560 | 65 20 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 24 63 6c 61 73 73 6d 61 70 46 69 6c 65 20 3d 20 3c 3c | e..=.");\n";..$classmapFile.=.<< |
54580 | 3c 45 4f 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 | <EOF.<?php..//.autoload_classmap |
545a0 | 2e 70 68 70 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 | .php.generated.by.Composer..\$ve |
545c0 | 6e 64 6f 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 3b 0a 5c 24 62 61 73 | ndorDir.=.$vendorPathCode;.\$bas |
545e0 | 65 44 69 72 20 3d 20 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 | eDir.=.$appBaseDirCode;..return. |
54600 | 61 72 72 61 79 28 0a 0a 45 4f 46 3b 0a 0a 0a 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 | array(..EOF;....$targetDirLoader |
54620 | 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 69 6e 41 75 74 6f 6c 6f 61 64 20 3d 20 24 6d 61 69 6e 50 61 | .=.null;.$mainAutoload.=.$mainPa |
54640 | 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 3b 0a 69 66 20 28 24 6d 61 69 6e 50 | ckage->getAutoload();.if.($mainP |
54660 | 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 20 26 26 20 24 6d 61 69 6e 41 | ackage->getTargetDir().&&.$mainA |
54680 | 75 74 6f 6c 6f 61 64 5b 27 70 73 72 2d 30 27 5d 29 20 7b 0a 24 6c 65 76 65 6c 73 20 3d 20 63 6f | utoload['psr-0']).{.$levels.=.co |
546a0 | 75 6e 74 28 65 78 70 6c 6f 64 65 28 27 2f 27 2c 20 74 72 69 6d 28 73 74 72 74 72 28 24 6d 61 69 | unt(explode('/',.trim(strtr($mai |
546c0 | 6e 50 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 2c 20 27 5c 5c 27 2c 20 | nPackage->getTargetDir(),.'\\',. |
546e0 | 27 2f 27 29 2c 20 27 2f 27 29 29 29 3b 0a 24 70 72 65 66 69 78 65 73 20 3d 20 69 6d 70 6c 6f 64 | '/'),.'/')));.$prefixes.=.implod |
54700 | 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 70 72 65 | e(',.',.array_map(function.($pre |
54720 | 66 69 78 29 20 7b 0a 72 65 74 75 72 6e 20 76 61 72 5f 65 78 70 6f 72 74 28 24 70 72 65 66 69 78 | fix).{.return.var_export($prefix |
54740 | 2c 20 74 72 75 65 29 3b 0a 7d 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 24 6d 61 69 6e 41 75 74 6f | ,.true);.},.array_keys($mainAuto |
54760 | 6c 6f 61 64 5b 27 70 73 72 2d 30 27 5d 29 29 29 3b 0a 24 62 61 73 65 44 69 72 46 72 6f 6d 56 65 | load['psr-0'])));.$baseDirFromVe |
54780 | 6e 64 6f 72 44 69 72 43 6f 64 65 20 3d 20 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 | ndorDirCode.=.$filesystem->findS |
547a0 | 68 6f 72 74 65 73 74 50 61 74 68 43 6f 64 65 28 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 67 65 74 | hortestPathCode($vendorPath,.get |
547c0 | 63 77 64 28 29 2c 20 74 72 75 65 29 3b 0a 0a 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 20 | cwd(),.true);..$targetDirLoader. |
547e0 | 3d 20 3c 3c 3c 45 4f 46 0a 20 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 | =.<<<EOF.....spl_autoload_regist |
54800 | 65 72 28 66 75 6e 63 74 69 6f 6e 28 5c 24 63 6c 61 73 73 29 20 7b 0a 20 20 20 20 20 20 20 20 5c | er(function(\$class).{.........\ |
54820 | 24 64 69 72 20 3d 20 24 62 61 73 65 44 69 72 46 72 6f 6d 56 65 6e 64 6f 72 44 69 72 43 6f 64 65 | $dir.=.$baseDirFromVendorDirCode |
54840 | 20 2e 20 27 2f 27 3b 0a 20 20 20 20 20 20 20 20 5c 24 70 72 65 66 69 78 65 73 20 3d 20 61 72 72 | ...'/';.........\$prefixes.=.arr |
54860 | 61 79 28 24 70 72 65 66 69 78 65 73 29 3b 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 | ay($prefixes);.........foreach.( |
54880 | 5c 24 70 72 65 66 69 78 65 73 20 61 73 20 5c 24 70 72 65 66 69 78 29 20 7b 0a 20 20 20 20 20 20 | \$prefixes.as.\$prefix).{....... |
548a0 | 20 20 20 20 20 20 69 66 20 28 30 20 21 3d 3d 20 73 74 72 70 6f 73 28 5c 24 63 6c 61 73 73 2c 20 | ......if.(0.!==.strpos(\$class,. |
548c0 | 5c 24 70 72 65 66 69 78 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e | \$prefix)).{.................con |
548e0 | 74 69 6e 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 | tinue;.............}............ |
54900 | 20 5c 24 70 61 74 68 20 3d 20 5c 24 64 69 72 20 2e 20 69 6d 70 6c 6f 64 65 28 27 2f 27 2c 20 61 | .\$path.=.\$dir...implode('/',.a |
54920 | 72 72 61 79 5f 73 6c 69 63 65 28 65 78 70 6c 6f 64 65 28 27 5c 5c 5c 5c 27 2c 20 5c 24 63 6c 61 | rray_slice(explode('\\\\',.\$cla |
54940 | 73 73 29 2c 20 24 6c 65 76 65 6c 73 29 29 2e 27 2e 70 68 70 27 3b 0a 20 20 20 20 20 20 20 20 20 | ss),.$levels)).'.php';.......... |
54960 | 20 20 20 69 66 20 28 21 5c 24 70 61 74 68 20 3d 20 73 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f | ...if.(!\$path.=.stream_resolve_ |
54980 | 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 5c 24 70 61 74 68 29 29 20 7b 0a 20 20 20 20 20 20 20 20 | include_path(\$path)).{......... |
549a0 | 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 | ........return.false;........... |
549c0 | 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 71 75 69 72 65 20 5c 24 70 61 74 68 3b 0a | ..}.............require.\$path;. |
549e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 | .............return.true;....... |
54a00 | 20 20 7d 0a 20 20 20 20 7d 29 3b 0a 0a 0a 45 4f 46 3b 0a 7d 0a 0a 0a 20 24 61 75 74 6f 6c 6f 61 | ..}.....});...EOF;.}....$autoloa |
54a20 | 64 73 5b 27 63 6c 61 73 73 6d 61 70 27 5d 20 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 49 | ds['classmap'].=.new.\RecursiveI |
54a40 | 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 41 72 | teratorIterator(new.\RecursiveAr |
54a60 | 72 61 79 49 74 65 72 61 74 6f 72 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 63 6c 61 73 73 6d 61 70 | rayIterator($autoloads['classmap |
54a80 | 27 5d 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 63 6c 61 73 73 | ']));.foreach.($autoloads['class |
54aa0 | 6d 61 70 27 5d 20 61 73 20 24 64 69 72 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 43 6c 61 73 73 4d | map'].as.$dir).{.foreach.(ClassM |
54ac0 | 61 70 47 65 6e 65 72 61 74 6f 72 3a 3a 63 72 65 61 74 65 4d 61 70 28 24 64 69 72 29 20 61 73 20 | apGenerator::createMap($dir).as. |
54ae0 | 24 63 6c 61 73 73 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 70 61 74 68 20 3d 20 27 2f 27 2e 24 | $class.=>.$path).{.$path.=.'/'.$ |
54b00 | 66 69 6c 65 73 79 73 74 65 6d 2d 3e 66 69 6e 64 53 68 6f 72 74 65 73 74 50 61 74 68 28 67 65 74 | filesystem->findShortestPath(get |
54b20 | 63 77 64 28 29 2c 20 24 70 61 74 68 2c 20 74 72 75 65 29 3b 0a 24 63 6c 61 73 73 6d 61 70 46 69 | cwd(),.$path,.true);.$classmapFi |
54b40 | 6c 65 20 2e 3d 20 27 20 20 20 20 27 2e 76 61 72 5f 65 78 70 6f 72 74 28 24 63 6c 61 73 73 2c 20 | le..=.'....'.var_export($class,. |
54b60 | 74 72 75 65 29 2e 27 20 3d 3e 20 24 62 61 73 65 44 69 72 20 2e 20 27 2e 76 61 72 5f 65 78 70 6f | true).'.=>.$baseDir...'.var_expo |
54b80 | 72 74 28 24 70 61 74 68 2c 20 74 72 75 65 29 2e 22 2c 5c 6e 22 3b 0a 7d 0a 7d 0a 24 63 6c 61 73 | rt($path,.true).",\n";.}.}.$clas |
54ba0 | 73 6d 61 70 46 69 6c 65 20 2e 3d 20 22 29 3b 5c 6e 22 3b 0a 0a 24 66 69 6c 65 73 43 6f 64 65 20 | smapFile..=.");\n";..$filesCode. |
54bc0 | 3d 20 22 22 3b 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 27 66 69 6c 65 73 27 5d 20 3d 20 6e 65 77 20 | =."";.$autoloads['files'].=.new. |
54be0 | 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 6e 65 77 20 5c | \RecursiveIteratorIterator(new.\ |
54c00 | 52 65 63 75 72 73 69 76 65 41 72 72 61 79 49 74 65 72 61 74 6f 72 28 24 61 75 74 6f 6c 6f 61 64 | RecursiveArrayIterator($autoload |
54c20 | 73 5b 27 66 69 6c 65 73 27 5d 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 | s['files']));.foreach.($autoload |
54c40 | 73 5b 27 66 69 6c 65 73 27 5d 20 61 73 20 24 66 75 6e 63 74 69 6f 6e 46 69 6c 65 29 20 7b 0a 24 | s['files'].as.$functionFile).{.$ |
54c60 | 66 69 6c 65 73 43 6f 64 65 20 2e 3d 20 27 20 20 20 20 72 65 71 75 69 72 65 20 27 2e 24 74 68 69 | filesCode..=.'....require.'.$thi |
54c80 | 73 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 72 65 6c | s->getPathCode($filesystem,.$rel |
54ca0 | 56 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 66 75 6e 63 74 69 | VendorPath,.$vendorPath,.$functi |
54cc0 | 6f 6e 46 69 6c 65 29 2e 22 3b 5c 6e 22 3b 0a 7d 0a 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 | onFile).";\n";.}..file_put_conte |
54ce0 | 6e 74 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 | nts($targetDir.'/autoload_namesp |
54d00 | 61 63 65 73 2e 70 68 70 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 73 46 69 6c 65 29 3b 0a 66 69 6c | aces.php',.$namespacesFile);.fil |
54d20 | 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 61 75 74 6f | e_put_contents($targetDir.'/auto |
54d40 | 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 68 70 27 2c 20 24 63 6c 61 73 73 6d 61 70 46 69 6c | load_classmap.php',.$classmapFil |
54d60 | 65 29 3b 0a 69 66 20 28 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 20 3d 20 24 74 68 69 73 | e);.if.($includePathFile.=.$this |
54d80 | 2d 3e 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 28 24 70 61 63 6b 61 67 65 4d 61 | ->getIncludePathsFile($packageMa |
54da0 | 70 2c 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 2c 20 | p,.$filesystem,.$relVendorPath,. |
54dc0 | 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 2c 20 24 61 | $vendorPath,.$vendorPathCode,.$a |
54de0 | 70 70 42 61 73 65 44 69 72 43 6f 64 65 29 29 20 7b 0a 66 69 6c 65 5f 70 75 74 5f 63 6f 6e 74 65 | ppBaseDirCode)).{.file_put_conte |
54e00 | 6e 74 73 28 24 74 61 72 67 65 74 44 69 72 2e 27 2f 69 6e 63 6c 75 64 65 5f 70 61 74 68 73 2e 70 | nts($targetDir.'/include_paths.p |
54e20 | 68 70 27 2c 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 29 3b 0a 7d 0a 66 69 6c 65 5f 70 | hp',.$includePathFile);.}.file_p |
54e40 | 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 76 65 6e 64 6f 72 50 61 74 68 2e 27 2f 61 75 74 6f 6c 6f | ut_contents($vendorPath.'/autolo |
54e60 | 61 64 2e 70 68 70 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 46 69 6c 65 28 | ad.php',.$this->getAutoloadFile( |
54e80 | 24 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 2c 20 74 72 75 65 | $vendorPathToTargetDirCode,.true |
54ea0 | 2c 20 74 72 75 65 2c 20 28 62 6f 6f 6c 29 20 24 69 6e 63 6c 75 64 65 50 61 74 68 46 69 6c 65 2c | ,.true,.(bool).$includePathFile, |
54ec0 | 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 2c 20 24 66 69 6c 65 73 43 6f 64 65 29 29 3b | .$targetDirLoader,.$filesCode)); |
54ee0 | 0a 63 6f 70 79 28 5f 5f 44 49 52 5f 5f 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 | .copy(__DIR__.'/ClassLoader.php' |
54f00 | 2c 20 24 74 61 72 67 65 74 44 69 72 2e 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 29 | ,.$targetDir.'/ClassLoader.php') |
54f20 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 50 61 63 6b 61 67 | ;.}..public.function.buildPackag |
54f40 | 65 4d 61 70 28 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e 73 74 61 6c | eMap(InstallationManager.$instal |
54f60 | 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 | lationManager,.PackageInterface. |
54f80 | 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c 20 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b | $mainPackage,.array.$packages).{ |
54fa0 | 0a 0a 20 24 70 61 63 6b 61 67 65 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 20 24 70 61 | ...$packageMap.=.array();....$pa |
54fc0 | 63 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 24 6d 61 69 6e 50 61 63 6b 61 67 65 2c | ckageMap[].=.array($mainPackage, |
54fe0 | 20 27 27 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 | .'');..foreach.($packages.as.$pa |
55000 | 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 69 6e 73 74 61 6e 63 65 6f 66 | ckage).{.if.($package.instanceof |
55020 | 20 41 6c 69 61 73 50 61 63 6b 61 67 65 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 70 61 | .AliasPackage).{.continue;.}.$pa |
55040 | 63 6b 61 67 65 4d 61 70 5b 5d 20 3d 20 61 72 72 61 79 28 0a 24 70 61 63 6b 61 67 65 2c 0a 24 69 | ckageMap[].=.array(.$package,.$i |
55060 | 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 50 61 | nstallationManager->getInstallPa |
55080 | 74 68 28 24 70 61 63 6b 61 67 65 29 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 70 61 63 6b 61 | th($package).);.}..return.$packa |
550a0 | 67 65 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | geMap;.}........public.function. |
550c0 | 70 61 72 73 65 41 75 74 6f 6c 6f 61 64 73 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 4d 61 70 | parseAutoloads(array.$packageMap |
550e0 | 29 0a 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 20 3d 20 61 72 72 61 79 28 27 63 6c 61 73 73 6d 61 70 | ).{.$autoloads.=.array('classmap |
55100 | 27 20 3d 3e 20 61 72 72 61 79 28 29 2c 20 27 70 73 72 2d 30 27 20 3d 3e 20 61 72 72 61 79 28 29 | '.=>.array(),.'psr-0'.=>.array() |
55120 | 2c 20 27 66 69 6c 65 73 27 20 3d 3e 20 61 72 72 61 79 28 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 | ,.'files'.=>.array());.foreach.( |
55140 | 24 70 61 63 6b 61 67 65 4d 61 70 20 61 73 20 24 69 74 65 6d 29 20 7b 0a 6c 69 73 74 28 24 70 61 | $packageMap.as.$item).{.list($pa |
55160 | 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3d 20 24 69 74 65 6d 3b 0a 0a 69 | ckage,.$installPath).=.$item;..i |
55180 | 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 | f.(null.!==.$package->getTargetD |
551a0 | 69 72 28 29 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 50 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 69 | ir()).{.$installPath.=.substr($i |
551c0 | 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 2c 20 2d 73 74 72 6c 65 6e 28 27 2f 27 2e 24 70 61 63 6b | nstallPath,.0,.-strlen('/'.$pack |
551e0 | 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 | age->getTargetDir()));.}..foreac |
55200 | 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 75 74 6f 6c 6f 61 64 28 29 20 61 73 20 24 74 | h.($package->getAutoload().as.$t |
55220 | 79 70 65 20 3d 3e 20 24 6d 61 70 70 69 6e 67 29 20 7b 0a 0a 20 69 66 20 28 21 69 73 5f 61 72 72 | ype.=>.$mapping).{...if.(!is_arr |
55240 | 61 79 28 24 6d 61 70 70 69 6e 67 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 66 6f 72 | ay($mapping)).{.continue;.}..for |
55260 | 65 61 63 68 20 28 24 6d 61 70 70 69 6e 67 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 | each.($mapping.as.$namespace.=>. |
55280 | 24 70 61 74 68 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 68 | $paths).{.foreach.((array).$path |
552a0 | 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 24 61 75 74 6f 6c 6f 61 64 73 5b 24 74 79 70 65 5d 5b | s.as.$path).{.$autoloads[$type][ |
552c0 | 24 6e 61 6d 65 73 70 61 63 65 5d 5b 5d 20 3d 20 65 6d 70 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 | $namespace][].=.empty($installPa |
552e0 | 74 68 29 20 3f 20 24 70 61 74 68 20 3a 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 | th).?.$path.:.$installPath.'/'.$ |
55300 | 70 61 74 68 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 | path;.}.}.}.}..foreach.($autoloa |
55320 | 64 73 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 6d 61 70 73 29 20 7b 0a 6b 72 73 6f 72 74 28 24 | ds.as.$type.=>.$maps).{.krsort($ |
55340 | 61 75 74 6f 6c 6f 61 64 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 75 | autoloads[$type]);.}..return.$au |
55360 | 74 6f 6c 6f 61 64 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | toloads;.}........public.functio |
55380 | 6e 20 63 72 65 61 74 65 4c 6f 61 64 65 72 28 61 72 72 61 79 20 24 61 75 74 6f 6c 6f 61 64 73 29 | n.createLoader(array.$autoloads) |
553a0 | 0a 7b 0a 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 43 6c 61 73 73 4c 6f 61 64 65 72 28 29 3b 0a | .{.$loader.=.new.ClassLoader();. |
553c0 | 0a 69 66 20 28 69 73 73 65 74 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 30 27 5d 29 29 | .if.(isset($autoloads['psr-0'])) |
553e0 | 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 75 74 6f 6c 6f 61 64 73 5b 27 70 73 72 2d 30 27 5d 20 | .{.foreach.($autoloads['psr-0']. |
55400 | 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 6c 6f 61 64 65 | as.$namespace.=>.$path).{.$loade |
55420 | 72 2d 3e 61 64 64 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 7d 0a 0a | r->add($namespace,.$path);.}.}.. |
55440 | 72 65 74 75 72 6e 20 24 6c 6f 61 64 65 72 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e | return.$loader;.}..protected.fun |
55460 | 63 74 69 6f 6e 20 67 65 74 49 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 28 61 72 72 61 79 20 | ction.getIncludePathsFile(array. |
55480 | 24 70 61 63 6b 61 67 65 4d 61 70 2c 20 46 69 6c 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 | $packageMap,.Filesystem.$filesys |
554a0 | 74 65 6d 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 | tem,.$relVendorPath,.$vendorPath |
554c0 | 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 2c 20 24 61 70 70 42 61 73 65 44 69 72 43 6f | ,.$vendorPathCode,.$appBaseDirCo |
554e0 | 64 65 29 0a 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a | de).{.$includePaths.=.array();.. |
55500 | 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 4d 61 70 20 61 73 20 24 69 74 65 6d 29 20 7b | foreach.($packageMap.as.$item).{ |
55520 | 0a 6c 69 73 74 28 24 70 61 63 6b 61 67 65 2c 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3d 20 | .list($package,.$installPath).=. |
55540 | 24 69 74 65 6d 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 | $item;..if.(null.!==.$package->g |
55560 | 65 74 54 61 72 67 65 74 44 69 72 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 70 61 63 6b 61 67 65 | etTargetDir().&&.strlen($package |
55580 | 2d 3e 67 65 74 54 61 72 67 65 74 44 69 72 28 29 29 20 3e 20 30 29 20 7b 0a 24 69 6e 73 74 61 6c | ->getTargetDir()).>.0).{.$instal |
555a0 | 6c 50 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 2c 20 30 2c 20 | lPath.=.substr($installPath,.0,. |
555c0 | 2d 73 74 72 6c 65 6e 28 27 2f 27 2e 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 54 61 72 67 65 74 44 | -strlen('/'.$package->getTargetD |
555e0 | 69 72 28 29 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 | ir()));.}..foreach.($package->ge |
55600 | 74 49 6e 63 6c 75 64 65 50 61 74 68 73 28 29 20 61 73 20 24 69 6e 63 6c 75 64 65 50 61 74 68 29 | tIncludePaths().as.$includePath) |
55620 | 20 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 74 72 69 6d 28 24 69 6e 63 6c 75 64 65 50 | .{.$includePath.=.trim($includeP |
55640 | 61 74 68 2c 20 27 2f 27 29 3b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 5b 5d 20 3d 20 65 6d 70 | ath,.'/');.$includePaths[].=.emp |
55660 | 74 79 28 24 69 6e 73 74 61 6c 6c 50 61 74 68 29 20 3f 20 24 69 6e 63 6c 75 64 65 50 61 74 68 20 | ty($installPath).?.$includePath. |
55680 | 3a 20 24 69 6e 73 74 61 6c 6c 50 61 74 68 2e 27 2f 27 2e 24 69 6e 63 6c 75 64 65 50 61 74 68 3b | :.$installPath.'/'.$includePath; |
556a0 | 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 69 6e 63 6c 75 64 65 50 61 74 68 73 29 20 7b 0a 72 65 74 75 | .}.}..if.(!$includePaths).{.retu |
556c0 | 72 6e 3b 0a 7d 0a 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 20 3d 20 3c 3c 3c 45 4f | rn;.}..$includePathsFile.=.<<<EO |
556e0 | 46 0a 3c 3f 70 68 70 0a 0a 2f 2f 20 69 6e 63 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 20 67 65 | F.<?php..//.include_paths.php.ge |
55700 | 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 6f 73 65 72 0a 0a 5c 24 76 65 6e 64 6f 72 44 69 72 | nerated.by.Composer..\$vendorDir |
55720 | 20 3d 20 24 76 65 6e 64 6f 72 50 61 74 68 43 6f 64 65 3b 0a 5c 24 62 61 73 65 44 69 72 20 3d 20 | .=.$vendorPathCode;.\$baseDir.=. |
55740 | 24 61 70 70 42 61 73 65 44 69 72 43 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a | $appBaseDirCode;..return.array(. |
55760 | 0a 45 4f 46 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 69 6e 63 6c 75 64 65 50 61 74 68 73 20 61 73 | .EOF;..foreach.($includePaths.as |
55780 | 20 24 70 61 74 68 29 20 7b 0a 24 69 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 20 2e 3d 20 22 | .$path).{.$includePathsFile..=." |
557a0 | 20 20 20 20 22 20 2e 20 24 74 68 69 73 2d 3e 67 65 74 50 61 74 68 43 6f 64 65 28 24 66 69 6c 65 | ...."...$this->getPathCode($file |
557c0 | 73 79 73 74 65 6d 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 | system,.$relVendorPath,.$vendorP |
557e0 | 61 74 68 2c 20 24 70 61 74 68 29 20 2e 20 22 2c 5c 6e 22 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | ath,.$path)...",\n";.}..return.$ |
55800 | 69 6e 63 6c 75 64 65 50 61 74 68 73 46 69 6c 65 20 2e 20 22 29 3b 5c 6e 22 3b 0a 7d 0a 0a 70 72 | includePathsFile...");\n";.}..pr |
55820 | 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 74 68 43 6f 64 65 28 46 69 6c | otected.function.getPathCode(Fil |
55840 | 65 73 79 73 74 65 6d 20 24 66 69 6c 65 73 79 73 74 65 6d 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 | esystem.$filesystem,.$relVendorP |
55860 | 61 74 68 2c 20 24 76 65 6e 64 6f 72 50 61 74 68 2c 20 24 70 61 74 68 29 0a 7b 0a 24 70 61 74 68 | ath,.$vendorPath,.$path).{.$path |
55880 | 20 3d 20 73 74 72 74 72 28 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 24 62 61 73 | .=.strtr($path,.'\\',.'/');.$bas |
558a0 | 65 44 69 72 20 3d 20 27 27 3b 0a 69 66 20 28 21 24 66 69 6c 65 73 79 73 74 65 6d 2d 3e 69 73 41 | eDir.=.'';.if.(!$filesystem->isA |
558c0 | 62 73 6f 6c 75 74 65 50 61 74 68 28 24 70 61 74 68 29 29 20 7b 0a 69 66 20 28 73 74 72 70 6f 73 | bsolutePath($path)).{.if.(strpos |
558e0 | 28 24 70 61 74 68 2c 20 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 29 20 3d 3d 3d 20 30 29 20 7b | ($path,.$relVendorPath).===.0).{ |
55900 | 0a 0a 20 24 70 61 74 68 20 3d 20 73 75 62 73 74 72 28 24 70 61 74 68 2c 20 73 74 72 6c 65 6e 28 | ...$path.=.substr($path,.strlen( |
55920 | 24 72 65 6c 56 65 6e 64 6f 72 50 61 74 68 29 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 27 24 76 | $relVendorPath));.$baseDir.=.'$v |
55940 | 65 6e 64 6f 72 44 69 72 20 2e 20 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 27 | endorDir...';.}.else.{.$path.=.' |
55960 | 2f 27 2e 24 70 61 74 68 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 27 24 62 61 73 65 44 69 72 20 2e | /'.$path;.$baseDir.=.'$baseDir.. |
55980 | 20 27 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 73 74 72 70 6f 73 28 24 70 61 74 68 2c 20 24 76 | .';.}.}.elseif.(strpos($path,.$v |
559a0 | 65 6e 64 6f 72 50 61 74 68 29 20 3d 3d 3d 20 30 29 20 7b 0a 24 70 61 74 68 20 3d 20 73 75 62 73 | endorPath).===.0).{.$path.=.subs |
559c0 | 74 72 28 24 70 61 74 68 2c 20 73 74 72 6c 65 6e 28 24 76 65 6e 64 6f 72 50 61 74 68 29 29 3b 0a | tr($path,.strlen($vendorPath));. |
559e0 | 24 62 61 73 65 44 69 72 20 3d 20 27 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 3b 0a 7d 0a 0a 72 | $baseDir.=.'$vendorDir...';.}..r |
55a00 | 65 74 75 72 6e 20 24 62 61 73 65 44 69 72 2e 76 61 72 5f 65 78 70 6f 72 74 28 24 70 61 74 68 2c | eturn.$baseDir.var_export($path, |
55a20 | 20 74 72 75 65 29 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 | .true);.}..protected.function.ge |
55a40 | 74 41 75 74 6f 6c 6f 61 64 46 69 6c 65 28 24 76 65 6e 64 6f 72 50 61 74 68 54 6f 54 61 72 67 65 | tAutoloadFile($vendorPathToTarge |
55a60 | 74 44 69 72 43 6f 64 65 2c 20 24 75 73 65 50 53 52 30 2c 20 24 75 73 65 43 6c 61 73 73 4d 61 70 | tDirCode,.$usePSR0,.$useClassMap |
55a80 | 2c 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 2c 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 | ,.$useIncludePath,.$targetDirLoa |
55aa0 | 64 65 72 2c 20 24 66 69 6c 65 73 43 6f 64 65 29 0a 7b 0a 69 66 20 28 24 66 69 6c 65 73 43 6f 64 | der,.$filesCode).{.if.($filesCod |
55ac0 | 65 29 20 7b 0a 24 66 69 6c 65 73 43 6f 64 65 20 3d 20 22 5c 6e 22 2e 24 66 69 6c 65 73 43 6f 64 | e).{.$filesCode.=."\n".$filesCod |
55ae0 | 65 3b 0a 7d 0a 0a 24 66 69 6c 65 20 3d 20 3c 3c 3c 48 45 41 44 45 52 0a 3c 3f 70 68 70 0a 0a 2f | e;.}..$file.=.<<<HEADER.<?php../ |
55b00 | 2f 20 61 75 74 6f 6c 6f 61 64 2e 70 68 70 20 67 65 6e 65 72 61 74 65 64 20 62 79 20 43 6f 6d 70 | /.autoload.php.generated.by.Comp |
55b20 | 6f 73 65 72 0a 69 66 20 28 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 43 6f 6d 70 6f 73 65 72 | oser.if.(!class_exists('Composer |
55b40 | 5c 5c 5c 5c 41 75 74 6f 6c 6f 61 64 5c 5c 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 27 2c 20 66 61 | \\\\Autoload\\\\ClassLoader',.fa |
55b60 | 6c 73 65 29 29 20 7b 0a 20 20 20 20 72 65 71 75 69 72 65 20 24 76 65 6e 64 6f 72 50 61 74 68 54 | lse)).{.....require.$vendorPathT |
55b80 | 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 20 2e 20 27 2f 43 6c 61 73 73 4c 6f 61 64 65 72 2e 70 | oTargetDirCode...'/ClassLoader.p |
55ba0 | 68 70 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 66 75 | hp';.}..return.call_user_func(fu |
55bc0 | 6e 63 74 69 6f 6e 28 29 20 7b 0a 20 20 20 20 5c 24 6c 6f 61 64 65 72 20 3d 20 6e 65 77 20 5c 5c | nction().{.....\$loader.=.new.\\ |
55be0 | 43 6f 6d 70 6f 73 65 72 5c 5c 41 75 74 6f 6c 6f 61 64 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 28 | Composer\\Autoload\\ClassLoader( |
55c00 | 29 3b 0a 20 20 20 20 5c 24 63 6f 6d 70 6f 73 65 72 44 69 72 20 3d 20 24 76 65 6e 64 6f 72 50 61 | );.....\$composerDir.=.$vendorPa |
55c20 | 74 68 54 6f 54 61 72 67 65 74 44 69 72 43 6f 64 65 3b 0a 0a 0a 48 45 41 44 45 52 3b 0a 0a 69 66 | thToTargetDirCode;...HEADER;..if |
55c40 | 20 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c | .($useIncludePath).{.$file..=.<< |
55c60 | 3c 27 49 4e 43 4c 55 44 45 5f 50 41 54 48 27 0a 20 20 20 20 24 69 6e 63 6c 75 64 65 50 61 74 68 | <'INCLUDE_PATH'.....$includePath |
55c80 | 73 20 3d 20 72 65 71 75 69 72 65 20 24 63 6f 6d 70 6f 73 65 72 44 69 72 20 2e 20 27 2f 69 6e 63 | s.=.require.$composerDir...'/inc |
55ca0 | 6c 75 64 65 5f 70 61 74 68 73 2e 70 68 70 27 3b 0a 20 20 20 20 61 72 72 61 79 5f 70 75 73 68 28 | lude_paths.php';.....array_push( |
55cc0 | 24 69 6e 63 6c 75 64 65 50 61 74 68 73 2c 20 67 65 74 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 | $includePaths,.get_include_path( |
55ce0 | 29 29 3b 0a 20 20 20 20 73 65 74 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 6a 6f 69 6e 28 50 41 | ));.....set_include_path(join(PA |
55d00 | 54 48 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 69 6e 63 6c 75 64 65 50 61 74 68 73 29 29 3b 0a 0a | TH_SEPARATOR,.$includePaths));.. |
55d20 | 0a 49 4e 43 4c 55 44 45 5f 50 41 54 48 3b 0a 7d 0a 0a 69 66 20 28 24 75 73 65 50 53 52 30 29 20 | .INCLUDE_PATH;.}..if.($usePSR0). |
55d40 | 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 50 53 52 30 27 0a 20 20 20 20 24 6d 61 70 20 3d 20 | {.$file..=.<<<'PSR0'.....$map.=. |
55d60 | 72 65 71 75 69 72 65 20 24 63 6f 6d 70 6f 73 65 72 44 69 72 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 | require.$composerDir...'/autoloa |
55d80 | 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e 70 68 70 27 3b 0a 20 20 20 20 66 6f 72 65 61 63 68 20 28 | d_namespaces.php';.....foreach.( |
55da0 | 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 20 | $map.as.$namespace.=>.$path).{.. |
55dc0 | 20 20 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 61 64 64 28 24 6e 61 6d 65 73 70 61 63 65 2c 20 | .......$loader->add($namespace,. |
55de0 | 24 70 61 74 68 29 3b 0a 20 20 20 20 7d 0a 0a 0a 50 53 52 30 3b 0a 7d 0a 0a 69 66 20 28 24 75 73 | $path);.....}...PSR0;.}..if.($us |
55e00 | 65 43 6c 61 73 73 4d 61 70 29 20 7b 0a 24 66 69 6c 65 20 2e 3d 20 3c 3c 3c 27 43 4c 41 53 53 4d | eClassMap).{.$file..=.<<<'CLASSM |
55e20 | 41 50 27 0a 20 20 20 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 72 65 71 75 69 72 65 20 24 63 6f 6d | AP'.....$classMap.=.require.$com |
55e40 | 70 6f 73 65 72 44 69 72 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 63 6c 61 73 73 6d 61 70 2e 70 | poserDir...'/autoload_classmap.p |
55e60 | 68 70 27 3b 0a 20 20 20 20 69 66 20 28 24 63 6c 61 73 73 4d 61 70 29 20 7b 0a 20 20 20 20 20 20 | hp';.....if.($classMap).{....... |
55e80 | 20 20 24 6c 6f 61 64 65 72 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 28 24 63 6c 61 73 73 4d 61 70 | ..$loader->addClassMap($classMap |
55ea0 | 29 3b 0a 20 20 20 20 7d 0a 0a 0a 43 4c 41 53 53 4d 41 50 3b 0a 7d 0a 0a 24 66 69 6c 65 20 2e 3d | );.....}...CLASSMAP;.}..$file..= |
55ec0 | 20 24 74 61 72 67 65 74 44 69 72 4c 6f 61 64 65 72 3b 0a 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 | .$targetDirLoader;..return.$file |
55ee0 | 20 2e 20 3c 3c 3c 46 4f 4f 54 45 52 0a 20 20 20 20 5c 24 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 | ...<<<FOOTER.....\$loader->regis |
55f00 | 74 65 72 28 29 3b 0a 24 66 69 6c 65 73 43 6f 64 65 0a 20 20 20 20 72 65 74 75 72 6e 20 5c 24 6c | ter();.$filesCode.....return.\$l |
55f20 | 6f 61 64 65 72 3b 0a 7d 29 3b 0a 0a 46 4f 4f 54 45 52 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a | oader;.});..FOOTER;.}.}.<?php... |
55f40 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 74 | ..........namespace.Composer\Aut |
55f60 | 6f 6c 6f 61 64 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6c 61 73 73 4d 61 70 47 65 6e 65 72 | oload;.......class.ClassMapGener |
55f80 | 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | ator.{.......public.static.funct |
55fa0 | 69 6f 6e 20 64 75 6d 70 28 24 64 69 72 73 2c 20 24 66 69 6c 65 29 0a 7b 0a 24 6d 61 70 73 20 3d | ion.dump($dirs,.$file).{.$maps.= |
55fc0 | 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 | .array();..foreach.($dirs.as.$di |
55fe0 | 72 29 20 7b 0a 24 6d 61 70 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 6d 61 70 73 2c 20 | r).{.$maps.=.array_merge($maps,. |
56000 | 73 74 61 74 69 63 3a 3a 63 72 65 61 74 65 4d 61 70 28 24 64 69 72 29 29 3b 0a 7d 0a 0a 66 69 6c | static::createMap($dir));.}..fil |
56020 | 65 5f 70 75 74 5f 63 6f 6e 74 65 6e 74 73 28 24 66 69 6c 65 2c 20 73 70 72 69 6e 74 66 28 27 3c | e_put_contents($file,.sprintf('< |
56040 | 3f 70 68 70 20 72 65 74 75 72 6e 20 25 73 3b 27 2c 20 76 61 72 5f 65 78 70 6f 72 74 28 24 6d 61 | ?php.return.%s;',.var_export($ma |
56060 | 70 73 2c 20 74 72 75 65 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 | ps,.true)));.}.........public.st |
56080 | 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 4d 61 70 28 24 64 69 72 29 0a 7b 0a | atic.function.createMap($dir).{. |
560a0 | 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 64 69 72 29 29 20 7b 0a 69 66 20 28 69 73 5f 66 69 | if.(is_string($dir)).{.if.(is_fi |
560c0 | 6c 65 28 24 64 69 72 29 29 20 7b 0a 24 64 69 72 20 3d 20 61 72 72 61 79 28 6e 65 77 20 5c 53 70 | le($dir)).{.$dir.=.array(new.\Sp |
560e0 | 6c 46 69 6c 65 49 6e 66 6f 28 24 64 69 72 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 69 72 20 | lFileInfo($dir));.}.else.{.$dir. |
56100 | 3d 20 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 | =.new.\RecursiveIteratorIterator |
56120 | 28 6e 65 77 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 | (new.\RecursiveDirectoryIterator |
56140 | 28 24 64 69 72 29 29 3b 0a 7d 0a 7d 0a 0a 24 6d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 | ($dir));.}.}..$map.=.array();..f |
56160 | 6f 72 65 61 63 68 20 28 24 64 69 72 20 61 73 20 24 66 69 6c 65 29 20 7b 0a 69 66 20 28 21 24 66 | oreach.($dir.as.$file).{.if.(!$f |
56180 | 69 6c 65 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 70 | ile->isFile()).{.continue;.}..$p |
561a0 | 61 74 68 20 3d 20 24 66 69 6c 65 2d 3e 67 65 74 52 65 61 6c 50 61 74 68 28 29 3b 0a 0a 69 66 20 | ath.=.$file->getRealPath();..if. |
561c0 | 28 70 61 74 68 69 6e 66 6f 28 24 70 61 74 68 2c 20 50 41 54 48 49 4e 46 4f 5f 45 58 54 45 4e 53 | (pathinfo($path,.PATHINFO_EXTENS |
561e0 | 49 4f 4e 29 20 21 3d 3d 20 27 70 68 70 27 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 | ION).!==.'php').{.continue;.}..$ |
56200 | 63 6c 61 73 73 65 73 20 3d 20 73 65 6c 66 3a 3a 66 69 6e 64 43 6c 61 73 73 65 73 28 24 70 61 74 | classes.=.self::findClasses($pat |
56220 | 68 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6c 61 73 73 65 73 20 61 73 20 24 63 6c 61 73 73 | h);..foreach.($classes.as.$class |
56240 | 29 20 7b 0a 24 6d 61 70 5b 24 63 6c 61 73 73 5d 20 3d 20 24 70 61 74 68 3b 0a 7d 0a 0a 7d 0a 0a | ).{.$map[$class].=.$path;.}..}.. |
56260 | 72 65 74 75 72 6e 20 24 6d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 73 | return.$map;.}.........private.s |
56280 | 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 43 6c 61 73 73 65 73 28 24 70 61 74 68 | tatic.function.findClasses($path |
562a0 | 29 0a 7b 0a 24 63 6f 6e 74 65 6e 74 73 20 3d 20 66 69 6c 65 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 | ).{.$contents.=.file_get_content |
562c0 | 73 28 24 70 61 74 68 29 3b 0a 74 72 79 20 7b 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 | s($path);.try.{.if.(!preg_match( |
562e0 | 27 7b 5c 62 28 3f 3a 63 6c 61 73 73 7c 69 6e 74 65 72 66 61 63 65 7c 74 72 61 69 74 29 5c 62 7d | '{\b(?:class|interface|trait)\b} |
56300 | 69 27 2c 20 24 63 6f 6e 74 65 6e 74 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 29 | i',.$contents)).{.return.array() |
56320 | 3b 0a 7d 0a 24 74 6f 6b 65 6e 73 20 3d 20 74 6f 6b 65 6e 5f 67 65 74 5f 61 6c 6c 28 24 63 6f 6e | ;.}.$tokens.=.token_get_all($con |
56340 | 74 65 6e 74 73 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 | tents);.}.catch.(\Exception.$e). |
56360 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 43 | {.throw.new.\RuntimeException('C |
56380 | 6f 75 6c 64 20 6e 6f 74 20 73 63 61 6e 20 66 6f 72 20 63 6c 61 73 73 65 73 20 69 6e 73 69 64 65 | ould.not.scan.for.classes.inside |
563a0 | 20 27 2e 24 70 61 74 68 2e 22 3a 20 5c 6e 22 2e 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 | .'.$path.":.\n".$e->getMessage() |
563c0 | 2c 20 30 2c 20 24 65 29 3b 0a 7d 0a 24 54 5f 54 52 41 49 54 20 3d 20 76 65 72 73 69 6f 6e 5f 63 | ,.0,.$e);.}.$T_TRAIT.=.version_c |
563e0 | 6f 6d 70 61 72 65 28 50 48 50 5f 56 45 52 53 49 4f 4e 2c 20 27 35 2e 34 27 2c 20 27 3c 27 29 20 | ompare(PHP_VERSION,.'5.4',.'<'). |
56400 | 3f 20 2d 31 20 3a 20 54 5f 54 52 41 49 54 3b 0a 0a 24 63 6c 61 73 73 65 73 20 3d 20 61 72 72 61 | ?.-1.:.T_TRAIT;..$classes.=.arra |
56420 | 79 28 29 3b 0a 0a 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 27 3b 0a 66 6f 72 20 28 24 69 20 3d | y();..$namespace.=.'';.for.($i.= |
56440 | 20 30 2c 20 24 6d 61 78 20 3d 20 63 6f 75 6e 74 28 24 74 6f 6b 65 6e 73 29 3b 20 24 69 20 3c 20 | .0,.$max.=.count($tokens);.$i.<. |
56460 | 24 6d 61 78 3b 20 24 69 2b 2b 29 20 7b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 | $max;.$i++).{.$token.=.$tokens[$ |
56480 | 69 5d 3b 0a 0a 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 74 6f 6b 65 6e 29 29 20 7b 0a 63 6f | i];..if.(is_string($token)).{.co |
564a0 | 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6c 61 73 73 20 3d 20 27 27 3b 0a 0a 73 77 69 74 63 68 20 | ntinue;.}..$class.=.'';..switch. |
564c0 | 28 24 74 6f 6b 65 6e 5b 30 5d 29 20 7b 0a 63 61 73 65 20 54 5f 4e 41 4d 45 53 50 41 43 45 3a 0a | ($token[0]).{.case.T_NAMESPACE:. |
564e0 | 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 27 3b 0a 0a 20 77 68 69 6c 65 20 28 28 24 74 20 3d 20 | $namespace.=.'';...while.(($t.=. |
56500 | 24 74 6f 6b 65 6e 73 5b 2b 2b 24 69 5d 29 20 26 26 20 69 73 5f 61 72 72 61 79 28 24 74 29 29 20 | $tokens[++$i]).&&.is_array($t)). |
56520 | 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 74 5b 30 5d 2c 20 61 72 72 61 79 28 54 5f 53 54 | {.if.(in_array($t[0],.array(T_ST |
56540 | 52 49 4e 47 2c 20 54 5f 4e 53 5f 53 45 50 41 52 41 54 4f 52 29 29 29 20 7b 0a 24 6e 61 6d 65 73 | RING,.T_NS_SEPARATOR))).{.$names |
56560 | 70 61 63 65 20 2e 3d 20 24 74 5b 31 5d 3b 0a 7d 0a 7d 0a 24 6e 61 6d 65 73 70 61 63 65 20 2e 3d | pace..=.$t[1];.}.}.$namespace..= |
56580 | 20 27 5c 5c 27 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 54 5f 43 4c 41 53 53 3a 0a 63 61 73 65 | .'\\';.break;.case.T_CLASS:.case |
565a0 | 20 54 5f 49 4e 54 45 52 46 41 43 45 3a 0a 63 61 73 65 20 24 54 5f 54 52 41 49 54 3a 0a 0a 20 77 | .T_INTERFACE:.case.$T_TRAIT:...w |
565c0 | 68 69 6c 65 20 28 28 24 74 20 3d 20 24 74 6f 6b 65 6e 73 5b 2b 2b 24 69 5d 29 20 26 26 20 69 73 | hile.(($t.=.$tokens[++$i]).&&.is |
565e0 | 5f 61 72 72 61 79 28 24 74 29 29 20 7b 0a 69 66 20 28 54 5f 53 54 52 49 4e 47 20 3d 3d 3d 20 24 | _array($t)).{.if.(T_STRING.===.$ |
56600 | 74 5b 30 5d 29 20 7b 0a 24 63 6c 61 73 73 20 2e 3d 20 24 74 5b 31 5d 3b 0a 7d 20 65 6c 73 65 69 | t[0]).{.$class..=.$t[1];.}.elsei |
56620 | 66 20 28 24 63 6c 61 73 73 20 21 3d 3d 20 27 27 20 26 26 20 54 5f 57 48 49 54 45 53 50 41 43 45 | f.($class.!==.''.&&.T_WHITESPACE |
56640 | 20 3d 3d 20 24 74 5b 30 5d 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 0a 24 63 6c 61 73 73 65 | .==.$t[0]).{.break;.}.}..$classe |
56660 | 73 5b 5d 20 3d 20 6c 74 72 69 6d 28 24 6e 61 6d 65 73 70 61 63 65 20 2e 20 24 63 6c 61 73 73 2c | s[].=.ltrim($namespace...$class, |
56680 | 20 27 5c 5c 27 29 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 62 72 65 61 6b 3b 0a 7d | .'\\');.break;.default:.break;.} |
566a0 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6c 61 73 73 65 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | .}..return.$classes;.}.}.<?php.. |
566c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 3b 0a 0a 75 | ..........namespace.Composer;..u |
566e0 | 73 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 41 75 74 6f 6c 6f 61 64 47 65 6e | se.Composer\Autoload\AutoloadGen |
56700 | 65 72 61 74 6f 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 | erator;.use.Composer\DependencyR |
56720 | 65 73 6f 6c 76 65 72 5c 44 65 66 61 75 6c 74 50 6f 6c 69 63 79 3b 0a 75 73 65 20 43 6f 6d 70 6f | esolver\DefaultPolicy;.use.Compo |
56740 | 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 4f 70 65 72 61 74 69 6f 6e | ser\DependencyResolver\Operation |
56760 | 5c 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 | \UpdateOperation;.use.Composer\D |
56780 | 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 50 6f 6f 6c 3b 0a 75 73 65 20 43 6f 6d 70 | ependencyResolver\Pool;.use.Comp |
567a0 | 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 5c 52 65 71 75 65 73 74 3b | oser\DependencyResolver\Request; |
567c0 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 52 65 73 6f 6c 76 65 72 | .use.Composer\DependencyResolver |
567e0 | 5c 53 6f 6c 76 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 65 70 65 6e 64 65 6e 63 79 | \Solver;.use.Composer\Dependency |
56800 | 52 65 73 6f 6c 76 65 72 5c 53 6f 6c 76 65 72 50 72 6f 62 6c 65 6d 73 45 78 63 65 70 74 69 6f 6e | Resolver\SolverProblemsException |
56820 | 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 44 6f 77 6e 6c 6f 61 64 65 72 5c 44 6f 77 6e 6c 6f | ;.use.Composer\Downloader\Downlo |
56840 | 61 64 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c 65 | adManager;.use.Composer\Installe |
56860 | 72 5c 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f | r\InstallationManager;.use.Compo |
56880 | 73 65 72 5c 43 6f 6e 66 69 67 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 6e 73 74 61 6c 6c | ser\Config;.use.Composer\Install |
568a0 | 65 72 5c 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 49 | er\NoopInstaller;.use.Composer\I |
568c0 | 4f 5c 49 4f 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b | O\IOInterface;.use.Composer\Pack |
568e0 | 61 67 65 5c 41 6c 69 61 73 50 61 63 6b 61 67 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 | age\AliasPackage;.use.Composer\P |
56900 | 61 63 6b 61 67 65 5c 4c 69 6e 6b 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 | ackage\Link;.use.Composer\Packag |
56920 | 65 5c 4c 69 6e 6b 43 6f 6e 73 74 72 61 69 6e 74 5c 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 | e\LinkConstraint\VersionConstrai |
56940 | 6e 74 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 4c 6f 63 6b 65 72 3b | nt;.use.Composer\Package\Locker; |
56960 | 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 50 61 63 6b 61 67 65 5c 50 61 63 6b 61 67 65 49 6e 74 | .use.Composer\Package\PackageInt |
56980 | 65 72 66 61 63 65 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c | erface;.use.Composer\Repository\ |
569a0 | 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 | CompositeRepository;.use.Compose |
569c0 | 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 49 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f 73 | r\Repository\InstalledArrayRepos |
569e0 | 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 50 | itory;.use.Composer\Repository\P |
56a00 | 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c | latformRepository;.use.Composer\ |
56a20 | 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 3b 0a | Repository\RepositoryInterface;. |
56a40 | 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 52 65 70 6f 73 69 74 6f 72 79 5c 52 65 70 6f 73 69 74 6f | use.Composer\Repository\Reposito |
56a60 | 72 79 4d 61 6e 61 67 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 45 | ryManager;.use.Composer\Script\E |
56a80 | 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 75 73 65 20 43 6f 6d 70 6f 73 65 72 5c 53 63 72 | ventDispatcher;.use.Composer\Scr |
56aa0 | 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e | ipt\ScriptEvents;.......class.In |
56ac0 | 73 74 61 6c 6c 65 72 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6f 3b 0a 0a 0a 0a 0a | staller.{....protected.$io;..... |
56ae0 | 70 72 6f 74 65 63 74 65 64 20 24 63 6f 6e 66 69 67 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 | protected.$config;.....protected |
56b00 | 20 24 70 61 63 6b 61 67 65 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 64 6f 77 6e 6c 6f | .$package;.....protected.$downlo |
56b20 | 61 64 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 72 65 70 6f 73 69 | adManager;.....protected.$reposi |
56b40 | 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 6c 6f 63 6b | toryManager;.....protected.$lock |
56b60 | 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d | er;.....protected.$installationM |
56b80 | 61 6e 61 67 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 65 76 65 6e 74 44 69 73 70 | anager;.....protected.$eventDisp |
56ba0 | 61 74 63 68 65 72 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 61 75 74 6f 6c 6f 61 64 47 | atcher;.....protected.$autoloadG |
56bc0 | 65 6e 65 72 61 74 6f 72 3b 0a 0a 70 72 6f 74 65 63 74 65 64 20 24 70 72 65 66 65 72 53 6f 75 72 | enerator;..protected.$preferSour |
56be0 | 63 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 76 4d 6f 64 65 20 3d | ce.=.false;.protected.$devMode.= |
56c00 | 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 72 79 52 75 6e 20 3d 20 66 61 6c 73 | .false;.protected.$dryRun.=.fals |
56c20 | 65 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 76 65 72 62 6f 73 65 20 3d 20 66 61 6c 73 65 3b 0a 70 | e;.protected.$verbose.=.false;.p |
56c40 | 72 6f 74 65 63 74 65 64 20 24 75 70 64 61 74 65 20 3d 20 66 61 6c 73 65 3b 0a 70 72 6f 74 65 63 | rotected.$update.=.false;.protec |
56c60 | 74 65 64 20 24 72 75 6e 53 63 72 69 70 74 73 20 3d 20 74 72 75 65 3b 0a 70 72 6f 74 65 63 74 65 | ted.$runScripts.=.true;.protecte |
56c80 | 64 20 24 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 70 | d.$updateWhitelist.=.null;.....p |
56ca0 | 72 6f 74 65 63 74 65 64 20 24 73 75 67 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 3b 0a 0a 0a 0a | rotected.$suggestedPackages;.... |
56cc0 | 0a 70 72 6f 74 65 63 74 65 64 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 | .protected.$additionalInstalledR |
56ce0 | 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | epository;...............public. |
56d00 | 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 49 4f 49 6e 74 65 72 66 61 63 65 | function.__construct(IOInterface |
56d20 | 20 24 69 6f 2c 20 43 6f 6e 66 69 67 20 24 63 6f 6e 66 69 67 2c 20 50 61 63 6b 61 67 65 49 6e 74 | .$io,.Config.$config,.PackageInt |
56d40 | 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 2c 20 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 | erface.$package,.DownloadManager |
56d60 | 20 24 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2c 20 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e | .$downloadManager,.RepositoryMan |
56d80 | 61 67 65 72 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2c 20 4c 6f 63 6b 65 72 20 | ager.$repositoryManager,.Locker. |
56da0 | 24 6c 6f 63 6b 65 72 2c 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 24 69 6e | $locker,.InstallationManager.$in |
56dc0 | 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 | stallationManager,.EventDispatch |
56de0 | 65 72 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 20 41 75 74 6f 6c 6f 61 64 47 65 6e | er.$eventDispatcher,.AutoloadGen |
56e00 | 65 72 61 74 6f 72 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 29 0a 7b 0a 24 74 68 | erator.$autoloadGenerator).{.$th |
56e20 | 69 73 2d 3e 69 6f 20 3d 20 24 69 6f 3b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 | is->io.=.$io;.$this->config.=.$c |
56e40 | 6f 6e 66 69 67 3b 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 20 3d 20 24 70 61 63 6b 61 67 65 | onfig;.$this->package.=.$package |
56e60 | 3b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 20 3d 20 24 64 6f 77 6e | ;.$this->downloadManager.=.$down |
56e80 | 6c 6f 61 64 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 | loadManager;.$this->repositoryMa |
56ea0 | 6e 61 67 65 72 20 3d 20 24 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 3b 0a 24 74 68 69 | nager.=.$repositoryManager;.$thi |
56ec0 | 73 2d 3e 6c 6f 63 6b 65 72 20 3d 20 24 6c 6f 63 6b 65 72 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 | s->locker.=.$locker;.$this->inst |
56ee0 | 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 20 3d 20 24 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d | allationManager.=.$installationM |
56f00 | 61 6e 61 67 65 72 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d | anager;.$this->eventDispatcher.= |
56f20 | 20 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 6c 6f | .$eventDispatcher;.$this->autolo |
56f40 | 61 64 47 65 6e 65 72 61 74 6f 72 20 3d 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 | adGenerator.=.$autoloadGenerator |
56f60 | 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 29 0a 7b 0a | ;.}.....public.function.run().{. |
56f80 | 69 66 20 28 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 | if.($this->dryRun).{.$this->verb |
56fa0 | 6f 73 65 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 | ose.=.true;.$this->runScripts.=. |
56fc0 | 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 | false;.$this->installationManage |
56fe0 | 72 2d 3e 61 64 64 49 6e 73 74 61 6c 6c 65 72 28 6e 65 77 20 4e 6f 6f 70 49 6e 73 74 61 6c 6c 65 | r->addInstaller(new.NoopInstalle |
57000 | 72 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f 75 72 63 65 29 20 | r);.}..if.($this->preferSource). |
57020 | 7b 0a 24 74 68 69 73 2d 3e 64 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 2d 3e 73 65 74 50 72 65 | {.$this->downloadManager->setPre |
57040 | 66 65 72 53 6f 75 72 63 65 28 74 72 75 65 29 3b 0a 7d 0a 0a 0a 20 24 69 6e 73 74 61 6c 6c 65 64 | ferSource(true);.}....$installed |
57060 | 52 6f 6f 74 50 61 63 6b 61 67 65 20 3d 20 63 6c 6f 6e 65 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 | RootPackage.=.clone.$this->packa |
57080 | 67 65 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 65 | ge;.$installedRootPackage->setRe |
570a0 | 71 75 69 72 65 73 28 61 72 72 61 79 28 29 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 | quires(array());.$installedRootP |
570c0 | 61 63 6b 61 67 65 2d 3e 73 65 74 44 65 76 52 65 71 75 69 72 65 73 28 61 72 72 61 79 28 29 29 3b | ackage->setDevRequires(array()); |
570e0 | 0a 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 20 3d 20 6e 65 77 20 50 6c 61 74 66 6f 72 6d 52 65 | ..$platformRepo.=.new.PlatformRe |
57100 | 70 6f 73 69 74 6f 72 79 28 29 3b 0a 24 72 65 70 6f 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 | pository();.$repos.=.array_merge |
57120 | 28 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c | (.$this->repositoryManager->getL |
57140 | 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 2c 0a 61 72 72 61 79 28 0a 6e 65 77 20 49 | ocalRepositories(),.array(.new.I |
57160 | 6e 73 74 61 6c 6c 65 64 41 72 72 61 79 52 65 70 6f 73 69 74 6f 72 79 28 61 72 72 61 79 28 24 69 | nstalledArrayRepository(array($i |
57180 | 6e 73 74 61 6c 6c 65 64 52 6f 6f 74 50 61 63 6b 61 67 65 29 29 2c 0a 24 70 6c 61 74 66 6f 72 6d | nstalledRootPackage)),.$platform |
571a0 | 52 65 70 6f 2c 0a 29 0a 29 3b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 20 3d 20 6e 65 77 20 | Repo,.).);.$installedRepo.=.new. |
571c0 | 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 69 74 6f 72 79 28 24 72 65 70 6f 73 29 3b 0a 69 66 20 | CompositeRepository($repos);.if. |
571e0 | 28 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 | ($this->additionalInstalledRepos |
57200 | 69 74 6f 72 79 29 20 7b 0a 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 61 64 64 52 65 70 6f | itory).{.$installedRepo->addRepo |
57220 | 73 69 74 6f 72 79 28 24 74 68 69 73 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 | sitory($this->additionalInstalle |
57240 | 64 52 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 24 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 | dRepository);.}..$aliases.=.$thi |
57260 | 73 2d 3e 61 6c 69 61 73 50 61 63 6b 61 67 65 73 28 24 70 6c 61 74 66 6f 72 6d 52 65 70 6f 29 3b | s->aliasPackages($platformRepo); |
57280 | 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 0a 20 24 65 76 | ..if.($this->runScripts).{...$ev |
572a0 | 65 6e 74 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 3f 20 53 63 72 69 70 74 | entName.=.$this->update.?.Script |
572c0 | 45 76 65 6e 74 73 3a 3a 50 52 45 5f 55 50 44 41 54 45 5f 43 4d 44 20 3a 20 53 63 72 69 70 74 45 | Events::PRE_UPDATE_CMD.:.ScriptE |
572e0 | 76 65 6e 74 73 3a 3a 50 52 45 5f 49 4e 53 54 41 4c 4c 5f 43 4d 44 3b 0a 24 74 68 69 73 2d 3e 65 | vents::PRE_INSTALL_CMD;.$this->e |
57300 | 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 43 6f 6d 6d 61 6e 64 45 | ventDispatcher->dispatchCommandE |
57320 | 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 75 67 67 | vent($eventName);.}..$this->sugg |
57340 | 65 73 74 65 64 50 61 63 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 69 66 20 28 21 24 74 | estedPackages.=.array();.if.(!$t |
57360 | 68 69 73 2d 3e 64 6f 49 6e 73 74 61 6c 6c 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 | his->doInstall($this->repository |
57380 | 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2c 20 24 | Manager->getLocalRepository(),.$ |
573a0 | 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 29 29 20 7b 0a 72 65 74 75 | installedRepo,.$aliases)).{.retu |
573c0 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 29 20 | rn.false;.}.if.($this->devMode). |
573e0 | 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 6f 49 6e 73 74 61 6c 6c 28 24 74 68 69 73 2d 3e 72 | {.if.(!$this->doInstall($this->r |
57400 | 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 6c 44 65 76 52 65 70 | epositoryManager->getLocalDevRep |
57420 | 6f 73 69 74 6f 72 79 28 29 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 61 6c 69 61 | ository(),.$installedRepo,.$alia |
57440 | 73 65 73 2c 20 74 72 75 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a | ses,.true)).{.return.false;.}.}. |
57460 | 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 75 67 67 65 73 74 65 64 50 61 63 6b | ...foreach.($this->suggestedPack |
57480 | 61 67 65 73 20 61 73 20 24 73 75 67 67 65 73 74 69 6f 6e 29 20 7b 0a 69 66 20 28 21 24 69 6e 73 | ages.as.$suggestion).{.if.(!$ins |
574a0 | 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 73 75 67 67 65 73 | talledRepo->findPackages($sugges |
574c0 | 74 69 6f 6e 5b 27 74 61 72 67 65 74 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 | tion['target'])).{.$this->io->wr |
574e0 | 69 74 65 28 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 73 6f 75 72 63 65 27 5d 2e 27 20 73 75 67 67 | ite($suggestion['source'].'.sugg |
57500 | 65 73 74 73 20 69 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 74 | ests.installing.'.$suggestion['t |
57520 | 61 72 67 65 74 27 5d 2e 27 20 28 27 2e 24 73 75 67 67 65 73 74 69 6f 6e 5b 27 72 65 61 73 6f 6e | arget'].'.('.$suggestion['reason |
57540 | 27 5d 2e 27 29 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e | '].')');.}.}..if.(!$this->dryRun |
57560 | 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 7c 7c 20 21 24 74 68 69 | ).{...if.($this->update.||.!$thi |
57580 | 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 24 75 70 64 61 74 65 | s->locker->isLocked()).{.$update |
575a0 | 64 4c 6f 63 6b 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 73 65 74 4c 6f 63 6b 44 61 | dLock.=.$this->locker->setLockDa |
575c0 | 74 61 28 0a 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 | ta(.$this->repositoryManager->ge |
575e0 | 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 | tLocalRepository()->getPackages( |
57600 | 29 2c 0a 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3f 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 | ),.$this->devMode.?.$this->repos |
57620 | 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 4c 6f 63 61 6c 44 65 76 52 65 70 6f 73 69 74 | itoryManager->getLocalDevReposit |
57640 | 6f 72 79 28 29 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 3a 20 6e 75 6c 6c 2c 0a 24 61 6c | ory()->getPackages().:.null,.$al |
57660 | 69 61 73 65 73 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 | iases,.$this->package->getMinimu |
57680 | 6d 53 74 61 62 69 6c 69 74 79 28 29 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 | mStability(),.$this->package->ge |
576a0 | 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 0a 29 3b 0a 69 66 20 28 24 75 70 64 61 74 65 | tStabilityFlags().);.if.($update |
576c0 | 64 4c 6f 63 6b 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f | dLock).{.$this->io->write('<info |
576e0 | 3e 57 72 69 74 69 6e 67 20 6c 6f 63 6b 20 66 69 6c 65 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 7d 0a 7d | >Writing.lock.file</info>');.}.} |
57700 | 0a 0a 0a 20 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e 66 6f 3e 47 65 6e 65 | ....$this->io->write('<info>Gene |
57720 | 72 61 74 69 6e 67 20 61 75 74 6f 6c 6f 61 64 20 66 69 6c 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a | rating.autoload.files</info>');. |
57740 | 24 6c 6f 63 61 6c 52 65 70 6f 73 20 3d 20 6e 65 77 20 43 6f 6d 70 6f 73 69 74 65 52 65 70 6f 73 | $localRepos.=.new.CompositeRepos |
57760 | 69 74 6f 72 79 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e | itory($this->repositoryManager-> |
57780 | 67 65 74 4c 6f 63 61 6c 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 29 3b 0a 24 74 68 69 73 2d 3e | getLocalRepositories());.$this-> |
577a0 | 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 2d 3e 64 75 6d 70 28 24 74 68 69 73 2d 3e 63 | autoloadGenerator->dump($this->c |
577c0 | 6f 6e 66 69 67 2c 20 24 6c 6f 63 61 6c 52 65 70 6f 73 2c 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 | onfig,.$localRepos,.$this->packa |
577e0 | 67 65 2c 20 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2c 20 | ge,.$this->installationManager,. |
57800 | 27 63 6f 6d 70 6f 73 65 72 27 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 | 'composer');..if.($this->runScri |
57820 | 70 74 73 29 20 7b 0a 0a 20 24 65 76 65 6e 74 4e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 75 70 64 | pts).{...$eventName.=.$this->upd |
57840 | 61 74 65 20 3f 20 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 55 50 44 41 54 45 5f | ate.?.ScriptEvents::POST_UPDATE_ |
57860 | 43 4d 44 20 3a 20 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 49 4e 53 54 41 4c 4c | CMD.:.ScriptEvents::POST_INSTALL |
57880 | 5f 43 4d 44 3b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 | _CMD;.$this->eventDispatcher->di |
578a0 | 73 70 61 74 63 68 43 6f 6d 6d 61 6e 64 45 76 65 6e 74 28 24 65 76 65 6e 74 4e 61 6d 65 29 3b 0a | spatchCommandEvent($eventName);. |
578c0 | 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 | }.}..return.true;.}..protected.f |
578e0 | 75 6e 63 74 69 6f 6e 20 64 6f 49 6e 73 74 61 6c 6c 28 24 6c 6f 63 61 6c 52 65 70 6f 2c 20 24 69 | unction.doInstall($localRepo,.$i |
57900 | 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2c 20 24 61 6c 69 61 73 65 73 2c 20 24 64 65 76 4d 6f 64 65 | nstalledRepo,.$aliases,.$devMode |
57920 | 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 6d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 | .=.false).{.$minimumStability.=. |
57940 | 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c | $this->package->getMinimumStabil |
57960 | 69 74 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 20 3d 20 24 74 68 69 73 2d 3e | ity();.$stabilityFlags.=.$this-> |
57980 | 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 79 46 6c 61 67 73 28 29 3b 0a 0a 0a | package->getStabilityFlags();... |
579a0 | 20 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 26 20 24 74 68 69 73 2d 3e 6c 6f | .if.(!$this->update.&&.$this->lo |
579c0 | 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 24 64 65 76 4d 6f 64 65 29 29 20 7b 0a 24 6c 6f 63 | cker->isLocked($devMode)).{.$loc |
579e0 | 6b 65 64 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 | kedPackages.=.$this->locker->get |
57a00 | 4c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 28 24 64 65 76 4d 6f 64 65 29 3b 0a 24 6d 69 6e 69 6d | LockedPackages($devMode);.$minim |
57a20 | 75 6d 53 74 61 62 69 6c 69 74 79 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 | umStability.=.$this->locker->get |
57a40 | 4d 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 28 29 3b 0a 24 73 74 61 62 69 6c 69 74 79 46 6c | MinimumStability();.$stabilityFl |
57a60 | 61 67 73 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 53 74 61 62 69 6c 69 74 | ags.=.$this->locker->getStabilit |
57a80 | 79 46 6c 61 67 73 28 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 77 68 69 74 65 6c 69 73 74 55 70 64 | yFlags();.}..$this->whitelistUpd |
57aa0 | 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 0a 24 6c 6f 63 61 6c 52 65 70 6f 2c 0a 24 64 65 | ateDependencies(.$localRepo,.$de |
57ac0 | 76 4d 6f 64 65 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 | vMode,.$this->package->getRequir |
57ae0 | 65 73 28 29 2c 0a 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 | es(),.$this->package->getDevRequ |
57b00 | 69 72 65 73 28 29 0a 29 3b 0a 0a 0a 20 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 28 24 6d | ires().);....$pool.=.new.Pool($m |
57b20 | 69 6e 69 6d 75 6d 53 74 61 62 69 6c 69 74 79 2c 20 24 73 74 61 62 69 6c 69 74 79 46 6c 61 67 73 | inimumStability,.$stabilityFlags |
57b40 | 29 3b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 69 6e 73 74 61 6c 6c | );.$pool->addRepository($install |
57b60 | 65 64 52 65 70 6f 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 | edRepo);.foreach.($this->reposit |
57b80 | 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 69 65 73 28 29 20 61 73 | oryManager->getRepositories().as |
57ba0 | 20 24 72 65 70 6f 73 69 74 6f 72 79 29 20 7b 0a 24 70 6f 6f 6c 2d 3e 61 64 64 52 65 70 6f 73 69 | .$repository).{.$pool->addReposi |
57bc0 | 74 6f 72 79 28 24 72 65 70 6f 73 69 74 6f 72 79 29 3b 0a 7d 0a 0a 0a 20 24 69 6e 73 74 61 6c 6c | tory($repository);.}....$install |
57be0 | 46 72 6f 6d 4c 6f 63 6b 20 3d 20 66 61 6c 73 65 3b 0a 24 72 65 71 75 65 73 74 20 3d 20 6e 65 77 | FromLock.=.false;.$request.=.new |
57c00 | 20 52 65 71 75 65 73 74 28 24 70 6f 6f 6c 29 3b 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 | .Request($pool);..$constraint.=. |
57c20 | 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 74 68 69 73 | new.VersionConstraint('=',.$this |
57c40 | 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 65 | ->package->getVersion());.$reque |
57c60 | 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e | st->install($this->package->getN |
57c80 | 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d | ame(),.$constraint);..if.($this- |
57ca0 | 3e 75 70 64 61 74 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e | >update).{.$this->io->write('<in |
57cc0 | 66 6f 3e 55 70 64 61 74 69 6e 67 20 27 2e 28 24 64 65 76 4d 6f 64 65 20 3f 20 27 64 65 76 20 27 | fo>Updating.'.($devMode.?.'dev.' |
57ce0 | 3a 20 27 27 29 2e 27 64 65 70 65 6e 64 65 6e 63 69 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 24 | :.'').'dependencies</info>');..$ |
57d00 | 72 65 71 75 65 73 74 2d 3e 75 70 64 61 74 65 41 6c 6c 28 29 3b 0a 0a 24 6c 69 6e 6b 73 20 3d 20 | request->updateAll();..$links.=. |
57d20 | 24 64 65 76 4d 6f 64 65 20 3f 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 44 65 | $devMode.?.$this->package->getDe |
57d40 | 76 52 65 71 75 69 72 65 73 28 29 20 3a 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 | vRequires().:.$this->package->ge |
57d60 | 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 | tRequires();..foreach.($links.as |
57d80 | 20 24 6c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 6c 69 6e | .$link).{.$request->install($lin |
57da0 | 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d 3e 67 65 74 43 6f 6e 73 74 72 | k->getTarget(),.$link->getConstr |
57dc0 | 61 69 6e 74 28 29 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b | aint());.}.}.elseif.($this->lock |
57de0 | 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 24 64 65 76 4d 6f 64 65 29 29 20 7b 0a 24 69 6e 73 74 61 | er->isLocked($devMode)).{.$insta |
57e00 | 6c 6c 46 72 6f 6d 4c 6f 63 6b 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 | llFromLock.=.true;.$this->io->wr |
57e20 | 69 74 65 28 27 3c 69 6e 66 6f 3e 49 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 28 24 64 65 76 4d 6f 64 | ite('<info>Installing.'.($devMod |
57e40 | 65 20 3f 20 27 64 65 76 20 27 3a 20 27 27 29 2e 27 64 65 70 65 6e 64 65 6e 63 69 65 73 20 66 72 | e.?.'dev.':.'').'dependencies.fr |
57e60 | 6f 6d 20 6c 6f 63 6b 20 66 69 6c 65 3c 2f 69 6e 66 6f 3e 27 29 3b 0a 0a 69 66 20 28 21 24 74 68 | om.lock.file</info>');..if.(!$th |
57e80 | 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 46 72 65 73 68 28 29 20 26 26 20 21 24 64 65 76 4d 6f | is->locker->isFresh().&&.!$devMo |
57ea0 | 64 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 77 61 72 6e 69 6e 67 | de).{.$this->io->write('<warning |
57ec0 | 3e 59 6f 75 72 20 6c 6f 63 6b 20 66 69 6c 65 20 69 73 20 6f 75 74 20 6f 66 20 73 79 6e 63 20 77 | >Your.lock.file.is.out.of.sync.w |
57ee0 | 69 74 68 20 79 6f 75 72 20 63 6f 6d 70 6f 73 65 72 2e 6a 73 6f 6e 2c 20 72 75 6e 20 22 63 6f 6d | ith.your.composer.json,.run."com |
57f00 | 70 6f 73 65 72 2e 70 68 61 72 20 75 70 64 61 74 65 22 20 74 6f 20 75 70 64 61 74 65 20 64 65 70 | poser.phar.update".to.update.dep |
57f20 | 65 6e 64 65 6e 63 69 65 73 3c 2f 77 61 72 6e 69 6e 67 3e 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 | endencies</warning>');.}..foreac |
57f40 | 68 20 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 | h.($lockedPackages.as.$package). |
57f60 | 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f | {.$version.=.$package->getVersio |
57f80 | 6e 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 61 6c 69 61 73 | n();.foreach.($aliases.as.$alias |
57fa0 | 29 20 7b 0a 69 66 20 28 24 61 6c 69 61 73 5b 27 70 61 63 6b 61 67 65 27 5d 20 3d 3d 3d 20 24 70 | ).{.if.($alias['package'].===.$p |
57fc0 | 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 26 26 20 24 61 6c 69 61 73 5b 27 76 65 72 | ackage->getName().&&.$alias['ver |
57fe0 | 73 69 6f 6e 27 5d 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 | sion'].===.$package->getVersion( |
58000 | 29 29 20 7b 0a 24 76 65 72 73 69 6f 6e 20 3d 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 5f 6e 6f | )).{.$version.=.$alias['alias_no |
58020 | 72 6d 61 6c 69 7a 65 64 27 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 24 63 6f 6e 73 74 72 61 69 | rmalized'];.break;.}.}.$constrai |
58040 | 6e 74 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 | nt.=.new.VersionConstraint('=',. |
58060 | 24 76 65 72 73 69 6f 6e 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 70 61 | $version);.$request->install($pa |
58080 | 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a | ckage->getName(),.$constraint);. |
580a0 | 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 3c 69 6e | }.}.else.{.$this->io->write('<in |
580c0 | 66 6f 3e 49 6e 73 74 61 6c 6c 69 6e 67 20 27 2e 28 24 64 65 76 4d 6f 64 65 20 3f 20 27 64 65 76 | fo>Installing.'.($devMode.?.'dev |
580e0 | 20 27 3a 20 27 27 29 2e 27 64 65 70 65 6e 64 65 6e 63 69 65 73 3c 2f 69 6e 66 6f 3e 27 29 3b 0a | .':.'').'dependencies</info>');. |
58100 | 0a 24 6c 69 6e 6b 73 20 3d 20 24 64 65 76 4d 6f 64 65 20 3f 20 24 74 68 69 73 2d 3e 70 61 63 6b | .$links.=.$devMode.?.$this->pack |
58120 | 61 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 20 3a 20 24 74 68 69 73 2d 3e 70 | age->getDevRequires().:.$this->p |
58140 | 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 72 65 73 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 | ackage->getRequires();..foreach. |
58160 | 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e | ($links.as.$link).{.$request->in |
58180 | 73 74 61 6c 6c 28 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 2c 20 24 6c 69 6e 6b 2d | stall($link->getTarget(),.$link- |
581a0 | 3e 67 65 74 43 6f 6e 73 74 72 61 69 6e 74 28 29 29 3b 0a 7d 0a 7d 0a 0a 0a 20 0a 20 0a 20 66 6f | >getConstraint());.}.}........fo |
581c0 | 72 65 61 63 68 20 28 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 | reach.($installedRepo->getPackag |
581e0 | 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 24 70 61 63 6b 61 67 65 | es().as.$package).{.if.($package |
58200 | 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 20 3d 3d 3d 20 24 6c 6f 63 61 6c 52 65 70 6f | ->getRepository().===.$localRepo |
58220 | 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 63 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e | ).{.continue;.}..$constraint.=.n |
58240 | 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e 74 28 27 3d 27 2c 20 24 70 61 63 6b 61 | ew.VersionConstraint('=',.$packa |
58260 | 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 | ge->getVersion());.$request->ins |
58280 | 74 61 6c 6c 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 | tall($package->getName(),.$const |
582a0 | 72 61 69 6e 74 29 3b 0a 7d 0a 0a 0a 20 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 | raint);.}......if.($this->update |
582c0 | 20 26 26 20 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 69 66 | .&&.$this->updateWhitelist).{.if |
582e0 | 20 28 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 24 64 65 76 4d 6f | .($this->locker->isLocked($devMo |
58300 | 64 65 29 29 20 7b 0a 24 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 3d 20 24 74 68 69 73 2d | de)).{.$currentPackages.=.$this- |
58320 | 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 64 50 61 63 6b 61 67 65 73 28 24 64 65 76 4d | >locker->getLockedPackages($devM |
58340 | 6f 64 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 63 75 72 72 65 6e 74 50 61 63 6b 61 67 65 73 20 | ode);.}.else.{.$currentPackages. |
58360 | 3d 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 3b | =.$installedRepo->getPackages(); |
58380 | 0a 7d 0a 0a 0a 20 24 63 61 6e 64 69 64 61 74 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 | .}....$candidates.=.array();.for |
583a0 | 65 61 63 68 20 28 24 6c 69 6e 6b 73 20 61 73 20 24 6c 69 6e 6b 29 20 7b 0a 24 63 61 6e 64 69 64 | each.($links.as.$link).{.$candid |
583c0 | 61 74 65 73 5b 24 6c 69 6e 6b 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 74 72 75 65 3b | ates[$link->getTarget()].=.true; |
583e0 | 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 | .}.foreach.($localRepo->getPacka |
58400 | 67 65 73 28 29 20 61 73 20 24 70 61 63 6b 61 67 65 29 20 7b 0a 24 63 61 6e 64 69 64 61 74 65 73 | ges().as.$package).{.$candidates |
58420 | 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a | [$package->getName()].=.true;.}. |
58440 | 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 63 61 6e 64 69 64 61 74 65 73 20 61 73 20 24 63 61 6e 64 | ...foreach.($candidates.as.$cand |
58460 | 69 64 61 74 65 20 3d 3e 20 24 64 75 6d 6d 79 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 75 72 | idate.=>.$dummy).{.foreach.($cur |
58480 | 72 65 6e 74 50 61 63 6b 61 67 65 73 20 61 73 20 24 63 75 72 50 61 63 6b 61 67 65 29 20 7b 0a 69 | rentPackages.as.$curPackage).{.i |
584a0 | 66 20 28 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 24 63 | f.($curPackage->getName().===.$c |
584c0 | 61 6e 64 69 64 61 74 65 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 55 70 64 61 74 65 61 | andidate).{.if.($this->isUpdatea |
584e0 | 62 6c 65 28 24 63 75 72 50 61 63 6b 61 67 65 29 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 24 63 | ble($curPackage)).{.break;.}..$c |
58500 | 6f 6e 73 74 72 61 69 6e 74 20 3d 20 6e 65 77 20 56 65 72 73 69 6f 6e 43 6f 6e 73 74 72 61 69 6e | onstraint.=.new.VersionConstrain |
58520 | 74 28 27 3d 27 2c 20 24 63 75 72 50 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 | t('=',.$curPackage->getVersion() |
58540 | 29 3b 0a 24 72 65 71 75 65 73 74 2d 3e 69 6e 73 74 61 6c 6c 28 24 63 75 72 50 61 63 6b 61 67 65 | );.$request->install($curPackage |
58560 | 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 63 6f 6e 73 74 72 61 69 6e 74 29 3b 0a 7d 0a 7d 0a 7d | ->getName(),.$constraint);.}.}.} |
58580 | 0a 7d 0a 0a 0a 20 24 70 6f 6c 69 63 79 20 3d 20 6e 65 77 20 44 65 66 61 75 6c 74 50 6f 6c 69 63 | .}....$policy.=.new.DefaultPolic |
585a0 | 79 28 29 3b 0a 24 73 6f 6c 76 65 72 20 3d 20 6e 65 77 20 53 6f 6c 76 65 72 28 24 70 6f 6c 69 63 | y();.$solver.=.new.Solver($polic |
585c0 | 79 2c 20 24 70 6f 6f 6c 2c 20 24 69 6e 73 74 61 6c 6c 65 64 52 65 70 6f 29 3b 0a 0a 0a 20 74 72 | y,.$pool,.$installedRepo);....tr |
585e0 | 79 20 7b 0a 24 6f 70 65 72 61 74 69 6f 6e 73 20 3d 20 24 73 6f 6c 76 65 72 2d 3e 73 6f 6c 76 65 | y.{.$operations.=.$solver->solve |
58600 | 28 24 72 65 71 75 65 73 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 53 6f 6c 76 65 72 50 72 6f 62 6c | ($request);.}.catch.(SolverProbl |
58620 | 65 6d 73 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 | emsException.$e).{.$this->io->wr |
58640 | 69 74 65 28 27 3c 65 72 72 6f 72 3e 59 6f 75 72 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 63 6f | ite('<error>Your.requirements.co |
58660 | 75 6c 64 20 6e 6f 74 20 62 65 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 61 6e 20 69 6e 73 74 61 6c | uld.not.be.resolved.to.an.instal |
58680 | 6c 61 62 6c 65 20 73 65 74 20 6f 66 20 70 61 63 6b 61 67 65 73 2e 3c 2f 65 72 72 6f 72 3e 27 29 | lable.set.of.packages.</error>') |
586a0 | 3b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 24 65 2d 3e 67 65 74 4d 65 73 73 61 67 | ;.$this->io->write($e->getMessag |
586c0 | 65 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 | e());..return.false;.}....foreac |
586e0 | 68 20 28 24 6c 6f 63 61 6c 52 65 70 6f 2d 3e 67 65 74 50 61 63 6b 61 67 65 73 28 29 20 61 73 20 | h.($localRepo->getPackages().as. |
58700 | 24 70 61 63 6b 61 67 65 29 20 7b 0a 0a 20 69 66 20 28 21 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 | $package).{...if.(!$package->isD |
58720 | 65 76 28 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 | ev()).{.continue;.}....foreach.( |
58740 | 24 6f 70 65 72 61 74 69 6f 6e 73 20 61 73 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 69 66 20 | $operations.as.$operation).{.if. |
58760 | 28 28 27 75 70 64 61 74 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f | (('update'.===.$operation->getJo |
58780 | 62 54 79 70 65 28 29 20 26 26 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 49 6e 69 74 69 61 | bType().&&.$operation->getInitia |
587a0 | 6c 50 61 63 6b 61 67 65 28 29 2d 3e 65 71 75 61 6c 73 28 24 70 61 63 6b 61 67 65 29 29 0a 7c 7c | lPackage()->equals($package)).|| |
587c0 | 20 28 27 75 6e 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 | .('uninstall'.===.$operation->ge |
587e0 | 74 4a 6f 62 54 79 70 65 28 29 20 26 26 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 | tJobType().&&.$operation->getPac |
58800 | 6b 61 67 65 28 29 2d 3e 65 71 75 61 6c 73 28 24 70 61 63 6b 61 67 65 29 29 0a 29 20 7b 0a 63 6f | kage()->equals($package)).).{.co |
58820 | 6e 74 69 6e 75 65 20 32 3b 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 24 69 6e 73 74 61 6c 6c 46 72 6f | ntinue.2;.}.}....if.($installFro |
58840 | 6d 4c 6f 63 6b 29 20 7b 0a 24 6c 6f 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b | mLock).{.$lockData.=.$this->lock |
58860 | 65 72 2d 3e 67 65 74 4c 6f 63 6b 44 61 74 61 28 29 3b 0a 75 6e 73 65 74 28 24 6c 6f 63 6b 65 64 | er->getLockData();.unset($locked |
58880 | 52 65 66 65 72 65 6e 63 65 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 44 61 74 61 5b 27 | Reference);.foreach.($lockData[' |
588a0 | 70 61 63 6b 61 67 65 73 27 5d 20 61 73 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 29 20 7b 0a | packages'].as.$lockedPackage).{. |
588c0 | 69 66 20 28 21 65 6d 70 74 79 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 73 6f 75 72 63 | if.(!empty($lockedPackage['sourc |
588e0 | 65 2d 72 65 66 65 72 65 6e 63 65 27 5d 29 20 26 26 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6c 6f | e-reference']).&&.strtolower($lo |
58900 | 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 70 61 63 6b 61 67 65 27 5d 29 20 3d 3d 3d 20 24 70 61 63 | ckedPackage['package']).===.$pac |
58920 | 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 24 6c 6f 63 6b 65 64 52 65 66 65 72 65 | kage->getName()).{.$lockedRefere |
58940 | 6e 63 65 20 3d 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 73 6f 75 72 63 65 2d 72 65 66 | nce.=.$lockedPackage['source-ref |
58960 | 65 72 65 6e 63 65 27 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 | erence'];.break;.}.}.if.(isset($ |
58980 | 6c 6f 63 6b 65 64 52 65 66 65 72 65 6e 63 65 29 20 26 26 20 24 6c 6f 63 6b 65 64 52 65 66 65 72 | lockedReference).&&.$lockedRefer |
589a0 | 65 6e 63 65 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 | ence.!==.$package->getSourceRefe |
589c0 | 72 65 6e 63 65 28 29 29 20 7b 0a 0a 20 24 6f 70 65 72 61 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 | rence()).{...$operations[].=.new |
589e0 | 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 63 6c 6f 6e 65 | .UpdateOperation($package,.clone |
58a00 | 20 24 70 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 24 74 68 | .$package);.}.}.else.{...if.($th |
58a20 | 69 73 2d 3e 75 70 64 61 74 65 29 20 7b 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 75 70 64 61 74 | is->update).{...if.($this->updat |
58a40 | 65 57 68 69 74 65 6c 69 73 74 20 26 26 20 21 24 74 68 69 73 2d 3e 69 73 55 70 64 61 74 65 61 62 | eWhitelist.&&.!$this->isUpdateab |
58a60 | 6c 65 28 24 70 61 63 6b 61 67 65 29 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 6e 65 | le($package)).{.continue;.}..$ne |
58a80 | 77 50 61 63 6b 61 67 65 20 3d 20 24 74 68 69 73 2d 3e 72 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 | wPackage.=.$this->repositoryMana |
58aa0 | 67 65 72 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 | ger->findPackage($package->getNa |
58ac0 | 6d 65 28 29 2c 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 69 | me(),.$package->getVersion());.i |
58ae0 | 66 20 28 24 6e 65 77 50 61 63 6b 61 67 65 20 26 26 20 24 6e 65 77 50 61 63 6b 61 67 65 2d 3e 67 | f.($newPackage.&&.$newPackage->g |
58b00 | 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 20 21 3d 3d 20 24 70 61 63 6b 61 67 65 | etSourceReference().!==.$package |
58b20 | 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 20 7b 0a 24 6f 70 65 72 61 | ->getSourceReference()).{.$opera |
58b40 | 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 70 64 61 74 65 4f 70 65 72 61 74 69 6f 6e 28 24 70 | tions[].=.new.UpdateOperation($p |
58b60 | 61 63 6b 61 67 65 2c 20 24 6e 65 77 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 0a 0a 20 24 72 65 | ackage,.$newPackage);.}.}....$re |
58b80 | 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 69 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 | ferences.=.$this->package->getRe |
58ba0 | 66 65 72 65 6e 63 65 73 28 29 3b 0a 0a 69 66 20 28 69 73 73 65 74 28 24 72 65 66 65 72 65 6e 63 | ferences();..if.(isset($referenc |
58bc0 | 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 20 26 26 20 24 72 65 66 | es[$package->getName()]).&&.$ref |
58be0 | 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 21 3d 3d | erences[$package->getName()].!== |
58c00 | 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 53 6f 75 72 63 65 52 65 66 65 72 65 6e 63 65 28 29 29 | .$package->getSourceReference()) |
58c20 | 20 7b 0a 0a 20 24 6f 70 65 72 61 74 69 6f 6e 73 5b 5d 20 3d 20 6e 65 77 20 55 70 64 61 74 65 4f | .{...$operations[].=.new.UpdateO |
58c40 | 70 65 72 61 74 69 6f 6e 28 24 70 61 63 6b 61 67 65 2c 20 63 6c 6f 6e 65 20 24 70 61 63 6b 61 67 | peration($package,.clone.$packag |
58c60 | 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 6f 70 65 72 61 74 69 6f 6e 73 29 20 7b | e);.}.}.}....if.(!$operations).{ |
58c80 | 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 27 4e 6f 74 68 69 6e 67 20 74 6f 20 69 6e | .$this->io->write('Nothing.to.in |
58ca0 | 73 74 61 6c 6c 20 6f 72 20 75 70 64 61 74 65 27 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 | stall.or.update');.}..foreach.($ |
58cc0 | 6f 70 65 72 61 74 69 6f 6e 73 20 61 73 20 24 6f 70 65 72 61 74 69 6f 6e 29 20 7b 0a 0a 20 69 66 | operations.as.$operation).{...if |
58ce0 | 20 28 27 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a | .('install'.===.$operation->getJ |
58d00 | 6f 62 54 79 70 65 28 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 65 72 61 74 69 6f 6e 2d | obType()).{.foreach.($operation- |
58d20 | 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e 67 65 74 53 75 67 67 65 73 74 73 28 29 20 61 73 20 | >getPackage()->getSuggests().as. |
58d40 | 24 74 61 72 67 65 74 20 3d 3e 20 24 72 65 61 73 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 75 67 | $target.=>.$reason).{.$this->sug |
58d60 | 67 65 73 74 65 64 50 61 63 6b 61 67 65 73 5b 5d 20 3d 20 61 72 72 61 79 28 0a 27 73 6f 75 72 63 | gestedPackages[].=.array(.'sourc |
58d80 | 65 27 20 3d 3e 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2d 3e | e'.=>.$operation->getPackage()-> |
58da0 | 67 65 74 50 72 65 74 74 79 4e 61 6d 65 28 29 2c 0a 27 74 61 72 67 65 74 27 20 3d 3e 20 24 74 61 | getPrettyName(),.'target'.=>.$ta |
58dc0 | 72 67 65 74 2c 0a 27 72 65 61 73 6f 6e 27 20 3d 3e 20 24 72 65 61 73 6f 6e 2c 0a 29 3b 0a 7d 0a | rget,.'reason'.=>.$reason,.);.}. |
58de0 | 7d 0a 0a 24 65 76 65 6e 74 20 3d 20 27 43 6f 6d 70 6f 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 | }..$event.=.'Composer\Script\Scr |
58e00 | 69 70 74 45 76 65 6e 74 73 3a 3a 50 52 45 5f 50 41 43 4b 41 47 45 5f 27 2e 73 74 72 74 6f 75 70 | iptEvents::PRE_PACKAGE_'.strtoup |
58e20 | 70 65 72 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 3b 0a 69 | per($operation->getJobType());.i |
58e40 | 66 20 28 64 65 66 69 6e 65 64 28 24 65 76 65 6e 74 29 20 26 26 20 24 74 68 69 73 2d 3e 72 75 6e | f.(defined($event).&&.$this->run |
58e60 | 53 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 2d 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 | Scripts).{.$this->eventDispatche |
58e80 | 72 2d 3e 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 65 45 76 65 6e 74 28 63 6f 6e 73 74 61 6e 74 | r->dispatchPackageEvent(constant |
58ea0 | 28 24 65 76 65 6e 74 29 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 | ($event),.$operation);.}....if.( |
58ec0 | 24 69 6e 73 74 61 6c 6c 46 72 6f 6d 4c 6f 63 6b 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 6e | $installFromLock).{.$package.=.n |
58ee0 | 75 6c 6c 3b 0a 69 66 20 28 27 75 70 64 61 74 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e | ull;.if.('update'.===.$operation |
58f00 | 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 | ->getJobType()).{.$package.=.$op |
58f20 | 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 20 65 | eration->getTargetPackage();.}.e |
58f40 | 6c 73 65 69 66 20 28 27 69 6e 73 74 61 6c 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d | lseif.('install'.===.$operation- |
58f60 | 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 | >getJobType()).{.$package.=.$ope |
58f80 | 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 0a 69 66 20 28 24 70 61 63 | ration->getPackage();.}.if.($pac |
58fa0 | 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 65 2d 3e 69 73 44 65 76 28 29 29 20 7b 0a 24 6c 6f | kage.&&.$package->isDev()).{.$lo |
58fc0 | 63 6b 44 61 74 61 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 4c 6f 63 6b 44 | ckData.=.$this->locker->getLockD |
58fe0 | 61 74 61 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 6f 63 6b 44 61 74 61 5b 27 70 61 63 6b 61 | ata();.foreach.($lockData['packa |
59000 | 67 65 73 27 5d 20 61 73 20 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 21 | ges'].as.$lockedPackage).{.if.(! |
59020 | 65 6d 70 74 79 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 73 6f 75 72 63 65 2d 72 65 66 | empty($lockedPackage['source-ref |
59040 | 65 72 65 6e 63 65 27 5d 29 20 26 26 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 6c 6f 63 6b 65 64 50 | erence']).&&.strtolower($lockedP |
59060 | 61 63 6b 61 67 65 5b 27 70 61 63 6b 61 67 65 27 5d 29 20 3d 3d 3d 20 24 70 61 63 6b 61 67 65 2d | ackage['package']).===.$package- |
59080 | 3e 67 65 74 4e 61 6d 65 28 29 29 20 7b 0a 0a 20 69 66 20 28 21 65 6d 70 74 79 28 24 6c 6f 63 6b | >getName()).{...if.(!empty($lock |
590a0 | 65 64 50 61 63 6b 61 67 65 5b 27 63 6f 6d 6d 69 74 2d 64 61 74 65 27 5d 29 29 20 7b 0a 24 70 61 | edPackage['commit-date'])).{.$pa |
590c0 | 63 6b 61 67 65 2d 3e 73 65 74 52 65 6c 65 61 73 65 44 61 74 65 28 6e 65 77 20 5c 44 61 74 65 54 | ckage->setReleaseDate(new.\DateT |
590e0 | 69 6d 65 28 27 40 27 2e 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 63 6f 6d 6d 69 74 2d 64 | ime('@'.$lockedPackage['commit-d |
59100 | 61 74 65 27 5d 29 29 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 65 | ate']));.}.$package->setSourceRe |
59120 | 66 65 72 65 6e 63 65 28 24 6c 6f 63 6b 65 64 50 61 63 6b 61 67 65 5b 27 73 6f 75 72 63 65 2d 72 | ference($lockedPackage['source-r |
59140 | 65 66 65 72 65 6e 63 65 27 5d 29 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 | eference']);.break;.}.}.}.}.else |
59160 | 20 7b 0a 0a 20 24 70 61 63 6b 61 67 65 20 3d 20 6e 75 6c 6c 3b 0a 69 66 20 28 27 75 70 64 61 74 | .{...$package.=.null;.if.('updat |
59180 | 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 | e'.===.$operation->getJobType()) |
591a0 | 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 54 61 72 | .{.$package.=.$operation->getTar |
591c0 | 67 65 74 50 61 63 6b 61 67 65 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 69 6e 73 74 61 6c 6c | getPackage();.}.elseif.('install |
591e0 | 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 4a 6f 62 54 79 70 65 28 29 29 20 | '.===.$operation->getJobType()). |
59200 | 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 65 74 50 61 63 6b | {.$package.=.$operation->getPack |
59220 | 61 67 65 28 29 3b 0a 7d 0a 69 66 20 28 24 70 61 63 6b 61 67 65 20 26 26 20 24 70 61 63 6b 61 67 | age();.}.if.($package.&&.$packag |
59240 | 65 2d 3e 69 73 44 65 76 28 29 29 20 7b 0a 24 72 65 66 65 72 65 6e 63 65 73 20 3d 20 24 74 68 69 | e->isDev()).{.$references.=.$thi |
59260 | 73 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 66 65 72 65 6e 63 65 73 28 29 3b 0a 69 66 20 | s->package->getReferences();.if. |
59280 | 28 69 73 73 65 74 28 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 | (isset($references[$package->get |
592a0 | 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 53 6f 75 72 63 65 52 | Name()])).{.$package->setSourceR |
592c0 | 65 66 65 72 65 6e 63 65 28 24 72 65 66 65 72 65 6e 63 65 73 5b 24 70 61 63 6b 61 67 65 2d 3e 67 | eference($references[$package->g |
592e0 | 65 74 4e 61 6d 65 28 29 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 76 65 | etName()]);.}.}.}..if.($this->ve |
59300 | 72 62 6f 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6f 2d 3e 77 72 69 74 65 28 28 73 74 72 69 6e | rbose).{.$this->io->write((strin |
59320 | 67 29 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 73 74 61 6c | g).$operation);.}..$this->instal |
59340 | 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 2d 3e 65 78 65 63 75 74 65 28 24 6c 6f 63 61 6c 52 65 70 | lationManager->execute($localRep |
59360 | 6f 2c 20 24 6f 70 65 72 61 74 69 6f 6e 29 3b 0a 0a 24 65 76 65 6e 74 20 3d 20 27 43 6f 6d 70 6f | o,.$operation);..$event.=.'Compo |
59380 | 73 65 72 5c 53 63 72 69 70 74 5c 53 63 72 69 70 74 45 76 65 6e 74 73 3a 3a 50 4f 53 54 5f 50 41 | ser\Script\ScriptEvents::POST_PA |
593a0 | 43 4b 41 47 45 5f 27 2e 73 74 72 74 6f 75 70 70 65 72 28 24 6f 70 65 72 61 74 69 6f 6e 2d 3e 67 | CKAGE_'.strtoupper($operation->g |
593c0 | 65 74 4a 6f 62 54 79 70 65 28 29 29 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 24 65 76 65 6e 74 | etJobType());.if.(defined($event |
593e0 | 29 20 26 26 20 24 74 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 29 20 7b 0a 24 74 68 69 73 2d | ).&&.$this->runScripts).{.$this- |
59400 | 3e 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2d 3e 64 69 73 70 61 74 63 68 50 61 63 6b 61 67 | >eventDispatcher->dispatchPackag |
59420 | 65 45 76 65 6e 74 28 63 6f 6e 73 74 61 6e 74 28 24 65 76 65 6e 74 29 2c 20 24 6f 70 65 72 61 74 | eEvent(constant($event),.$operat |
59440 | 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 72 79 52 75 6e 29 20 7b 0a 24 | ion);.}..if.(!$this->dryRun).{.$ |
59460 | 6c 6f 63 61 6c 52 65 70 6f 2d 3e 77 72 69 74 65 28 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 | localRepo->write();.}.}..return. |
59480 | 74 72 75 65 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 6c 69 61 73 50 | true;.}..private.function.aliasP |
594a0 | 61 63 6b 61 67 65 73 28 50 6c 61 74 66 6f 72 6d 52 65 70 6f 73 69 74 6f 72 79 20 24 70 6c 61 74 | ackages(PlatformRepository.$plat |
594c0 | 66 6f 72 6d 52 65 70 6f 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 26 | formRepo).{.if.(!$this->update.& |
594e0 | 26 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 69 73 4c 6f 63 6b 65 64 28 29 29 20 7b 0a 24 | &.$this->locker->isLocked()).{.$ |
59500 | 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 2d 3e 6c 6f 63 6b 65 72 2d 3e 67 65 74 41 6c 69 61 | aliases.=.$this->locker->getAlia |
59520 | 73 65 73 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 6c 69 61 73 65 73 20 3d 20 24 74 68 69 73 | ses();.}.else.{.$aliases.=.$this |
59540 | 2d 3e 70 61 63 6b 61 67 65 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 3b 0a 7d 0a 0a 66 6f 72 65 | ->package->getAliases();.}..fore |
59560 | 61 63 68 20 28 24 61 6c 69 61 73 65 73 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 70 61 63 6b | ach.($aliases.as.$alias).{.$pack |
59580 | 61 67 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 24 70 6c 61 74 66 6f 72 6d 52 65 70 | ages.=.array_merge(.$platformRep |
595a0 | 6f 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 61 6c 69 61 73 5b 27 70 61 63 6b 61 67 65 27 | o->findPackages($alias['package' |
595c0 | 5d 2c 20 24 61 6c 69 61 73 5b 27 76 65 72 73 69 6f 6e 27 5d 29 2c 0a 24 74 68 69 73 2d 3e 72 65 | ],.$alias['version']),.$this->re |
595e0 | 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 2d 3e 66 69 6e 64 50 61 63 6b 61 67 65 73 28 24 61 | positoryManager->findPackages($a |
59600 | 6c 69 61 73 5b 27 70 61 63 6b 61 67 65 27 5d 2c 20 24 61 6c 69 61 73 5b 27 76 65 72 73 69 6f 6e | lias['package'],.$alias['version |
59620 | 27 5d 29 0a 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 70 61 63 6b 61 67 65 73 20 61 73 20 24 70 61 | ']).);.foreach.($packages.as.$pa |
59640 | 63 6b 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 2d 3e 73 65 74 41 6c 69 61 73 28 24 61 6c 69 | ckage).{.$package->setAlias($ali |
59660 | 61 73 5b 27 61 6c 69 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 29 3b 0a 24 70 61 63 6b 61 67 | as['alias_normalized']);.$packag |
59680 | 65 2d 3e 73 65 74 50 72 65 74 74 79 41 6c 69 61 73 28 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 | e->setPrettyAlias($alias['alias' |
596a0 | 5d 29 3b 0a 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 28 29 2d 3e 61 | ]);.$package->getRepository()->a |
596c0 | 64 64 50 61 63 6b 61 67 65 28 24 61 6c 69 61 73 50 61 63 6b 61 67 65 20 3d 20 6e 65 77 20 41 6c | ddPackage($aliasPackage.=.new.Al |
596e0 | 69 61 73 50 61 63 6b 61 67 65 28 24 70 61 63 6b 61 67 65 2c 20 24 61 6c 69 61 73 5b 27 61 6c 69 | iasPackage($package,.$alias['ali |
59700 | 61 73 5f 6e 6f 72 6d 61 6c 69 7a 65 64 27 5d 2c 20 24 61 6c 69 61 73 5b 27 61 6c 69 61 73 27 5d | as_normalized'],.$alias['alias'] |
59720 | 29 29 3b 0a 24 61 6c 69 61 73 50 61 63 6b 61 67 65 2d 3e 73 65 74 52 6f 6f 74 50 61 63 6b 61 67 | ));.$aliasPackage->setRootPackag |
59740 | 65 41 6c 69 61 73 28 74 72 75 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 6c 69 61 73 | eAlias(true);.}.}..return.$alias |
59760 | 65 73 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 55 70 64 61 74 65 | es;.}..private.function.isUpdate |
59780 | 61 62 6c 65 28 50 61 63 6b 61 67 65 49 6e 74 65 72 66 61 63 65 20 24 70 61 63 6b 61 67 65 29 0a | able(PackageInterface.$package). |
597a0 | 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b | {.if.(!$this->updateWhitelist).{ |
597c0 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 69 73 55 70 | .throw.new.\LogicException('isUp |
597e0 | 64 61 74 65 61 62 6c 65 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 62 65 20 63 61 6c 6c 65 64 20 77 | dateable.should.only.be.called.w |
59800 | 68 65 6e 20 61 20 77 68 69 74 65 6c 69 73 74 20 69 73 20 70 72 65 73 65 6e 74 27 29 3b 0a 7d 0a | hen.a.whitelist.is.present');.}. |
59820 | 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 | .return.isset($this->updateWhite |
59840 | 6c 69 73 74 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 3b 0a 7d 0a 0a 0a | list[$package->getName()]);.}... |
59860 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 77 68 69 74 | ...........private.function.whit |
59880 | 65 6c 69 73 74 55 70 64 61 74 65 44 65 70 65 6e 64 65 6e 63 69 65 73 28 24 6c 6f 63 61 6c 52 65 | elistUpdateDependencies($localRe |
598a0 | 70 6f 2c 20 24 64 65 76 4d 6f 64 65 2c 20 61 72 72 61 79 20 24 72 6f 6f 74 52 65 71 75 69 72 65 | po,.$devMode,.array.$rootRequire |
598c0 | 73 2c 20 61 72 72 61 79 20 24 72 6f 6f 74 44 65 76 52 65 71 75 69 72 65 73 29 0a 7b 0a 69 66 20 | s,.array.$rootDevRequires).{.if. |
598e0 | 28 21 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 29 20 7b 0a 72 65 74 75 | (!$this->updateWhitelist).{.retu |
59900 | 72 6e 3b 0a 7d 0a 0a 69 66 20 28 24 64 65 76 4d 6f 64 65 29 20 7b 0a 24 72 6f 6f 74 52 65 71 75 | rn;.}..if.($devMode).{.$rootRequ |
59920 | 69 72 65 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 6f 6f 74 52 65 71 75 69 72 65 73 | ires.=.array_merge($rootRequires |
59940 | 2c 20 24 72 6f 6f 74 44 65 76 52 65 71 75 69 72 65 73 29 3b 0a 7d 0a 0a 24 73 6b 69 70 50 61 63 | ,.$rootDevRequires);.}..$skipPac |
59960 | 6b 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 72 6f 6f 74 52 | kages.=.array();.foreach.($rootR |
59980 | 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 73 6b 69 70 50 61 63 6b | equires.as.$require).{.$skipPack |
599a0 | 61 67 65 73 5b 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 5d 20 3d 20 74 72 | ages[$require->getTarget()].=.tr |
599c0 | 75 65 3b 0a 7d 0a 0a 24 70 6f 6f 6c 20 3d 20 6e 65 77 20 50 6f 6f 6c 3b 0a 24 70 6f 6f 6c 2d 3e | ue;.}..$pool.=.new.Pool;.$pool-> |
599e0 | 61 64 64 52 65 70 6f 73 69 74 6f 72 79 28 24 6c 6f 63 61 6c 52 65 70 6f 29 3b 0a 0a 24 73 65 65 | addRepository($localRepo);..$see |
59a00 | 6e 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 75 70 | n.=.array();..foreach.($this->up |
59a20 | 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 61 73 20 24 70 61 63 6b 61 67 65 4e 61 6d 65 20 3d 3e | dateWhitelist.as.$packageName.=> |
59a40 | 20 24 76 6f 69 64 29 20 7b 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 20 3d 20 6e 65 77 20 5c 53 | .$void).{.$packageQueue.=.new.\S |
59a60 | 70 6c 51 75 65 75 65 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 | plQueue;..foreach.($pool->whatPr |
59a80 | 6f 76 69 64 65 73 28 24 70 61 63 6b 61 67 65 4e 61 6d 65 29 20 61 73 20 24 64 65 70 50 61 63 6b | ovides($packageName).as.$depPack |
59aa0 | 61 67 65 29 20 7b 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 6e 71 75 65 75 65 28 24 64 | age).{.$packageQueue->enqueue($d |
59ac0 | 65 70 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 28 21 24 70 61 63 6b 61 67 65 51 | epPackage);.}..while.(!$packageQ |
59ae0 | 75 65 75 65 2d 3e 69 73 45 6d 70 74 79 28 29 29 20 7b 0a 24 70 61 63 6b 61 67 65 20 3d 20 24 70 | ueue->isEmpty()).{.$package.=.$p |
59b00 | 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 64 65 71 75 65 75 65 28 29 3b 0a 69 66 20 28 69 73 73 65 | ackageQueue->dequeue();.if.(isse |
59b20 | 74 28 24 73 65 65 6e 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 64 28 29 5d 29 29 20 7b 0a 63 | t($seen[$package->getId()])).{.c |
59b40 | 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 24 73 65 65 6e 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 49 | ontinue;.}..$seen[$package->getI |
59b60 | 64 28 29 5d 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c | d()].=.true;.$this->updateWhitel |
59b80 | 69 73 74 5b 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 74 72 75 65 3b | ist[$package->getName()].=.true; |
59ba0 | 0a 0a 24 72 65 71 75 69 72 65 73 20 3d 20 24 70 61 63 6b 61 67 65 2d 3e 67 65 74 52 65 71 75 69 | ..$requires.=.$package->getRequi |
59bc0 | 72 65 73 28 29 3b 0a 69 66 20 28 24 64 65 76 4d 6f 64 65 29 20 7b 0a 24 72 65 71 75 69 72 65 73 | res();.if.($devMode).{.$requires |
59be0 | 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 72 65 71 75 69 72 65 73 2c 20 24 70 61 63 6b 61 | .=.array_merge($requires,.$packa |
59c00 | 67 65 2d 3e 67 65 74 44 65 76 52 65 71 75 69 72 65 73 28 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 | ge->getDevRequires());.}..foreac |
59c20 | 68 20 28 24 72 65 71 75 69 72 65 73 20 61 73 20 24 72 65 71 75 69 72 65 29 20 7b 0a 24 72 65 71 | h.($requires.as.$require).{.$req |
59c40 | 75 69 72 65 50 61 63 6b 61 67 65 73 20 3d 20 24 70 6f 6f 6c 2d 3e 77 68 61 74 50 72 6f 76 69 64 | uirePackages.=.$pool->whatProvid |
59c60 | 65 73 28 24 72 65 71 75 69 72 65 2d 3e 67 65 74 54 61 72 67 65 74 28 29 29 3b 0a 0a 66 6f 72 65 | es($require->getTarget());..fore |
59c80 | 61 63 68 20 28 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 73 20 61 73 20 24 72 65 71 75 69 72 | ach.($requirePackages.as.$requir |
59ca0 | 65 50 61 63 6b 61 67 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 73 6b 69 70 50 61 63 6b 61 | ePackage).{.if.(isset($skipPacka |
59cc0 | 67 65 73 5b 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 | ges[$requirePackage->getName()]) |
59ce0 | 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 24 70 61 63 6b 61 67 65 51 75 65 75 65 2d 3e 65 | ).{.continue;.}.$packageQueue->e |
59d00 | 6e 71 75 65 75 65 28 24 72 65 71 75 69 72 65 50 61 63 6b 61 67 65 29 3b 0a 7d 0a 7d 0a 7d 0a 7d | nqueue($requirePackage);.}.}.}.} |
59d20 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | .}...........public.static.funct |
59d40 | 69 6f 6e 20 63 72 65 61 74 65 28 49 4f 49 6e 74 65 72 66 61 63 65 20 24 69 6f 2c 20 43 6f 6d 70 | ion.create(IOInterface.$io,.Comp |
59d60 | 6f 73 65 72 20 24 63 6f 6d 70 6f 73 65 72 2c 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 | oser.$composer,.EventDispatcher. |
59d80 | 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 6e 75 6c 6c 2c 20 41 75 74 6f 6c 6f 61 | $eventDispatcher.=.null,.Autoloa |
59da0 | 64 47 65 6e 65 72 61 74 6f 72 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 20 3d 20 | dGenerator.$autoloadGenerator.=. |
59dc0 | 6e 75 6c 6c 29 0a 7b 0a 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 20 3d 20 24 65 76 65 6e | null).{.$eventDispatcher.=.$even |
59de0 | 74 44 69 73 70 61 74 63 68 65 72 20 3f 3a 20 6e 65 77 20 45 76 65 6e 74 44 69 73 70 61 74 63 68 | tDispatcher.?:.new.EventDispatch |
59e00 | 65 72 28 24 63 6f 6d 70 6f 73 65 72 2c 20 24 69 6f 29 3b 0a 24 61 75 74 6f 6c 6f 61 64 47 65 6e | er($composer,.$io);.$autoloadGen |
59e20 | 65 72 61 74 6f 72 20 3d 20 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 20 3f 3a 20 6e | erator.=.$autoloadGenerator.?:.n |
59e40 | 65 77 20 41 75 74 6f 6c 6f 61 64 47 65 6e 65 72 61 74 6f 72 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 | ew.AutoloadGenerator;..return.ne |
59e60 | 77 20 73 74 61 74 69 63 28 0a 24 69 6f 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 43 6f 6e | w.static(.$io,.$composer->getCon |
59e80 | 66 69 67 28 29 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 50 61 63 6b 61 67 65 28 29 2c 0a | fig(),.$composer->getPackage(),. |
59ea0 | 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 44 6f 77 6e 6c 6f 61 64 4d 61 6e 61 67 65 72 28 29 2c | $composer->getDownloadManager(), |
59ec0 | 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 52 65 70 6f 73 69 74 6f 72 79 4d 61 6e 61 67 65 72 | .$composer->getRepositoryManager |
59ee0 | 28 29 2c 0a 24 63 6f 6d 70 6f 73 65 72 2d 3e 67 65 74 4c 6f 63 6b 65 72 28 29 2c 0a 24 63 6f 6d | (),.$composer->getLocker(),.$com |
59f00 | 70 6f 73 65 72 2d 3e 67 65 74 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 4d 61 6e 61 67 65 72 28 29 2c | poser->getInstallationManager(), |
59f20 | 0a 24 65 76 65 6e 74 44 69 73 70 61 74 63 68 65 72 2c 0a 24 61 75 74 6f 6c 6f 61 64 47 65 6e 65 | .$eventDispatcher,.$autoloadGene |
59f40 | 72 61 74 6f 72 0a 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 | rator.);.}..public.function.setA |
59f60 | 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 28 52 65 70 | dditionalInstalledRepository(Rep |
59f80 | 6f 73 69 74 6f 72 79 49 6e 74 65 72 66 61 63 65 20 24 61 64 64 69 74 69 6f 6e 61 6c 49 6e 73 74 | ositoryInterface.$additionalInst |
59fa0 | 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 64 64 69 74 69 | alledRepository).{.$this->additi |
59fc0 | 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 20 3d 20 24 61 64 64 69 74 | onalInstalledRepository.=.$addit |
59fe0 | 69 6f 6e 61 6c 49 6e 73 74 61 6c 6c 65 64 52 65 70 6f 73 69 74 6f 72 79 3b 0a 0a 72 65 74 75 72 | ionalInstalledRepository;..retur |
5a000 | 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | n.$this;.}........public.functio |
5a020 | 6e 20 73 65 74 44 72 79 52 75 6e 28 24 64 72 79 52 75 6e 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 | n.setDryRun($dryRun.=.true).{.$t |
5a040 | 68 69 73 2d 3e 64 72 79 52 75 6e 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 64 72 79 52 75 6e 3b | his->dryRun.=.(boolean).$dryRun; |
5a060 | 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ..return.$this;.}........public. |
5a080 | 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 65 66 65 72 53 6f 75 72 63 65 28 24 70 72 65 66 65 72 | function.setPreferSource($prefer |
5a0a0 | 53 6f 75 72 63 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 65 66 65 72 53 6f | Source.=.true).{.$this->preferSo |
5a0c0 | 75 72 63 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 70 72 65 66 65 72 53 6f 75 72 63 65 3b 0a | urce.=.(boolean).$preferSource;. |
5a0e0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | .return.$this;.}........public.f |
5a100 | 75 6e 63 74 69 6f 6e 20 73 65 74 55 70 64 61 74 65 28 24 75 70 64 61 74 65 20 3d 20 74 72 75 65 | unction.setUpdate($update.=.true |
5a120 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 75 | ).{.$this->update.=.(boolean).$u |
5a140 | 70 64 61 74 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 | pdate;..return.$this;.}........p |
5a160 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 76 4d 6f 64 65 28 24 64 65 76 4d 6f | ublic.function.setDevMode($devMo |
5a180 | 64 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 76 4d 6f 64 65 20 3d 20 28 62 | de.=.true).{.$this->devMode.=.(b |
5a1a0 | 6f 6f 6c 65 61 6e 29 20 24 64 65 76 4d 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b | oolean).$devMode;..return.$this; |
5a1c0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 52 75 6e | .}........public.function.setRun |
5a1e0 | 53 63 72 69 70 74 73 28 24 72 75 6e 53 63 72 69 70 74 73 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 | Scripts($runScripts.=.true).{.$t |
5a200 | 68 69 73 2d 3e 72 75 6e 53 63 72 69 70 74 73 20 3d 20 28 62 6f 6f 6c 65 61 6e 29 20 24 72 75 6e | his->runScripts.=.(boolean).$run |
5a220 | 53 63 72 69 70 74 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | Scripts;..return.$this;.}....... |
5a240 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6e 66 69 67 28 43 6f 6e 66 69 | .public.function.setConfig(Confi |
5a260 | 67 20 24 63 6f 6e 66 69 67 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 20 3d 20 24 63 6f | g.$config).{.$this->config.=.$co |
5a280 | 6e 66 69 67 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | nfig;..return.$this;.}........pu |
5a2a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f 73 65 28 24 76 65 72 62 6f 73 | blic.function.setVerbose($verbos |
5a2c0 | 65 20 3d 20 74 72 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 65 20 3d 20 28 62 6f | e.=.true).{.$this->verbose.=.(bo |
5a2e0 | 6f 6c 65 61 6e 29 20 24 76 65 72 62 6f 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a | olean).$verbose;..return.$this;. |
5a300 | 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 70 64 | }.........public.function.setUpd |
5a320 | 61 74 65 57 68 69 74 65 6c 69 73 74 28 61 72 72 61 79 20 24 70 61 63 6b 61 67 65 73 29 0a 7b 0a | ateWhitelist(array.$packages).{. |
5a340 | 24 74 68 69 73 2d 3e 75 70 64 61 74 65 57 68 69 74 65 6c 69 73 74 20 3d 20 61 72 72 61 79 5f 66 | $this->updateWhitelist.=.array_f |
5a360 | 6c 69 70 28 61 72 72 61 79 5f 6d 61 70 28 27 73 74 72 74 6f 6c 6f 77 65 72 27 2c 20 24 70 61 63 | lip(array_map('strtolower',.$pac |
5a380 | 6b 61 67 65 73 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | kages));..return.$this;.}.}.<?ph |
5a3a0 | 70 0a 0a 2f 2a 0a 20 2a 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 70 61 72 74 20 6f 66 20 43 6f | p../*..*.This.file.is.part.of.Co |
5a3c0 | 6d 70 6f 73 65 72 2e 0a 20 2a 0a 20 2a 20 28 63 29 20 4e 69 6c 73 20 41 64 65 72 6d 61 6e 6e 20 | mposer...*..*.(c).Nils.Adermann. |
5a3e0 | 3c 6e 61 64 65 72 6d 61 6e 40 6e 61 64 65 72 6d 61 6e 2e 64 65 3e 0a 20 2a 20 20 20 20 20 4a 6f | <naderman@naderman.de>..*.....Jo |
5a400 | 72 64 69 20 42 6f 67 67 69 61 6e 6f 20 3c 6a 2e 62 6f 67 67 69 61 6e 6f 40 73 65 6c 64 2e 62 65 | rdi.Boggiano.<j.boggiano@seld.be |
5a420 | 3e 0a 20 2a 0a 20 2a 20 46 6f 72 20 74 68 65 20 66 75 6c 6c 20 63 6f 70 79 72 69 67 68 74 20 61 | >..*..*.For.the.full.copyright.a |
5a440 | 6e 64 20 6c 69 63 65 6e 73 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 70 6c 65 61 73 65 20 76 | nd.license.information,.please.v |
5a460 | 69 65 77 20 74 68 65 20 4c 49 43 45 4e 53 45 0a 20 2a 20 66 69 6c 65 20 74 68 61 74 20 77 61 73 | iew.the.LICENSE..*.file.that.was |
5a480 | 20 64 69 73 74 72 69 62 75 74 65 64 20 77 69 74 68 20 74 68 69 73 20 73 6f 75 72 63 65 20 63 6f | .distributed.with.this.source.co |
5a4a0 | 64 65 2e 0a 20 2a 2f 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f | de...*/..namespace.Composer\Auto |
5a4c0 | 6c 6f 61 64 3b 0a 0a 2f 2a 2a 0a 20 2a 20 43 6c 61 73 73 4c 6f 61 64 65 72 20 69 6d 70 6c 65 6d | load;../**..*.ClassLoader.implem |
5a4e0 | 65 6e 74 73 20 61 20 50 53 52 2d 30 20 63 6c 61 73 73 20 6c 6f 61 64 65 72 0a 20 2a 0a 20 2a 20 | ents.a.PSR-0.class.loader..*..*. |
5a500 | 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 70 68 70 2d 66 69 67 2f 66 | See.https://github.com/php-fig/f |
5a520 | 69 67 2d 73 74 61 6e 64 61 72 64 73 2f 62 6c 6f 62 2f 6d 61 73 74 65 72 2f 61 63 63 65 70 74 65 | ig-standards/blob/master/accepte |
5a540 | 64 2f 50 53 52 2d 30 2e 6d 64 0a 20 2a 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 72 20 3d 20 6e | d/PSR-0.md..*..*.....$loader.=.n |
5a560 | 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 43 6c 61 73 73 4c 6f 61 64 65 | ew.\Composer\Autoload\ClassLoade |
5a580 | 72 28 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 2f 2f 20 72 65 67 69 73 74 65 72 20 63 6c 61 73 73 | r();..*..*.....//.register.class |
5a5a0 | 65 73 20 77 69 74 68 20 6e 61 6d 65 73 70 61 63 65 73 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 | es.with.namespaces..*.....$loade |
5a5c0 | 72 2d 3e 61 64 64 28 27 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 27 2c 20 5f 5f 44 49 | r->add('Symfony\Component',.__DI |
5a5e0 | 52 5f 5f 2e 27 2f 63 6f 6d 70 6f 6e 65 6e 74 27 29 3b 0a 20 2a 20 20 20 20 20 24 6c 6f 61 64 65 | R__.'/component');..*.....$loade |
5a600 | 72 2d 3e 61 64 64 28 27 53 79 6d 66 6f 6e 79 27 2c 20 20 20 20 20 20 20 20 20 20 20 5f 5f 44 49 | r->add('Symfony',...........__DI |
5a620 | 52 5f 5f 2e 27 2f 66 72 61 6d 65 77 6f 72 6b 27 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 2f 2f 20 | R__.'/framework');..*..*.....//. |
5a640 | 61 63 74 69 76 61 74 65 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 0a 20 2a 20 20 20 20 20 24 | activate.the.autoloader..*.....$ |
5a660 | 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 74 65 72 28 29 3b 0a 20 2a 0a 20 2a 20 20 20 20 20 2f 2f | loader->register();..*..*.....// |
5a680 | 20 74 6f 20 65 6e 61 62 6c 65 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 69 6e 63 6c 75 64 65 | .to.enable.searching.the.include |
5a6a0 | 20 70 61 74 68 20 28 65 67 2e 20 66 6f 72 20 50 45 41 52 20 70 61 63 6b 61 67 65 73 29 0a 20 2a | .path.(eg..for.PEAR.packages)..* |
5a6c0 | 20 20 20 20 20 24 6c 6f 61 64 65 72 2d 3e 73 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 | .....$loader->setUseIncludePath( |
5a6e0 | 74 72 75 65 29 3b 0a 20 2a 0a 20 2a 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 69 66 | true);..*..*.In.this.example,.if |
5a700 | 20 79 6f 75 20 74 72 79 20 74 6f 20 75 73 65 20 61 20 63 6c 61 73 73 20 69 6e 20 74 68 65 20 53 | .you.try.to.use.a.class.in.the.S |
5a720 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 0a 20 2a 20 6e 61 6d 65 73 70 61 63 65 20 6f 72 | ymfony\Component..*.namespace.or |
5a740 | 20 6f 6e 65 20 6f 66 20 69 74 73 20 63 68 69 6c 64 72 65 6e 20 28 53 79 6d 66 6f 6e 79 5c 43 6f | .one.of.its.children.(Symfony\Co |
5a760 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 29 2c 0a 20 | mponent\Console.for.instance),.. |
5a780 | 2a 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 77 69 6c 6c 20 66 69 72 73 74 20 6c 6f 6f 6b | *.the.autoloader.will.first.look |
5a7a0 | 20 66 6f 72 20 74 68 65 20 63 6c 61 73 73 20 75 6e 64 65 72 20 74 68 65 20 63 6f 6d 70 6f 6e 65 | .for.the.class.under.the.compone |
5a7c0 | 6e 74 2f 0a 20 2a 20 64 69 72 65 63 74 6f 72 79 2c 20 61 6e 64 20 69 74 20 77 69 6c 6c 20 74 68 | nt/..*.directory,.and.it.will.th |
5a7e0 | 65 6e 20 66 61 6c 6c 62 61 63 6b 20 74 6f 20 74 68 65 20 66 72 61 6d 65 77 6f 72 6b 2f 20 64 69 | en.fallback.to.the.framework/.di |
5a800 | 72 65 63 74 6f 72 79 20 69 66 20 6e 6f 74 0a 20 2a 20 66 6f 75 6e 64 20 62 65 66 6f 72 65 20 67 | rectory.if.not..*.found.before.g |
5a820 | 69 76 69 6e 67 20 75 70 2e 0a 20 2a 0a 20 2a 20 54 68 69 73 20 63 6c 61 73 73 20 69 73 20 6c 6f | iving.up...*..*.This.class.is.lo |
5a840 | 6f 73 65 6c 79 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 53 79 6d 66 6f 6e 79 20 55 6e 69 76 65 | osely.based.on.the.Symfony.Unive |
5a860 | 72 73 61 6c 43 6c 61 73 73 4c 6f 61 64 65 72 2e 0a 20 2a 0a 20 2a 20 40 61 75 74 68 6f 72 20 46 | rsalClassLoader...*..*.@author.F |
5a880 | 61 62 69 65 6e 20 50 6f 74 65 6e 63 69 65 72 20 3c 66 61 62 69 65 6e 40 73 79 6d 66 6f 6e 79 2e | abien.Potencier.<fabien@symfony. |
5a8a0 | 63 6f 6d 3e 0a 20 2a 20 40 61 75 74 68 6f 72 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 20 3c | com>..*.@author.Jordi.Boggiano.< |
5a8c0 | 6a 2e 62 6f 67 67 69 61 6e 6f 40 73 65 6c 64 2e 62 65 3e 0a 20 2a 2f 0a 63 6c 61 73 73 20 43 6c | j.boggiano@seld.be>..*/.class.Cl |
5a8e0 | 61 73 73 4c 6f 61 64 65 72 0a 7b 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 65 | assLoader.{.....private.$prefixe |
5a900 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 66 61 6c 6c 62 61 | s.=.array();.....private.$fallba |
5a920 | 63 6b 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 70 72 69 76 61 74 65 20 24 75 | ckDirs.=.array();.....private.$u |
5a940 | 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 70 72 69 76 61 | seIncludePath.=.false;.....priva |
5a960 | 74 65 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 70 75 62 | te.$classMap.=.array();......pub |
5a980 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 28 29 0a 20 20 20 20 7b | lic.function.getPrefixes().....{ |
5a9a0 | 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 3b | .........return.$this->prefixes; |
5a9c0 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 | .....}......public.function.getF |
5a9e0 | 61 6c 6c 62 61 63 6b 44 69 72 73 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 | allbackDirs().....{.........retu |
5aa00 | 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 3b 0a 20 20 20 20 7d 0a 0a 20 | rn.$this->fallbackDirs;.....}... |
5aa20 | 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6c 61 73 73 4d 61 70 28 29 | ...public.function.getClassMap() |
5aa40 | 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 | .....{.........return.$this->cla |
5aa60 | 73 73 4d 61 70 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 40 70 61 | ssMap;.....}....../**......*.@pa |
5aa80 | 72 61 6d 20 61 72 72 61 79 20 24 63 6c 61 73 73 4d 61 70 20 43 6c 61 73 73 20 74 6f 20 66 69 6c | ram.array.$classMap.Class.to.fil |
5aaa0 | 65 6e 61 6d 65 20 6d 61 70 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e | ename.map......*/.....public.fun |
5aac0 | 63 74 69 6f 6e 20 61 64 64 43 6c 61 73 73 4d 61 70 28 61 72 72 61 79 20 24 63 6c 61 73 73 4d 61 | ction.addClassMap(array.$classMa |
5aae0 | 70 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 | p).....{.........if.($this->clas |
5ab00 | 73 4d 61 70 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 | sMap).{.............$this->class |
5ab20 | 4d 61 70 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 | Map.=.array_merge($this->classMa |
5ab40 | 70 2c 20 24 63 6c 61 73 73 4d 61 70 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a | p,.$classMap);.........}.else.{. |
5ab60 | 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 20 3d 20 24 63 | ............$this->classMap.=.$c |
5ab80 | 6c 61 73 73 4d 61 70 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a | lassMap;.........}.....}....../* |
5aba0 | 2a 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 61 20 73 65 74 20 6f 66 20 63 6c 61 73 | *......*.Registers.a.set.of.clas |
5abc0 | 73 65 73 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 73 74 72 69 6e 67 20 | ses......*......*.@param.string. |
5abe0 | 20 20 20 20 20 20 24 70 72 65 66 69 78 20 54 68 65 20 63 6c 61 73 73 65 73 20 70 72 65 66 69 78 | ......$prefix.The.classes.prefix |
5ac00 | 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 61 72 72 61 79 7c 73 74 72 69 6e 67 20 24 70 61 74 | ......*.@param.array|string.$pat |
5ac20 | 68 73 20 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 28 73 29 20 6f 66 20 74 68 65 20 63 6c 61 73 73 | hs..The.location(s).of.the.class |
5ac40 | 65 73 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 | es......*/.....public.function.a |
5ac60 | 64 64 28 24 70 72 65 66 69 78 2c 20 24 70 61 74 68 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 | dd($prefix,.$paths).....{....... |
5ac80 | 20 20 69 66 20 28 21 24 70 72 65 66 69 78 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f | ..if.(!$prefix).{.............fo |
5aca0 | 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 68 73 20 61 73 20 24 70 61 74 68 29 20 | reach.((array).$paths.as.$path). |
5acc0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 | {.................$this->fallbac |
5ace0 | 6b 44 69 72 73 5b 5d 20 3d 20 24 70 61 74 68 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a | kDirs[].=.$path;.............}.. |
5ad00 | 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 | ............return;.........}... |
5ad20 | 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 5b | ......if.(isset($this->prefixes[ |
5ad40 | 24 70 72 65 66 69 78 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e | $prefix])).{.............$this-> |
5ad60 | 70 72 65 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 | prefixes[$prefix].=.array_merge( |
5ad80 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 | .................$this->prefixes |
5ada0 | 5b 24 70 72 65 66 69 78 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 | [$prefix],.................(arra |
5adc0 | 79 29 20 24 70 61 74 68 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 20 20 20 20 20 | y).$paths.............);........ |
5ade0 | 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 65 | .}.else.{.............$this->pre |
5ae00 | 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 73 3b | fixes[$prefix].=.(array).$paths; |
5ae20 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a | .........}.....}....../**......* |
5ae40 | 20 54 75 72 6e 73 20 6f 6e 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 69 6e 63 6c 75 64 65 20 | .Turns.on.searching.the.include. |
5ae60 | 70 61 74 68 20 66 6f 72 20 63 6c 61 73 73 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 2a 0a 20 20 20 | path.for.class.files.......*.... |
5ae80 | 20 20 2a 20 40 70 61 72 61 6d 20 62 6f 6f 6c 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 0a | ..*.@param.bool.$useIncludePath. |
5aea0 | 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 55 | .....*/.....public.function.setU |
5aec0 | 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 0a 20 | seIncludePath($useIncludePath).. |
5aee0 | 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 | ...{.........$this->useIncludePa |
5af00 | 74 68 20 3d 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 | th.=.$useIncludePath;.....}..... |
5af20 | 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 43 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 63 68 65 63 6b | ./**......*.Can.be.used.to.check |
5af40 | 20 69 66 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 20 75 73 65 73 20 74 68 65 20 69 6e 63 6c | .if.the.autoloader.uses.the.incl |
5af60 | 75 64 65 20 70 61 74 68 20 74 6f 20 63 68 65 63 6b 0a 20 20 20 20 20 2a 20 66 6f 72 20 63 6c 61 | ude.path.to.check......*.for.cla |
5af80 | 73 73 65 73 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 72 65 74 75 72 6e 20 62 6f 6f 6c | sses.......*......*.@return.bool |
5afa0 | 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ......*/.....public.function.get |
5afc0 | 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 | UseIncludePath().....{.........r |
5afe0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 3b 0a 20 20 20 | eturn.$this->useIncludePath;.... |
5b000 | 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 52 65 67 69 73 74 65 72 73 20 74 68 69 | .}....../**......*.Registers.thi |
5b020 | 73 20 69 6e 73 74 61 6e 63 65 20 61 73 20 61 6e 20 61 75 74 6f 6c 6f 61 64 65 72 2e 0a 20 20 20 | s.instance.as.an.autoloader..... |
5b040 | 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d 20 62 6f 6f 6c 20 24 70 72 65 70 65 6e 64 20 | ..*......*.@param.bool.$prepend. |
5b060 | 57 68 65 74 68 65 72 20 74 6f 20 70 72 65 70 65 6e 64 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 | Whether.to.prepend.the.autoloade |
5b080 | 72 20 6f 72 20 6e 6f 74 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 | r.or.not......*/.....public.func |
5b0a0 | 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 24 70 72 65 70 65 6e 64 20 3d 20 66 61 6c 73 65 29 0a | tion.register($prepend.=.false). |
5b0c0 | 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 | ....{.........spl_autoload_regis |
5b0e0 | 74 65 72 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 2c 20 74 | ter(array($this,.'loadClass'),.t |
5b100 | 72 75 65 2c 20 24 70 72 65 70 65 6e 64 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 | rue,.$prepend);.....}....../**.. |
5b120 | 20 20 20 20 2a 20 55 6e 72 65 67 69 73 74 65 72 73 20 74 68 69 73 20 69 6e 73 74 61 6e 63 65 20 | ....*.Unregisters.this.instance. |
5b140 | 61 73 20 61 6e 20 61 75 74 6f 6c 6f 61 64 65 72 2e 0a 20 20 20 20 20 2a 2f 0a 20 20 20 20 70 75 | as.an.autoloader.......*/.....pu |
5b160 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 72 65 67 69 73 74 65 72 28 29 0a 20 20 20 20 7b | blic.function.unregister().....{ |
5b180 | 0a 20 20 20 20 20 20 20 20 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 75 6e 72 65 67 69 73 74 65 72 | .........spl_autoload_unregister |
5b1a0 | 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 29 3b 0a 20 20 20 | (array($this,.'loadClass'));.... |
5b1c0 | 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 4c 6f 61 64 73 20 74 68 65 20 67 69 76 | .}....../**......*.Loads.the.giv |
5b1e0 | 65 6e 20 63 6c 61 73 73 20 6f 72 20 69 6e 74 65 72 66 61 63 65 2e 0a 20 20 20 20 20 2a 0a 20 20 | en.class.or.interface.......*... |
5b200 | 20 20 20 2a 20 40 70 61 72 61 6d 20 20 73 74 72 69 6e 67 20 20 20 20 24 63 6c 61 73 73 20 54 68 | ...*.@param..string....$class.Th |
5b220 | 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6c 61 73 73 0a 20 20 20 20 20 2a 20 40 72 65 74 75 | e.name.of.the.class......*.@retu |
5b240 | 72 6e 20 62 6f 6f 6c 7c 6e 75 6c 6c 20 54 72 75 65 2c 20 69 66 20 6c 6f 61 64 65 64 0a 20 20 20 | rn.bool|null.True,.if.loaded.... |
5b260 | 20 20 2a 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 6f 61 64 43 6c 61 | ..*/.....public.function.loadCla |
5b280 | 73 73 28 24 63 6c 61 73 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 66 69 | ss($class).....{.........if.($fi |
5b2a0 | 6c 65 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 29 20 7b 0a | le.=.$this->findFile($class)).{. |
5b2c0 | 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 63 6c 75 64 65 20 24 66 69 6c 65 3b 0a 0a 20 20 20 20 | ............include.$file;...... |
5b2e0 | 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | ........return.true;.........}.. |
5b300 | 20 20 20 7d 0a 0a 20 20 20 20 2f 2a 2a 0a 20 20 20 20 20 2a 20 46 69 6e 64 73 20 74 68 65 20 70 | ...}....../**......*.Finds.the.p |
5b320 | 61 74 68 20 74 6f 20 74 68 65 20 66 69 6c 65 20 77 68 65 72 65 20 74 68 65 20 63 6c 61 73 73 20 | ath.to.the.file.where.the.class. |
5b340 | 69 73 20 64 65 66 69 6e 65 64 2e 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 70 61 72 61 6d | is.defined.......*......*.@param |
5b360 | 20 73 74 72 69 6e 67 20 24 63 6c 61 73 73 20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 | .string.$class.The.name.of.the.c |
5b380 | 6c 61 73 73 0a 20 20 20 20 20 2a 0a 20 20 20 20 20 2a 20 40 72 65 74 75 72 6e 20 73 74 72 69 6e | lass......*......*.@return.strin |
5b3a0 | 67 7c 6e 75 6c 6c 20 54 68 65 20 70 61 74 68 2c 20 69 66 20 66 6f 75 6e 64 0a 20 20 20 20 20 2a | g|null.The.path,.if.found......* |
5b3c0 | 2f 0a 20 20 20 20 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 69 6c 65 28 24 | /.....public.function.findFile($ |
5b3e0 | 63 6c 61 73 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 | class).....{.........if.(isset($ |
5b400 | 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 20 20 20 20 20 | this->classMap[$class])).{...... |
5b420 | 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 5b 24 63 | .......return.$this->classMap[$c |
5b440 | 6c 61 73 73 5d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 27 5c | lass];.........}..........if.('\ |
5b460 | 5c 27 20 3d 3d 20 24 63 6c 61 73 73 5b 30 5d 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 | \'.==.$class[0]).{.............$ |
5b480 | 63 6c 61 73 73 20 3d 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 31 29 3b 0a 20 20 20 20 20 | class.=.substr($class,.1);...... |
5b4a0 | 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 | ...}..........if.(false.!==.$pos |
5b4c0 | 20 3d 20 73 74 72 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 27 5c 5c 27 29 29 20 7b 0a 20 20 20 20 | .=.strrpos($class,.'\\')).{..... |
5b4e0 | 20 20 20 20 20 20 20 20 2f 2f 20 6e 61 6d 65 73 70 61 63 65 64 20 63 6c 61 73 73 20 6e 61 6d 65 | ........//.namespaced.class.name |
5b500 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 63 6c 61 73 73 50 61 74 68 20 3d 20 73 74 72 5f 72 65 | .............$classPath.=.str_re |
5b520 | 70 6c 61 63 65 28 27 5c 5c 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2c | place('\\',.DIRECTORY_SEPARATOR, |
5b540 | 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 30 2c 20 24 70 6f 73 29 29 20 2e 20 44 49 52 45 | .substr($class,.0,.$pos))...DIRE |
5b560 | 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 63 6c | CTORY_SEPARATOR;.............$cl |
5b580 | 61 73 73 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 24 70 6f 73 20 2b 20 | assName.=.substr($class,.$pos.+. |
5b5a0 | 31 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | 1);.........}.else.{............ |
5b5c0 | 20 2f 2f 20 50 45 41 52 2d 6c 69 6b 65 20 63 6c 61 73 73 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 | .//.PEAR-like.class.name........ |
5b5e0 | 20 20 20 20 20 24 63 6c 61 73 73 50 61 74 68 20 3d 20 6e 75 6c 6c 3b 0a 20 20 20 20 20 20 20 20 | .....$classPath.=.null;......... |
5b600 | 20 20 20 20 24 63 6c 61 73 73 4e 61 6d 65 20 3d 20 24 63 6c 61 73 73 3b 0a 20 20 20 20 20 20 20 | ....$className.=.$class;........ |
5b620 | 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 63 6c 61 73 73 50 61 74 68 20 2e 3d 20 73 74 72 5f 72 65 | .}..........$classPath..=.str_re |
5b640 | 70 6c 61 63 65 28 27 5f 27 2c 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2c 20 | place('_',.DIRECTORY_SEPARATOR,. |
5b660 | 24 63 6c 61 73 73 4e 61 6d 65 29 20 2e 20 27 2e 70 68 70 27 3b 0a 0a 20 20 20 20 20 20 20 20 66 | $className)...'.php';..........f |
5b680 | 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 20 61 73 20 24 70 72 65 66 | oreach.($this->prefixes.as.$pref |
5b6a0 | 69 78 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 30 | ix.=>.$dirs).{.............if.(0 |
5b6c0 | 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 24 70 72 65 66 69 78 29 29 20 7b 0a | .===.strpos($class,.$prefix)).{. |
5b6e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 | ................foreach.($dirs.a |
5b700 | 73 20 24 64 69 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 | s.$dir).{.....................if |
5b720 | 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 | .(file_exists($dir...DIRECTORY_S |
5b740 | 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 29 29 20 7b 0a 20 20 20 20 20 20 | EPARATOR...$classPath)).{....... |
5b760 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 64 69 72 20 2e 20 | ..................return.$dir... |
5b780 | 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 | DIRECTORY_SEPARATOR...$classPath |
5b7a0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | ;.....................}......... |
5b7c0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | ........}.............}......... |
5b7e0 | 7d 0a 0a 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 | }..........foreach.($this->fallb |
5b800 | 61 63 6b 44 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 | ackDirs.as.$dir).{.............i |
5b820 | 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 28 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f | f.(file_exists($dir...DIRECTORY_ |
5b840 | 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 29 29 20 7b 0a 20 20 20 20 20 | SEPARATOR...$classPath)).{...... |
5b860 | 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f | ...........return.$dir...DIRECTO |
5b880 | 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 3b 0a 20 20 20 20 20 | RY_SEPARATOR...$classPath;...... |
5b8a0 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 | .......}.........}..........if.( |
5b8c0 | 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 26 26 20 24 66 69 6c 65 20 3d | $this->useIncludePath.&&.$file.= |
5b8e0 | 20 73 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f 69 6e 63 6c 75 64 65 5f 70 61 74 68 28 24 63 6c | .stream_resolve_include_path($cl |
5b900 | 61 73 73 50 61 74 68 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 | assPath)).{.............return.$ |
5b920 | 66 69 6c 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 5b 0a 20 20 20 20 22 41 | file;.........}.....}.}.[....."A |
5b940 | 46 4c 2d 31 2e 31 22 2c 20 22 41 46 4c 2d 31 2e 32 22 2c 20 22 41 46 4c 2d 32 2e 30 22 2c 20 22 | FL-1.1",."AFL-1.2",."AFL-2.0",." |
5b960 | 41 46 4c 2d 32 2e 31 22 2c 20 22 41 46 4c 2d 33 2e 30 22 2c 20 22 41 50 4c 2d 31 2e 30 22 2c 0a | AFL-2.1",."AFL-3.0",."APL-1.0",. |
5b980 | 20 20 20 20 22 41 4e 54 4c 52 2d 50 44 22 2c 20 22 41 70 61 63 68 65 2d 31 2e 30 22 2c 20 22 41 | ...."ANTLR-PD",."Apache-1.0",."A |
5b9a0 | 70 61 63 68 65 2d 31 2e 31 22 2c 20 22 41 70 61 63 68 65 2d 32 2e 30 22 2c 20 22 41 50 53 4c 2d | pache-1.1",."Apache-2.0",."APSL- |
5b9c0 | 31 2e 30 22 2c 0a 20 20 20 20 22 41 50 53 4c 2d 31 2e 31 22 2c 20 22 41 50 53 4c 2d 31 2e 32 22 | 1.0",....."APSL-1.1",."APSL-1.2" |
5b9e0 | 2c 20 22 41 50 53 4c 2d 32 2e 30 22 2c 20 22 41 72 74 69 73 74 69 63 2d 31 2e 30 22 2c 20 22 41 | ,."APSL-2.0",."Artistic-1.0",."A |
5ba00 | 72 74 69 73 74 69 63 2d 32 2e 30 22 2c 20 22 41 41 4c 22 2c 0a 20 20 20 20 22 42 53 4c 2d 31 2e | rtistic-2.0",."AAL",....."BSL-1. |
5ba20 | 30 22 2c 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 22 2c 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 | 0",."BSD-2-Clause",."BSD-2-Claus |
5ba40 | 65 2d 4e 65 74 42 53 44 22 2c 20 22 42 53 44 2d 32 2d 43 6c 61 75 73 65 2d 46 72 65 65 42 53 44 | e-NetBSD",."BSD-2-Clause-FreeBSD |
5ba60 | 22 2c 0a 20 20 20 20 22 42 53 44 2d 33 2d 43 6c 61 75 73 65 22 2c 20 22 42 53 44 2d 34 2d 43 6c | ",....."BSD-3-Clause",."BSD-4-Cl |
5ba80 | 61 75 73 65 22 2c 20 22 42 53 44 2d 34 2d 43 6c 61 75 73 65 2d 55 43 22 2c 20 22 43 45 43 49 4c | ause",."BSD-4-Clause-UC",."CECIL |
5baa0 | 4c 2d 31 2e 30 22 2c 0a 20 20 20 20 22 43 45 43 49 4c 4c 2d 31 2e 31 22 2c 20 22 43 45 43 49 4c | L-1.0",....."CECILL-1.1",."CECIL |
5bac0 | 4c 2d 32 2e 30 22 2c 20 22 43 45 43 49 4c 4c 2d 42 22 2c 20 22 43 45 43 49 4c 4c 2d 43 22 2c 20 | L-2.0",."CECILL-B",."CECILL-C",. |
5bae0 | 22 43 6c 41 72 74 69 73 74 69 63 22 2c 0a 20 20 20 20 22 43 4e 52 49 2d 50 79 74 68 6f 6e 2d 47 | "ClArtistic",....."CNRI-Python-G |
5bb00 | 50 4c 2d 43 6f 6d 70 61 74 69 62 6c 65 22 2c 20 22 43 4e 52 49 2d 50 79 74 68 6f 6e 22 2c 20 22 | PL-Compatible",."CNRI-Python",." |
5bb20 | 43 44 44 4c 2d 31 2e 30 22 2c 20 22 43 44 44 4c 2d 31 2e 31 22 2c 0a 20 20 20 20 22 43 50 41 4c | CDDL-1.0",."CDDL-1.1",....."CPAL |
5bb40 | 2d 31 2e 30 22 2c 20 22 43 50 4c 2d 31 2e 30 22 2c 20 22 43 41 54 4f 53 4c 2d 31 2e 31 22 2c 20 | -1.0",."CPL-1.0",."CATOSL-1.1",. |
5bb60 | 22 43 43 2d 42 59 2d 31 2e 30 22 2c 20 22 43 43 2d 42 59 2d 32 2e 30 22 2c 20 22 43 43 2d 42 59 | "CC-BY-1.0",."CC-BY-2.0",."CC-BY |
5bb80 | 2d 32 2e 35 22 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 33 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e | -2.5",....."CC-BY-3.0",."CC-BY-N |
5bba0 | 44 2d 31 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e 44 2d 32 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e | D-1.0",."CC-BY-ND-2.0",."CC-BY-N |
5bbc0 | 44 2d 32 2e 35 22 2c 20 22 43 43 2d 42 59 2d 4e 44 2d 33 2e 30 22 2c 0a 20 20 20 20 22 43 43 2d | D-2.5",."CC-BY-ND-3.0",....."CC- |
5bbe0 | 42 59 2d 4e 43 2d 31 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 32 2e 30 22 2c 20 22 43 43 2d | BY-NC-1.0",."CC-BY-NC-2.0",."CC- |
5bc00 | 42 59 2d 4e 43 2d 32 2e 35 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 33 2e 30 22 2c 0a 20 20 20 20 | BY-NC-2.5",."CC-BY-NC-3.0",..... |
5bc20 | 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 31 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d | "CC-BY-NC-ND-1.0",."CC-BY-NC-ND- |
5bc40 | 32 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 4e 44 2d 32 2e 35 22 2c 20 22 43 43 2d 42 59 2d | 2.0",."CC-BY-NC-ND-2.5",."CC-BY- |
5bc60 | 4e 43 2d 4e 44 2d 33 2e 30 22 2c 0a 20 20 20 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 31 2e 30 | NC-ND-3.0",....."CC-BY-NC-SA-1.0 |
5bc80 | 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 32 2e 30 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d | ",."CC-BY-NC-SA-2.0",."CC-BY-NC- |
5bca0 | 53 41 2d 32 2e 35 22 2c 20 22 43 43 2d 42 59 2d 4e 43 2d 53 41 2d 33 2e 30 22 2c 0a 20 20 20 20 | SA-2.5",."CC-BY-NC-SA-3.0",..... |
5bcc0 | 22 43 43 2d 42 59 2d 53 41 2d 31 2e 30 22 2c 20 22 43 43 2d 42 59 2d 53 41 2d 32 2e 30 22 2c 20 | "CC-BY-SA-1.0",."CC-BY-SA-2.0",. |
5bce0 | 22 43 43 2d 42 59 2d 53 41 2d 32 2e 35 22 2c 20 22 43 43 2d 42 59 2d 53 41 2d 33 2e 30 22 2c 20 | "CC-BY-SA-2.5",."CC-BY-SA-3.0",. |
5bd00 | 22 43 43 30 2d 31 2e 30 22 2c 0a 20 20 20 20 22 43 55 41 2d 4f 50 4c 2d 31 2e 30 22 2c 20 22 45 | "CC0-1.0",....."CUA-OPL-1.0",."E |
5bd20 | 50 4c 2d 31 2e 30 22 2c 20 22 65 43 6f 73 2d 32 2e 30 22 2c 20 22 45 43 4c 2d 31 2e 30 22 2c 20 | PL-1.0",."eCos-2.0",."ECL-1.0",. |
5bd40 | 22 45 43 4c 2d 32 2e 30 22 2c 20 22 45 46 4c 2d 31 2e 30 22 2c 0a 20 20 20 20 22 45 46 4c 2d 32 | "ECL-2.0",."EFL-1.0",....."EFL-2 |
5bd60 | 2e 30 22 2c 20 22 45 6e 74 65 73 73 61 22 2c 20 22 45 72 6c 50 4c 2d 31 2e 31 22 2c 20 22 45 55 | .0",."Entessa",."ErlPL-1.1",."EU |
5bd80 | 44 61 74 61 67 72 69 64 22 2c 20 22 45 55 50 4c 2d 31 2e 30 22 2c 20 22 45 55 50 4c 2d 31 2e 31 | Datagrid",."EUPL-1.0",."EUPL-1.1 |
5bda0 | 22 2c 0a 20 20 20 20 22 46 61 69 72 22 2c 20 22 46 72 61 6d 65 77 6f 72 78 2d 31 2e 30 22 2c 20 | ",....."Fair",."Frameworx-1.0",. |
5bdc0 | 22 41 47 50 4c 2d 33 2e 30 22 2c 20 22 47 46 44 4c 2d 31 2e 31 22 2c 20 22 47 46 44 4c 2d 31 2e | "AGPL-3.0",."GFDL-1.1",."GFDL-1. |
5bde0 | 32 22 2c 20 22 47 46 44 4c 2d 31 2e 33 22 2c 0a 20 20 20 20 22 47 50 4c 2d 31 2e 30 22 2c 20 22 | 2",."GFDL-1.3",....."GPL-1.0",." |
5be00 | 47 50 4c 2d 31 2e 30 2b 22 2c 20 22 47 50 4c 2d 32 2e 30 22 2c 20 22 47 50 4c 2d 32 2e 30 2b 22 | GPL-1.0+",."GPL-2.0",."GPL-2.0+" |
5be20 | 2c 0a 20 20 20 20 22 47 50 4c 2d 32 2e 30 2d 77 69 74 68 2d 61 75 74 6f 63 6f 6e 66 2d 65 78 63 | ,....."GPL-2.0-with-autoconf-exc |
5be40 | 65 70 74 69 6f 6e 22 2c 20 22 47 50 4c 2d 32 2e 30 2d 77 69 74 68 2d 62 69 73 6f 6e 2d 65 78 63 | eption",."GPL-2.0-with-bison-exc |
5be60 | 65 70 74 69 6f 6e 22 2c 0a 20 20 20 20 22 47 50 4c 2d 32 2e 30 2d 77 69 74 68 2d 63 6c 61 73 73 | eption",....."GPL-2.0-with-class |
5be80 | 70 61 74 68 2d 65 78 63 65 70 74 69 6f 6e 22 2c 20 22 47 50 4c 2d 32 2e 30 2d 77 69 74 68 2d 66 | path-exception",."GPL-2.0-with-f |
5bea0 | 6f 6e 74 2d 65 78 63 65 70 74 69 6f 6e 22 2c 0a 20 20 20 20 22 47 50 4c 2d 32 2e 30 2d 77 69 74 | ont-exception",....."GPL-2.0-wit |
5bec0 | 68 2d 47 43 43 2d 65 78 63 65 70 74 69 6f 6e 22 2c 20 22 47 50 4c 2d 33 2e 30 22 2c 20 22 47 50 | h-GCC-exception",."GPL-3.0",."GP |
5bee0 | 4c 2d 33 2e 30 2b 22 2c 0a 20 20 20 20 22 47 50 4c 2d 33 2e 30 2d 77 69 74 68 2d 61 75 74 6f 63 | L-3.0+",....."GPL-3.0-with-autoc |
5bf00 | 6f 6e 66 2d 65 78 63 65 70 74 69 6f 6e 22 2c 20 22 47 50 4c 2d 33 2e 30 2d 77 69 74 68 2d 47 43 | onf-exception",."GPL-3.0-with-GC |
5bf20 | 43 2d 65 78 63 65 70 74 69 6f 6e 22 2c 20 22 4c 47 50 4c 2d 32 2e 31 22 2c 0a 20 20 20 20 22 4c | C-exception",."LGPL-2.1",....."L |
5bf40 | 47 50 4c 2d 32 2e 31 2b 22 2c 20 22 4c 47 50 4c 2d 33 2e 30 22 2c 20 22 4c 47 50 4c 2d 33 2e 30 | GPL-2.1+",."LGPL-3.0",."LGPL-3.0 |
5bf60 | 2b 22 2c 20 22 4c 47 50 4c 2d 32 2e 30 22 2c 20 22 4c 47 50 4c 2d 32 2e 30 2b 22 2c 20 22 67 53 | +",."LGPL-2.0",."LGPL-2.0+",."gS |
5bf80 | 4f 41 50 2d 31 2e 33 62 22 2c 0a 20 20 20 20 22 48 50 4e 44 22 2c 20 22 49 50 4c 2d 31 2e 30 22 | OAP-1.3b",....."HPND",."IPL-1.0" |
5bfa0 | 2c 20 22 49 50 41 22 2c 20 22 49 53 43 22 2c 20 22 4c 50 50 4c 2d 31 2e 30 22 2c 20 22 4c 50 50 | ,."IPA",."ISC",."LPPL-1.0",."LPP |
5bfc0 | 4c 2d 31 2e 31 22 2c 20 22 4c 50 50 4c 2d 31 2e 32 22 2c 0a 20 20 20 20 22 4c 50 50 4c 2d 31 2e | L-1.1",."LPPL-1.2",....."LPPL-1. |
5bfe0 | 33 63 22 2c 20 22 4c 69 62 70 6e 67 22 2c 20 22 4c 50 4c 2d 31 2e 30 22 2c 20 22 4c 50 4c 2d 31 | 3c",."Libpng",."LPL-1.0",."LPL-1 |
5c000 | 2e 30 32 22 2c 20 22 4d 53 2d 50 4c 22 2c 20 22 4d 53 2d 52 4c 22 2c 20 22 4d 69 72 4f 53 22 2c | .02",."MS-PL",."MS-RL",."MirOS", |
5c020 | 0a 20 20 20 20 22 4d 49 54 22 2c 20 22 4d 6f 74 6f 73 6f 74 6f 22 2c 20 22 4d 50 4c 2d 31 2e 30 | ....."MIT",."Motosoto",."MPL-1.0 |
5c040 | 22 2c 20 22 4d 50 4c 2d 31 2e 31 22 2c 20 22 4d 50 4c 2d 32 2e 30 22 2c 20 22 4d 75 6c 74 69 63 | ",."MPL-1.1",."MPL-2.0",."Multic |
5c060 | 73 22 2c 20 22 4e 41 53 41 2d 31 2e 33 22 2c 0a 20 20 20 20 22 4e 61 75 6d 65 6e 22 2c 20 22 4e | s",."NASA-1.3",....."Naumen",."N |
5c080 | 47 50 4c 22 2c 20 22 4e 6f 6b 69 61 22 2c 20 22 4e 50 4f 53 4c 2d 33 2e 30 22 2c 20 22 4e 54 50 | GPL",."Nokia",."NPOSL-3.0",."NTP |
5c0a0 | 22 2c 20 22 4f 43 4c 43 2d 32 2e 30 22 2c 20 22 4f 44 62 4c 2d 31 2e 30 22 2c 0a 20 20 20 20 22 | ",."OCLC-2.0",."ODbL-1.0",....." |
5c0c0 | 50 44 44 4c 2d 31 2e 30 22 2c 20 22 4f 47 54 53 4c 22 2c 20 22 4f 53 4c 2d 31 2e 30 22 2c 20 22 | PDDL-1.0",."OGTSL",."OSL-1.0",." |
5c0e0 | 4f 53 4c 2d 32 2e 30 22 2c 20 22 4f 53 4c 2d 32 2e 31 22 2c 20 22 4f 53 4c 2d 33 2e 30 22 2c 0a | OSL-2.0",."OSL-2.1",."OSL-3.0",. |
5c100 | 20 20 20 20 22 4f 4c 44 41 50 2d 32 2e 38 22 2c 20 22 4f 70 65 6e 53 53 4c 22 2c 20 22 50 48 50 | ...."OLDAP-2.8",."OpenSSL",."PHP |
5c120 | 2d 33 2e 30 22 2c 20 22 50 48 50 2d 33 2e 30 31 22 2c 20 22 50 6f 73 74 67 72 65 53 51 4c 22 2c | -3.0",."PHP-3.01",."PostgreSQL", |
5c140 | 20 22 50 79 74 68 6f 6e 2d 32 2e 30 22 2c 0a 20 20 20 20 22 51 50 4c 2d 31 2e 30 22 2c 20 22 52 | ."Python-2.0",....."QPL-1.0",."R |
5c160 | 50 53 4c 2d 31 2e 30 22 2c 20 22 52 50 4c 2d 31 2e 35 22 2c 20 22 52 48 65 43 6f 73 2d 31 2e 31 | PSL-1.0",."RPL-1.5",."RHeCos-1.1 |
5c180 | 22 2c 20 22 52 53 43 50 4c 22 2c 20 22 52 75 62 79 22 2c 20 22 53 41 58 2d 50 44 22 2c 0a 20 20 | ",."RSCPL",."Ruby",."SAX-PD",... |
5c1a0 | 20 20 22 4f 46 4c 2d 31 2e 30 22 2c 20 22 4f 46 4c 2d 31 2e 31 22 2c 20 22 53 69 6d 50 4c 2d 32 | .."OFL-1.0",."OFL-1.1",."SimPL-2 |
5c1c0 | 2e 30 22 2c 20 22 53 6c 65 65 70 79 63 61 74 22 2c 20 22 53 75 67 61 72 43 52 4d 2d 31 2e 31 2e | .0",."Sleepycat",."SugarCRM-1.1. |
5c1e0 | 33 22 2c 20 22 53 50 4c 2d 31 2e 30 22 2c 0a 20 20 20 20 22 57 61 74 63 6f 6d 2d 31 2e 30 22 2c | 3",."SPL-1.0",....."Watcom-1.0", |
5c200 | 20 22 4e 43 53 41 22 2c 20 22 56 53 4c 2d 31 2e 30 22 2c 20 22 57 33 43 22 2c 20 22 57 58 77 69 | ."NCSA",."VSL-1.0",."W3C",."WXwi |
5c220 | 6e 64 6f 77 73 22 2c 20 22 58 6e 65 74 22 2c 20 22 58 46 72 65 65 38 36 2d 31 2e 31 22 2c 0a 20 | ndows",."Xnet",."XFree86-1.1",.. |
5c240 | 20 20 20 22 59 50 4c 2d 31 2e 30 22 2c 20 22 59 50 4c 2d 31 2e 31 22 2c 20 22 5a 69 6d 62 72 61 | ..."YPL-1.0",."YPL-1.1",."Zimbra |
5c260 | 2d 31 2e 33 22 2c 20 22 5a 6c 69 62 22 2c 20 22 5a 50 4c 2d 31 2e 31 22 2c 20 22 5a 50 4c 2d 32 | -1.3",."Zlib",."ZPL-1.1",."ZPL-2 |
5c280 | 2e 30 22 2c 20 22 5a 50 4c 2d 32 2e 31 22 0a 5d 7b 0a 20 20 20 20 22 6e 61 6d 65 22 3a 20 22 50 | .0",."ZPL-2.1".]{....."name":."P |
5c2a0 | 61 63 6b 61 67 65 22 2c 0a 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 | ackage",....."type":."object",.. |
5c2c0 | 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 66 61 6c 73 65 | ..."additionalProperties":.false |
5c2e0 | 2c 0a 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 22 6e | ,....."properties":.{........."n |
5c300 | 61 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 | ame":.{............."type":."str |
5c320 | 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a | ing",............."description": |
5c340 | 20 22 50 61 63 6b 61 67 65 20 6e 61 6d 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20 27 76 65 6e 64 6f | ."Package.name,.including.'vendo |
5c360 | 72 2d 6e 61 6d 65 2f 27 20 70 72 65 66 69 78 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | r-name/'.prefix.",............." |
5c380 | 72 65 71 75 69 72 65 64 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 | required":.true.........},...... |
5c3a0 | 20 20 20 22 74 79 70 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 | ..."type":.{............."descri |
5c3c0 | 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 74 79 70 65 2c 20 65 69 74 68 65 72 20 27 6c | ption":."Package.type,.either.'l |
5c3e0 | 69 62 72 61 72 79 27 20 66 6f 72 20 63 6f 6d 6d 6f 6e 20 70 61 63 6b 61 67 65 73 2c 20 27 63 6f | ibrary'.for.common.packages,.'co |
5c400 | 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 27 20 66 6f 72 20 63 75 73 74 6f 6d 20 69 6e 73 | mposer-installer'.for.custom.ins |
5c420 | 74 61 6c 6c 65 72 73 2c 20 27 6d 65 74 61 70 61 63 6b 61 67 65 27 20 66 6f 72 20 65 6d 70 74 79 | tallers,.'metapackage'.for.empty |
5c440 | 20 70 61 63 6b 61 67 65 73 2c 20 6f 72 20 61 20 63 75 73 74 6f 6d 20 74 79 70 65 20 64 65 66 69 | .packages,.or.a.custom.type.defi |
5c460 | 6e 65 64 20 62 79 20 77 68 61 74 65 76 65 72 20 70 72 6f 6a 65 63 74 20 74 68 69 73 20 70 61 63 | ned.by.whatever.project.this.pac |
5c480 | 6b 61 67 65 20 61 70 70 6c 69 65 73 20 74 6f 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | kage.applies.to.",............." |
5c4a0 | 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 | type":."string".........},...... |
5c4c0 | 20 20 20 22 74 61 72 67 65 74 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | ..."target-dir":.{............." |
5c4e0 | 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 46 6f 72 63 65 73 20 74 68 65 20 70 61 63 6b 61 67 | description":."Forces.the.packag |
5c500 | 65 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 74 6f 20 74 68 65 20 67 69 76 65 6e | e.to.be.installed.into.the.given |
5c520 | 20 73 75 62 64 69 72 65 63 74 6f 72 79 20 70 61 74 68 2e 20 54 68 69 73 20 69 73 20 75 73 65 64 | .subdirectory.path..This.is.used |
5c540 | 20 66 6f 72 20 61 75 74 6f 6c 6f 61 64 69 6e 67 20 50 53 52 2d 30 20 70 61 63 6b 61 67 65 73 20 | .for.autoloading.PSR-0.packages. |
5c560 | 74 68 61 74 20 64 6f 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 74 68 65 69 72 20 66 75 6c 6c 20 70 | that.do.not.contain.their.full.p |
5c580 | 61 74 68 2e 20 55 73 65 20 66 6f 72 77 61 72 64 20 73 6c 61 73 68 65 73 20 66 6f 72 20 63 72 6f | ath..Use.forward.slashes.for.cro |
5c5a0 | 73 73 2d 70 6c 61 74 66 6f 72 6d 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2e 22 2c 0a 20 20 20 | ss-platform.compatibility.",.... |
5c5c0 | 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 0a 20 20 20 20 20 20 | ........."type":."string"....... |
5c5e0 | 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 7b 0a 20 20 | ..},........."description":.{... |
5c600 | 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 | .........."type":."string",..... |
5c620 | 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 53 68 6f 72 74 20 70 61 | ........"description":."Short.pa |
5c640 | 63 6b 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ckage.description.",............ |
5c660 | 20 22 72 65 71 75 69 72 65 64 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 | ."required":.true.........},.... |
5c680 | 20 20 20 20 20 22 6b 65 79 77 6f 72 64 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | ....."keywords":.{............." |
5c6a0 | 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 | type":."array",............."ite |
5c6c0 | 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 | ms":.{................."type":." |
5c6e0 | 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 | string",................."descri |
5c700 | 70 74 69 6f 6e 22 3a 20 22 41 20 74 61 67 2f 6b 65 79 77 6f 72 64 20 74 68 61 74 20 74 68 69 73 | ption":."A.tag/keyword.that.this |
5c720 | 20 70 61 63 6b 61 67 65 20 72 65 6c 61 74 65 73 20 74 6f 2e 22 0a 20 20 20 20 20 20 20 20 20 20 | .package.relates.to."........... |
5c740 | 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 68 6f 6d 65 70 61 67 65 | ..}.........},........."homepage |
5c760 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 | ":.{............."type":."string |
5c780 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 48 | ",............."description":."H |
5c7a0 | 6f 6d 65 70 61 67 65 20 55 52 4c 20 66 6f 72 20 74 68 65 20 70 72 6f 6a 65 63 74 2e 22 2c 0a 20 | omepage.URL.for.the.project.",.. |
5c7c0 | 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 | ..........."format":."uri"...... |
5c7e0 | 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 76 65 72 73 69 6f 6e 22 3a 20 7b 0a 20 20 20 20 20 | ...},........."version":.{...... |
5c800 | 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 | ......."type":."string",........ |
5c820 | 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 76 65 72 | ....."description":."Package.ver |
5c840 | 73 69 6f 6e 2c 20 73 65 65 20 68 74 74 70 3a 2f 2f 67 65 74 63 6f 6d 70 6f 73 65 72 2e 6f 72 67 | sion,.see.http://getcomposer.org |
5c860 | 2f 64 6f 63 2f 30 34 2d 73 63 68 65 6d 61 2e 6d 64 23 76 65 72 73 69 6f 6e 20 66 6f 72 20 6d 6f | /doc/04-schema.md#version.for.mo |
5c880 | 72 65 20 69 6e 66 6f 20 6f 6e 20 76 61 6c 69 64 20 73 63 68 65 6d 65 73 2e 22 0a 20 20 20 20 20 | re.info.on.valid.schemes."...... |
5c8a0 | 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 74 69 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 | ...},........."time":.{......... |
5c8c0 | 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 | ...."type":."string",........... |
5c8e0 | 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 50 61 63 6b 61 67 65 20 72 65 6c 65 61 73 | .."description":."Package.releas |
5c900 | 65 20 64 61 74 65 2c 20 69 6e 20 27 59 59 59 59 2d 4d 4d 2d 44 44 27 20 6f 72 20 27 59 59 59 59 | e.date,.in.'YYYY-MM-DD'.or.'YYYY |
5c920 | 2d 4d 4d 2d 44 44 20 48 48 3a 4d 4d 3a 53 53 27 20 66 6f 72 6d 61 74 2e 22 0a 20 20 20 20 20 20 | -MM-DD.HH:MM:SS'.format."....... |
5c940 | 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 6c 69 63 65 6e 73 65 22 3a 20 7b 0a 20 20 20 20 20 20 | ..},........."license":.{....... |
5c960 | 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 72 69 6e 67 22 2c 20 22 61 72 72 61 79 22 | ......"type":.["string",."array" |
5c980 | 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4c | ],............."description":."L |
5c9a0 | 69 63 65 6e 73 65 20 6e 61 6d 65 2e 20 4f 72 20 61 6e 20 61 72 72 61 79 20 6f 66 20 6c 69 63 65 | icense.name..Or.an.array.of.lice |
5c9c0 | 6e 73 65 20 6e 61 6d 65 73 2e 22 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 | nse.names.".........},........." |
5c9e0 | 61 75 74 68 6f 72 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 | authors":.{............."type":. |
5ca00 | 22 61 72 72 61 79 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f | "array",............."descriptio |
5ca20 | 6e 22 3a 20 22 4c 69 73 74 20 6f 66 20 61 75 74 68 6f 72 73 20 74 68 61 74 20 63 6f 6e 74 72 69 | n":."List.of.authors.that.contri |
5ca40 | 62 75 74 65 64 20 74 6f 20 74 68 65 20 70 61 63 6b 61 67 65 2e 20 54 68 69 73 20 69 73 20 74 79 | buted.to.the.package..This.is.ty |
5ca60 | 70 69 63 61 6c 6c 79 20 74 68 65 20 6d 61 69 6e 20 6d 61 69 6e 74 61 69 6e 65 72 73 2c 20 6e 6f | pically.the.main.maintainers,.no |
5ca80 | 74 20 74 68 65 20 66 75 6c 6c 20 6c 69 73 74 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | t.the.full.list.",............." |
5caa0 | 69 74 65 6d 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 | items":.{................."type" |
5cac0 | 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 | :."object",................."add |
5cae0 | 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 66 61 6c 73 65 2c 0a 20 20 20 20 20 | itionalProperties":.false,...... |
5cb00 | 20 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 | ..........."properties":.{...... |
5cb20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6e 61 6d 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 | ..............."name":.{........ |
5cb40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 | ................."type":."string |
5cb60 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 | ",........................."desc |
5cb80 | 72 69 70 74 69 6f 6e 22 3a 20 22 46 75 6c 6c 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 61 75 74 68 | ription":."Full.name.of.the.auth |
5cba0 | 6f 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 72 | or.",........................."r |
5cbc0 | 65 71 75 69 72 65 64 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | equired":.true.................. |
5cbe0 | 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 6d 61 69 6c | ...},....................."email |
5cc00 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 | ":.{........................."ty |
5cc20 | 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pe":."string",.................. |
5cc40 | 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 45 6d 61 69 6c 20 61 64 64 | ......."description":."Email.add |
5cc60 | 72 65 73 73 20 6f 66 20 74 68 65 20 61 75 74 68 6f 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 | ress.of.the.author.",........... |
5cc80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 65 6d 61 69 6c 22 0a | .............."format":."email". |
5cca0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 | ....................},.......... |
5ccc0 | 20 20 20 20 20 20 20 20 20 20 20 22 68 6f 6d 65 70 61 67 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 | ..........."homepage":.{........ |
5cce0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 | ................."type":."string |
5cd00 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 | ",........................."desc |
5cd20 | 72 69 70 74 69 6f 6e 22 3a 20 22 48 6f 6d 65 70 61 67 65 20 55 52 4c 20 66 6f 72 20 74 68 65 20 | ription":."Homepage.URL.for.the. |
5cd40 | 61 75 74 68 6f 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | author.",....................... |
5cd60 | 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .."format":."uri"............... |
5cd80 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 72 6f | ......},....................."ro |
5cda0 | 6c 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 | le":.{........................." |
5cdc0 | 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | type":."string",................ |
5cde0 | 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 75 74 68 6f 72 27 | ........."description":."Author' |
5ce00 | 73 20 72 6f 6c 65 20 69 6e 20 74 68 65 20 70 72 6f 6a 65 63 74 2e 22 0a 20 20 20 20 20 20 20 20 | s.role.in.the.project."......... |
5ce20 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a | ............}.................}. |
5ce40 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 | ............}.........},........ |
5ce60 | 20 22 72 65 71 75 69 72 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 | ."require":.{............."type" |
5ce80 | 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 | :."object",............."descrip |
5cea0 | 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 | tion":."This.is.a.hash.of.packag |
5cec0 | 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 | e.name.(keys).and.version.constr |
5cee0 | 61 69 6e 74 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 61 72 65 20 72 65 71 75 69 72 65 64 | aints.(values).that.are.required |
5cf00 | 20 74 6f 20 72 75 6e 20 74 68 69 73 20 70 61 63 6b 61 67 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 | .to.run.this.package.",......... |
5cf20 | 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 | ...."additionalProperties":.true |
5cf40 | 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 72 65 70 6c 61 63 65 22 3a 20 7b | .........},........."replace":.{ |
5cf60 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 | ............."type":."object",.. |
5cf80 | 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 | ..........."description":."This. |
5cfa0 | 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 | is.a.hash.of.package.name.(keys) |
5cfc0 | 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 | .and.version.constraints.(values |
5cfe0 | 29 20 74 68 61 74 20 63 61 6e 20 62 65 20 72 65 70 6c 61 63 65 64 20 62 79 20 74 68 69 73 20 70 | ).that.can.be.replaced.by.this.p |
5d000 | 61 63 6b 61 67 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 | ackage.",............."additiona |
5d020 | 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 | lProperties":.true.........},... |
5d040 | 20 20 20 20 20 20 22 63 6f 6e 66 6c 69 63 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ......"conflict":.{............. |
5d060 | 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 | "type":."object",............."d |
5d080 | 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 | escription":."This.is.a.hash.of. |
5d0a0 | 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 | package.name.(keys).and.version. |
5d0c0 | 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 63 6f 6e 66 6c 69 | constraints.(values).that.confli |
5d0e0 | 63 74 20 77 69 74 68 20 74 68 69 73 20 70 61 63 6b 61 67 65 2e 22 2c 0a 20 20 20 20 20 20 20 20 | ct.with.this.package.",......... |
5d100 | 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 | ...."additionalProperties":.true |
5d120 | 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 70 72 6f 76 69 64 65 22 3a 20 7b | .........},........."provide":.{ |
5d140 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 | ............."type":."object",.. |
5d160 | 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 | ..........."description":."This. |
5d180 | 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 | is.a.hash.of.package.name.(keys) |
5d1a0 | 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 | .and.version.constraints.(values |
5d1c0 | 29 20 74 68 61 74 20 74 68 69 73 20 70 61 63 6b 61 67 65 20 70 72 6f 76 69 64 65 73 20 69 6e 20 | ).that.this.package.provides.in. |
5d1e0 | 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 69 73 20 70 61 63 6b 61 67 65 27 73 20 6e 61 6d 65 2e | addition.to.this.package's.name. |
5d200 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 | ",............."additionalProper |
5d220 | 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 | ties":.true.........},........." |
5d240 | 72 65 71 75 69 72 65 2d 64 65 76 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 | require-dev":.{............."typ |
5d260 | 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 | e":."object",............."descr |
5d280 | 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b | iption":."This.is.a.hash.of.pack |
5d2a0 | 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 73 29 20 61 6e 64 20 76 65 72 73 69 6f 6e 20 63 6f 6e 73 | age.name.(keys).and.version.cons |
5d2c0 | 74 72 61 69 6e 74 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 74 20 74 68 69 73 20 70 61 63 6b 61 | traints.(values).that.this.packa |
5d2e0 | 67 65 20 72 65 71 75 69 72 65 73 20 66 6f 72 20 64 65 76 65 6c 6f 70 69 6e 67 20 69 74 20 28 74 | ge.requires.for.developing.it.(t |
5d300 | 65 73 74 69 6e 67 20 74 6f 6f 6c 73 20 61 6e 64 20 73 75 63 68 29 2e 22 2c 0a 20 20 20 20 20 20 | esting.tools.and.such).",....... |
5d320 | 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 | ......"additionalProperties":.tr |
5d340 | 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 73 75 67 67 65 73 74 22 3a | ue.........},........."suggest": |
5d360 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c | .{............."type":."object", |
5d380 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 | ............."description":."Thi |
5d3a0 | 73 20 69 73 20 61 20 68 61 73 68 20 6f 66 20 70 61 63 6b 61 67 65 20 6e 61 6d 65 20 28 6b 65 79 | s.is.a.hash.of.package.name.(key |
5d3c0 | 73 29 20 61 6e 64 20 64 65 73 63 72 69 70 74 69 6f 6e 73 20 28 76 61 6c 75 65 73 29 20 74 68 61 | s).and.descriptions.(values).tha |
5d3e0 | 74 20 74 68 69 73 20 70 61 63 6b 61 67 65 20 73 75 67 67 65 73 74 73 20 77 6f 72 6b 20 77 65 6c | t.this.package.suggests.work.wel |
5d400 | 6c 20 77 69 74 68 20 69 74 20 28 74 68 69 73 20 77 69 6c 6c 20 62 65 20 73 75 67 67 65 73 74 65 | l.with.it.(this.will.be.suggeste |
5d420 | 64 20 74 6f 20 74 68 65 20 75 73 65 72 20 64 75 72 69 6e 67 20 69 6e 73 74 61 6c 6c 61 74 69 6f | d.to.the.user.during.installatio |
5d440 | 6e 29 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f | n).",............."additionalPro |
5d460 | 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 | perties":.true.........},....... |
5d480 | 20 20 22 63 6f 6e 66 69 67 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 | .."config":.{............."type" |
5d4a0 | 3a 20 5b 22 6f 62 6a 65 63 74 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 | :.["object"],............."descr |
5d4c0 | 69 70 74 69 6f 6e 22 3a 20 22 43 6f 6d 70 6f 73 65 72 20 6f 70 74 69 6f 6e 73 2e 22 2c 0a 20 20 | iption":."Composer.options.",... |
5d4e0 | 20 20 20 20 20 20 20 20 20 20 22 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 | .........."properties":.{....... |
5d500 | 20 20 20 20 20 20 20 20 20 20 22 76 65 6e 64 6f 72 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 20 20 | .........."vendor-dir":.{....... |
5d520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a | .............."type":."string",. |
5d540 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e | ...................."description |
5d560 | 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 70 61 63 6b 61 | ":."The.location.where.all.packa |
5d580 | 67 65 73 20 61 72 65 20 69 6e 73 74 61 6c 6c 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c | ges.are.installed,.defaults.to.\ |
5d5a0 | 22 76 65 6e 64 6f 72 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 | "vendor\".".................},.. |
5d5c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 62 69 6e 2d 64 69 72 22 3a 20 7b 0a 20 20 20 20 | ..............."bin-dir":.{..... |
5d5e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 | ................"type":."string" |
5d600 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 | ,....................."descripti |
5d620 | 6f 6e 22 3a 20 22 54 68 65 20 6c 6f 63 61 74 69 6f 6e 20 77 68 65 72 65 20 61 6c 6c 20 62 69 6e | on":."The.location.where.all.bin |
5d640 | 61 72 69 65 73 20 61 72 65 20 6c 69 6e 6b 65 64 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 5c 22 | aries.are.linked,.defaults.to.\" |
5d660 | 76 65 6e 64 6f 72 2f 62 69 6e 5c 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d | vendor/bin\".".................} |
5d680 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 | .............}.........},....... |
5d6a0 | 20 20 22 65 78 74 72 61 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a | .."extra":.{............."type": |
5d6c0 | 20 5b 22 6f 62 6a 65 63 74 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 | .["object",."array"],........... |
5d6e0 | 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 72 62 69 74 72 61 72 79 20 65 78 74 72 | .."description":."Arbitrary.extr |
5d700 | 61 20 64 61 74 61 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 79 20 63 75 73 74 6f | a.data.that.can.be.used.by.custo |
5d720 | 6d 20 69 6e 73 74 61 6c 6c 65 72 73 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2c 20 70 61 63 6b 61 | m.installers,.for.example,.packa |
5d740 | 67 65 20 6f 66 20 74 79 70 65 20 63 6f 6d 70 6f 73 65 72 2d 69 6e 73 74 61 6c 6c 65 72 20 6d 75 | ge.of.type.composer-installer.mu |
5d760 | 73 74 20 68 61 76 65 20 61 20 27 63 6c 61 73 73 27 20 6b 65 79 20 64 65 66 69 6e 69 6e 67 20 74 | st.have.a.'class'.key.defining.t |
5d780 | 68 65 20 69 6e 73 74 61 6c 6c 65 72 20 63 6c 61 73 73 20 6e 61 6d 65 2e 22 2c 0a 20 20 20 20 20 | he.installer.class.name.",...... |
5d7a0 | 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 | ......."additionalProperties":.t |
5d7c0 | 72 75 65 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 61 75 74 6f 6c 6f 61 64 | rue.........},........."autoload |
5d7e0 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 | ":.{............."type":."object |
5d800 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 | ",............."description":."D |
5d820 | 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 68 6f 77 20 74 68 65 20 70 61 63 6b 61 67 65 20 63 61 | escription.of.how.the.package.ca |
5d840 | 6e 20 62 65 20 61 75 74 6f 6c 6f 61 64 65 64 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 | n.be.autoloaded.",............." |
5d860 | 70 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 | properties":.{................." |
5d880 | 70 73 72 2d 30 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 | psr-0":.{....................."t |
5d8a0 | 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ype":."object",................. |
5d8c0 | 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 20 68 61 | ...."description":."This.is.a.ha |
5d8e0 | 73 68 20 6f 66 20 6e 61 6d 65 73 70 61 63 65 73 20 28 6b 65 79 73 29 20 61 6e 64 20 74 68 65 20 | sh.of.namespaces.(keys).and.the. |
5d900 | 64 69 72 65 63 74 6f 72 69 65 73 20 74 68 65 79 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 69 6e | directories.they.can.be.found.in |
5d920 | 74 6f 20 28 76 61 6c 75 65 73 2c 20 63 61 6e 20 62 65 20 61 72 72 61 79 73 20 6f 66 20 70 61 74 | to.(values,.can.be.arrays.of.pat |
5d940 | 68 73 29 20 62 79 20 74 68 65 20 61 75 74 6f 6c 6f 61 64 65 72 2e 22 2c 0a 20 20 20 20 20 20 20 | hs).by.the.autoloader.",........ |
5d960 | 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 | ............."additionalProperti |
5d980 | 65 73 22 3a 20 74 72 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 | es":.true.................},.... |
5d9a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 22 63 6c 61 73 73 6d 61 70 22 3a 20 7b 0a 20 20 20 20 20 | ............."classmap":.{...... |
5d9c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c 0a | ..............."type":."array",. |
5d9e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e | ...................."description |
5da00 | 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 64 69 72 65 63 74 6f 72 | ":."This.is.an.array.of.director |
5da20 | 69 65 73 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 20 63 6c 61 73 73 65 73 20 74 6f 20 62 65 20 69 | ies.that.contain.classes.to.be.i |
5da40 | 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 63 6c 61 73 73 2d 6d 61 70 20 67 65 6e 65 72 61 74 | ncluded.in.the.class-map.generat |
5da60 | 69 6f 6e 20 70 72 6f 63 65 73 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c | ion.process.".................}, |
5da80 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 69 6c 65 73 22 3a 20 7b 0a 20 20 20 20 | ................."files":.{..... |
5daa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 61 72 72 61 79 22 2c | ................"type":."array", |
5dac0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f | ....................."descriptio |
5dae0 | 6e 22 3a 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 66 69 6c 65 73 20 74 | n":."This.is.an.array.of.files.t |
5db00 | 68 61 74 20 61 72 65 20 61 6c 77 61 79 73 20 72 65 71 75 69 72 65 64 20 6f 6e 20 65 76 65 72 79 | hat.are.always.required.on.every |
5db20 | 20 72 65 71 75 65 73 74 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | .request.".................}.... |
5db40 | 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 72 | .........}.........},........."r |
5db60 | 65 70 6f 73 69 74 6f 72 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 | epositories":.{............."typ |
5db80 | 65 22 3a 20 5b 22 6f 62 6a 65 63 74 22 2c 20 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 | e":.["object",."array"],........ |
5dba0 | 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 73 65 74 20 6f 66 20 61 64 | ....."description":."A.set.of.ad |
5dbc0 | 64 69 74 69 6f 6e 61 6c 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 77 68 65 72 65 20 70 61 63 6b | ditional.repositories.where.pack |
5dbe0 | 61 67 65 73 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ages.can.be.found.",............ |
5dc00 | 20 22 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 22 3a 20 74 72 75 65 0a 20 20 | ."additionalProperties":.true... |
5dc20 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 6d 69 6e 69 6d 75 6d 2d 73 74 61 62 69 6c | ......},........."minimum-stabil |
5dc40 | 69 74 79 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 73 74 | ity":.{............."type":.["st |
5dc60 | 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e | ring"],............."description |
5dc80 | 22 3a 20 22 54 68 65 20 6d 69 6e 69 6d 75 6d 20 73 74 61 62 69 6c 69 74 79 20 74 68 65 20 70 61 | ":."The.minimum.stability.the.pa |
5dca0 | 63 6b 61 67 65 73 20 6d 75 73 74 20 68 61 76 65 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 2d 61 | ckages.must.have.to.be.install-a |
5dcc0 | 62 6c 65 2e 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65 73 20 61 72 65 3a 20 64 65 76 2c 20 61 | ble..Possible.values.are:.dev,.a |
5dce0 | 6c 70 68 61 2c 20 62 65 74 61 2c 20 52 43 2c 20 73 74 61 62 6c 65 2e 22 0a 20 20 20 20 20 20 20 | lpha,.beta,.RC,.stable."........ |
5dd00 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 22 62 69 6e 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | .},........."bin":.{............ |
5dd20 | 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ."type":.["array"],............. |
5dd40 | 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 41 20 73 65 74 20 6f 66 20 66 69 6c 65 73 20 74 | "description":."A.set.of.files.t |
5dd60 | 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 73 20 62 69 6e 61 72 69 65 | hat.should.be.treated.as.binarie |
5dd80 | 73 20 61 6e 64 20 73 79 6d 6c 69 6e 6b 65 64 20 69 6e 74 6f 20 62 69 6e 2d 64 69 72 20 28 66 72 | s.and.symlinked.into.bin-dir.(fr |
5dda0 | 6f 6d 20 63 6f 6e 66 69 67 29 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 | om.config).",............."items |
5ddc0 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 | ":.{................."type":."st |
5dde0 | 72 69 6e 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 | ring".............}.........},.. |
5de00 | 20 20 20 20 20 20 20 22 69 6e 63 6c 75 64 65 2d 70 61 74 68 22 3a 20 7b 0a 20 20 20 20 20 20 20 | ......."include-path":.{........ |
5de20 | 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 5d 2c 0a 20 20 20 20 20 20 20 20 | ....."type":.["array"],......... |
5de40 | 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 44 45 50 52 45 43 41 54 45 44 3a 20 | ...."description":."DEPRECATED:. |
5de60 | 41 20 6c 69 73 74 20 6f 66 20 64 69 72 65 63 74 6f 72 69 65 73 20 77 68 69 63 68 20 73 68 6f 75 | A.list.of.directories.which.shou |
5de80 | 6c 64 20 67 65 74 20 61 64 64 65 64 20 74 6f 20 50 48 50 27 73 20 69 6e 63 6c 75 64 65 20 70 61 | ld.get.added.to.PHP's.include.pa |
5dea0 | 74 68 2e 20 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 70 72 65 73 65 6e 74 20 74 6f 20 73 75 70 70 | th..This.is.only.present.to.supp |
5dec0 | 6f 72 74 20 6c 65 67 61 63 79 20 70 72 6f 6a 65 63 74 73 2c 20 61 6e 64 20 61 6c 6c 20 6e 65 77 | ort.legacy.projects,.and.all.new |
5dee0 | 20 63 6f 64 65 20 73 68 6f 75 6c 64 20 70 72 65 66 65 72 61 62 6c 79 20 75 73 65 20 61 75 74 6f | .code.should.preferably.use.auto |
5df00 | 6c 6f 61 64 69 6e 67 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 69 74 65 6d 73 22 3a 20 | loading.",............."items":. |
5df20 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e | {................."type":."strin |
5df40 | 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 | g".............}.........},..... |
5df60 | 20 20 20 20 22 73 63 72 69 70 74 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 | ...."scripts":.{............."ty |
5df80 | 70 65 22 3a 20 5b 22 6f 62 6a 65 63 74 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 | pe":.["object"],............."de |
5dfa0 | 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 53 63 72 69 70 74 73 20 6c 69 73 74 65 6e 65 72 73 20 74 | scription":."Scripts.listeners.t |
5dfc0 | 68 61 74 20 77 69 6c 6c 20 62 65 20 65 78 65 63 75 74 65 64 20 62 65 66 6f 72 65 2f 61 66 74 65 | hat.will.be.executed.before/afte |
5dfe0 | 72 20 73 6f 6d 65 20 65 76 65 6e 74 73 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 | r.some.events.",............."pr |
5e000 | 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 | operties":.{................."pr |
5e020 | 65 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e-install-cmd":.{............... |
5e040 | 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 | ......"type":.["array",."string" |
5e060 | 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 | ],....................."descript |
5e080 | 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 69 6e 73 74 61 6c 6c | ion":."Occurs.before.the.install |
5e0a0 | 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f | .command.is.executed,.contains.o |
5e0c0 | 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c | ne.or.more.Class::method.callabl |
5e0e0 | 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 | es.".................},......... |
5e100 | 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 69 6e 73 74 61 6c 6c 2d 63 6d 64 22 3a 20 7b 0a 20 20 | ........"post-install-cmd":.{... |
5e120 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 | .................."type":.["arra |
5e140 | 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | y",."string"],.................. |
5e160 | 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 | ..."description":."Occurs.after. |
5e180 | 74 68 65 20 69 6e 73 74 61 6c 6c 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c | the.install.command.is.executed, |
5e1a0 | 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 | .contains.one.or.more.Class::met |
5e1c0 | 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | hod.callables."................. |
5e1e0 | 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 75 70 64 61 74 65 2d 63 | },................."pre-update-c |
5e200 | 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 | md":.{....................."type |
5e220 | 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 | ":.["array",."string"],......... |
5e240 | 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 | ............"description":."Occu |
5e260 | 72 73 20 62 65 66 6f 72 65 20 74 68 65 20 75 70 64 61 74 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 | rs.before.the.update.command.is. |
5e280 | 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 | executed,.contains.one.or.more.C |
5e2a0 | 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 | lass::method.callables."........ |
5e2c0 | 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 | .........},................."pos |
5e2e0 | 74 2d 75 70 64 61 74 65 2d 63 6d 64 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t-update-cmd":.{................ |
5e300 | 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d | ....."type":.["array",."string"] |
5e320 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 | ,....................."descripti |
5e340 | 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 74 68 65 20 75 70 64 61 74 65 20 63 6f | on":."Occurs.after.the.update.co |
5e360 | 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 | mmand.is.executed,.contains.one. |
5e380 | 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e | or.more.Class::method.callables. |
5e3a0 | 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | ".................},............ |
5e3c0 | 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 | ....."pre-package-install":.{... |
5e3e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 | .................."type":.["arra |
5e400 | 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | y",."string"],.................. |
5e420 | 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 | ..."description":."Occurs.before |
5e440 | 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f 6e 74 61 69 6e | .a.package.is.installed,.contain |
5e460 | 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c | s.one.or.more.Class::method.call |
5e480 | 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 | ables.".................},...... |
5e4a0 | 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 69 6e 73 74 61 6c 6c | ..........."post-package-install |
5e4c0 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a | ":.{....................."type": |
5e4e0 | 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 | .["array",."string"],........... |
5e500 | 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 | .........."description":."Occurs |
5e520 | 20 61 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 69 6e 73 74 61 6c 6c 65 64 2c 20 63 | .after.a.package.is.installed,.c |
5e540 | 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f | ontains.one.or.more.Class::metho |
5e560 | 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c | d.callables.".................}, |
5e580 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b 61 67 65 2d 75 70 | ................."pre-package-up |
5e5a0 | 64 61 74 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 | date":.{....................."ty |
5e5c0 | 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 | pe":.["array",."string"],....... |
5e5e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 | .............."description":."Oc |
5e600 | 63 75 72 73 20 62 65 66 6f 72 65 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 75 70 64 61 74 65 64 | curs.before.a.package.is.updated |
5e620 | 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 | ,.contains.one.or.more.Class::me |
5e640 | 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | thod.callables."................ |
5e660 | 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 | .},................."post-packag |
5e680 | 65 2d 75 70 64 61 74 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e-update":.{.................... |
5e6a0 | 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 | ."type":.["array",."string"],... |
5e6c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a | .................."description": |
5e6e0 | 20 22 4f 63 63 75 72 73 20 61 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 69 73 20 75 70 64 61 | ."Occurs.after.a.package.is.upda |
5e700 | 74 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a | ted,.contains.one.or.more.Class: |
5e720 | 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 | :method.callables."............. |
5e740 | 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 70 72 65 2d 70 61 63 6b | ....},................."pre-pack |
5e760 | 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | age-uninstall":.{............... |
5e780 | 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 | ......"type":.["array",."string" |
5e7a0 | 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 | ],....................."descript |
5e7c0 | 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 62 65 66 6f 72 65 20 61 20 70 61 63 6b 61 67 65 20 68 | ion":."Occurs.before.a.package.h |
5e7e0 | 61 73 20 62 65 65 6e 20 75 6e 69 6e 73 74 61 6c 6c 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e | as.been.uninstalled,.contains.on |
5e800 | 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 | e.or.more.Class::method.callable |
5e820 | 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 | s.".................},.......... |
5e840 | 20 20 20 20 20 20 20 22 70 6f 73 74 2d 70 61 63 6b 61 67 65 2d 75 6e 69 6e 73 74 61 6c 6c 22 3a | ......."post-package-uninstall": |
5e860 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 5b | .{....................."type":.[ |
5e880 | 22 61 72 72 61 79 22 2c 20 22 73 74 72 69 6e 67 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 | "array",."string"],............. |
5e8a0 | 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 4f 63 63 75 72 73 20 61 | ........"description":."Occurs.a |
5e8c0 | 66 74 65 72 20 61 20 70 61 63 6b 61 67 65 20 68 61 73 20 62 65 65 6e 20 75 6e 69 6e 73 74 61 6c | fter.a.package.has.been.uninstal |
5e8e0 | 6c 65 64 2c 20 63 6f 6e 74 61 69 6e 73 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 43 6c 61 73 73 3a | led,.contains.one.or.more.Class: |
5e900 | 3a 6d 65 74 68 6f 64 20 63 61 6c 6c 61 62 6c 65 73 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 | :method.callables."............. |
5e920 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 2c 0a 20 | ....}.............}.........},.. |
5e940 | 20 20 20 20 20 20 20 22 73 75 70 70 6f 72 74 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ......."support":.{............. |
5e960 | 22 74 79 70 65 22 3a 20 22 6f 62 6a 65 63 74 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 70 | "type":."object",............."p |
5e980 | 72 6f 70 65 72 74 69 65 73 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 65 | roperties":.{................."e |
5e9a0 | 6d 61 69 6c 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 | mail":.{....................."ty |
5e9c0 | 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | pe":."string",.................. |
5e9e0 | 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 45 6d 61 69 6c 20 61 64 64 72 65 73 73 | ..."description":."Email.address |
5ea00 | 20 66 6f 72 20 73 75 70 70 6f 72 74 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .for.support.",................. |
5ea20 | 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 65 6d 61 69 6c 22 0a 20 20 20 20 20 20 20 20 20 20 | ...."format":."email"........... |
5ea40 | 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 73 73 75 65 73 | ......},................."issues |
5ea60 | 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a | ":.{....................."type": |
5ea80 | 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 | ."string",....................." |
5eaa0 | 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 49 73 73 75 65 20 | description":."URL.to.the.Issue. |
5eac0 | 54 72 61 63 6b 65 72 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 | Tracker.",....................." |
5eae0 | 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d | format":."uri".................} |
5eb00 | 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 75 6d 22 3a 20 7b 0a 20 20 20 | ,................."forum":.{.... |
5eb20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 | ................."type":."string |
5eb40 | 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 | ",....................."descript |
5eb60 | 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 20 46 6f 72 75 6d 2e 22 2c 0a 20 20 20 20 20 | ion":."URL.to.the.Forum.",...... |
5eb80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 | ..............."format":."uri".. |
5eba0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............},............... |
5ebc0 | 20 20 22 77 69 6b 69 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .."wiki":.{..................... |
5ebe0 | 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | "type":."string",............... |
5ec00 | 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 74 68 65 | ......"description":."URL.to.the |
5ec20 | 20 57 69 6b 69 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f | .Wiki.",....................."fo |
5ec40 | 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a | rmat":."uri".................},. |
5ec60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 69 72 63 22 3a 20 7b 0a 20 20 20 20 20 20 20 | ................"irc":.{........ |
5ec80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 | ............."type":."string",.. |
5eca0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 | ..................."description" |
5ecc0 | 3a 20 22 49 52 43 20 63 68 61 6e 6e 65 6c 20 66 6f 72 20 73 75 70 70 6f 72 74 2c 20 61 73 20 69 | :."IRC.channel.for.support,.as.i |
5ece0 | 72 63 3a 2f 2f 73 65 72 76 65 72 2f 63 68 61 6e 6e 65 6c 2e 22 2c 0a 20 20 20 20 20 20 20 20 20 | rc://server/channel.",.......... |
5ed00 | 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 0a 20 20 20 20 20 | ..........."format":."uri"...... |
5ed20 | 20 20 20 20 20 20 20 20 20 20 20 7d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73 | ...........},................."s |
5ed40 | 6f 75 72 63 65 22 3a 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 74 | ource":.{....................."t |
5ed60 | 79 70 65 22 3a 20 22 73 74 72 69 6e 67 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ype":."string",................. |
5ed80 | 20 20 20 20 22 64 65 73 63 72 69 70 74 69 6f 6e 22 3a 20 22 55 52 4c 20 74 6f 20 62 72 6f 77 73 | ...."description":."URL.to.brows |
5eda0 | 65 20 6f 72 20 64 6f 77 6e 6c 6f 61 64 20 74 68 65 20 73 6f 75 72 63 65 73 2e 22 2c 0a 20 20 20 | e.or.download.the.sources.",.... |
5edc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 6f 72 6d 61 74 22 3a 20 22 75 72 69 22 | ................."format":."uri" |
5ede0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d | .................}.............} |
5ee00 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 7d 0a 4d 5a 90 00 03 00 00 00 04 00 00 00 ff | .........}.....}.}.MZ........... |
5ee20 | ff 00 00 b8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ...........@.................... |
5ee40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e8 00 00 00 0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd | ...........................!..L. |
5ee60 | 21 54 68 69 73 20 70 72 6f 67 72 61 6d 20 63 61 6e 6e 6f 74 20 62 65 20 72 75 6e 20 69 6e 20 44 | !This.program.cannot.be.run.in.D |
5ee80 | 4f 53 20 6d 6f 64 65 2e 0d 0d 0a 24 00 00 00 00 00 00 00 7f c6 2c cd 3b a7 42 9e 3b a7 42 9e 3b | OS.mode....$.........,.;.B.;.B.; |
5eea0 | a7 42 9e 32 df d7 9e 3a a7 42 9e 32 df c1 9e 2d a7 42 9e 32 df c6 9e 39 a7 42 9e 32 df d1 9e 3f | .B.2...:.B.2...-.B.2...9.B.2...? |
5eec0 | a7 42 9e 1c 61 39 9e 38 a7 42 9e 3b a7 43 9e 08 a7 42 9e 32 df c8 9e 3a a7 42 9e 32 df d6 9e 3a | .B..a9.8.B.;.C...B.2...:.B.2...: |
5eee0 | a7 42 9e 32 df d3 9e 3a a7 42 9e 52 69 63 68 3b a7 42 9e 00 00 00 00 00 00 00 00 50 45 00 00 4c | .B.2...:.B.Rich;.B.........PE..L |
5ef00 | 01 05 00 ac 4d 6f 4f 00 00 00 00 00 00 00 00 e0 00 02 01 0b 01 09 00 00 0a 00 00 00 16 00 00 00 | ....MoO......................... |
5ef20 | 00 00 00 38 13 00 00 00 10 00 00 00 20 00 00 00 00 40 00 00 10 00 00 00 02 00 00 05 00 00 00 00 | ...8.............@.............. |
5ef40 | 00 00 00 05 00 00 00 00 00 00 00 00 60 00 00 00 04 00 00 3f 9c 00 00 03 00 40 81 00 00 10 00 00 | ............`......?.....@...... |
5ef60 | 10 00 00 00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 90 22 00 00 50 | ............................"..P |
5ef80 | 00 00 00 00 40 00 00 20 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 00 00 70 | ....@.......................P..p |
5efa0 | 01 00 00 00 21 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ....!........................... |
5efc0 | 00 00 00 38 21 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 d8 00 00 00 00 00 00 00 00 | ...8!..@........................ |
5efe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2e 74 65 78 74 00 00 00 0b 09 00 00 00 | ....................text........ |
5f000 | 10 00 00 00 0a 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 60 2e 72 64 61 74 | ..........................`.rdat |
5f020 | 61 00 00 ce 09 00 00 00 20 00 00 00 0a 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 | a..............................@ |
5f040 | 00 00 40 2e 64 61 74 61 00 00 00 90 03 00 00 00 30 00 00 00 02 00 00 00 18 00 00 00 00 00 00 00 | ..@.data........0............... |
5f060 | 00 00 00 00 00 00 00 40 00 00 c0 2e 72 73 72 63 00 00 00 20 06 00 00 00 40 00 00 00 08 00 00 00 | .......@....rsrc........@....... |
5f080 | 1a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 40 2e 72 65 6c 6f 63 00 00 cc 01 00 00 00 | ...............@..@.reloc....... |
5f0a0 | 50 00 00 00 02 00 00 00 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 42 00 00 00 00 00 | P......."..............@..B..... |
5f0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f1e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5f200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 24 b8 e6 18 40 00 e8 78 08 00 00 6a | ...................j$...@..x...j |
5f220 | f6 ff 15 08 20 40 00 83 65 d0 00 8b f0 8d 45 d0 50 56 ff 15 00 20 40 00 8b 45 d0 83 e0 fb 50 56 | .....@..e.....E.PV....@..E....PV |
5f240 | ff 15 04 20 40 00 8d 4d d4 ff 15 58 20 40 00 83 65 fc 00 8d 45 d4 50 ff 35 48 20 40 00 ff 15 4c | ....@..M...X.@..e...E.P.5H.@...L |
5f260 | 20 40 00 59 59 ff 35 5c 20 40 00 8d 45 d4 50 ff 35 60 20 40 00 ff 15 44 20 40 00 59 59 8b c8 ff | .@.YY.5\.@..E.P.5`.@...D.@.YY... |
5f280 | 15 50 20 40 00 83 4d fc ff 8d 4d d4 ff 15 54 20 40 00 33 c0 e8 48 08 00 00 c3 3b 0d 00 30 40 00 | .P.@..M...M...T.@.3..H....;..0@. |
5f2a0 | 75 02 f3 c3 e9 ac 02 00 00 68 80 15 40 00 e8 a3 04 00 00 a1 6c 33 40 00 c7 04 24 34 30 40 00 ff | u........h..@.......l3@...$40@.. |
5f2c0 | 35 68 33 40 00 a3 34 30 40 00 68 24 30 40 00 68 28 30 40 00 68 20 30 40 00 ff 15 a0 20 40 00 83 | 5h3@..40@.h$0@.h(0@.h.0@.....@.. |
5f2e0 | c4 14 a3 30 30 40 00 85 c0 7d 08 6a 08 e8 b9 03 00 00 59 c3 6a 10 68 08 22 40 00 e8 1f 06 00 00 | ...00@...}.j......Y.j.h."@...... |
5f300 | 33 db 89 5d fc 64 a1 18 00 00 00 8b 70 04 89 5d e4 bf 80 33 40 00 53 56 57 ff 15 30 20 40 00 3b | 3..].d......p..]...3@.SVW..0.@.; |
5f320 | c3 74 19 3b c6 75 08 33 f6 46 89 75 e4 eb 10 68 e8 03 00 00 ff 15 34 20 40 00 eb da 33 f6 46 a1 | .t.;.u.3.F.u...h......4.@...3.F. |
5f340 | 7c 33 40 00 3b c6 75 0a 6a 1f e8 5c 03 00 00 59 eb 3b a1 7c 33 40 00 85 c0 75 2c 89 35 7c 33 40 | |3@.;.u.j..\...Y.;.|3@...u,.5|3@ |
5f360 | 00 68 f0 20 40 00 68 e4 20 40 00 e8 a7 05 00 00 59 59 85 c0 74 17 c7 45 fc fe ff ff ff b8 ff 00 | .h..@.h..@......YY..t..E........ |
5f380 | 00 00 e9 dd 00 00 00 89 35 3c 30 40 00 a1 7c 33 40 00 3b c6 75 1b 68 e0 20 40 00 68 d8 20 40 00 | ........5<0@..|3@.;.u.h..@.h..@. |
5f3a0 | e8 6c 05 00 00 59 59 c7 05 7c 33 40 00 02 00 00 00 39 5d e4 75 08 53 57 ff 15 38 20 40 00 39 1d | .l...YY..|3@.....9].u.SW..8.@.9. |
5f3c0 | 8c 33 40 00 74 19 68 8c 33 40 00 e8 83 04 00 00 59 85 c0 74 0a 53 6a 02 53 ff 15 8c 33 40 00 a1 | .3@.t.h.3@......Y..t.Sj.S...3@.. |
5f3e0 | 24 30 40 00 8b 0d bc 20 40 00 89 01 ff 35 24 30 40 00 ff 35 28 30 40 00 ff 35 20 30 40 00 e8 10 | $0@.....@....5$0@..5(0@..5.0@... |
5f400 | fe ff ff 83 c4 0c a3 38 30 40 00 39 1d 2c 30 40 00 75 37 50 ff 15 c0 20 40 00 8b 45 ec 8b 08 8b | .......80@.9.,0@.u7P....@..E.... |
5f420 | 09 89 4d e0 50 51 e8 8e 03 00 00 59 59 c3 8b 65 e8 8b 45 e0 a3 38 30 40 00 33 db 39 1d 2c 30 40 | ..M.PQ.....YY..e..E..80@.3.9.,0@ |
5f440 | 00 75 07 50 ff 15 68 20 40 00 39 1d 3c 30 40 00 75 06 ff 15 9c 20 40 00 c7 45 fc fe ff ff ff a1 | .u.P..h.@.9.<0@.u.....@..E...... |
5f460 | 38 30 40 00 e8 fb 04 00 00 c3 b8 4d 5a 00 00 66 39 05 00 00 40 00 74 04 33 c0 eb 4d a1 3c 00 40 | 80@........MZ..f9...@.t.3..M.<.@ |
5f480 | 00 8d 80 00 00 40 00 81 38 50 45 00 00 75 e9 0f b7 48 18 81 f9 0b 01 00 00 74 1b 81 f9 0b 02 00 | .....@..8PE..u...H.......t...... |
5f4a0 | 00 75 d5 83 b8 84 00 00 00 0e 76 cc 33 c9 39 88 f8 00 00 00 eb 0e 83 78 74 0e 76 bc 33 c9 39 88 | .u........v.3.9........xt.v.3.9. |
5f4c0 | e8 00 00 00 0f 95 c1 8b c1 6a 01 a3 2c 30 40 00 ff 15 70 20 40 00 6a ff ff 15 6c 20 40 00 59 59 | .........j..,0@...p.@.j...l.@.YY |
5f4e0 | a3 84 33 40 00 a3 88 33 40 00 ff 15 cc 20 40 00 8b 0d 74 33 40 00 89 08 ff 15 88 20 40 00 8b 0d | ..3@...3@.....@...t3@.......@... |
5f500 | 70 33 40 00 89 08 a1 a8 20 40 00 8b 00 a3 78 33 40 00 e8 56 02 00 00 e8 ac 04 00 00 83 3d 14 30 | p3@......@....x3@..V.........=.0 |
5f520 | 40 00 00 75 0c 68 b5 17 40 00 ff 15 ac 20 40 00 59 e8 67 04 00 00 83 3d 10 30 40 00 ff 75 09 6a | @..u.h..@.....@.Y.g....=.0@..u.j |
5f540 | ff ff 15 b0 20 40 00 59 33 c0 c3 e8 7b 04 00 00 e9 9f fd ff ff 8b ff 55 8b ec 81 ec 28 03 00 00 | .....@.Y3...{..........U....(... |
5f560 | a3 48 31 40 00 89 0d 44 31 40 00 89 15 40 31 40 00 89 1d 3c 31 40 00 89 35 38 31 40 00 89 3d 34 | .H1@...D1@...@1@...<1@..581@..=4 |
5f580 | 31 40 00 66 8c 15 60 31 40 00 66 8c 0d 54 31 40 00 66 8c 1d 30 31 40 00 66 8c 05 2c 31 40 00 66 | 1@.f..`1@.f..T1@.f..01@.f..,1@.f |
5f5a0 | 8c 25 28 31 40 00 66 8c 2d 24 31 40 00 9c 8f 05 58 31 40 00 8b 45 00 a3 4c 31 40 00 8b 45 04 a3 | .%(1@.f.-$1@....X1@..E..L1@..E.. |
5f5c0 | 50 31 40 00 8d 45 08 a3 5c 31 40 00 8b 85 e0 fc ff ff c7 05 98 30 40 00 01 00 01 00 a1 50 31 40 | P1@..E..\1@..........0@......P1@ |
5f5e0 | 00 a3 4c 30 40 00 c7 05 40 30 40 00 09 04 00 c0 c7 05 44 30 40 00 01 00 00 00 a1 00 30 40 00 89 | ..L0@...@0@.......D0@.......0@.. |
5f600 | 85 d8 fc ff ff a1 04 30 40 00 89 85 dc fc ff ff ff 15 1c 20 40 00 a3 90 30 40 00 6a 01 e8 3f 04 | .......0@...........@...0@.j..?. |
5f620 | 00 00 59 6a 00 ff 15 20 20 40 00 68 1c 21 40 00 ff 15 24 20 40 00 83 3d 90 30 40 00 00 75 08 6a | ..Yj.....@.h.!@...$.@..=.0@..u.j |
5f640 | 01 e8 1b 04 00 00 59 68 09 04 00 c0 ff 15 28 20 40 00 50 ff 15 2c 20 40 00 c9 c3 8b ff 55 8b ec | ......Yh......(.@.P..,.@.....U.. |
5f660 | 8b 45 08 8b 00 81 38 63 73 6d e0 75 2a 83 78 10 03 75 24 8b 40 14 3d 20 05 93 19 74 15 3d 21 05 | .E....8csm.u*.x..u$.@.=....t.=!. |
5f680 | 93 19 74 0e 3d 22 05 93 19 74 07 3d 00 40 99 01 75 05 e8 d0 03 00 00 33 c0 5d c2 04 00 68 48 14 | ..t.="...t.=.@..u......3.]...hH. |
5f6a0 | 40 00 ff 15 20 20 40 00 33 c0 c3 ff 25 a4 20 40 00 6a 14 68 28 22 40 00 e8 62 02 00 00 ff 35 88 | @.....@.3...%..@.j.h("@..b....5. |
5f6c0 | 33 40 00 8b 35 8c 20 40 00 ff d6 59 89 45 e4 83 f8 ff 75 0c ff 75 08 ff 15 c4 20 40 00 59 eb 67 | 3@..5..@...Y.E....u..u.....@.Y.g |
5f6e0 | 6a 08 e8 92 03 00 00 59 83 65 fc 00 ff 35 88 33 40 00 ff d6 89 45 e4 ff 35 84 33 40 00 ff d6 59 | j......Y.e...5.3@....E..5.3@...Y |
5f700 | 59 89 45 e0 8d 45 e0 50 8d 45 e4 50 ff 75 08 8b 35 6c 20 40 00 ff d6 59 50 e8 55 03 00 00 89 45 | Y.E..E.P.E.P.u..5l.@...YP.U....E |
5f720 | dc ff 75 e4 ff d6 a3 88 33 40 00 ff 75 e0 ff d6 83 c4 14 a3 84 33 40 00 c7 45 fc fe ff ff ff e8 | ..u.....3@..u........3@..E...... |
5f740 | 09 00 00 00 8b 45 dc e8 18 02 00 00 c3 6a 08 e8 19 03 00 00 59 c3 8b ff 55 8b ec ff 75 08 e8 4e | .....E.......j......Y...U...u..N |
5f760 | ff ff ff f7 d8 1b c0 f7 d8 59 48 5d c3 8b ff 56 b8 fc 21 40 00 be fc 21 40 00 57 8b f8 3b c6 73 | .........YH]...V..!@...!@.W..;.s |
5f780 | 0f 8b 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f 5e c3 8b ff 56 b8 04 22 40 00 be 04 22 40 00 | .....t......;.r._^...V.."@..."@. |
5f7a0 | 57 8b f8 3b c6 73 0f 8b 07 85 c0 74 02 ff d0 83 c7 04 3b fe 72 f1 5f 5e c3 ff 25 c8 20 40 00 cc | W..;.s.....t......;.r._^..%..@.. |
5f7c0 | cc cc cc 8b ff 55 8b ec 8b 4d 08 b8 4d 5a 00 00 66 39 01 74 04 33 c0 5d c3 8b 41 3c 03 c1 81 38 | .....U...M..MZ..f9.t.3.]..A<...8 |
5f7e0 | 50 45 00 00 75 ef 33 d2 b9 0b 01 00 00 66 39 48 18 0f 94 c2 8b c2 5d c3 cc cc cc cc cc cc cc cc | PE..u.3......f9H......]......... |
5f800 | cc cc cc 8b ff 55 8b ec 8b 45 08 8b 48 3c 03 c8 0f b7 41 14 53 56 0f b7 71 06 33 d2 57 8d 44 08 | .....U...E..H<....A.SV..q.3.W.D. |
5f820 | 18 85 f6 76 1b 8b 7d 0c 8b 48 0c 3b f9 72 09 8b 58 08 03 d9 3b fb 72 0a 42 83 c0 28 3b d6 72 e8 | ...v..}..H.;.r..X...;.r.B..(;.r. |
5f840 | 33 c0 5f 5e 5b 5d c3 cc cc cc cc cc cc cc cc cc cc cc cc 8b ff 55 8b ec 6a fe 68 48 22 40 00 68 | 3._^[]...............U..j.hH"@.h |
5f860 | 65 17 40 00 64 a1 00 00 00 00 50 83 ec 08 53 56 57 a1 00 30 40 00 31 45 f8 33 c5 50 8d 45 f0 64 | e.@.d.....P...SVW..0@.1E.3.P.E.d |
5f880 | a3 00 00 00 00 89 65 e8 c7 45 fc 00 00 00 00 68 00 00 40 00 e8 2a ff ff ff 83 c4 04 85 c0 74 55 | ......e..E.....h..@..*........tU |
5f8a0 | 8b 45 08 2d 00 00 40 00 50 68 00 00 40 00 e8 50 ff ff ff 83 c4 08 85 c0 74 3b 8b 40 24 c1 e8 1f | .E.-..@.Ph..@..P........t;.@$... |
5f8c0 | f7 d0 83 e0 01 c7 45 fc fe ff ff ff 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 8b 45 | ......E......M.d......Y_^[..]..E |
5f8e0 | ec 8b 08 8b 01 33 d2 3d 05 00 00 c0 0f 94 c2 8b c2 c3 8b 65 e8 c7 45 fc fe ff ff ff 33 c0 8b 4d | .....3.=...........e..E.....3..M |
5f900 | f0 64 89 0d 00 00 00 00 59 5f 5e 5b 8b e5 5d c3 cc ff 25 b8 20 40 00 ff 25 b4 20 40 00 cc cc 68 | .d......Y_^[..]...%..@..%..@...h |
5f920 | 65 17 40 00 64 ff 35 00 00 00 00 8b 44 24 10 89 6c 24 10 8d 6c 24 10 2b e0 53 56 57 a1 00 30 40 | e.@.d.5.....D$..l$..l$.+.SVW..0@ |
5f940 | 00 31 45 fc 33 c5 50 89 65 e8 ff 75 f8 8b 45 fc c7 45 fc fe ff ff ff 89 45 f8 8d 45 f0 64 a3 00 | .1E.3.P.e..u..E..E......E..E.d.. |
5f960 | 00 00 00 c3 8b 4d f0 64 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 c3 8b ff 55 8b ec ff 75 14 | .....M.d......Y__^[..]Q...U...u. |
5f980 | ff 75 10 ff 75 0c ff 75 08 68 87 10 40 00 68 00 30 40 00 e8 e7 00 00 00 83 c4 18 5d c3 8b ff 56 | .u..u..u.h..@.h.0@.........]...V |
5f9a0 | 68 00 00 03 00 68 00 00 01 00 33 f6 56 e8 d9 00 00 00 83 c4 0c 85 c0 74 0d 56 56 56 56 56 e8 c2 | h....h....3.V..........t.VVVVV.. |
5f9c0 | 00 00 00 83 c4 14 5e c3 33 c0 c3 8b ff 55 8b ec 83 ec 10 a1 00 30 40 00 83 65 f8 00 83 65 fc 00 | ......^.3....U.......0@..e...e.. |
5f9e0 | 53 57 bf 4e e6 40 bb bb 00 00 ff ff 3b c7 74 0d 85 c3 74 09 f7 d0 a3 04 30 40 00 eb 60 56 8d 45 | SW.N.@......;.t...t.....0@..`V.E |
5fa00 | f8 50 ff 15 3c 20 40 00 8b 75 fc 33 75 f8 ff 15 0c 20 40 00 33 f0 ff 15 10 20 40 00 33 f0 ff 15 | .P..<.@..u.3u.....@.3.....@.3... |
5fa20 | 14 20 40 00 33 f0 8d 45 f0 50 ff 15 18 20 40 00 8b 45 f4 33 45 f0 33 f0 3b f7 75 07 be 4f e6 40 | ..@.3..E.P....@..E.3E.3.;.u..O.@ |
5fa40 | bb eb 0b 85 f3 75 07 8b c6 c1 e0 10 0b f0 89 35 00 30 40 00 f7 d6 89 35 04 30 40 00 5e 5f 5b c9 | .....u.........5.0@....5.0@.^_[. |
5fa60 | c3 ff 25 74 20 40 00 ff 25 78 20 40 00 ff 25 7c 20 40 00 ff 25 80 20 40 00 ff 25 84 20 40 00 ff | ..%t.@..%x.@..%|.@..%..@..%..@.. |
5fa80 | 25 90 20 40 00 ff 25 94 20 40 00 ff 25 98 20 40 00 ff 25 d0 20 40 00 50 64 ff 35 00 00 00 00 8d | %..@..%..@..%..@..%..@.Pd.5..... |
5faa0 | 44 24 0c 2b 64 24 0c 53 56 57 89 28 8b e8 a1 00 30 40 00 33 c5 50 89 45 f0 ff 75 fc c7 45 fc ff | D$.+d$.SVW.(....0@.3.P.E..u..E.. |
5fac0 | ff ff ff 8d 45 f4 64 a3 00 00 00 00 c3 8b 4d f4 64 89 0d 00 00 00 00 59 5f 5f 5e 5b 8b e5 5d 51 | ....E.d.......M.d......Y__^[..]Q |
5fae0 | c3 8b 4d f0 33 cd e8 af f7 ff ff e9 dd ff ff ff 8d 4d d4 ff 25 54 20 40 00 8b 54 24 08 8d 42 0c | ..M.3............M..%T.@..T$..B. |
5fb00 | 8b 4a cc 33 c8 e8 90 f7 ff ff 8b 4a fc 33 c8 e8 86 f7 ff ff b8 6c 22 40 00 e9 73 ff ff ff 00 00 | .J.3.......J.3.......l"@..s..... |
5fb20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fb40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fb60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fb80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fbc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fbe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fc00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 | ....................#...#...#... |
5fc20 | 29 00 00 72 29 00 00 62 29 00 00 48 29 00 00 34 29 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 | )..r)..b)..H)..4)...)...(...(... |
5fc40 | 28 00 00 b4 28 00 00 ac 28 00 00 96 28 00 00 9e 29 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a | (...(...(...(...).......#...$... |
5fc60 | 25 00 00 ca 25 00 00 1a 26 00 00 64 26 00 00 ae 26 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 | %...%...&..d&...&...$......('... |
5fc80 | 27 00 00 d6 27 00 00 e8 27 00 00 fe 27 00 00 1e 28 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 | '...'...'...'...(..((..6(...'..H |
5fca0 | 28 00 00 5a 28 00 00 74 28 00 00 86 28 00 00 1e 27 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 | (..Z(..t(...(...'...'...'...'... |
5fcc0 | 27 00 00 6c 27 00 00 5e 27 00 00 52 27 00 00 46 27 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 | '..l'..^'..R'..F'..>'..>(..0'... |
5fce0 | 27 00 00 b8 29 00 00 00 00 00 00 00 00 00 00 96 10 40 00 00 00 00 00 00 00 00 00 57 12 40 00 8a | '...)............@.........W.@.. |
5fd00 | 14 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ac 4d 6f 4f 00 00 00 00 02 | .@......................MoO..... |
5fd20 | 00 00 00 6c 00 00 00 80 21 00 00 80 0f 00 00 40 30 40 00 98 30 40 00 62 61 64 20 61 6c 6c 6f 63 | ...l....!......@0@..0@.bad.alloc |
5fd40 | 61 74 69 6f 6e 00 00 00 00 00 00 48 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ation......H.................... |
5fd60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
5fd80 | 00 00 00 00 00 00 00 00 30 40 00 f0 21 40 00 02 00 00 00 52 53 44 53 d1 8c b3 10 b4 8f 01 4a a8 | ........0@..!@.....RSDS.......J. |
5fda0 | 21 f6 cc eb 4c 5a 00 01 00 00 00 63 3a 5c 75 73 65 72 73 5c 73 65 6c 64 5c 64 6f 63 75 6d 65 6e | !...LZ.....c:\users\seld\documen |
5fdc0 | 74 73 5c 76 69 73 75 61 6c 20 73 74 75 64 69 6f 20 32 30 31 30 5c 50 72 6f 6a 65 63 74 73 5c 68 | ts\visual.studio.2010\Projects\h |
5fde0 | 69 64 64 65 6e 69 6e 70 5c 52 65 6c 65 61 73 65 5c 68 69 64 64 65 6e 69 6e 70 2e 70 64 62 00 00 | iddeninp\Release\hiddeninp.pdb.. |
5fe00 | 00 00 00 65 17 00 00 e6 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe ff ff ff 00 | ...e............................ |
5fe20 | 00 00 00 d0 ff ff ff 00 00 00 00 fe ff ff ff 07 12 40 00 1b 12 40 00 00 00 00 00 fe ff ff ff 00 | .................@...@.......... |
5fe40 | 00 00 00 cc ff ff ff 00 00 00 00 fe ff ff ff 00 00 00 00 3a 15 40 00 00 00 00 00 fe ff ff ff 00 | ...................:.@.......... |
5fe60 | 00 00 00 d8 ff ff ff 00 00 00 00 fe ff ff ff cb 16 40 00 df 16 40 00 ff ff ff ff dd 18 40 00 22 | .................@...@.......@." |
5fe80 | 05 93 19 01 00 00 00 64 22 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 | .......d"@...................... |
5fea0 | 00 00 00 e0 22 00 00 00 00 00 00 00 00 00 00 ec 23 00 00 00 20 00 00 24 23 00 00 00 00 00 00 00 | ...."...........#......$#....... |
5fec0 | 00 00 00 f4 26 00 00 44 20 00 00 48 23 00 00 00 00 00 00 00 00 00 00 12 28 00 00 68 20 00 00 00 | ....&..D...H#...........(..h.... |
5fee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b8 23 00 00 ca 23 00 00 dc 23 00 00 88 | ....................#...#...#... |
5ff00 | 29 00 00 72 29 00 00 62 29 00 00 48 29 00 00 34 29 00 00 16 29 00 00 fa 28 00 00 e6 28 00 00 d2 | )..r)..b)..H)..4)...)...(...(... |
5ff20 | 28 00 00 b4 28 00 00 ac 28 00 00 96 28 00 00 9e 29 00 00 00 00 00 00 fa 23 00 00 e0 24 00 00 1a | (...(...(...(...).......#...$... |
5ff40 | 25 00 00 ca 25 00 00 1a 26 00 00 64 26 00 00 ae 26 00 00 a4 24 00 00 00 00 00 00 28 27 00 00 c4 | %...%...&..d&...&...$......('... |
5ff60 | 27 00 00 d6 27 00 00 e8 27 00 00 fe 27 00 00 1e 28 00 00 28 28 00 00 36 28 00 00 a6 27 00 00 48 | '...'...'...'...(..((..6(...'..H |
5ff80 | 28 00 00 5a 28 00 00 74 28 00 00 86 28 00 00 1e 27 00 00 0e 27 00 00 00 27 00 00 96 27 00 00 82 | (..Z(..t(...(...'...'...'...'... |
5ffa0 | 27 00 00 6c 27 00 00 5e 27 00 00 52 27 00 00 46 27 00 00 3e 27 00 00 3e 28 00 00 30 27 00 00 b6 | '..l'..^'..R'..F'..>'..>(..0'... |
5ffc0 | 27 00 00 b8 29 00 00 00 00 00 00 95 01 47 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 b7 03 53 | '...)........GetConsoleMode....S |
5ffe0 | 65 74 43 6f 6e 73 6f 6c 65 4d 6f 64 65 00 00 3b 02 47 65 74 53 74 64 48 61 6e 64 6c 65 00 00 4b | etConsoleMode..;.GetStdHandle..K |
60000 | 45 52 4e 45 4c 33 32 2e 64 6c 6c 00 00 16 00 3f 3f 24 3f 36 44 55 3f 24 63 68 61 72 5f 74 72 61 | ERNEL32.dll....??$?6DU?$char_tra |
60020 | 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 31 40 40 73 74 64 | its@D@std@@V?$allocator@D@1@@std |
60040 | 40 40 59 41 41 41 56 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f | @@YAAAV?$basic_ostream@DU?$char_ |
60060 | 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 30 40 41 41 56 31 30 40 41 42 56 3f 24 62 61 73 69 | traits@D@std@@@0@AAV10@ABV?$basi |
60080 | 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 | c_string@DU?$char_traits@D@std@@ |
600a0 | 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 30 40 40 5a 00 91 06 3f 63 6f 75 74 40 73 | V?$allocator@D@2@@0@@Z...?cout@s |
600c0 | 74 64 40 40 33 56 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 | td@@3V?$basic_ostream@DU?$char_t |
600e0 | 72 61 69 74 73 40 44 40 73 74 64 40 40 40 31 40 41 00 00 4a 06 3f 63 69 6e 40 73 74 64 40 40 33 | raits@D@std@@@1@A..J.?cin@std@@3 |
60100 | 56 3f 24 62 61 73 69 63 5f 69 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 | V?$basic_istream@DU?$char_traits |
60120 | 40 44 40 73 74 64 40 40 40 31 40 41 00 c2 00 3f 3f 24 67 65 74 6c 69 6e 65 40 44 55 3f 24 63 68 | @D@std@@@1@A...??$getline@DU?$ch |
60140 | 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 | ar_traits@D@std@@V?$allocator@D@ |
60160 | 32 40 40 73 74 64 40 40 59 41 41 41 56 3f 24 62 61 73 69 63 5f 69 73 74 72 65 61 6d 40 44 55 3f | 2@@std@@YAAAV?$basic_istream@DU? |
60180 | 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 30 40 41 41 56 31 30 40 41 41 56 | $char_traits@D@std@@@0@AAV10@AAV |
601a0 | 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 | ?$basic_string@DU?$char_traits@D |
601c0 | 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 30 40 40 5a 00 1d 03 3f | @std@@V?$allocator@D@2@@0@@Z...? |
601e0 | 3f 36 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 | ?6?$basic_ostream@DU?$char_trait |
60200 | 73 40 44 40 73 74 64 40 40 40 73 74 64 40 40 51 41 45 41 41 56 30 31 40 50 36 41 41 41 56 30 31 | s@D@std@@@std@@QAEAAV01@P6AAAV01 |
60220 | 40 41 41 56 30 31 40 40 5a 40 5a 00 00 5f 02 3f 3f 31 3f 24 62 61 73 69 63 5f 73 74 72 69 6e 67 | @AAV01@@Z@Z.._.??1?$basic_string |
60240 | 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 56 3f 24 61 6c 6c 6f 63 | @DU?$char_traits@D@std@@V?$alloc |
60260 | 61 74 6f 72 40 44 40 32 40 40 73 74 64 40 40 51 41 45 40 58 5a 00 00 7b 01 3f 3f 30 3f 24 62 61 | ator@D@2@@std@@QAE@XZ..{.??0?$ba |
60280 | 73 69 63 5f 73 74 72 69 6e 67 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 | sic_string@DU?$char_traits@D@std |
602a0 | 40 40 56 3f 24 61 6c 6c 6f 63 61 74 6f 72 40 44 40 32 40 40 73 74 64 40 40 51 41 45 40 58 5a 00 | @@V?$allocator@D@2@@std@@QAE@XZ. |
602c0 | 00 b3 07 3f 65 6e 64 6c 40 73 74 64 40 40 59 41 41 41 56 3f 24 62 61 73 69 63 5f 6f 73 74 72 65 | ...?endl@std@@YAAAV?$basic_ostre |
602e0 | 61 6d 40 44 55 3f 24 63 68 61 72 5f 74 72 61 69 74 73 40 44 40 73 74 64 40 40 40 31 40 41 41 56 | am@DU?$char_traits@D@std@@@1@AAV |
60300 | 32 31 40 40 5a 00 00 4d 53 56 43 50 39 30 2e 64 6c 6c 00 15 01 5f 61 6d 73 67 5f 65 78 69 74 00 | 21@@Z..MSVCP90.dll..._amsg_exit. |
60320 | 00 9f 00 5f 5f 67 65 74 6d 61 69 6e 61 72 67 73 00 2c 01 5f 63 65 78 69 74 00 00 7c 01 5f 65 78 | ...__getmainargs.,._cexit..|._ex |
60340 | 69 74 00 66 00 5f 58 63 70 74 46 69 6c 74 65 72 00 cc 04 65 78 69 74 00 00 a0 00 5f 5f 69 6e 69 | it.f._XcptFilter...exit....__ini |
60360 | 74 65 6e 76 00 04 02 5f 69 6e 69 74 74 65 72 6d 00 05 02 5f 69 6e 69 74 74 65 72 6d 5f 65 00 3c | tenv..._initterm..._initterm_e.< |
60380 | 01 5f 63 6f 6e 66 69 67 74 68 72 65 61 64 6c 6f 63 61 6c 65 00 e3 00 5f 5f 73 65 74 75 73 65 72 | ._configthreadlocale...__setuser |
603a0 | 6d 61 74 68 65 72 72 00 00 0b 01 5f 61 64 6a 75 73 74 5f 66 64 69 76 00 00 cb 00 5f 5f 70 5f 5f | matherr...._adjust_fdiv....__p__ |
603c0 | 63 6f 6d 6d 6f 64 65 00 00 cf 00 5f 5f 70 5f 5f 66 6d 6f 64 65 00 00 6a 01 5f 65 6e 63 6f 64 65 | commode....__p__fmode..j._encode |
603e0 | 5f 70 6f 69 6e 74 65 72 00 e0 00 5f 5f 73 65 74 5f 61 70 70 5f 74 79 70 65 00 00 4b 01 5f 63 72 | _pointer...__set_app_type..K._cr |
60400 | 74 5f 64 65 62 75 67 67 65 72 5f 68 6f 6f 6b 00 00 43 00 3f 74 65 72 6d 69 6e 61 74 65 40 40 59 | t_debugger_hook..C.?terminate@@Y |
60420 | 41 58 58 5a 00 4d 53 56 43 52 39 30 2e 64 6c 6c 00 e6 03 5f 75 6e 6c 6f 63 6b 00 96 00 5f 5f 64 | AXXZ.MSVCR90.dll..._unlock...__d |
60440 | 6c 6c 6f 6e 65 78 69 74 00 76 02 5f 6c 6f 63 6b 00 1c 03 5f 6f 6e 65 78 69 74 00 60 01 5f 64 65 | llonexit.v._lock..._onexit.`._de |
60460 | 63 6f 64 65 5f 70 6f 69 6e 74 65 72 00 73 01 5f 65 78 63 65 70 74 5f 68 61 6e 64 6c 65 72 34 5f | code_pointer.s._except_handler4_ |
60480 | 63 6f 6d 6d 6f 6e 00 0b 02 5f 69 6e 76 6f 6b 65 5f 77 61 74 73 6f 6e 00 00 3f 01 5f 63 6f 6e 74 | common..._invoke_watson..?._cont |
604a0 | 72 6f 6c 66 70 5f 73 00 00 bd 02 49 6e 74 65 72 6c 6f 63 6b 65 64 45 78 63 68 61 6e 67 65 00 21 | rolfp_s....InterlockedExchange.! |
604c0 | 04 53 6c 65 65 70 00 ba 02 49 6e 74 65 72 6c 6f 63 6b 65 64 43 6f 6d 70 61 72 65 45 78 63 68 61 | .Sleep...InterlockedCompareExcha |
604e0 | 6e 67 65 00 00 2d 04 54 65 72 6d 69 6e 61 74 65 50 72 6f 63 65 73 73 00 00 a9 01 47 65 74 43 75 | nge..-.TerminateProcess....GetCu |
60500 | 72 72 65 6e 74 50 72 6f 63 65 73 73 00 3e 04 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f | rrentProcess.>.UnhandledExceptio |
60520 | 6e 46 69 6c 74 65 72 00 00 15 04 53 65 74 55 6e 68 61 6e 64 6c 65 64 45 78 63 65 70 74 69 6f 6e | nFilter....SetUnhandledException |
60540 | 46 69 6c 74 65 72 00 d1 02 49 73 44 65 62 75 67 67 65 72 50 72 65 73 65 6e 74 00 54 03 51 75 65 | Filter...IsDebuggerPresent.T.Que |
60560 | 72 79 50 65 72 66 6f 72 6d 61 6e 63 65 43 6f 75 6e 74 65 72 00 66 02 47 65 74 54 69 63 6b 43 6f | ryPerformanceCounter.f.GetTickCo |
60580 | 75 6e 74 00 00 ad 01 47 65 74 43 75 72 72 65 6e 74 54 68 72 65 61 64 49 64 00 00 aa 01 47 65 74 | unt....GetCurrentThreadId....Get |
605a0 | 43 75 72 72 65 6e 74 50 72 6f 63 65 73 73 49 64 00 4f 02 47 65 74 53 79 73 74 65 6d 54 69 6d 65 | CurrentProcessId.O.GetSystemTime |
605c0 | 41 73 46 69 6c 65 54 69 6d 65 00 73 00 5f 5f 43 78 78 46 72 61 6d 65 48 61 6e 64 6c 65 72 33 00 | AsFileTime.s.__CxxFrameHandler3. |
605e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e e6 40 bb b1 19 bf 44 ff ff ff ff ff | ...................N.@....D..... |
60620 | ff ff ff fe ff ff ff 01 00 00 00 24 21 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ...........$!@.................. |
60640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
606a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
606c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
606e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
607a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
607c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
607e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
60800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 | ................................ |
60820 | 00 02 00 10 00 00 00 20 00 00 80 18 00 00 00 38 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 | ...............8................ |
60840 | 00 01 00 01 00 00 00 50 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 01 00 00 00 68 | .......P.......................h |
60860 | 00 00 80 00 00 00 00 00 00 00 00 04 00 00 00 00 00 01 00 09 04 00 00 80 00 00 00 00 00 00 00 00 | ................................ |
60880 | 00 00 00 04 00 00 00 00 00 01 00 09 04 00 00 90 00 00 00 a0 40 00 00 28 03 00 00 e4 04 00 00 00 | ....................@..(........ |
608a0 | 00 00 00 c8 43 00 00 56 02 00 00 e4 04 00 00 00 00 00 00 28 03 34 00 00 00 56 00 53 00 5f 00 56 | ....C..V...........(.4...V.S._.V |
608c0 | 00 45 00 52 00 53 00 49 00 4f 00 4e 00 5f 00 49 00 4e 00 46 00 4f 00 00 00 00 00 bd 04 ef fe 00 | .E.R.S.I.O.N._.I.N.F.O.......... |
608e0 | 00 01 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 17 00 00 00 00 00 00 00 04 00 00 00 01 | ................................ |
60900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 86 02 00 00 01 00 53 00 74 00 72 00 69 00 6e 00 67 | .....................S.t.r.i.n.g |
60920 | 00 46 00 69 00 6c 00 65 00 49 00 6e 00 66 00 6f 00 00 00 62 02 00 00 01 00 30 00 34 00 30 00 39 | .F.i.l.e.I.n.f.o...b.....0.4.0.9 |
60940 | 00 30 00 34 00 62 00 30 00 00 00 ca 00 51 00 01 00 46 00 69 00 6c 00 65 00 44 00 65 00 73 00 63 | .0.4.b.0.....Q...F.i.l.e.D.e.s.c |
60960 | 00 72 00 69 00 70 00 74 00 69 00 6f 00 6e 00 00 00 00 00 52 00 65 00 61 00 64 00 73 00 20 00 66 | .r.i.p.t.i.o.n.....R.e.a.d.s...f |
60980 | 00 72 00 6f 00 6d 00 20 00 73 00 74 00 64 00 69 00 6e 00 20 00 77 00 69 00 74 00 68 00 6f 00 75 | .r.o.m...s.t.d.i.n...w.i.t.h.o.u |
609a0 | 00 74 00 20 00 6c 00 65 00 61 00 6b 00 69 00 6e 00 67 00 20 00 69 00 6e 00 66 00 6f 00 20 00 74 | .t...l.e.a.k.i.n.g...i.n.f.o...t |
609c0 | 00 6f 00 20 00 74 00 68 00 65 00 20 00 74 00 65 00 72 00 6d 00 69 00 6e 00 61 00 6c 00 20 00 61 | .o...t.h.e...t.e.r.m.i.n.a.l...a |
609e0 | 00 6e 00 64 00 20 00 6f 00 75 00 74 00 70 00 75 00 74 00 73 00 20 00 62 00 61 00 63 00 6b 00 20 | .n.d...o.u.t.p.u.t.s...b.a.c.k.. |
60a00 | 00 74 00 6f 00 20 00 73 00 74 00 64 00 6f 00 75 00 74 00 00 00 00 00 36 00 0b 00 01 00 46 00 69 | .t.o...s.t.d.o.u.t.....6.....F.i |
60a20 | 00 6c 00 65 00 56 00 65 00 72 00 73 00 69 00 6f 00 6e 00 00 00 00 00 31 00 2c 00 20 00 30 00 2c | .l.e.V.e.r.s.i.o.n.....1.,...0., |
60a40 | 00 20 00 30 00 2c 00 20 00 30 00 00 00 00 00 38 00 0c 00 01 00 49 00 6e 00 74 00 65 00 72 00 6e | ...0.,...0.....8.....I.n.t.e.r.n |
60a60 | 00 61 00 6c 00 4e 00 61 00 6d 00 65 00 00 00 68 00 69 00 64 00 64 00 65 00 6e 00 69 00 6e 00 70 | .a.l.N.a.m.e...h.i.d.d.e.n.i.n.p |
60a80 | 00 75 00 74 00 00 00 50 00 16 00 01 00 4c 00 65 00 67 00 61 00 6c 00 43 00 6f 00 70 00 79 00 72 | .u.t...P.....L.e.g.a.l.C.o.p.y.r |
60aa0 | 00 69 00 67 00 68 00 74 00 00 00 4a 00 6f 00 72 00 64 00 69 00 20 00 42 00 6f 00 67 00 67 00 69 | .i.g.h.t...J.o.r.d.i...B.o.g.g.i |
60ac0 | 00 61 00 6e 00 6f 00 20 00 2d 00 20 00 32 00 30 00 31 00 32 00 00 00 48 00 10 00 01 00 4f 00 72 | .a.n.o...-...2.0.1.2...H.....O.r |
60ae0 | 00 69 00 67 00 69 00 6e 00 61 00 6c 00 46 00 69 00 6c 00 65 00 6e 00 61 00 6d 00 65 00 00 00 68 | .i.g.i.n.a.l.F.i.l.e.n.a.m.e...h |
60b00 | 00 69 00 64 00 64 00 65 00 6e 00 69 00 6e 00 70 00 75 00 74 00 2e 00 65 00 78 00 65 00 00 00 3a | .i.d.d.e.n.i.n.p.u.t...e.x.e...: |
60b20 | 00 0d 00 01 00 50 00 72 00 6f 00 64 00 75 00 63 00 74 00 4e 00 61 00 6d 00 65 00 00 00 00 00 48 | .....P.r.o.d.u.c.t.N.a.m.e.....H |
60b40 | 00 69 00 64 00 64 00 65 00 6e 00 20 00 49 00 6e 00 70 00 75 00 74 00 00 00 00 00 3a 00 0b 00 01 | .i.d.d.e.n...I.n.p.u.t.....:.... |
60b60 | 00 50 00 72 00 6f 00 64 00 75 00 63 00 74 00 56 00 65 00 72 00 73 00 69 00 6f 00 6e 00 00 00 31 | .P.r.o.d.u.c.t.V.e.r.s.i.o.n...1 |
60b80 | 00 2c 00 20 00 30 00 2c 00 20 00 30 00 2c 00 20 00 30 00 00 00 00 00 44 00 00 00 01 00 56 00 61 | .,...0.,...0.,...0.....D.....V.a |
60ba0 | 00 72 00 46 00 69 00 6c 00 65 00 49 00 6e 00 66 00 6f 00 00 00 00 00 24 00 04 00 00 00 54 00 72 | .r.F.i.l.e.I.n.f.o.....$.....T.r |
60bc0 | 00 61 00 6e 00 73 00 6c 00 61 00 74 00 69 00 6f 00 6e 00 00 00 00 00 09 04 b0 04 3c 61 73 73 65 | .a.n.s.l.a.t.i.o.n.........<asse |
60be0 | 6d 62 6c 79 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 68 65 6d 61 73 2d 6d 69 63 72 6f 73 6f 66 | mbly.xmlns="urn:schemas-microsof |
60c00 | 74 2d 63 6f 6d 3a 61 73 6d 2e 76 31 22 20 6d 61 6e 69 66 65 73 74 56 65 72 73 69 6f 6e 3d 22 31 | t-com:asm.v1".manifestVersion="1 |
60c20 | 2e 30 22 3e 0d 0a 20 20 3c 74 72 75 73 74 49 6e 66 6f 20 78 6d 6c 6e 73 3d 22 75 72 6e 3a 73 63 | .0">....<trustInfo.xmlns="urn:sc |
60c40 | 68 65 6d 61 73 2d 6d 69 63 72 6f 73 6f 66 74 2d 63 6f 6d 3a 61 73 6d 2e 76 33 22 3e 0d 0a 20 20 | hemas-microsoft-com:asm.v3">.... |
60c60 | 20 20 3c 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 50 72 | ..<security>........<requestedPr |
60c80 | 69 76 69 6c 65 67 65 73 3e 0d 0a 20 20 20 20 20 20 20 20 3c 72 65 71 75 65 73 74 65 64 45 78 65 | ivileges>..........<requestedExe |
60ca0 | 63 75 74 69 6f 6e 4c 65 76 65 6c 20 6c 65 76 65 6c 3d 22 61 73 49 6e 76 6f 6b 65 72 22 20 75 69 | cutionLevel.level="asInvoker".ui |
60cc0 | 41 63 63 65 73 73 3d 22 66 61 6c 73 65 22 3e 3c 2f 72 65 71 75 65 73 74 65 64 45 78 65 63 75 74 | Access="false"></requestedExecut |
60ce0 | 69 6f 6e 4c 65 76 65 6c 3e 0d 0a 20 20 20 20 20 20 3c 2f 72 65 71 75 65 73 74 65 64 50 72 69 76 | ionLevel>........</requestedPriv |
60d00 | 69 6c 65 67 65 73 3e 0d 0a 20 20 20 20 3c 2f 73 65 63 75 72 69 74 79 3e 0d 0a 20 20 3c 2f 74 72 | ileges>......</security>....</tr |
60d20 | 75 73 74 49 6e 66 6f 3e 0d 0a 20 20 3c 64 65 70 65 6e 64 65 6e 63 79 3e 0d 0a 20 20 20 20 3c 64 | ustInfo>....<dependency>......<d |
60d40 | 65 70 65 6e 64 65 6e 74 41 73 73 65 6d 62 6c 79 3e 0d 0a 20 20 20 20 20 20 3c 61 73 73 65 6d 62 | ependentAssembly>........<assemb |
60d60 | 6c 79 49 64 65 6e 74 69 74 79 20 74 79 70 65 3d 22 77 69 6e 33 32 22 20 6e 61 6d 65 3d 22 4d 69 | lyIdentity.type="win32".name="Mi |
60d80 | 63 72 6f 73 6f 66 74 2e 56 43 39 30 2e 43 52 54 22 20 76 65 72 73 69 6f 6e 3d 22 39 2e 30 2e 32 | crosoft.VC90.CRT".version="9.0.2 |
60da0 | 31 30 32 32 2e 38 22 20 70 72 6f 63 65 73 73 6f 72 41 72 63 68 69 74 65 63 74 75 72 65 3d 22 78 | 1022.8".processorArchitecture="x |
60dc0 | 38 36 22 20 70 75 62 6c 69 63 4b 65 79 54 6f 6b 65 6e 3d 22 31 66 63 38 62 33 62 39 61 31 65 31 | 86".publicKeyToken="1fc8b3b9a1e1 |
60de0 | 38 65 33 62 22 3e 3c 2f 61 73 73 65 6d 62 6c 79 49 64 65 6e 74 69 74 79 3e 0d 0a 20 20 20 20 3c | 8e3b"></assemblyIdentity>......< |
60e00 | 2f 64 65 70 65 6e 64 65 6e 74 41 73 73 65 6d 62 6c 79 3e 0d 0a 20 20 3c 2f 64 65 70 65 6e 64 65 | /dependentAssembly>....</depende |
60e20 | 6e 63 79 3e 0d 0a 3c 2f 61 73 73 65 6d 62 6c 79 3e 50 41 50 41 44 44 49 4e 47 58 58 50 41 44 44 | ncy>..</assembly>PAPADDINGXXPADD |
60e40 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60e60 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60e80 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60ea0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60ec0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60ee0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60f00 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60f20 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60f40 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60f60 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60f80 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60fa0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60fc0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
60fe0 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 | INGPADDINGXXPADDINGPADDINGXXPADD |
61000 | 49 4e 47 50 41 44 44 49 4e 47 58 58 50 41 44 44 49 4e 47 00 10 00 00 40 01 00 00 03 30 10 30 21 | INGPADDINGXXPADDING....@....0.0! |
61020 | 30 2f 30 38 30 46 30 4c 30 54 30 5e 30 64 30 6e 30 7b 30 89 30 97 30 a1 30 a8 30 ae 30 b3 30 b8 | 0/080F0L0T0^0d0n0{0.0.0.0.0.0.0. |
61040 | 30 bd 30 c2 30 c8 30 d0 30 e4 30 ff 30 08 31 23 31 2d 31 40 31 4a 31 4f 31 54 31 76 31 7b 31 84 | 0.0.0.0.0.0.0.1#1-1@1J1O1T1v1{1. |
61060 | 31 89 31 96 31 a7 31 ad 31 b4 31 c8 31 cd 31 d3 31 db 31 e1 31 e7 31 f4 31 fa 31 03 32 22 32 2a | 1.1.1.1.1.1.1.1.1.1.1.1.1.1.2"2* |
61080 | 32 33 32 39 32 41 32 4d 32 5f 32 6a 32 70 32 b9 32 bf 32 c7 32 ce 32 d3 32 d9 32 df 32 e7 32 ed | 23292A2M2_2j2p2.2.2.2.2.2.2.2.2. |
610a0 | 32 f4 32 fb 32 0b 33 13 33 19 33 25 33 30 33 4e 33 54 33 5a 33 60 33 66 33 6c 33 73 33 7a 33 81 | 2.2.2.3.3.3%303N3T3Z3`3f3l3s3z3. |
610c0 | 33 88 33 8f 33 96 33 9d 33 a5 33 ad 33 b5 33 c1 33 ca 33 cf 33 d5 33 df 33 e8 33 f3 33 ff 33 04 | 3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3. |
610e0 | 34 14 34 19 34 1f 34 25 34 3b 34 42 34 8b 34 91 34 9a 34 a1 34 ac 34 b2 34 c6 34 db 34 e6 34 fe | 4.4.4.4%4;4B4.4.4.4.4.4.4.4.4.4. |
61100 | 34 14 35 21 35 5e 35 63 35 84 35 89 35 a8 35 48 36 4d 36 5f 36 7d 36 91 36 97 36 00 37 06 37 0d | 4.5!5^5c5.5.5.5H6M6_6}6.6.6.7.7. |
61120 | 37 2a 37 77 37 7c 37 c1 37 e4 37 f1 37 fd 37 05 38 0d 38 19 38 3d 38 45 38 50 38 56 38 5c 38 62 | 7*7w7|7.7.7.7.7.8.8.8=8E8P8V8\8b |
61140 | 38 68 38 6e 38 74 38 7a 38 80 38 9c 38 e2 38 02 39 00 00 00 20 00 00 24 00 00 00 dc 30 e8 30 ec | 8h8n8t8z8.8.8.8.9......$....0.0. |
61160 | 30 1c 31 20 31 74 31 78 31 1c 32 20 32 40 32 5c 32 60 32 68 32 74 32 00 30 00 00 0c 00 00 00 18 | 0.1.1t1x1.2.2@2\2`2h2t2.0....... |
61180 | 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 0............................... |
611a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
611c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
611e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
61200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | ...................<?php........ |
61220 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 | ...namespace.Symfony\Component\P |
61240 | 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 70 50 72 6f | rocess;.............class.PhpPro |
61260 | 63 65 73 73 20 65 78 74 65 6e 64 73 20 50 72 6f 63 65 73 73 0a 7b 0a 70 72 69 76 61 74 65 20 24 | cess.extends.Process.{.private.$ |
61280 | 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | executableFinder;.............pu |
612a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 63 72 69 70 | blic.function.__construct($scrip |
612c0 | 74 2c 20 24 63 77 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 65 6e 76 20 3d 20 61 72 72 | t,.$cwd.=.null,.array.$env.=.arr |
612e0 | 61 79 28 29 2c 20 24 74 69 6d 65 6f 75 74 20 3d 20 36 30 2c 20 61 72 72 61 79 20 24 6f 70 74 69 | ay(),.$timeout.=.60,.array.$opti |
61300 | 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 | ons.=.array()).{.parent::__const |
61320 | 72 75 63 74 28 6e 75 6c 6c 2c 20 24 63 77 64 2c 20 24 65 6e 76 2c 20 24 73 63 72 69 70 74 2c 20 | ruct(null,.$cwd,.$env,.$script,. |
61340 | 24 74 69 6d 65 6f 75 74 2c 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 24 74 68 69 73 2d 3e 65 78 65 | $timeout,.$options);..$this->exe |
61360 | 63 75 74 61 62 6c 65 46 69 6e 64 65 72 20 3d 20 6e 65 77 20 50 68 70 45 78 65 63 75 74 61 62 6c | cutableFinder.=.new.PhpExecutabl |
61380 | 65 46 69 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | eFinder();.}.......public.functi |
613a0 | 6f 6e 20 73 65 74 50 68 70 42 69 6e 61 72 79 28 24 70 68 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 | on.setPhpBinary($php).{.$this->s |
613c0 | 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 24 70 68 70 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | etCommandLine($php);.}.......... |
613e0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 24 63 61 6c 6c 62 61 63 6b 20 | ..public.function.run($callback. |
61400 | 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 | =.null).{.if.(null.===.$this->ge |
61420 | 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 | tCommandLine()).{.if.(false.===. |
61440 | 24 70 68 70 20 3d 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 2d 3e | $php.=.$this->executableFinder-> |
61460 | 66 69 6e 64 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 | find()).{.throw.new.\RuntimeExce |
61480 | 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 66 69 6e 64 20 74 68 65 20 50 48 50 20 65 78 | ption('Unable.to.find.the.PHP.ex |
614a0 | 65 63 75 74 61 62 6c 65 2e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 | ecutable.');.}.$this->setCommand |
614c0 | 4c 69 6e 65 28 24 70 68 70 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 70 61 72 65 6e 74 3a 3a 72 75 | Line($php);.}..return.parent::ru |
614e0 | 6e 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | n($callback);.}.}.<?php......... |
61500 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 | ..namespace.Symfony\Component\Pr |
61520 | 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 78 65 63 75 74 61 62 6c 65 46 69 | ocess;........class.ExecutableFi |
61540 | 6e 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 69 73 57 69 6e 64 6f 77 73 | nder.{.private.static.$isWindows |
61560 | 3b 0a 0a 70 72 69 76 61 74 65 20 24 73 75 66 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 27 2e 65 | ;..private.$suffixes.=.array('.e |
61580 | 78 65 27 2c 20 27 2e 62 61 74 27 2c 20 27 2e 63 6d 64 27 2c 20 27 2e 63 6f 6d 27 29 3b 0a 0a 70 | xe',.'.bat',.'.cmd',.'.com');..p |
615a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 69 | ublic.function.__construct().{.i |
615c0 | 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 73 65 6c 66 3a 3a 24 69 73 57 69 6e 64 6f 77 73 29 20 7b 0a | f.(null.===.self::$isWindows).{. |
615e0 | 73 65 6c 66 3a 3a 24 69 73 57 69 6e 64 6f 77 73 20 3d 20 30 20 3d 3d 3d 20 73 74 72 69 70 6f 73 | self::$isWindows.=.0.===.stripos |
61600 | 28 50 48 50 5f 4f 53 2c 20 27 77 69 6e 27 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | (PHP_OS,.'win');.}.}..public.fun |
61620 | 63 74 69 6f 6e 20 73 65 74 53 75 66 66 69 78 65 73 28 61 72 72 61 79 20 24 73 75 66 66 69 78 65 | ction.setSuffixes(array.$suffixe |
61640 | 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 66 66 69 78 65 73 20 3d 20 24 73 75 66 66 69 78 65 73 | s).{.$this->suffixes.=.$suffixes |
61660 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 75 66 66 69 78 28 24 | ;.}..public.function.addSuffix($ |
61680 | 73 75 66 66 69 78 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 75 66 66 69 78 65 73 5b 5d 20 3d 20 24 73 | suffix).{.$this->suffixes[].=.$s |
616a0 | 75 66 66 69 78 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | uffix;.}...........public.functi |
616c0 | 6f 6e 20 66 69 6e 64 28 24 6e 61 6d 65 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 2c 20 | on.find($name,.$default.=.null,. |
616e0 | 61 72 72 61 79 20 24 65 78 74 72 61 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 | array.$extraDirs.=.array()).{.if |
61700 | 20 28 69 6e 69 5f 67 65 74 28 27 6f 70 65 6e 5f 62 61 73 65 64 69 72 27 29 29 20 7b 0a 24 73 65 | .(ini_get('open_basedir')).{.$se |
61720 | 61 72 63 68 50 61 74 68 20 3d 20 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 54 4f | archPath.=.explode(PATH_SEPARATO |
61740 | 52 2c 20 67 65 74 65 6e 76 28 27 6f 70 65 6e 5f 62 61 73 65 64 69 72 27 29 29 3b 0a 24 64 69 72 | R,.getenv('open_basedir'));.$dir |
61760 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 73 65 61 72 63 68 50 61 74 | s.=.array();.foreach.($searchPat |
61780 | 68 20 61 73 20 24 70 61 74 68 29 20 7b 0a 69 66 20 28 69 73 5f 64 69 72 28 24 70 61 74 68 29 29 | h.as.$path).{.if.(is_dir($path)) |
617a0 | 20 7b 0a 24 64 69 72 73 5b 5d 20 3d 20 24 70 61 74 68 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 66 69 | .{.$dirs[].=.$path;.}.else.{.$fi |
617c0 | 6c 65 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 64 69 72 6e 61 6d 65 28 24 70 61 74 68 29 2c | le.=.str_replace(dirname($path), |
617e0 | 20 27 27 2c 20 24 70 61 74 68 29 3b 0a 69 66 20 28 24 66 69 6c 65 20 3d 3d 20 24 6e 61 6d 65 20 | .'',.$path);.if.($file.==.$name. |
61800 | 26 26 20 69 73 5f 65 78 65 63 75 74 61 62 6c 65 28 24 70 61 74 68 29 29 20 7b 0a 72 65 74 75 72 | &&.is_executable($path)).{.retur |
61820 | 6e 20 24 70 61 74 68 3b 0a 7d 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 69 72 73 20 3d 20 | n.$path;.}.}.}.}.else.{.$dirs.=. |
61840 | 61 72 72 61 79 5f 6d 65 72 67 65 28 0a 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 50 41 52 41 | array_merge(.explode(PATH_SEPARA |
61860 | 54 4f 52 2c 20 67 65 74 65 6e 76 28 27 50 41 54 48 27 29 20 3f 3a 20 67 65 74 65 6e 76 28 27 50 | TOR,.getenv('PATH').?:.getenv('P |
61880 | 61 74 68 27 29 29 2c 0a 24 65 78 74 72 61 44 69 72 73 0a 29 3b 0a 7d 0a 0a 24 73 75 66 66 69 78 | ath')),.$extraDirs.);.}..$suffix |
618a0 | 65 73 20 3d 20 61 72 72 61 79 28 27 27 29 3b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 | es.=.array('');.if.(defined('PHP |
618c0 | 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 70 61 74 | _WINDOWS_VERSION_BUILD')).{.$pat |
618e0 | 68 45 78 74 20 3d 20 67 65 74 65 6e 76 28 27 50 41 54 48 45 58 54 27 29 3b 0a 24 73 75 66 66 69 | hExt.=.getenv('PATHEXT');.$suffi |
61900 | 78 65 73 20 3d 20 24 70 61 74 68 45 78 74 20 3f 20 65 78 70 6c 6f 64 65 28 50 41 54 48 5f 53 45 | xes.=.$pathExt.?.explode(PATH_SE |
61920 | 50 41 52 41 54 4f 52 2c 20 24 70 61 74 68 45 78 74 29 20 3a 20 24 74 68 69 73 2d 3e 73 75 66 66 | PARATOR,.$pathExt).:.$this->suff |
61940 | 69 78 65 73 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 24 73 75 66 66 69 78 65 73 20 61 73 20 24 73 | ixes;.}.foreach.($suffixes.as.$s |
61960 | 75 66 66 69 78 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 | uffix).{.foreach.($dirs.as.$dir) |
61980 | 20 7b 0a 69 66 20 28 69 73 5f 66 69 6c 65 28 24 66 69 6c 65 20 3d 20 24 64 69 72 2e 44 49 52 45 | .{.if.(is_file($file.=.$dir.DIRE |
619a0 | 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 2e 24 6e 61 6d 65 2e 24 73 75 66 66 69 78 29 20 26 | CTORY_SEPARATOR.$name.$suffix).& |
619c0 | 26 20 28 73 65 6c 66 3a 3a 24 69 73 57 69 6e 64 6f 77 73 20 7c 7c 20 69 73 5f 65 78 65 63 75 74 | &.(self::$isWindows.||.is_execut |
619e0 | 61 62 6c 65 28 24 66 69 6c 65 29 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a 7d 0a | able($file))).{.return.$file;.}. |
61a00 | 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a | }.}..return.$default;.}.}.<?php. |
61a20 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 | ..........namespace.Symfony\Comp |
61a40 | 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 | onent\Process;..........class.Pr |
61a60 | 6f 63 65 73 73 0a 7b 0a 63 6f 6e 73 74 20 45 52 52 20 3d 20 27 65 72 72 27 3b 0a 63 6f 6e 73 74 | ocess.{.const.ERR.=.'err';.const |
61a80 | 20 4f 55 54 20 3d 20 27 6f 75 74 27 3b 0a 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 52 45 41 44 | .OUT.=.'out';..const.STATUS_READ |
61aa0 | 59 20 3d 20 27 72 65 61 64 79 27 3b 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 53 54 41 52 54 45 | Y.=.'ready';.const.STATUS_STARTE |
61ac0 | 44 20 3d 20 27 73 74 61 72 74 65 64 27 3b 0a 63 6f 6e 73 74 20 53 54 41 54 55 53 5f 54 45 52 4d | D.=.'started';.const.STATUS_TERM |
61ae0 | 49 4e 41 54 45 44 20 3d 20 27 74 65 72 6d 69 6e 61 74 65 64 27 3b 0a 0a 63 6f 6e 73 74 20 53 54 | INATED.=.'terminated';..const.ST |
61b00 | 44 49 4e 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 53 54 44 4f 55 54 20 3d 20 31 3b 0a 63 6f 6e 73 74 | DIN.=.0;.const.STDOUT.=.1;.const |
61b20 | 20 53 54 44 45 52 52 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 6c 69 | .STDERR.=.2;..private.$commandli |
61b40 | 6e 65 3b 0a 70 72 69 76 61 74 65 20 24 63 77 64 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 76 3b 0a | ne;.private.$cwd;.private.$env;. |
61b60 | 70 72 69 76 61 74 65 20 24 73 74 64 69 6e 3b 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 | private.$stdin;.private.$timeout |
61b80 | 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 65 78 69 | ;.private.$options;.private.$exi |
61ba0 | 74 63 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 | tcode;.private.$processInformati |
61bc0 | 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 73 74 64 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 24 73 74 | on;.private.$stdout;.private.$st |
61be0 | 64 65 72 72 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d | derr;.private.$enhanceWindowsCom |
61c00 | 70 61 74 69 62 69 6c 69 74 79 3b 0a 70 72 69 76 61 74 65 20 24 70 69 70 65 73 3b 0a 70 72 69 76 | patibility;.private.$pipes;.priv |
61c20 | 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a 70 72 69 76 61 74 65 20 24 73 74 61 74 75 73 20 3d 20 | ate.$process;.private.$status.=. |
61c40 | 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 52 45 41 44 59 3b 0a 0a 70 72 69 76 61 74 65 20 24 66 69 | self::STATUS_READY;..private.$fi |
61c60 | 6c 65 48 61 6e 64 6c 65 73 3b 0a 70 72 69 76 61 74 65 20 24 72 65 61 64 42 79 74 65 73 3b 0a 0a | leHandles;.private.$readBytes;.. |
61c80 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 24 65 78 69 74 43 6f 64 65 73 20 | .......public.static.$exitCodes. |
61ca0 | 3d 20 61 72 72 61 79 28 0a 30 20 3d 3e 20 27 4f 4b 27 2c 0a 31 20 3d 3e 20 27 47 65 6e 65 72 61 | =.array(.0.=>.'OK',.1.=>.'Genera |
61cc0 | 6c 20 65 72 72 6f 72 27 2c 0a 32 20 3d 3e 20 27 4d 69 73 75 73 65 20 6f 66 20 73 68 65 6c 6c 20 | l.error',.2.=>.'Misuse.of.shell. |
61ce0 | 62 75 69 6c 74 69 6e 73 27 2c 0a 0a 31 32 36 20 3d 3e 20 27 49 6e 76 6f 6b 65 64 20 63 6f 6d 6d | builtins',..126.=>.'Invoked.comm |
61d00 | 61 6e 64 20 63 61 6e 6e 6f 74 20 65 78 65 63 75 74 65 27 2c 0a 31 32 37 20 3d 3e 20 27 43 6f 6d | and.cannot.execute',.127.=>.'Com |
61d20 | 6d 61 6e 64 20 6e 6f 74 20 66 6f 75 6e 64 27 2c 0a 31 32 38 20 3d 3e 20 27 49 6e 76 61 6c 69 64 | mand.not.found',.128.=>.'Invalid |
61d40 | 20 65 78 69 74 20 61 72 67 75 6d 65 6e 74 27 2c 0a 0a 0a 20 31 32 39 20 3d 3e 20 27 48 61 6e 67 | .exit.argument',....129.=>.'Hang |
61d60 | 75 70 27 2c 0a 31 33 30 20 3d 3e 20 27 49 6e 74 65 72 72 75 70 74 27 2c 0a 31 33 31 20 3d 3e 20 | up',.130.=>.'Interrupt',.131.=>. |
61d80 | 27 51 75 69 74 20 61 6e 64 20 64 75 6d 70 20 63 6f 72 65 27 2c 0a 31 33 32 20 3d 3e 20 27 49 6c | 'Quit.and.dump.core',.132.=>.'Il |
61da0 | 6c 65 67 61 6c 20 69 6e 73 74 72 75 63 74 69 6f 6e 27 2c 0a 31 33 33 20 3d 3e 20 27 54 72 61 63 | legal.instruction',.133.=>.'Trac |
61dc0 | 65 2f 62 72 65 61 6b 70 6f 69 6e 74 20 74 72 61 70 27 2c 0a 31 33 34 20 3d 3e 20 27 50 72 6f 63 | e/breakpoint.trap',.134.=>.'Proc |
61de0 | 65 73 73 20 61 62 6f 72 74 65 64 27 2c 0a 31 33 35 20 3d 3e 20 27 42 75 73 20 65 72 72 6f 72 3a | ess.aborted',.135.=>.'Bus.error: |
61e00 | 20 22 61 63 63 65 73 73 20 74 6f 20 75 6e 64 65 66 69 6e 65 64 20 70 6f 72 74 69 6f 6e 20 6f 66 | ."access.to.undefined.portion.of |
61e20 | 20 6d 65 6d 6f 72 79 20 6f 62 6a 65 63 74 22 27 2c 0a 31 33 36 20 3d 3e 20 27 46 6c 6f 61 74 69 | .memory.object"',.136.=>.'Floati |
61e40 | 6e 67 20 70 6f 69 6e 74 20 65 78 63 65 70 74 69 6f 6e 3a 20 22 65 72 72 6f 6e 65 6f 75 73 20 61 | ng.point.exception:."erroneous.a |
61e60 | 72 69 74 68 6d 65 74 69 63 20 6f 70 65 72 61 74 69 6f 6e 22 27 2c 0a 31 33 37 20 3d 3e 20 27 4b | rithmetic.operation"',.137.=>.'K |
61e80 | 69 6c 6c 20 28 74 65 72 6d 69 6e 61 74 65 20 69 6d 6d 65 64 69 61 74 65 6c 79 29 27 2c 0a 31 33 | ill.(terminate.immediately)',.13 |
61ea0 | 38 20 3d 3e 20 27 55 73 65 72 2d 64 65 66 69 6e 65 64 20 31 27 2c 0a 31 33 39 20 3d 3e 20 27 53 | 8.=>.'User-defined.1',.139.=>.'S |
61ec0 | 65 67 6d 65 6e 74 61 74 69 6f 6e 20 76 69 6f 6c 61 74 69 6f 6e 27 2c 0a 31 34 30 20 3d 3e 20 27 | egmentation.violation',.140.=>.' |
61ee0 | 55 73 65 72 2d 64 65 66 69 6e 65 64 20 32 27 2c 0a 31 34 31 20 3d 3e 20 27 57 72 69 74 65 20 74 | User-defined.2',.141.=>.'Write.t |
61f00 | 6f 20 70 69 70 65 20 77 69 74 68 20 6e 6f 20 6f 6e 65 20 72 65 61 64 69 6e 67 27 2c 0a 31 34 32 | o.pipe.with.no.one.reading',.142 |
61f20 | 20 3d 3e 20 27 53 69 67 6e 61 6c 20 72 61 69 73 65 64 20 62 79 20 61 6c 61 72 6d 27 2c 0a 31 34 | .=>.'Signal.raised.by.alarm',.14 |
61f40 | 33 20 3d 3e 20 27 54 65 72 6d 69 6e 61 74 69 6f 6e 20 28 72 65 71 75 65 73 74 20 74 6f 20 74 65 | 3.=>.'Termination.(request.to.te |
61f60 | 72 6d 69 6e 61 74 65 29 27 2c 0a 0a 20 31 34 35 20 3d 3e 20 27 43 68 69 6c 64 20 70 72 6f 63 65 | rminate)',...145.=>.'Child.proce |
61f80 | 73 73 20 74 65 72 6d 69 6e 61 74 65 64 2c 20 73 74 6f 70 70 65 64 20 28 6f 72 20 63 6f 6e 74 69 | ss.terminated,.stopped.(or.conti |
61fa0 | 6e 75 65 64 2a 29 27 2c 0a 31 34 36 20 3d 3e 20 27 43 6f 6e 74 69 6e 75 65 20 69 66 20 73 74 6f | nued*)',.146.=>.'Continue.if.sto |
61fc0 | 70 70 65 64 27 2c 0a 31 34 37 20 3d 3e 20 27 53 74 6f 70 20 65 78 65 63 75 74 69 6e 67 20 74 65 | pped',.147.=>.'Stop.executing.te |
61fe0 | 6d 70 6f 72 61 72 69 6c 79 27 2c 0a 31 34 38 20 3d 3e 20 27 54 65 72 6d 69 6e 61 6c 20 73 74 6f | mporarily',.148.=>.'Terminal.sto |
62000 | 70 20 73 69 67 6e 61 6c 27 2c 0a 31 34 39 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 70 72 | p.signal',.149.=>.'Background.pr |
62020 | 6f 63 65 73 73 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 72 65 61 64 20 66 72 6f 6d 20 74 74 | ocess.attempting.to.read.from.tt |
62040 | 79 20 28 22 69 6e 22 29 27 2c 0a 31 35 30 20 3d 3e 20 27 42 61 63 6b 67 72 6f 75 6e 64 20 70 72 | y.("in")',.150.=>.'Background.pr |
62060 | 6f 63 65 73 73 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 77 72 69 74 65 20 74 6f 20 74 74 79 | ocess.attempting.to.write.to.tty |
62080 | 20 28 22 6f 75 74 22 29 27 2c 0a 31 35 31 20 3d 3e 20 27 55 72 67 65 6e 74 20 64 61 74 61 20 61 | .("out")',.151.=>.'Urgent.data.a |
620a0 | 76 61 69 6c 61 62 6c 65 20 6f 6e 20 73 6f 63 6b 65 74 27 2c 0a 31 35 32 20 3d 3e 20 27 43 50 55 | vailable.on.socket',.152.=>.'CPU |
620c0 | 20 74 69 6d 65 20 6c 69 6d 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 33 20 3d 3e 20 27 46 | .time.limit.exceeded',.153.=>.'F |
620e0 | 69 6c 65 20 73 69 7a 65 20 6c 69 6d 69 74 20 65 78 63 65 65 64 65 64 27 2c 0a 31 35 34 20 3d 3e | ile.size.limit.exceeded',.154.=> |
62100 | 20 27 53 69 67 6e 61 6c 20 72 61 69 73 65 64 20 62 79 20 74 69 6d 65 72 20 63 6f 75 6e 74 69 6e | .'Signal.raised.by.timer.countin |
62120 | 67 20 76 69 72 74 75 61 6c 20 74 69 6d 65 3a 20 22 76 69 72 74 75 61 6c 20 74 69 6d 65 72 20 65 | g.virtual.time:."virtual.timer.e |
62140 | 78 70 69 72 65 64 22 27 2c 0a 31 35 35 20 3d 3e 20 27 50 72 6f 66 69 6c 69 6e 67 20 74 69 6d 65 | xpired"',.155.=>.'Profiling.time |
62160 | 72 20 65 78 70 69 72 65 64 27 2c 0a 0a 20 31 35 37 20 3d 3e 20 27 50 6f 6c 6c 61 62 6c 65 20 65 | r.expired',...157.=>.'Pollable.e |
62180 | 76 65 6e 74 27 2c 0a 0a 20 31 35 39 20 3d 3e 20 27 42 61 64 20 73 79 73 63 61 6c 6c 27 2c 0a 29 | vent',...159.=>.'Bad.syscall',.) |
621a0 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ;................public.function |
621c0 | 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 2c 20 24 63 77 64 20 | .__construct($commandline,.$cwd. |
621e0 | 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 65 6e 76 20 3d 20 6e 75 6c 6c 2c 20 24 73 74 64 69 | =.null,.array.$env.=.null,.$stdi |
62200 | 6e 20 3d 20 6e 75 6c 6c 2c 20 24 74 69 6d 65 6f 75 74 20 3d 20 36 30 2c 20 61 72 72 61 79 20 24 | n.=.null,.$timeout.=.60,.array.$ |
62220 | 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 | options.=.array()).{.if.(!functi |
62240 | 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 65 6e 27 29 29 20 7b 0a 74 68 72 6f 77 20 | on_exists('proc_open')).{.throw. |
62260 | 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 50 72 6f 63 65 | new.\RuntimeException('The.Proce |
62280 | 73 73 20 63 6c 61 73 73 20 72 65 6c 69 65 73 20 6f 6e 20 70 72 6f 63 5f 6f 70 65 6e 2c 20 77 68 | ss.class.relies.on.proc_open,.wh |
622a0 | 69 63 68 20 69 73 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 6f 6e 20 79 6f 75 72 20 50 48 50 | ich.is.not.available.on.your.PHP |
622c0 | 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d | .installation.');.}..$this->comm |
622e0 | 61 6e 64 6c 69 6e 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 24 74 68 69 73 2d 3e 63 | andline.=.$commandline;.$this->c |
62300 | 77 64 20 3d 20 6e 75 6c 6c 20 3d 3d 3d 20 24 63 77 64 20 3f 20 67 65 74 63 77 64 28 29 20 3a 20 | wd.=.null.===.$cwd.?.getcwd().:. |
62320 | 24 63 77 64 3b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 6e 76 29 20 7b 0a 24 74 68 69 73 | $cwd;.if.(null.!==.$env).{.$this |
62340 | 2d 3e 65 6e 76 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 65 6e 76 20 61 | ->env.=.array();.foreach.($env.a |
62360 | 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 5b 28 | s.$key.=>.$value).{.$this->env[( |
62380 | 62 69 6e 61 72 79 29 20 24 6b 65 79 5d 20 3d 20 28 62 69 6e 61 72 79 29 20 24 76 61 6c 75 65 3b | binary).$key].=.(binary).$value; |
623a0 | 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 20 3d 20 6e 75 6c 6c 3b 0a 7d | .}.}.else.{.$this->env.=.null;.} |
623c0 | 0a 24 74 68 69 73 2d 3e 73 74 64 69 6e 20 3d 20 24 73 74 64 69 6e 3b 0a 24 74 68 69 73 2d 3e 73 | .$this->stdin.=.$stdin;.$this->s |
623e0 | 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 3b 0a 24 74 68 69 73 2d 3e 65 6e 68 61 | etTimeout($timeout);.$this->enha |
62400 | 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 74 72 75 65 3b 0a | nceWindowsCompatibility.=.true;. |
62420 | 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 5f 72 65 70 6c 61 63 65 28 61 | $this->options.=.array_replace(a |
62440 | 72 72 61 79 28 27 73 75 70 70 72 65 73 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 2c 20 | rray('suppress_errors'.=>.true,. |
62460 | 27 62 69 6e 61 72 79 5f 70 69 70 65 73 27 20 3d 3e 20 74 72 75 65 29 2c 20 24 6f 70 74 69 6f 6e | 'binary_pipes'.=>.true),.$option |
62480 | 73 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 64 65 73 74 72 75 63 | s);.}..public.function.__destruc |
624a0 | 74 28 29 0a 7b 0a 0a 20 24 74 68 69 73 2d 3e 73 74 6f 70 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | t().{...$this->stop();.}........ |
624c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e | .............public.function.run |
624e0 | 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 72 | ($callback.=.null).{.$this->star |
62500 | 74 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 77 61 69 | t($callback);..return.$this->wai |
62520 | 74 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | t($callback);.}................. |
62540 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 61 72 74 28 24 63 61 6c | ......public.function.start($cal |
62560 | 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e | lback.=.null).{.if.($this->isRun |
62580 | 6e 69 6e 67 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 | ning()).{.throw.new.\RuntimeExce |
625a0 | 70 74 69 6f 6e 28 27 50 72 6f 63 65 73 73 20 69 73 20 61 6c 72 65 61 64 79 20 72 75 6e 6e 69 6e | ption('Process.is.already.runnin |
625c0 | 67 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 20 3d 20 27 27 3b 0a 24 74 68 69 | g');.}..$this->stdout.=.'';.$thi |
625e0 | 73 2d 3e 73 74 64 65 72 72 20 3d 20 27 27 3b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 24 74 68 69 | s->stderr.=.'';.$callback.=.$thi |
62600 | 73 2d 3e 62 75 69 6c 64 43 61 6c 6c 62 61 63 6b 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 0a 0a 20 | s->buildCallback($callback);.... |
62620 | 0a 20 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 | ....if.(defined('PHP_WINDOWS_VER |
62640 | 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c | SION_BUILD')).{.$this->fileHandl |
62660 | 65 73 20 3d 20 61 72 72 61 79 28 0a 73 65 6c 66 3a 3a 53 54 44 4f 55 54 20 3d 3e 20 74 6d 70 66 | es.=.array(.self::STDOUT.=>.tmpf |
62680 | 69 6c 65 28 29 2c 0a 29 3b 0a 24 74 68 69 73 2d 3e 72 65 61 64 42 79 74 65 73 20 3d 20 61 72 72 | ile(),.);.$this->readBytes.=.arr |
626a0 | 61 79 28 0a 73 65 6c 66 3a 3a 53 54 44 4f 55 54 20 3d 3e 20 30 2c 0a 29 3b 0a 24 64 65 73 63 72 | ay(.self::STDOUT.=>.0,.);.$descr |
626c0 | 69 70 74 6f 72 73 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 72 27 | iptors.=.array(array('pipe',.'r' |
626e0 | 29 2c 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 73 65 6c 66 3a 3a 53 54 44 4f | ),.$this->fileHandles[self::STDO |
62700 | 55 54 5d 2c 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 3b 0a 7d 20 65 6c 73 65 | UT],.array('pipe',.'w'));.}.else |
62720 | 20 7b 0a 24 64 65 73 63 72 69 70 74 6f 72 73 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 27 70 | .{.$descriptors.=.array(array('p |
62740 | 69 70 65 27 2c 20 27 72 27 29 2c 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 2c 20 | ipe',.'r'),.array('pipe',.'w'),. |
62760 | 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 | array('pipe',.'w'));.}..$command |
62780 | 6c 69 6e 65 20 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 0a 69 66 20 28 | line.=.$this->commandline;..if.( |
627a0 | 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 | defined('PHP_WINDOWS_VERSION_BUI |
627c0 | 4c 44 27 29 20 26 26 20 24 74 68 69 73 2d 3e 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d | LD').&&.$this->enhanceWindowsCom |
627e0 | 70 61 74 69 62 69 6c 69 74 79 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 27 63 6d | patibility).{.$commandline.=.'cm |
62800 | 64 20 2f 56 3a 4f 4e 20 2f 45 3a 4f 4e 20 2f 43 20 22 27 2e 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 | d./V:ON./E:ON./C."'.$commandline |
62820 | 2e 27 22 27 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b | .'"';.if.(!isset($this->options[ |
62840 | 27 62 79 70 61 73 73 5f 73 68 65 6c 6c 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f | 'bypass_shell'])).{.$this->optio |
62860 | 6e 73 5b 27 62 79 70 61 73 73 5f 73 68 65 6c 6c 27 5d 20 3d 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a | ns['bypass_shell'].=.true;.}.}.. |
62880 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 24 63 6f 6d 6d | $this->process.=.proc_open($comm |
628a0 | 61 6e 64 6c 69 6e 65 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 2c 20 24 74 68 69 73 2d 3e 70 69 | andline,.$descriptors,.$this->pi |
628c0 | 70 65 73 2c 20 24 74 68 69 73 2d 3e 63 77 64 2c 20 24 74 68 69 73 2d 3e 65 6e 76 2c 20 24 74 68 | pes,.$this->cwd,.$this->env,.$th |
628e0 | 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 0a 69 66 20 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 | is->options);..if.(!is_resource( |
62900 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 | $this->process)).{.throw.new.\Ru |
62920 | 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 6c 61 75 6e 63 68 | ntimeException('Unable.to.launch |
62940 | 20 61 20 6e 65 77 20 70 72 6f 63 65 73 73 2e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 74 | .a.new.process.');.}.$this->stat |
62960 | 75 73 20 3d 20 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 3b 0a 0a 66 6f 72 65 | us.=.self::STATUS_STARTED;..fore |
62980 | 61 63 68 20 28 24 74 68 69 73 2d 3e 70 69 70 65 73 20 61 73 20 24 70 69 70 65 29 20 7b 0a 73 74 | ach.($this->pipes.as.$pipe).{.st |
629a0 | 72 65 61 6d 5f 73 65 74 5f 62 6c 6f 63 6b 69 6e 67 28 24 70 69 70 65 2c 20 66 61 6c 73 65 29 3b | ream_set_blocking($pipe,.false); |
629c0 | 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 73 74 64 69 6e 29 20 7b | .}..if.(null.===.$this->stdin).{ |
629e0 | 0a 66 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 75 6e 73 65 74 28 | .fclose($this->pipes[0]);.unset( |
62a00 | 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 77 | $this->pipes[0]);..return;.}..$w |
62a20 | 72 69 74 65 50 69 70 65 73 20 3d 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 | ritePipes.=.array($this->pipes[0 |
62a40 | 5d 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 30 5d 29 3b 0a 24 73 74 64 | ]);.unset($this->pipes[0]);.$std |
62a60 | 69 6e 4c 65 6e 20 3d 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 73 74 64 69 6e 29 3b 0a 24 73 | inLen.=.strlen($this->stdin);.$s |
62a80 | 74 64 69 6e 4f 66 66 73 65 74 20 3d 20 30 3b 0a 0a 77 68 69 6c 65 20 28 24 77 72 69 74 65 50 69 | tdinOffset.=.0;..while.($writePi |
62aa0 | 70 65 73 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f | pes).{.if.(defined('PHP_WINDOWS_ |
62ac0 | 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 | VERSION_BUILD')).{.$this->proces |
62ae0 | 73 46 69 6c 65 48 61 6e 64 6c 65 73 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 24 72 20 3d | sFileHandles($callback);.}..$r.= |
62b00 | 20 24 74 68 69 73 2d 3e 70 69 70 65 73 3b 0a 24 77 20 3d 20 24 77 72 69 74 65 50 69 70 65 73 3b | .$this->pipes;.$w.=.$writePipes; |
62b20 | 0a 24 65 20 3d 20 6e 75 6c 6c 3b 0a 0a 24 6e 20 3d 20 40 73 74 72 65 61 6d 5f 73 65 6c 65 63 74 | .$e.=.null;..$n.=.@stream_select |
62b40 | 28 24 72 2c 20 24 77 2c 20 24 65 2c 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 29 3b 0a 0a 69 | ($r,.$w,.$e,.$this->timeout);..i |
62b60 | 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 6e 29 20 7b 0a 62 72 65 61 6b 3b 0a 7d 0a 69 66 20 28 | f.(false.===.$n).{.break;.}.if.( |
62b80 | 24 6e 20 3d 3d 3d 20 30 29 20 7b 0a 70 72 6f 63 5f 74 65 72 6d 69 6e 61 74 65 28 24 74 68 69 73 | $n.===.0).{.proc_terminate($this |
62ba0 | 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 | ->process);..throw.new.\RuntimeE |
62bc0 | 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 70 72 6f 63 65 73 73 20 74 69 6d 65 64 20 6f 75 74 2e | xception('The.process.timed.out. |
62be0 | 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 77 29 20 7b 0a 24 77 72 69 74 74 65 6e 20 3d 20 66 77 72 69 | ');.}..if.($w).{.$written.=.fwri |
62c00 | 74 65 28 24 77 72 69 74 65 50 69 70 65 73 5b 30 5d 2c 20 28 62 69 6e 61 72 79 29 20 73 75 62 73 | te($writePipes[0],.(binary).subs |
62c20 | 74 72 28 24 74 68 69 73 2d 3e 73 74 64 69 6e 2c 20 24 73 74 64 69 6e 4f 66 66 73 65 74 29 2c 20 | tr($this->stdin,.$stdinOffset),. |
62c40 | 38 31 39 32 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 77 72 69 74 74 65 6e 29 20 7b | 8192);.if.(false.!==.$written).{ |
62c60 | 0a 24 73 74 64 69 6e 4f 66 66 73 65 74 20 2b 3d 20 24 77 72 69 74 74 65 6e 3b 0a 7d 0a 69 66 20 | .$stdinOffset.+=.$written;.}.if. |
62c80 | 28 24 73 74 64 69 6e 4f 66 66 73 65 74 20 3e 3d 20 24 73 74 64 69 6e 4c 65 6e 29 20 7b 0a 66 63 | ($stdinOffset.>=.$stdinLen).{.fc |
62ca0 | 6c 6f 73 65 28 24 77 72 69 74 65 50 69 70 65 73 5b 30 5d 29 3b 0a 24 77 72 69 74 65 50 69 70 65 | lose($writePipes[0]);.$writePipe |
62cc0 | 73 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 72 20 61 73 20 24 70 | s.=.null;.}.}..foreach.($r.as.$p |
62ce0 | 69 70 65 29 20 7b 0a 24 74 79 70 65 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 70 69 70 | ipe).{.$type.=.array_search($pip |
62d00 | 65 2c 20 24 74 68 69 73 2d 3e 70 69 70 65 73 29 3b 0a 24 64 61 74 61 20 3d 20 66 72 65 61 64 28 | e,.$this->pipes);.$data.=.fread( |
62d20 | 24 70 69 70 65 2c 20 38 31 39 32 29 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 64 61 74 61 29 20 | $pipe,.8192);.if.(strlen($data). |
62d40 | 3e 20 30 29 20 7b 0a 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c | >.0).{.call_user_func($callback, |
62d60 | 20 24 74 79 70 65 20 3d 3d 20 31 20 3f 20 73 65 6c 66 3a 3a 4f 55 54 20 3a 20 73 65 6c 66 3a 3a | .$type.==.1.?.self::OUT.:.self:: |
62d80 | 45 52 52 2c 20 24 64 61 74 61 29 3b 0a 7d 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 | ERR,.$data);.}.if.(false.===.$da |
62da0 | 74 61 20 7c 7c 20 66 65 6f 66 28 24 70 69 70 65 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 70 69 70 | ta.||.feof($pipe)).{.fclose($pip |
62dc0 | 65 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 24 74 79 70 65 5d 29 3b 0a | e);.unset($this->pipes[$type]);. |
62de0 | 7d 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 7d 0a | }.}.}..$this->updateStatus();.}. |
62e00 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 61 | ..............public.function.wa |
62e20 | 69 74 28 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 | it($callback.=.null).{.$this->up |
62e40 | 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 24 74 68 69 73 2d | dateStatus();.$callback.=.$this- |
62e60 | 3e 62 75 69 6c 64 43 61 6c 6c 62 61 63 6b 28 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 77 68 69 6c 65 | >buildCallback($callback);.while |
62e80 | 20 28 24 74 68 69 73 2d 3e 70 69 70 65 73 20 7c 7c 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f | .($this->pipes.||.(defined('PHP_ |
62ea0 | 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 26 26 20 24 74 68 69 73 | WINDOWS_VERSION_BUILD').&&.$this |
62ec0 | 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 29 29 20 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 | ->fileHandles)).{.if.(defined('P |
62ee0 | 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 26 26 20 24 74 | HP_WINDOWS_VERSION_BUILD').&&.$t |
62f00 | 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 | his->fileHandles).{.$this->proce |
62f20 | 73 73 46 69 6c 65 48 61 6e 64 6c 65 73 28 24 63 61 6c 6c 62 61 63 6b 2c 20 21 24 74 68 69 73 2d | ssFileHandles($callback,.!$this- |
62f40 | 3e 70 69 70 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 69 70 65 73 29 20 7b 0a | >pipes);.}..if.($this->pipes).{. |
62f60 | 24 72 20 3d 20 24 74 68 69 73 2d 3e 70 69 70 65 73 3b 0a 24 77 20 3d 20 6e 75 6c 6c 3b 0a 24 65 | $r.=.$this->pipes;.$w.=.null;.$e |
62f80 | 20 3d 20 6e 75 6c 6c 3b 0a 0a 24 6e 20 3d 20 40 73 74 72 65 61 6d 5f 73 65 6c 65 63 74 28 24 72 | .=.null;..$n.=.@stream_select($r |
62fa0 | 2c 20 24 77 2c 20 24 65 2c 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 29 3b 0a 0a 69 66 20 28 | ,.$w,.$e,.$this->timeout);..if.( |
62fc0 | 66 61 6c 73 65 20 3d 3d 3d 20 24 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 69 70 65 73 20 3d 20 61 | false.===.$n).{.$this->pipes.=.a |
62fe0 | 72 72 61 79 28 29 3b 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 69 66 20 28 30 20 3d 3d 3d 20 24 | rray();..continue;.}.if.(0.===.$ |
63000 | 6e 29 20 7b 0a 70 72 6f 63 5f 74 65 72 6d 69 6e 61 74 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 | n).{.proc_terminate($this->proce |
63020 | 73 73 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f | ss);..throw.new.\RuntimeExceptio |
63040 | 6e 28 27 54 68 65 20 70 72 6f 63 65 73 73 20 74 69 6d 65 64 20 6f 75 74 2e 27 29 3b 0a 7d 0a 0a | n('The.process.timed.out.');.}.. |
63060 | 66 6f 72 65 61 63 68 20 28 24 72 20 61 73 20 24 70 69 70 65 29 20 7b 0a 24 74 79 70 65 20 3d 20 | foreach.($r.as.$pipe).{.$type.=. |
63080 | 61 72 72 61 79 5f 73 65 61 72 63 68 28 24 70 69 70 65 2c 20 24 74 68 69 73 2d 3e 70 69 70 65 73 | array_search($pipe,.$this->pipes |
630a0 | 29 3b 0a 24 64 61 74 61 20 3d 20 66 72 65 61 64 28 24 70 69 70 65 2c 20 38 31 39 32 29 3b 0a 69 | );.$data.=.fread($pipe,.8192);.i |
630c0 | 66 20 28 73 74 72 6c 65 6e 28 24 64 61 74 61 29 20 3e 20 30 29 20 7b 0a 63 61 6c 6c 5f 75 73 65 | f.(strlen($data).>.0).{.call_use |
630e0 | 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 74 79 70 65 20 3d 3d 20 31 20 3f 20 73 | r_func($callback,.$type.==.1.?.s |
63100 | 65 6c 66 3a 3a 4f 55 54 20 3a 20 73 65 6c 66 3a 3a 45 52 52 2c 20 24 64 61 74 61 29 3b 0a 7d 0a | elf::OUT.:.self::ERR,.$data);.}. |
63120 | 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 74 61 20 7c 7c 20 66 65 6f 66 28 24 70 69 70 | if.(false.===.$data.||.feof($pip |
63140 | 65 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 | e)).{.fclose($pipe);.unset($this |
63160 | 2d 3e 70 69 70 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e | ->pipes[$type]);.}.}.}.}.$this-> |
63180 | 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 | updateStatus();.if.($this->proce |
631a0 | 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 29 20 7b 0a 74 68 72 | ssInformation['signaled']).{.thr |
631c0 | 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 | ow.new.\RuntimeException(sprintf |
631e0 | 28 27 54 68 65 20 70 72 6f 63 65 73 73 20 73 74 6f 70 70 65 64 20 62 65 63 61 75 73 65 20 6f 66 | ('The.process.stopped.because.of |
63200 | 20 61 20 22 25 73 22 20 73 69 67 6e 61 6c 2e 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 | .a."%s".signal.',.$this->process |
63220 | 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 74 6f 70 73 69 67 27 5d 29 29 3b 0a 7d 0a 0a 24 74 69 | Information['stopsig']));.}..$ti |
63240 | 6d 65 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 | me.=.0;.while.($this->isRunning( |
63260 | 29 20 26 26 20 24 74 69 6d 65 20 3c 20 31 30 30 30 30 30 30 29 20 7b 0a 24 74 69 6d 65 20 2b 3d | ).&&.$time.<.1000000).{.$time.+= |
63280 | 20 31 30 30 30 3b 0a 75 73 6c 65 65 70 28 31 30 30 30 29 3b 0a 7d 0a 0a 24 65 78 69 74 63 6f 64 | .1000;.usleep(1000);.}..$exitcod |
632a0 | 65 20 3d 20 70 72 6f 63 5f 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a | e.=.proc_close($this->process);. |
632c0 | 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 | .if.($this->processInformation[' |
632e0 | 73 69 67 6e 61 6c 65 64 27 5d 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 | signaled']).{.throw.new.\Runtime |
63300 | 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 70 72 6f 63 65 73 73 20 73 | Exception(sprintf('The.process.s |
63320 | 74 6f 70 70 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 61 20 22 25 73 22 20 73 69 67 6e 61 6c 2e | topped.because.of.a."%s".signal. |
63340 | 27 2c 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 74 | ',.$this->processInformation['st |
63360 | 6f 70 73 69 67 27 5d 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 69 74 | opsig']));.}..return.$this->exit |
63380 | 63 6f 64 65 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e | code.=.$this->processInformation |
633a0 | 5b 27 72 75 6e 6e 69 6e 67 27 5d 20 3f 20 24 65 78 69 74 63 6f 64 65 20 3a 20 24 74 68 69 73 2d | ['running'].?.$exitcode.:.$this- |
633c0 | 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f 64 65 27 5d 3b | >processInformation['exitcode']; |
633e0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 | .}.........public.function.getOu |
63400 | 74 70 75 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 4f 75 74 70 75 74 28 29 3b 0a | tput().{.$this->updateOutput();. |
63420 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 6f 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | .return.$this->stdout;.}........ |
63440 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 | .public.function.getErrorOutput( |
63460 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 45 72 72 6f 72 4f 75 74 70 75 74 28 29 3b 0a | ).{.$this->updateErrorOutput();. |
63480 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 65 72 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | .return.$this->stderr;.}........ |
634a0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 69 74 43 6f 64 65 28 29 0a 7b | .public.function.getExitCode().{ |
634c0 | 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 | .$this->updateStatus();..return. |
634e0 | 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | $this->exitcode;.}.............p |
63500 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 78 69 74 43 6f 64 65 54 65 78 74 28 29 | ublic.function.getExitCodeText() |
63520 | 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 0a 72 65 74 75 72 | .{.$this->updateStatus();..retur |
63540 | 6e 20 69 73 73 65 74 28 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 74 68 69 73 2d 3e | n.isset(self::$exitCodes[$this-> |
63560 | 65 78 69 74 63 6f 64 65 5d 29 20 3f 20 73 65 6c 66 3a 3a 24 65 78 69 74 43 6f 64 65 73 5b 24 74 | exitcode]).?.self::$exitCodes[$t |
63580 | 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 5d 20 3a 20 27 55 6e 6b 6e 6f 77 6e 20 65 72 72 6f 72 27 | his->exitcode].:.'Unknown.error' |
635a0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 75 | ;.}.........public.function.isSu |
635c0 | 63 63 65 73 73 66 75 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 | ccessful().{.$this->updateStatus |
635e0 | 28 29 3b 0a 0a 72 65 74 75 72 6e 20 30 20 3d 3d 20 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 | ();..return.0.==.$this->exitcode |
63600 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 | ;.}...........public.function.ha |
63620 | 73 42 65 65 6e 53 69 67 6e 61 6c 65 64 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 | sBeenSignaled().{.$this->updateS |
63640 | 74 61 74 75 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 | tatus();..return.$this->processI |
63660 | 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 69 67 6e 61 6c 65 64 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | nformation['signaled'];.}....... |
63680 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 53 69 67 6e 61 | ....public.function.getTermSigna |
636a0 | 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 0a 72 65 | l().{.$this->updateStatus();..re |
636c0 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 | turn.$this->processInformation[' |
636e0 | 74 65 72 6d 73 69 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | termsig'];.}...........public.fu |
63700 | 6e 63 74 69 6f 6e 20 68 61 73 42 65 65 6e 53 74 6f 70 70 65 64 28 29 0a 7b 0a 24 74 68 69 73 2d | nction.hasBeenStopped().{.$this- |
63720 | 3e 75 70 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | >updateStatus();..return.$this-> |
63740 | 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 73 74 6f 70 70 65 64 27 5d 3b 0a 7d | processInformation['stopped'];.} |
63760 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 | ...........public.function.getSt |
63780 | 6f 70 53 69 67 6e 61 6c 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 75 70 64 61 74 65 53 74 61 74 75 73 | opSignal().{.$this->updateStatus |
637a0 | 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d | ();..return.$this->processInform |
637c0 | 61 74 69 6f 6e 5b 27 73 74 6f 70 73 69 67 27 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | ation['stopsig'];.}.......public |
637e0 | 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 75 6e 6e 69 6e 67 28 29 0a 7b 0a 69 66 20 28 73 65 6c 66 | .function.isRunning().{.if.(self |
63800 | 3a 3a 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 20 21 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 74 | ::STATUS_STARTED.!==.$this->stat |
63820 | 75 73 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 75 70 | us).{.return.false;.}..$this->up |
63840 | 64 61 74 65 53 74 61 74 75 73 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 6f | dateStatus();..return.$this->pro |
63860 | 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 6e 6e 69 6e 67 27 5d 3b 0a 7d 0a 0a 0a | cessInformation['running'];.}... |
63880 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 74 6f 70 28 24 74 69 | ........public.function.stop($ti |
638a0 | 6d 65 6f 75 74 3d 31 30 29 0a 7b 0a 24 74 69 6d 65 6f 75 74 4d 69 63 72 6f 20 3d 20 28 69 6e 74 | meout=10).{.$timeoutMicro.=.(int |
638c0 | 29 20 24 74 69 6d 65 6f 75 74 2a 31 30 45 36 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 52 75 | ).$timeout*10E6;.if.($this->isRu |
638e0 | 6e 6e 69 6e 67 28 29 29 20 7b 0a 70 72 6f 63 5f 74 65 72 6d 69 6e 61 74 65 28 24 74 68 69 73 2d | nning()).{.proc_terminate($this- |
63900 | 3e 70 72 6f 63 65 73 73 29 3b 0a 24 74 69 6d 65 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 31 20 3d | >process);.$time.=.0;.while.(1.= |
63920 | 3d 20 24 74 68 69 73 2d 3e 69 73 52 75 6e 6e 69 6e 67 28 29 20 26 26 20 24 74 69 6d 65 20 3c 20 | =.$this->isRunning().&&.$time.<. |
63940 | 24 74 69 6d 65 6f 75 74 4d 69 63 72 6f 29 20 7b 0a 24 74 69 6d 65 20 2b 3d 20 31 30 30 30 3b 0a | $timeoutMicro).{.$time.+=.1000;. |
63960 | 75 73 6c 65 65 70 28 31 30 30 30 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d | usleep(1000);.}..foreach.($this- |
63980 | 3e 70 69 70 65 73 20 61 73 20 24 70 69 70 65 29 20 7b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 29 | >pipes.as.$pipe).{.fclose($pipe) |
639a0 | 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 69 70 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 65 78 | ;.}.$this->pipes.=.array();..$ex |
639c0 | 69 74 63 6f 64 65 20 3d 20 70 72 6f 63 5f 63 6c 6f 73 65 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 | itcode.=.proc_close($this->proce |
639e0 | 73 73 29 3b 0a 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 20 3d 20 2d 31 20 3d 3d 3d 20 24 74 | ss);.$this->exitcode.=.-1.===.$t |
63a00 | 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f 64 | his->processInformation['exitcod |
63a20 | 65 27 5d 20 3f 20 24 65 78 69 74 63 6f 64 65 20 3a 20 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 | e'].?.$exitcode.:.$this->process |
63a40 | 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f 64 65 27 5d 3b 0a 0a 69 66 20 28 64 65 | Information['exitcode'];..if.(de |
63a60 | 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 | fined('PHP_WINDOWS_VERSION_BUILD |
63a80 | 27 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 | ')).{.foreach.($this->fileHandle |
63aa0 | 73 20 61 73 20 24 66 69 6c 65 48 61 6e 64 6c 65 29 20 7b 0a 66 63 6c 6f 73 65 28 24 66 69 6c 65 | s.as.$fileHandle).{.fclose($file |
63ac0 | 48 61 6e 64 6c 65 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 20 3d 20 | Handle);.}.$this->fileHandles.=. |
63ae0 | 61 72 72 61 79 28 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c | array();.}.}.$this->status.=.sel |
63b00 | 66 3a 3a 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 54 45 44 3b 0a 0a 72 65 74 75 72 6e 20 24 74 | f::STATUS_TERMINATED;..return.$t |
63b20 | 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | his->exitcode;.}..public.functio |
63b40 | 6e 20 61 64 64 4f 75 74 70 75 74 28 24 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 64 6f | n.addOutput($line).{.$this->stdo |
63b60 | 75 74 20 2e 3d 20 24 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ut..=.$line;.}..public.function. |
63b80 | 61 64 64 45 72 72 6f 72 4f 75 74 70 75 74 28 24 6c 69 6e 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 | addErrorOutput($line).{.$this->s |
63ba0 | 74 64 65 72 72 20 2e 3d 20 24 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | tderr..=.$line;.}..public.functi |
63bc0 | 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | on.getCommandLine().{.return.$th |
63be0 | 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | is->commandline;.}..public.funct |
63c00 | 69 6f 6e 20 73 65 74 43 6f 6d 6d 61 6e 64 4c 69 6e 65 28 24 63 6f 6d 6d 61 6e 64 6c 69 6e 65 29 | ion.setCommandLine($commandline) |
63c20 | 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 6c 69 6e 65 20 3d 20 24 63 6f 6d 6d 61 6e 64 | .{.$this->commandline.=.$command |
63c40 | 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 69 6d 65 | line;.}..public.function.getTime |
63c60 | 6f 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 3b 0a 7d | out().{.return.$this->timeout;.} |
63c80 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 | .........public.function.setTime |
63ca0 | 6f 75 74 28 24 74 69 6d 65 6f 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 69 | out($timeout).{.if.(null.===.$ti |
63cc0 | 6d 65 6f 75 74 29 20 7b 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 6e 75 6c 6c 3b 0a | meout).{.$this->timeout.=.null;. |
63ce0 | 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 69 6d 65 6f 75 74 20 3d 20 28 69 6e 74 65 67 65 72 29 | .return;.}..$timeout.=.(integer) |
63d00 | 20 24 74 69 6d 65 6f 75 74 3b 0a 0a 69 66 20 28 24 74 69 6d 65 6f 75 74 20 3c 20 30 29 20 7b 0a | .$timeout;..if.($timeout.<.0).{. |
63d20 | 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 | throw.new.\InvalidArgumentExcept |
63d40 | 69 6f 6e 28 27 54 68 65 20 74 69 6d 65 6f 75 74 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 61 | ion('The.timeout.value.must.be.a |
63d60 | 20 76 61 6c 69 64 20 70 6f 73 69 74 69 76 65 20 69 6e 74 65 67 65 72 2e 27 29 3b 0a 7d 0a 0a 24 | .valid.positive.integer.');.}..$ |
63d80 | 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 24 74 69 6d 65 6f 75 74 3b 0a 7d 0a 0a 70 75 62 | this->timeout.=.$timeout;.}..pub |
63da0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 | lic.function.getWorkingDirectory |
63dc0 | 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 77 64 3b 0a 7d 0a 0a 70 75 62 6c 69 | ().{.return.$this->cwd;.}..publi |
63de0 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 24 | c.function.setWorkingDirectory($ |
63e00 | 63 77 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 7d 0a 0a 70 75 62 | cwd).{.$this->cwd.=.$cwd;.}..pub |
63e20 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6e 76 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | lic.function.getEnv().{.return.$ |
63e40 | 74 68 69 73 2d 3e 65 6e 76 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | this->env;.}..public.function.se |
63e60 | 74 45 6e 76 28 61 72 72 61 79 20 24 65 6e 76 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6e 76 20 3d 20 | tEnv(array.$env).{.$this->env.=. |
63e80 | 24 65 6e 76 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 64 69 | $env;.}..public.function.getStdi |
63ea0 | 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 69 6e 3b 0a 7d 0a 0a 70 75 | n().{.return.$this->stdin;.}..pu |
63ec0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 64 69 6e 28 24 73 74 64 69 6e 29 0a 7b | blic.function.setStdin($stdin).{ |
63ee0 | 0a 24 74 68 69 73 2d 3e 73 74 64 69 6e 20 3d 20 24 73 74 64 69 6e 3b 0a 7d 0a 0a 70 75 62 6c 69 | .$this->stdin.=.$stdin;.}..publi |
63f00 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e | c.function.getOptions().{.return |
63f20 | 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | .$this->options;.}..public.funct |
63f40 | 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b | ion.setOptions(array.$options).{ |
63f60 | 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 24 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 70 | .$this->options.=.$options;.}..p |
63f80 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 | ublic.function.getEnhanceWindows |
63fa0 | 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | Compatibility().{.return.$this-> |
63fc0 | 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 3b 0a 7d 0a 0a | enhanceWindowsCompatibility;.}.. |
63fe0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e 68 61 6e 63 65 57 69 6e 64 6f 77 | public.function.setEnhanceWindow |
64000 | 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 28 24 65 6e 68 61 6e 63 65 29 0a 7b 0a 24 74 68 69 73 | sCompatibility($enhance).{.$this |
64020 | 2d 3e 65 6e 68 61 6e 63 65 57 69 6e 64 6f 77 73 43 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 3d 20 | ->enhanceWindowsCompatibility.=. |
64040 | 28 42 6f 6f 6c 65 61 6e 29 20 24 65 6e 68 61 6e 63 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | (Boolean).$enhance;.}........... |
64060 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 62 75 69 6c 64 43 61 6c 6c 62 61 63 | .protected.function.buildCallbac |
64080 | 6b 28 24 63 61 6c 6c 62 61 63 6b 29 0a 7b 0a 24 74 68 61 74 20 3d 20 24 74 68 69 73 3b 0a 24 6f | k($callback).{.$that.=.$this;.$o |
640a0 | 75 74 20 3d 20 73 65 6c 66 3a 3a 4f 55 54 3b 0a 24 65 72 72 20 3d 20 73 65 6c 66 3a 3a 45 52 52 | ut.=.self::OUT;.$err.=.self::ERR |
640c0 | 3b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 74 79 70 65 2c 20 24 | ;.$callback.=.function.($type,.$ |
640e0 | 64 61 74 61 29 20 75 73 65 20 28 24 74 68 61 74 2c 20 24 63 61 6c 6c 62 61 63 6b 2c 20 24 6f 75 | data).use.($that,.$callback,.$ou |
64100 | 74 2c 20 24 65 72 72 29 20 7b 0a 69 66 20 28 24 6f 75 74 20 3d 3d 20 24 74 79 70 65 29 20 7b 0a | t,.$err).{.if.($out.==.$type).{. |
64120 | 24 74 68 61 74 2d 3e 61 64 64 4f 75 74 70 75 74 28 24 64 61 74 61 29 3b 0a 7d 20 65 6c 73 65 20 | $that->addOutput($data);.}.else. |
64140 | 7b 0a 24 74 68 61 74 2d 3e 61 64 64 45 72 72 6f 72 4f 75 74 70 75 74 28 24 64 61 74 61 29 3b 0a | {.$that->addErrorOutput($data);. |
64160 | 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 63 61 6c | }..if.(null.!==.$callback).{.cal |
64180 | 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 74 79 70 65 2c 20 24 64 | l_user_func($callback,.$type,.$d |
641a0 | 61 74 61 29 3b 0a 7d 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 63 61 6c 6c 62 61 63 6b 3b 0a 7d 0a | ata);.}.};..return.$callback;.}. |
641c0 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 65 53 74 61 | ....protected.function.updateSta |
641e0 | 74 75 73 28 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 53 54 41 54 55 53 5f 53 54 41 52 54 45 44 | tus().{.if.(self::STATUS_STARTED |
64200 | 20 21 3d 3d 20 24 74 68 69 73 2d 3e 73 74 61 74 75 73 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a | .!==.$this->status).{.return;.}. |
64220 | 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 20 3d 20 70 72 6f | .$this->processInformation.=.pro |
64240 | 63 5f 67 65 74 5f 73 74 61 74 75 73 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 29 3b 0a 69 66 | c_get_status($this->process);.if |
64260 | 20 28 21 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 72 75 | .(!$this->processInformation['ru |
64280 | 6e 6e 69 6e 67 27 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 61 74 75 73 20 3d 20 73 65 6c 66 3a | nning']).{.$this->status.=.self: |
642a0 | 3a 53 54 41 54 55 53 5f 54 45 52 4d 49 4e 41 54 45 44 3b 0a 69 66 20 28 2d 31 20 21 3d 3d 20 24 | :STATUS_TERMINATED;.if.(-1.!==.$ |
642c0 | 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f | this->processInformation['exitco |
642e0 | 64 65 27 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 69 74 63 6f 64 65 20 3d 20 24 74 68 69 73 2d | de']).{.$this->exitcode.=.$this- |
64300 | 3e 70 72 6f 63 65 73 73 49 6e 66 6f 72 6d 61 74 69 6f 6e 5b 27 65 78 69 74 63 6f 64 65 27 5d 3b | >processInformation['exitcode']; |
64320 | 0a 7d 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 75 70 64 61 74 | .}.}.}..protected.function.updat |
64340 | 65 45 72 72 6f 72 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 | eErrorOutput().{.if.(isset($this |
64360 | 2d 3e 70 69 70 65 73 5b 73 65 6c 66 3a 3a 53 54 44 45 52 52 5d 29 20 26 26 20 69 73 5f 72 65 73 | ->pipes[self::STDERR]).&&.is_res |
64380 | 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 73 65 6c 66 3a 3a 53 54 44 45 52 52 5d | ource($this->pipes[self::STDERR] |
643a0 | 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 4f 75 74 70 75 74 28 73 74 72 65 61 | )).{.$this->addErrorOutput(strea |
643c0 | 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 73 65 6c 66 | m_get_contents($this->pipes[self |
643e0 | 3a 3a 53 54 44 45 52 52 5d 29 29 3b 0a 7d 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 | ::STDERR]));.}.}..protected.func |
64400 | 74 69 6f 6e 20 75 70 64 61 74 65 4f 75 74 70 75 74 28 29 0a 7b 0a 69 66 20 28 64 65 66 69 6e 65 | tion.updateOutput().{.if.(define |
64420 | 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 20 26 | d('PHP_WINDOWS_VERSION_BUILD').& |
64440 | 26 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 73 65 6c 66 3a | &.isset($this->fileHandles[self: |
64460 | 3a 53 54 44 4f 55 54 5d 29 20 26 26 20 69 73 5f 72 65 73 6f 75 72 63 65 28 24 74 68 69 73 2d 3e | :STDOUT]).&&.is_resource($this-> |
64480 | 66 69 6c 65 48 61 6e 64 6c 65 73 5b 73 65 6c 66 3a 3a 53 54 44 4f 55 54 5d 29 29 20 7b 0a 66 73 | fileHandles[self::STDOUT])).{.fs |
644a0 | 65 65 6b 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 73 65 6c 66 3a 3a 53 54 44 | eek($this->fileHandles[self::STD |
644c0 | 4f 55 54 5d 2c 20 24 74 68 69 73 2d 3e 72 65 61 64 42 79 74 65 73 5b 73 65 6c 66 3a 3a 53 54 44 | OUT],.$this->readBytes[self::STD |
644e0 | 4f 55 54 5d 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 75 74 70 75 74 28 73 74 72 65 61 6d 5f 67 | OUT]);.$this->addOutput(stream_g |
64500 | 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 5b 73 | et_contents($this->fileHandles[s |
64520 | 65 6c 66 3a 3a 53 54 44 4f 55 54 5d 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 | elf::STDOUT]));.}.elseif.(isset( |
64540 | 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 73 65 6c 66 3a 3a 53 54 44 4f 55 54 5d 29 20 26 26 20 69 | $this->pipes[self::STDOUT]).&&.i |
64560 | 73 5f 72 65 73 6f 75 72 63 65 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 73 65 6c 66 3a 3a 53 54 | s_resource($this->pipes[self::ST |
64580 | 44 4f 55 54 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 75 74 70 75 74 28 73 74 72 65 61 | DOUT])).{.$this->addOutput(strea |
645a0 | 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 74 68 69 73 2d 3e 70 69 70 65 73 5b 73 65 6c 66 | m_get_contents($this->pipes[self |
645c0 | 3a 3a 53 54 44 4f 55 54 5d 29 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 | ::STDOUT]));.}.}........private. |
645e0 | 66 75 6e 63 74 69 6f 6e 20 70 72 6f 63 65 73 73 46 69 6c 65 48 61 6e 64 6c 65 73 28 24 63 61 6c | function.processFileHandles($cal |
64600 | 6c 62 61 63 6b 2c 20 24 63 6c 6f 73 65 45 6d 70 74 79 48 61 6e 64 6c 65 73 20 3d 20 66 61 6c 73 | lback,.$closeEmptyHandles.=.fals |
64620 | 65 29 0a 7b 0a 24 66 68 20 3d 20 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c 65 73 3b 0a 66 | e).{.$fh.=.$this->fileHandles;.f |
64640 | 6f 72 65 61 63 68 20 28 24 66 68 20 61 73 20 24 74 79 70 65 20 3d 3e 20 24 66 69 6c 65 48 61 6e | oreach.($fh.as.$type.=>.$fileHan |
64660 | 64 6c 65 29 20 7b 0a 66 73 65 65 6b 28 24 66 69 6c 65 48 61 6e 64 6c 65 2c 20 24 74 68 69 73 2d | dle).{.fseek($fileHandle,.$this- |
64680 | 3e 72 65 61 64 42 79 74 65 73 5b 24 74 79 70 65 5d 29 3b 0a 24 64 61 74 61 20 3d 20 66 72 65 61 | >readBytes[$type]);.$data.=.frea |
646a0 | 64 28 24 66 69 6c 65 48 61 6e 64 6c 65 2c 20 38 31 39 32 29 3b 0a 69 66 20 28 73 74 72 6c 65 6e | d($fileHandle,.8192);.if.(strlen |
646c0 | 28 24 64 61 74 61 29 20 3e 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 61 64 42 79 74 65 73 5b | ($data).>.0).{.$this->readBytes[ |
646e0 | 24 74 79 70 65 5d 20 2b 3d 20 73 74 72 6c 65 6e 28 24 64 61 74 61 29 3b 0a 63 61 6c 6c 5f 75 73 | $type].+=.strlen($data);.call_us |
64700 | 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 74 79 70 65 20 3d 3d 20 31 20 3f 20 | er_func($callback,.$type.==.1.?. |
64720 | 73 65 6c 66 3a 3a 4f 55 54 20 3a 20 73 65 6c 66 3a 3a 45 52 52 2c 20 24 64 61 74 61 29 3b 0a 7d | self::OUT.:.self::ERR,.$data);.} |
64740 | 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 64 61 74 61 20 7c 7c 20 28 24 63 6c 6f 73 65 45 | .if.(false.===.$data.||.($closeE |
64760 | 6d 70 74 79 48 61 6e 64 6c 65 73 20 26 26 20 27 27 20 3d 3d 3d 20 24 64 61 74 61 20 26 26 20 66 | mptyHandles.&&.''.===.$data.&&.f |
64780 | 65 6f 66 28 24 66 69 6c 65 48 61 6e 64 6c 65 29 29 29 20 7b 0a 66 63 6c 6f 73 65 28 24 66 69 6c | eof($fileHandle))).{.fclose($fil |
647a0 | 65 48 61 6e 64 6c 65 29 3b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 66 69 6c 65 48 61 6e 64 6c | eHandle);.unset($this->fileHandl |
647c0 | 65 73 5b 24 74 79 70 65 5d 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a | es[$type]);.}.}.}.}.<?php....... |
647e0 | 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c | ....namespace.Symfony\Component\ |
64800 | 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 65 73 73 42 75 69 6c | Process;.......class.ProcessBuil |
64820 | 64 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 72 67 75 6d 65 6e 74 73 3b 0a 70 72 69 76 61 74 | der.{.private.$arguments;.privat |
64840 | 65 20 24 63 77 64 3b 0a 70 72 69 76 61 74 65 20 24 65 6e 76 3b 0a 70 72 69 76 61 74 65 20 24 73 | e.$cwd;.private.$env;.private.$s |
64860 | 74 64 69 6e 3b 0a 70 72 69 76 61 74 65 20 24 74 69 6d 65 6f 75 74 3b 0a 70 72 69 76 61 74 65 20 | tdin;.private.$timeout;.private. |
64880 | 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 69 6e 68 65 72 69 74 45 6e 76 3b 0a 0a | $options;.private.$inheritEnv;.. |
648a0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 | public.function.__construct(arra |
648c0 | 79 20 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d | y.$arguments.=.array()).{.$this- |
648e0 | 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 24 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 24 74 68 69 73 2d | >arguments.=.$arguments;..$this- |
64900 | 3e 74 69 6d 65 6f 75 74 20 3d 20 36 30 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 | >timeout.=.60;.$this->options.=. |
64920 | 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 65 6e 76 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 | array();.$this->env.=.array();.$ |
64940 | 74 68 69 73 2d 3e 69 6e 68 65 72 69 74 45 6e 76 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 70 75 62 6c | this->inheritEnv.=.true;.}..publ |
64960 | 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 61 72 72 61 79 20 | ic.static.function.create(array. |
64980 | 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 72 65 74 75 72 6e 20 6e | $arguments.=.array()).{.return.n |
649a0 | 65 77 20 73 74 61 74 69 63 28 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | ew.static($arguments);.}.......p |
649c0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 24 61 72 67 75 6d 65 6e 74 29 0a 7b 0a | ublic.function.add($argument).{. |
649e0 | 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 3b 0a | $this->arguments[].=.$argument;. |
64a00 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | .return.$this;.}..public.functio |
64a20 | 6e 20 73 65 74 57 6f 72 6b 69 6e 67 44 69 72 65 63 74 6f 72 79 28 24 63 77 64 29 0a 7b 0a 24 74 | n.setWorkingDirectory($cwd).{.$t |
64a40 | 68 69 73 2d 3e 63 77 64 20 3d 20 24 63 77 64 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a | his->cwd.=.$cwd;..return.$this;. |
64a60 | 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 68 65 72 69 74 45 6e 76 69 72 6f | }..public.function.inheritEnviro |
64a80 | 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 24 69 6e 68 65 72 69 74 45 6e 76 20 3d 20 74 72 75 | nmentVariables($inheritEnv.=.tru |
64aa0 | 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 68 65 72 69 74 45 6e 76 20 3d 20 24 69 6e 68 65 72 69 | e).{.$this->inheritEnv.=.$inheri |
64ac0 | 74 45 6e 76 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 | tEnv;..return.$this;.}..public.f |
64ae0 | 75 6e 63 74 69 6f 6e 20 73 65 74 45 6e 76 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a | unction.setEnv($name,.$value).{. |
64b00 | 24 74 68 69 73 2d 3e 65 6e 76 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 0a 72 65 74 | $this->env[$name].=.$value;..ret |
64b20 | 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | urn.$this;.}..public.function.se |
64b40 | 74 49 6e 70 75 74 28 24 73 74 64 69 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 64 69 6e 20 3d 20 | tInput($stdin).{.$this->stdin.=. |
64b60 | 24 73 74 64 69 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | $stdin;..return.$this;.}........ |
64b80 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 69 6d 65 6f 75 74 28 24 74 69 6d | .public.function.setTimeout($tim |
64ba0 | 65 6f 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 69 6d 65 6f 75 74 29 20 7b | eout).{.if.(null.===.$timeout).{ |
64bc0 | 0a 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 20 | .$this->timeout.=.null;..return. |
64be0 | 24 74 68 69 73 3b 0a 7d 0a 0a 24 74 69 6d 65 6f 75 74 20 3d 20 28 69 6e 74 65 67 65 72 29 20 24 | $this;.}..$timeout.=.(integer).$ |
64c00 | 74 69 6d 65 6f 75 74 3b 0a 0a 69 66 20 28 24 74 69 6d 65 6f 75 74 20 3c 20 30 29 20 7b 0a 74 68 | timeout;..if.($timeout.<.0).{.th |
64c20 | 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f | row.new.\InvalidArgumentExceptio |
64c40 | 6e 28 27 54 68 65 20 74 69 6d 65 6f 75 74 20 76 61 6c 75 65 20 6d 75 73 74 20 62 65 20 61 20 76 | n('The.timeout.value.must.be.a.v |
64c60 | 61 6c 69 64 20 70 6f 73 69 74 69 76 65 20 69 6e 74 65 67 65 72 2e 27 29 3b 0a 7d 0a 0a 24 74 68 | alid.positive.integer.');.}..$th |
64c80 | 69 73 2d 3e 74 69 6d 65 6f 75 74 20 3d 20 24 74 69 6d 65 6f 75 74 3b 0a 0a 72 65 74 75 72 6e 20 | is->timeout.=.$timeout;..return. |
64ca0 | 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 | $this;.}..public.function.setOpt |
64cc0 | 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 | ion($name,.$value).{.$this->opti |
64ce0 | 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 | ons[$name].=.$value;..return.$th |
64d00 | 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 | is;.}..public.function.getProces |
64d20 | 73 28 29 0a 7b 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 | s().{.if.(!count($this->argument |
64d40 | 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 | s)).{.throw.new.\LogicException( |
64d60 | 27 59 6f 75 20 6d 75 73 74 20 61 64 64 28 29 20 63 6f 6d 6d 61 6e 64 20 61 72 67 75 6d 65 6e 74 | 'You.must.add().command.argument |
64d80 | 73 20 62 65 66 6f 72 65 20 63 61 6c 6c 69 6e 67 20 67 65 74 50 72 6f 63 65 73 73 28 29 2e 27 29 | s.before.calling.getProcess().') |
64da0 | 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 3b 0a | ;.}..$options.=.$this->options;. |
64dc0 | 0a 24 73 63 72 69 70 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 61 72 72 61 79 5f 6d 61 | .$script.=.implode('.',.array_ma |
64de0 | 70 28 27 65 73 63 61 70 65 73 68 65 6c 6c 61 72 67 27 2c 20 24 74 68 69 73 2d 3e 61 72 67 75 6d | p('escapeshellarg',.$this->argum |
64e00 | 65 6e 74 73 29 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 6e 68 65 72 69 74 45 6e 76 29 20 | ents));..if.($this->inheritEnv). |
64e20 | 7b 0a 24 65 6e 76 20 3d 20 24 74 68 69 73 2d 3e 65 6e 76 20 3f 20 24 74 68 69 73 2d 3e 65 6e 76 | {.$env.=.$this->env.?.$this->env |
64e40 | 20 2b 20 24 5f 45 4e 56 20 3a 20 6e 75 6c 6c 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 6e 76 20 3d | .+.$_ENV.:.null;.}.else.{.$env.= |
64e60 | 20 24 74 68 69 73 2d 3e 65 6e 76 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 63 65 | .$this->env;.}..return.new.Proce |
64e80 | 73 73 28 24 73 63 72 69 70 74 2c 20 24 74 68 69 73 2d 3e 63 77 64 2c 20 24 65 6e 76 2c 20 24 74 | ss($script,.$this->cwd,.$env,.$t |
64ea0 | 68 69 73 2d 3e 73 74 64 69 6e 2c 20 24 74 68 69 73 2d 3e 74 69 6d 65 6f 75 74 2c 20 24 6f 70 74 | his->stdin,.$this->timeout,.$opt |
64ec0 | 69 6f 6e 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 | ions);.}.}.<?php...........names |
64ee0 | 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 | pace.Symfony\Component\Process\E |
64f00 | 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 45 78 63 65 70 74 | xception;.......interface.Except |
64f20 | 69 6f 6e 49 6e 74 65 72 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ionInterface.{.}.<?php.......... |
64f40 | 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f | .namespace.Symfony\Component\Pro |
64f60 | 63 65 73 73 5c 45 78 63 65 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 52 75 6e 74 | cess\Exception;.......class.Runt |
64f80 | 69 6d 65 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 52 75 6e 74 69 6d 65 45 78 63 | imeException.extends.\RuntimeExc |
64fa0 | 65 70 74 69 6f 6e 20 69 6d 70 6c 65 6d 65 6e 74 73 20 45 78 63 65 70 74 69 6f 6e 49 6e 74 65 72 | eption.implements.ExceptionInter |
64fc0 | 66 61 63 65 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 | face.{.}.<?php...........namespa |
64fe0 | 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 45 78 63 | ce.Symfony\Component\Process\Exc |
65000 | 65 70 74 69 6f 6e 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 | eption;..use.Symfony\Component\P |
65020 | 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 72 6f 63 | rocess\Process;.......class.Proc |
65040 | 65 73 73 46 61 69 6c 65 64 45 78 63 65 70 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 52 75 6e 74 69 | essFailedException.extends.Runti |
65060 | 6d 65 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 3b 0a | meException.{.private.$process;. |
65080 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 50 72 6f | .public.function.__construct(Pro |
650a0 | 63 65 73 73 20 24 70 72 6f 63 65 73 73 29 0a 7b 0a 69 66 20 28 24 70 72 6f 63 65 73 73 2d 3e 69 | cess.$process).{.if.($process->i |
650c0 | 73 53 75 63 63 65 73 73 66 75 6c 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 | sSuccessful()).{.throw.new.\Inva |
650e0 | 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 45 78 70 65 63 74 65 64 20 61 | lidArgumentException('Expected.a |
65100 | 20 66 61 69 6c 65 64 20 70 72 6f 63 65 73 73 2c 20 62 75 74 20 74 68 65 20 67 69 76 65 6e 20 70 | .failed.process,.but.the.given.p |
65120 | 72 6f 63 65 73 73 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 27 29 3b 0a 7d 0a 0a 70 61 72 | rocess.was.successful.');.}..par |
65140 | 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 0a 73 70 72 69 6e 74 66 28 0a 27 54 68 65 20 | ent::__construct(.sprintf(.'The. |
65160 | 63 6f 6d 6d 61 6e 64 20 22 25 73 22 20 66 61 69 6c 65 64 2e 27 2e 22 5c 6e 5c 6e 4f 75 74 70 75 | command."%s".failed.'."\n\nOutpu |
65180 | 74 3a 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 22 2e 24 70 72 6f 63 65 73 73 | t:\n================\n".$process |
651a0 | 2d 3e 67 65 74 4f 75 74 70 75 74 28 29 2e 22 5c 6e 5c 6e 45 72 72 6f 72 20 4f 75 74 70 75 74 3a | ->getOutput()."\n\nError.Output: |
651c0 | 5c 6e 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 5c 6e 22 2e 24 70 72 6f 63 65 73 73 2d 3e | \n================\n".$process-> |
651e0 | 67 65 74 45 72 72 6f 72 4f 75 74 70 75 74 28 29 2c 0a 24 70 72 6f 63 65 73 73 2d 3e 67 65 74 43 | getErrorOutput(),.$process->getC |
65200 | 6f 6d 6d 61 6e 64 4c 69 6e 65 28 29 0a 29 0a 29 3b 0a 0a 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 | ommandLine().).);..$this->proces |
65220 | 73 20 3d 20 24 70 72 6f 63 65 73 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | s.=.$process;.}..public.function |
65240 | 20 67 65 74 50 72 6f 63 65 73 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 | .getProcess().{.return.$this->pr |
65260 | 6f 63 65 73 73 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 | ocess;.}.}.<?php...........names |
65280 | 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 3b 0a | pace.Symfony\Component\Process;. |
652a0 | 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 50 68 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 | .......class.PhpExecutableFinder |
652c0 | 0a 7b 0a 70 72 69 76 61 74 65 20 24 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 70 | .{.private.$executableFinder;..p |
652e0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 29 0a 7b 0a 24 | ublic.function.__construct().{.$ |
65300 | 74 68 69 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 20 3d 20 6e 65 77 20 45 78 65 | this->executableFinder.=.new.Exe |
65320 | 63 75 74 61 62 6c 65 46 69 6e 64 65 72 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | cutableFinder();.}.......public. |
65340 | 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 28 29 0a 7b 0a 0a 20 69 66 20 28 64 65 66 69 6e 65 64 28 | function.find().{...if.(defined( |
65360 | 27 50 48 50 5f 42 49 4e 41 52 59 27 29 20 26 26 20 50 48 50 5f 42 49 4e 41 52 59 20 26 26 20 28 | 'PHP_BINARY').&&.PHP_BINARY.&&.( |
65380 | 27 63 6c 69 27 20 3d 3d 3d 20 50 48 50 5f 53 41 50 49 29 29 20 7b 0a 72 65 74 75 72 6e 20 50 48 | 'cli'.===.PHP_SAPI)).{.return.PH |
653a0 | 50 5f 42 49 4e 41 52 59 3b 0a 7d 0a 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 27 | P_BINARY;.}..if.($php.=.getenv(' |
653c0 | 50 48 50 5f 50 41 54 48 27 29 29 20 7b 0a 69 66 20 28 21 69 73 5f 65 78 65 63 75 74 61 62 6c 65 | PHP_PATH')).{.if.(!is_executable |
653e0 | 28 24 70 68 70 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 | ($php)).{.return.false;.}..retur |
65400 | 6e 20 24 70 68 70 3b 0a 7d 0a 0a 69 66 20 28 24 70 68 70 20 3d 20 67 65 74 65 6e 76 28 27 50 48 | n.$php;.}..if.($php.=.getenv('PH |
65420 | 50 5f 50 45 41 52 5f 50 48 50 5f 42 49 4e 27 29 29 20 7b 0a 69 66 20 28 69 73 5f 65 78 65 63 75 | P_PEAR_PHP_BIN')).{.if.(is_execu |
65440 | 74 61 62 6c 65 28 24 70 68 70 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 70 68 70 3b 0a 7d 0a 7d 0a | table($php)).{.return.$php;.}.}. |
65460 | 0a 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 50 48 50 5f 42 49 4e 44 49 52 29 3b 0a 69 66 20 28 | .$dirs.=.array(PHP_BINDIR);.if.( |
65480 | 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 | defined('PHP_WINDOWS_VERSION_BUI |
654a0 | 4c 44 27 29 29 20 7b 0a 24 64 69 72 73 5b 5d 20 3d 20 27 43 3a 5c 78 61 6d 70 70 5c 70 68 70 5c | LD')).{.$dirs[].=.'C:\xampp\php\ |
654c0 | 5c 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 61 62 6c 65 46 | \';.}..return.$this->executableF |
654e0 | 69 6e 64 65 72 2d 3e 66 69 6e 64 28 27 70 68 70 27 2c 20 66 61 6c 73 65 2c 20 24 64 69 72 73 29 | inder->find('php',.false,.$dirs) |
65500 | 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 | ;.}.}.<?php...........namespace. |
65520 | 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e | Symfony\Component\Console\Comman |
65540 | 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c | d;..use.Symfony\Component\Consol |
65560 | 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f | e\Input\InputArgument;.use.Symfo |
65580 | 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 | ny\Component\Console\Input\Input |
655a0 | 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f | Option;.use.Symfony\Component\Co |
655c0 | 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 | nsole\Input\InputInterface;.use. |
655e0 | 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 | Symfony\Component\Console\Output |
65600 | 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | \OutputInterface;.use.Symfony\Co |
65620 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 3b 0a 75 | mponent\Console\Output\Output;.u |
65640 | 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d | se.Symfony\Component\Console\Com |
65660 | 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 48 65 6c 70 43 6f | mand\Command;.......class.HelpCo |
65680 | 6d 6d 61 6e 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 61 74 65 20 | mmand.extends.Command.{.private. |
656a0 | 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | $command;.....protected.function |
656c0 | 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 | .configure().{.$this->ignoreVali |
656e0 | 64 61 74 69 6f 6e 45 72 72 6f 72 73 28 29 3b 0a 0a 24 74 68 69 73 0a 2d 3e 73 65 74 4e 61 6d 65 | dationErrors();..$this.->setName |
65700 | 28 27 68 65 6c 70 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a | ('help').->setDefinition(array(. |
65720 | 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 5f 6e 61 6d 65 27 | new.InputArgument('command_name' |
65740 | 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 4f 4e 41 4c 2c 20 27 54 68 65 20 | ,.InputArgument::OPTIONAL,.'The. |
65760 | 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 27 2c 20 27 68 65 6c 70 27 29 2c 0a 6e 65 77 20 49 6e 70 75 | command.name',.'help'),.new.Inpu |
65780 | 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e | tOption('xml',.null,.InputOption |
657a0 | 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 68 65 6c 70 20 61 73 | ::VALUE_NONE,.'To.output.help.as |
657c0 | 20 58 4d 4c 27 29 2c 0a 29 29 0a 2d 3e 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 27 44 69 73 | .XML'),.)).->setDescription('Dis |
657e0 | 70 6c 61 79 73 20 68 65 6c 70 20 66 6f 72 20 61 20 63 6f 6d 6d 61 6e 64 27 29 0a 2d 3e 73 65 74 | plays.help.for.a.command').->set |
65800 | 48 65 6c 70 28 3c 3c 3c 45 4f 46 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 63 6f 6d 6d 61 6e 64 2e 6e | Help(<<<EOF.The.<info>%command.n |
65820 | 61 6d 65 25 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 64 69 73 70 6c 61 79 73 20 68 65 6c | ame%</info>.command.displays.hel |
65840 | 70 20 66 6f 72 20 61 20 67 69 76 65 6e 20 63 6f 6d 6d 61 6e 64 3a 0a 0a 20 20 3c 69 6e 66 6f 3e | p.for.a.given.command:....<info> |
65860 | 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 6c 69 73 74 3c 2f 69 6e | php.%command.full_name%.list</in |
65880 | 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f 20 6f 75 74 70 75 74 20 74 68 65 20 68 65 6c | fo>..You.can.also.output.the.hel |
658a0 | 70 20 61 73 20 58 4d 4c 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 3c 63 6f 6d 6d 65 6e 74 3e 2d | p.as.XML.by.using.the.<comment>- |
658c0 | 2d 78 6d 6c 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 6f 70 74 69 6f 6e 3a 0a 0a 20 20 3c 69 6e 66 6f 3e | -xml</comment>.option:....<info> |
658e0 | 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 78 6d 6c 20 6c 69 | php.%command.full_name%.--xml.li |
65900 | 73 74 3c 2f 69 6e 66 6f 3e 0a 45 4f 46 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | st</info>.EOF.).;.}.......public |
65920 | 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 6d 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f | .function.setCommand(Command.$co |
65940 | 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 | mmand).{.$this->command.=.$comma |
65960 | 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 | nd;.}.....protected.function.exe |
65980 | 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 | cute(InputInterface.$input,.Outp |
659a0 | 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 | utInterface.$output).{.if.(null. |
659c0 | 3d 3d 3d 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d | ===.$this->command).{.$this->com |
659e0 | 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e | mand.=.$this->getApplication()-> |
65a00 | 67 65 74 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 | get($input->getArgument('command |
65a20 | 5f 6e 61 6d 65 27 29 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 | _name'));.}..if.($input->getOpti |
65a40 | 6f 6e 28 27 78 6d 6c 27 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 | on('xml')).{.$output->writeln($t |
65a60 | 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 61 73 58 6d 6c 28 29 2c 20 4f 75 74 70 75 74 49 6e 74 | his->command->asXml(),.OutputInt |
65a80 | 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 52 41 57 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f | erface::OUTPUT_RAW);.}.else.{.$o |
65aa0 | 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 61 | utput->writeln($this->command->a |
65ac0 | 73 54 65 78 74 28 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 6e 75 | sText());.}..$this->command.=.nu |
65ae0 | 6c 6c 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | ll;.}.}.<?php...........namespac |
65b00 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d | e.Symfony\Component\Console\Comm |
65b20 | 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 | and;..use.Symfony\Component\Cons |
65b40 | 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 3b 0a 75 73 65 20 53 | ole\Input\InputDefinition;.use.S |
65b60 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 | ymfony\Component\Console\Input\I |
65b80 | 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e | nputOption;.use.Symfony\Componen |
65ba0 | 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 | t\Console\Input\InputArgument;.u |
65bc0 | 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 | se.Symfony\Component\Console\Inp |
65be0 | 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 | ut\InputInterface;.use.Symfony\C |
65c00 | 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e | omponent\Console\Output\OutputIn |
65c20 | 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 | terface;.use.Symfony\Component\C |
65c40 | 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c | onsole\Application;.use.Symfony\ |
65c60 | 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 48 65 6c 70 65 72 53 | Component\Console\Helper\HelperS |
65c80 | 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 70 72 69 76 | et;.........class.Command.{.priv |
65ca0 | 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b | ate.$application;.private.$name; |
65cc0 | 0a 70 72 69 76 61 74 65 20 24 61 6c 69 61 73 65 73 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 69 | .private.$aliases;.private.$defi |
65ce0 | 6e 69 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 3b 0a 70 72 69 76 61 74 65 20 24 | nition;.private.$help;.private.$ |
65d00 | 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 56 61 6c 69 | description;.private.$ignoreVali |
65d20 | 64 61 74 69 6f 6e 45 72 72 6f 72 73 3b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 | dationErrors;.private.$applicati |
65d40 | 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 64 | onDefinitionMerged;.private.$cod |
65d60 | 65 3b 0a 70 72 69 76 61 74 65 20 24 73 79 6e 6f 70 73 69 73 3b 0a 70 72 69 76 61 74 65 20 24 68 | e;.private.$synopsis;.private.$h |
65d80 | 65 6c 70 65 72 53 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | elperSet;...........public.funct |
65da0 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | ion.__construct($name.=.null).{. |
65dc0 | 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 20 49 6e 70 75 74 44 65 66 | $this->definition.=.new.InputDef |
65de0 | 69 6e 69 74 69 6f 6e 28 29 3b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 | inition();.$this->ignoreValidati |
65e00 | 6f 6e 45 72 72 6f 72 73 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 | onErrors.=.false;.$this->applica |
65e20 | 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 3d 20 66 61 6c 73 65 3b 0a 24 74 | tionDefinitionMerged.=.false;.$t |
65e40 | 68 69 73 2d 3e 61 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 6e 75 6c | his->aliases.=.array();..if.(nul |
65e60 | 6c 20 21 3d 3d 20 24 6e 61 6d 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 4e 61 6d 65 28 24 6e | l.!==.$name).{.$this->setName($n |
65e80 | 61 6d 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6e 66 69 67 75 72 65 28 29 3b 0a 0a 69 66 | ame);.}..$this->configure();..if |
65ea0 | 20 28 21 24 74 68 69 73 2d 3e 6e 61 6d 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 | .(!$this->name).{.throw.new.\Log |
65ec0 | 69 63 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 63 61 | icException('The.command.name.ca |
65ee0 | 6e 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | nnot.be.empty.');.}.}.......publ |
65f00 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f | ic.function.ignoreValidationErro |
65f20 | 72 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 | rs().{.$this->ignoreValidationEr |
65f40 | 72 6f 72 73 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | rors.=.true;.}.........public.fu |
65f60 | 6e 63 74 69 6f 6e 20 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 41 70 70 6c 69 63 61 74 69 6f | nction.setApplication(Applicatio |
65f80 | 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e | n.$application.=.null).{.$this-> |
65fa0 | 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 69 66 20 28 | application.=.$application;.if.( |
65fc0 | 24 61 70 70 6c 69 63 61 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 48 65 6c 70 65 72 | $application).{.$this->setHelper |
65fe0 | 53 65 74 28 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 | Set($application->getHelperSet() |
66000 | 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 6e | );.}.else.{.$this->helperSet.=.n |
66020 | 75 6c 6c 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | ull;.}.}.......public.function.s |
66040 | 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 | etHelperSet(HelperSet.$helperSet |
66060 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c 70 65 72 53 65 | ).{.$this->helperSet.=.$helperSe |
66080 | 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 | t;.}.......public.function.getHe |
660a0 | 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 | lperSet().{.return.$this->helper |
660c0 | 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | Set;.}.........public.function.g |
660e0 | 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | etApplication().{.return.$this-> |
66100 | 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | application;.}..........public.f |
66120 | 75 6e 63 74 69 6f 6e 20 69 73 45 6e 61 62 6c 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 74 72 75 | unction.isEnabled().{.return.tru |
66140 | 65 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 | e;.}.....protected.function.conf |
66160 | 69 67 75 72 65 28 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f | igure().{.}..................pro |
66180 | 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 | tected.function.execute(InputInt |
661a0 | 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 | erface.$input,.OutputInterface.$ |
661c0 | 6f 75 74 70 75 74 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 | output).{.throw.new.\LogicExcept |
661e0 | 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 6f 76 65 72 72 69 64 65 20 74 68 65 20 65 78 65 63 75 | ion('You.must.override.the.execu |
66200 | 74 65 28 29 20 6d 65 74 68 6f 64 20 69 6e 20 74 68 65 20 63 6f 6e 63 72 65 74 65 20 63 6f 6d 6d | te().method.in.the.concrete.comm |
66220 | 61 6e 64 20 63 6c 61 73 73 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 | and.class.');.}........protected |
66240 | 20 66 75 6e 63 74 69 6f 6e 20 69 6e 74 65 72 61 63 74 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 | .function.interact(InputInterfac |
66260 | 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 | e.$input,.OutputInterface.$outpu |
66280 | 74 29 0a 7b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 | t).{.}...........protected.funct |
662a0 | 69 6f 6e 20 69 6e 69 74 69 61 6c 69 7a 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 | ion.initialize(InputInterface.$i |
662c0 | 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b | nput,.OutputInterface.$output).{ |
662e0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | .}...................public.func |
66300 | 74 69 6f 6e 20 72 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 | tion.run(InputInterface.$input,. |
66320 | 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 0a 20 24 74 68 | OutputInterface.$output).{...$th |
66340 | 69 73 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 6d 65 72 | is->getSynopsis();....$this->mer |
66360 | 67 65 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 0a 0a 20 74 72 | geApplicationDefinition();....tr |
66380 | 79 20 7b 0a 24 69 6e 70 75 74 2d 3e 62 69 6e 64 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 | y.{.$input->bind($this->definiti |
663a0 | 6f 6e 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 | on);.}.catch.(\Exception.$e).{.i |
663c0 | 66 20 28 21 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 56 61 6c 69 64 61 74 69 6f 6e 45 72 72 6f 72 | f.(!$this->ignoreValidationError |
663e0 | 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 69 6e 69 74 69 | s).{.throw.$e;.}.}..$this->initi |
66400 | 61 6c 69 7a 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 0a 69 66 20 28 24 69 6e | alize($input,.$output);..if.($in |
66420 | 70 75 74 2d 3e 69 73 49 6e 74 65 72 61 63 74 69 76 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 | put->isInteractive()).{.$this->i |
66440 | 6e 74 65 72 61 63 74 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 24 69 6e | nteract($input,.$output);.}..$in |
66460 | 70 75 74 2d 3e 76 61 6c 69 64 61 74 65 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6f 64 | put->validate();..if.($this->cod |
66480 | 65 29 20 7b 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 74 68 69 73 | e).{.return.call_user_func($this |
664a0 | 2d 3e 63 6f 64 65 2c 20 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 72 65 74 | ->code,.$input,.$output);.}..ret |
664c0 | 75 72 6e 20 24 74 68 69 73 2d 3e 65 78 65 63 75 74 65 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 | urn.$this->execute($input,.$outp |
664e0 | 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | ut);.}................public.fun |
66500 | 63 74 69 6f 6e 20 73 65 74 43 6f 64 65 28 5c 43 6c 6f 73 75 72 65 20 24 63 6f 64 65 29 0a 7b 0a | ction.setCode(\Closure.$code).{. |
66520 | 24 74 68 69 73 2d 3e 63 6f 64 65 20 3d 20 24 63 6f 64 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 | $this->code.=.$code;..return.$th |
66540 | 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 65 72 67 65 | is;.}.....private.function.merge |
66560 | 41 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 69 66 20 28 6e 75 | ApplicationDefinition().{.if.(nu |
66580 | 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 20 7c 7c 20 74 72 75 | ll.===.$this->application.||.tru |
665a0 | 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 | e.===.$this->applicationDefiniti |
665c0 | 6f 6e 4d 65 72 67 65 64 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 63 75 72 72 65 6e 74 41 | onMerged).{.return;.}..$currentA |
665e0 | 72 67 75 6d 65 6e 74 73 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 | rguments.=.$this->definition->ge |
66600 | 74 41 72 67 75 6d 65 6e 74 73 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d | tArguments();.$this->definition- |
66620 | 3e 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e | >setArguments($this->application |
66640 | 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 | ->getDefinition()->getArguments( |
66660 | 29 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 41 72 67 75 6d 65 | ));.$this->definition->addArgume |
66680 | 6e 74 73 28 24 63 75 72 72 65 6e 74 41 72 67 75 6d 65 6e 74 73 29 3b 0a 0a 24 74 68 69 73 2d 3e | nts($currentArguments);..$this-> |
666a0 | 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f 6e 73 28 24 74 68 69 73 2d 3e 61 70 | definition->addOptions($this->ap |
666c0 | 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 4f | plication->getDefinition()->getO |
666e0 | 70 74 69 6f 6e 73 28 29 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 | ptions());..$this->applicationDe |
66700 | 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | finitionMerged.=.true;.}........ |
66720 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 69 6e 69 74 69 6f 6e | ...public.function.setDefinition |
66740 | 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 24 64 65 66 69 6e 69 74 69 6f 6e 20 | ($definition).{.if.($definition. |
66760 | 69 6e 73 74 61 6e 63 65 6f 66 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 | instanceof.InputDefinition).{.$t |
66780 | 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d | his->definition.=.$definition;.} |
667a0 | 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 73 65 74 44 65 | .else.{.$this->definition->setDe |
667c0 | 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d | finition($definition);.}..$this- |
667e0 | 3e 61 70 70 6c 69 63 61 74 69 6f 6e 44 65 66 69 6e 69 74 69 6f 6e 4d 65 72 67 65 64 20 3d 20 66 | >applicationDefinitionMerged.=.f |
66800 | 61 6c 73 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | alse;..return.$this;.}.........p |
66820 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b | ublic.function.getDefinition().{ |
66840 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a | .return.$this->definition;.}.... |
66860 | 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 74 69 | ......protected.function.getNati |
66880 | 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 | veDefinition().{.return.$this->g |
668a0 | 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | etDefinition();.}..............p |
668c0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 | ublic.function.addArgument($name |
668e0 | 2c 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 | ,.$mode.=.null,.$description.=.' |
66900 | 27 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 | ',.$default.=.null).{.$this->def |
66920 | 69 6e 69 74 69 6f 6e 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 6e 65 77 20 49 6e 70 75 74 41 72 | inition->addArgument(new.InputAr |
66940 | 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 6d 6f 64 65 2c 20 24 64 65 73 63 72 69 70 74 69 6f | gument($name,.$mode,.$descriptio |
66960 | 6e 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a | n,.$default));..return.$this;.}. |
66980 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 | ..............public.function.ad |
669a0 | 64 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 6c 6c 2c | dOption($name,.$shortcut.=.null, |
669c0 | 20 24 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 | .$mode.=.null,.$description.=.'' |
669e0 | 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 | ,.$default.=.null).{.$this->defi |
66a00 | 6e 69 74 69 6f 6e 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f | nition->addOption(new.InputOptio |
66a20 | 6e 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 74 2c 20 24 6d 6f 64 65 2c 20 24 64 65 73 63 | n($name,.$shortcut,.$mode,.$desc |
66a40 | 72 69 70 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 | ription,.$default));..return.$th |
66a60 | 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | is;.}..................public.fu |
66a80 | 6e 63 74 69 6f 6e 20 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 | nction.setName($name).{.$this->v |
66aa0 | 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 | alidateName($name);..$this->name |
66ac0 | 20 3d 20 24 6e 61 6d 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a | .=.$name;..return.$this;.}...... |
66ae0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 | ...public.function.getName().{.r |
66b00 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | eturn.$this->name;.}...........p |
66b20 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 24 64 | ublic.function.setDescription($d |
66b40 | 65 73 63 72 69 70 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e | escription).{.$this->description |
66b60 | 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a | .=.$description;..return.$this;. |
66b80 | 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 73 | }.........public.function.getDes |
66ba0 | 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 72 | cription().{.return.$this->descr |
66bc0 | 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | iption;.}...........public.funct |
66be0 | 69 6f 6e 20 73 65 74 48 65 6c 70 28 24 68 65 6c 70 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 | ion.setHelp($help).{.$this->help |
66c00 | 20 3d 20 24 68 65 6c 70 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a | .=.$help;..return.$this;.}...... |
66c20 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 28 29 0a 7b 0a 72 | ...public.function.getHelp().{.r |
66c40 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | eturn.$this->help;.}........publ |
66c60 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 0a 7b | ic.function.getProcessedHelp().{ |
66c80 | 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 0a 24 70 6c 61 63 65 68 6f 6c | .$name.=.$this->name;..$placehol |
66ca0 | 64 65 72 73 20 3d 20 61 72 72 61 79 28 0a 27 25 63 6f 6d 6d 61 6e 64 2e 6e 61 6d 65 25 27 2c 0a | ders.=.array(.'%command.name%',. |
66cc0 | 27 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 27 0a 29 3b 0a 24 72 65 70 6c 61 63 | '%command.full_name%'.);.$replac |
66ce0 | 65 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 0a 24 6e 61 6d 65 2c 0a 24 5f 53 45 52 56 45 52 5b | ements.=.array(.$name,.$_SERVER[ |
66d00 | 27 50 48 50 5f 53 45 4c 46 27 5d 2e 27 20 27 2e 24 6e 61 6d 65 0a 29 3b 0a 0a 72 65 74 75 72 6e | 'PHP_SELF'].'.'.$name.);..return |
66d20 | 20 73 74 72 5f 72 65 70 6c 61 63 65 28 24 70 6c 61 63 65 68 6f 6c 64 65 72 73 2c 20 24 72 65 70 | .str_replace($placeholders,.$rep |
66d40 | 6c 61 63 65 6d 65 6e 74 73 2c 20 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 28 29 29 3b 0a 7d 0a | lacements,.$this->getHelp());.}. |
66d60 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 6c 69 | ..........public.function.setAli |
66d80 | 61 73 65 73 28 24 61 6c 69 61 73 65 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 6c 69 61 73 | ases($aliases).{.foreach.($alias |
66da0 | 65 73 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 4e | es.as.$alias).{.$this->validateN |
66dc0 | 61 6d 65 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 20 3d | ame($alias);.}..$this->aliases.= |
66de0 | 20 24 61 6c 69 61 73 65 73 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a | .$aliases;..return.$this;.}..... |
66e00 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 6c 69 61 73 65 73 28 29 | ....public.function.getAliases() |
66e20 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 6c 69 61 73 65 73 3b 0a 7d 0a 0a 0a 0a 0a | .{.return.$this->aliases;.}..... |
66e40 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 79 6e 6f 70 73 69 73 28 29 0a | ..public.function.getSynopsis(). |
66e60 | 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 29 20 | {.if.(null.===.$this->synopsis). |
66e80 | 7b 0a 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 20 3d 20 74 72 69 6d 28 73 70 72 69 6e 74 66 | {.$this->synopsis.=.trim(sprintf |
66ea0 | 28 27 25 73 20 25 73 27 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 64 65 | ('%s.%s',.$this->name,.$this->de |
66ec0 | 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 29 29 3b 0a 7d 0a 0a 72 65 | finition->getSynopsis()));.}..re |
66ee0 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 79 6e 6f 70 73 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | turn.$this->synopsis;.}......... |
66f00 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 28 24 6e | ....public.function.getHelper($n |
66f20 | 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 2d 3e | ame).{.return.$this->helperSet-> |
66f40 | 67 65 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | get($name);.}.......public.funct |
66f60 | 69 6f 6e 20 61 73 54 65 78 74 28 29 0a 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 | ion.asText().{.$messages.=.array |
66f80 | 28 0a 27 3c 63 6f 6d 6d 65 6e 74 3e 55 73 61 67 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 0a 27 | (.'<comment>Usage:</comment>',.' |
66fa0 | 20 27 2e 24 74 68 69 73 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 2c 0a 27 27 2c 0a 29 3b 0a | .'.$this->getSynopsis(),.'',.);. |
66fc0 | 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 29 20 7b 0a 24 6d 65 73 | .if.($this->getAliases()).{.$mes |
66fe0 | 73 61 67 65 73 5b 5d 20 3d 20 27 3c 63 6f 6d 6d 65 6e 74 3e 41 6c 69 61 73 65 73 3a 3c 2f 63 6f | sages[].=.'<comment>Aliases:</co |
67000 | 6d 6d 65 6e 74 3e 20 3c 69 6e 66 6f 3e 27 2e 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 24 74 68 | mment>.<info>'.implode(',.',.$th |
67020 | 69 73 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 29 2e 27 3c 2f 69 6e 66 6f 3e 27 3b 0a 7d 0a 0a | is->getAliases()).'</info>';.}.. |
67040 | 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 74 69 76 65 44 65 | $messages[].=.$this->getNativeDe |
67060 | 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 61 73 54 65 78 74 28 29 3b 0a 0a 69 66 20 28 24 68 65 6c 70 | finition()->asText();..if.($help |
67080 | 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 63 65 73 73 65 64 48 65 6c 70 28 29 29 20 7b 0a | .=.$this->getProcessedHelp()).{. |
670a0 | 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 3c 63 6f 6d 6d 65 6e 74 3e 48 65 6c 70 3a 3c 2f 63 | $messages[].=.'<comment>Help:</c |
670c0 | 6f 6d 6d 65 6e 74 3e 27 3b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 20 27 2e 73 74 72 5f | omment>';.$messages[].=.'.'.str_ |
670e0 | 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 24 68 65 6c 70 29 2e 22 5c 6e 22 | replace("\n",."\n.",.$help)."\n" |
67100 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 | ;.}..return.implode("\n",.$messa |
67120 | 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ges);.}.........public.function. |
67140 | 61 73 58 6d 6c 28 24 61 73 44 6f 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e | asXml($asDom.=.false).{.$dom.=.n |
67160 | 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b | ew.\DOMDocument('1.0',.'UTF-8'); |
67180 | 0a 24 64 6f 6d 2d 3e 66 6f 72 6d 61 74 4f 75 74 70 75 74 20 3d 20 74 72 75 65 3b 0a 24 64 6f 6d | .$dom->formatOutput.=.true;.$dom |
671a0 | 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 20 3d 20 24 64 6f 6d | ->appendChild($commandXML.=.$dom |
671c0 | 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 29 3b 0a 24 63 6f | ->createElement('command'));.$co |
671e0 | 6d 6d 61 6e 64 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 64 27 2c 20 24 74 68 | mmandXML->setAttribute('id',.$th |
67200 | 69 73 2d 3e 6e 61 6d 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 | is->name);.$commandXML->setAttri |
67220 | 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 74 68 69 73 2d 3e 6e 61 6d 65 29 3b 0a 0a 24 63 6f 6d | bute('name',.$this->name);..$com |
67240 | 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 75 73 61 67 65 58 4d 4c 20 3d | mandXML->appendChild($usageXML.= |
67260 | 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 75 73 61 67 65 27 29 29 3b 0a | .$dom->createElement('usage'));. |
67280 | 24 75 73 61 67 65 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 | $usageXML->appendChild($dom->cre |
672a0 | 61 74 65 54 65 78 74 4e 6f 64 65 28 73 70 72 69 6e 74 66 28 24 74 68 69 73 2d 3e 67 65 74 53 79 | ateTextNode(sprintf($this->getSy |
672c0 | 6e 6f 70 73 69 73 28 29 2c 20 27 27 29 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 | nopsis(),.'')));..$commandXML->a |
672e0 | 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f | ppendChild($descriptionXML.=.$do |
67300 | 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 29 | m->createElement('description')) |
67320 | 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 | ;.$descriptionXML->appendChild($ |
67340 | 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 73 74 72 5f 72 65 70 6c 61 63 65 28 | dom->createTextNode(str_replace( |
67360 | 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 24 74 68 69 73 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 | "\n",."\n.",.$this->getDescripti |
67380 | 6f 6e 28 29 29 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 | on())));..$commandXML->appendChi |
673a0 | 6c 64 28 24 68 65 6c 70 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e | ld($helpXML.=.$dom->createElemen |
673c0 | 74 28 27 68 65 6c 70 27 29 29 3b 0a 24 68 65 6c 70 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c | t('help'));.$helpXML->appendChil |
673e0 | 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 73 74 72 5f 72 65 70 6c 61 | d($dom->createTextNode(str_repla |
67400 | 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 20 22 2c 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 63 65 73 | ce("\n",."\n.",.$this->getProces |
67420 | 73 65 64 48 65 6c 70 28 29 29 29 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 | sedHelp())));..$commandXML->appe |
67440 | 6e 64 43 68 69 6c 64 28 24 61 6c 69 61 73 65 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 | ndChild($aliasesXML.=.$dom->crea |
67460 | 74 65 45 6c 65 6d 65 6e 74 28 27 61 6c 69 61 73 65 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 | teElement('aliases'));.foreach.( |
67480 | 24 74 68 69 73 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 61 6c 69 61 73 29 20 7b | $this->getAliases().as.$alias).{ |
674a0 | 0a 24 61 6c 69 61 73 65 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 61 6c 69 61 73 | .$aliasesXML->appendChild($alias |
674c0 | 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 61 6c 69 61 73 | XML.=.$dom->createElement('alias |
674e0 | 27 29 29 3b 0a 24 61 6c 69 61 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d | '));.$aliasXML->appendChild($dom |
67500 | 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 61 6c 69 61 73 29 29 3b 0a 7d 0a 0a 24 64 | ->createTextNode($alias));.}..$d |
67520 | 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 74 69 76 65 44 65 66 69 | efinition.=.$this->getNativeDefi |
67540 | 6e 69 74 69 6f 6e 28 29 2d 3e 61 73 58 6d 6c 28 74 72 75 65 29 3b 0a 24 63 6f 6d 6d 61 6e 64 58 | nition()->asXml(true);.$commandX |
67560 | 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 69 6d 70 6f 72 74 4e 6f 64 65 | ML->appendChild($dom->importNode |
67580 | 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 45 6c 65 6d 65 6e 74 73 42 79 54 61 67 4e 61 | ($definition->getElementsByTagNa |
675a0 | 6d 65 28 27 61 72 67 75 6d 65 6e 74 73 27 29 2d 3e 69 74 65 6d 28 30 29 2c 20 74 72 75 65 29 29 | me('arguments')->item(0),.true)) |
675c0 | 3b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d | ;.$commandXML->appendChild($dom- |
675e0 | 3e 69 6d 70 6f 72 74 4e 6f 64 65 28 24 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 45 6c 65 6d | >importNode($definition->getElem |
67600 | 65 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 27 6f 70 74 69 6f 6e 73 27 29 2d 3e 69 74 65 6d 28 30 | entsByTagName('options')->item(0 |
67620 | 29 2c 20 74 72 75 65 29 29 3b 0a 0a 72 65 74 75 72 6e 20 24 61 73 44 6f 6d 20 3f 20 24 64 6f 6d | ),.true));..return.$asDom.?.$dom |
67640 | 20 3a 20 24 64 6f 6d 2d 3e 73 61 76 65 58 6d 6c 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 | .:.$dom->saveXml();.}..private.f |
67660 | 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 | unction.validateName($name).{.if |
67680 | 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5e 5b 5e 5c 3a 5d 2b 28 5c 3a 5b 5e 5c 3a 5d 2b | .(!preg_match('/^[^\:]+(\:[^\:]+ |
676a0 | 29 2a 24 2f 27 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 | )*$/',.$name)).{.throw.new.\Inva |
676c0 | 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f | lidArgumentException(sprintf('Co |
676e0 | 6d 6d 61 6e 64 20 6e 61 6d 65 20 22 25 73 22 20 69 73 20 69 6e 76 61 6c 69 64 2e 27 2c 20 24 6e | mmand.name."%s".is.invalid.',.$n |
67700 | 61 6d 65 29 29 3b 0a 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | ame));.}.}.}.<?php...........nam |
67720 | 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | espace.Symfony\Component\Console |
67740 | 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 | \Command;..use.Symfony\Component |
67760 | 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3b 0a 75 73 | \Console\Input\InputArgument;.us |
67780 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 | e.Symfony\Component\Console\Inpu |
677a0 | 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | t\InputOption;.use.Symfony\Compo |
677c0 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 | nent\Console\Input\InputInterfac |
677e0 | 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | e;.use.Symfony\Component\Console |
67800 | 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d | \Output\OutputInterface;.use.Sym |
67820 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 | fony\Component\Console\Output\Ou |
67840 | 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 | tput;.use.Symfony\Component\Cons |
67860 | 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 | ole\Command\Command;.use.Symfony |
67880 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 | \Component\Console\Input\InputDe |
678a0 | 66 69 6e 69 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4c 69 73 74 43 6f 6d 6d 61 6e | finition;.......class.ListComman |
678c0 | 64 20 65 78 74 65 6e 64 73 20 43 6f 6d 6d 61 6e 64 0a 7b 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 | d.extends.Command.{....protected |
678e0 | 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 65 28 29 0a 7b 0a 24 74 68 69 73 0a 2d 3e | .function.configure().{.$this.-> |
67900 | 73 65 74 4e 61 6d 65 28 27 6c 69 73 74 27 29 0a 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 | setName('list').->setDefinition( |
67920 | 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 29 0a 2d 3e 73 65 74 | $this->createDefinition()).->set |
67940 | 44 65 73 63 72 69 70 74 69 6f 6e 28 27 4c 69 73 74 73 20 63 6f 6d 6d 61 6e 64 73 27 29 0a 2d 3e | Description('Lists.commands').-> |
67960 | 73 65 74 48 65 6c 70 28 3c 3c 3c 45 4f 46 0a 54 68 65 20 3c 69 6e 66 6f 3e 25 63 6f 6d 6d 61 6e | setHelp(<<<EOF.The.<info>%comman |
67980 | 64 2e 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74 73 20 61 6c 6c | d.name%</info>.command.lists.all |
679a0 | 20 63 6f 6d 6d 61 6e 64 73 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 | .commands:....<info>php.%command |
679c0 | 2e 66 75 6c 6c 5f 6e 61 6d 65 25 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f 75 20 63 61 6e 20 61 6c 73 6f | .full_name%</info>..You.can.also |
679e0 | 20 64 69 73 70 6c 61 79 20 74 68 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 61 20 73 70 65 63 | .display.the.commands.for.a.spec |
67a00 | 69 66 69 63 20 6e 61 6d 65 73 70 61 63 65 3a 0a 0a 20 20 3c 69 6e 66 6f 3e 70 68 70 20 25 63 6f | ific.namespace:....<info>php.%co |
67a20 | 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 74 65 73 74 3c 2f 69 6e 66 6f 3e 0a 0a 59 6f | mmand.full_name%.test</info>..Yo |
67a40 | 75 20 63 61 6e 20 61 6c 73 6f 20 6f 75 74 70 75 74 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f | u.can.also.output.the.informatio |
67a60 | 6e 20 61 73 20 58 4d 4c 20 62 79 20 75 73 69 6e 67 20 74 68 65 20 3c 63 6f 6d 6d 65 6e 74 3e 2d | n.as.XML.by.using.the.<comment>- |
67a80 | 2d 78 6d 6c 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 6f 70 74 69 6f 6e 3a 0a 0a 20 20 3c 69 6e 66 6f 3e | -xml</comment>.option:....<info> |
67aa0 | 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 78 6d 6c 3c 2f 69 | php.%command.full_name%.--xml</i |
67ac0 | 6e 66 6f 3e 0a 0a 49 74 27 73 20 61 6c 73 6f 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 67 65 74 20 | nfo>..It's.also.possible.to.get. |
67ae0 | 72 61 77 20 6c 69 73 74 20 6f 66 20 63 6f 6d 6d 61 6e 64 73 20 28 75 73 65 66 75 6c 20 66 6f 72 | raw.list.of.commands.(useful.for |
67b00 | 20 65 6d 62 65 64 64 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 72 75 6e 6e 65 72 29 3a 0a 0a 20 20 3c | .embedding.command.runner):....< |
67b20 | 69 6e 66 6f 3e 70 68 70 20 25 63 6f 6d 6d 61 6e 64 2e 66 75 6c 6c 5f 6e 61 6d 65 25 20 2d 2d 72 | info>php.%command.full_name%.--r |
67b40 | 61 77 3c 2f 69 6e 66 6f 3e 0a 45 4f 46 0a 29 0a 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 | aw</info>.EOF.).;.}.....protecte |
67b60 | 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 74 69 76 65 44 65 66 69 6e 69 74 69 6f 6e 28 29 | d.function.getNativeDefinition() |
67b80 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 72 65 61 74 65 44 65 66 69 6e 69 74 69 6f | .{.return.$this->createDefinitio |
67ba0 | 6e 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 65 78 | n();.}.....protected.function.ex |
67bc0 | 65 63 75 74 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 | ecute(InputInterface.$input,.Out |
67be0 | 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 29 0a 7b 0a 69 66 20 28 24 69 6e 70 | putInterface.$output).{.if.($inp |
67c00 | 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d | ut->getOption('xml')).{.$output- |
67c20 | 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 | >writeln($this->getApplication() |
67c40 | 2d 3e 61 73 58 6d 6c 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 6e 61 6d | ->asXml($input->getArgument('nam |
67c60 | 65 73 70 61 63 65 27 29 29 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 50 | espace')),.OutputInterface::OUTP |
67c80 | 55 54 5f 52 41 57 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 | UT_RAW);.}.else.{.$output->write |
67ca0 | 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 2d 3e 61 73 54 65 | ln($this->getApplication()->asTe |
67cc0 | 78 74 28 24 69 6e 70 75 74 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 | xt($input->getArgument('namespac |
67ce0 | 65 27 29 2c 20 24 69 6e 70 75 74 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 27 72 61 77 27 29 29 29 3b | e'),.$input->getOption('raw'))); |
67d00 | 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 44 65 66 | .}.}..private.function.createDef |
67d20 | 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 | inition().{.return.new.InputDefi |
67d40 | 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 | nition(array(.new.InputArgument( |
67d60 | 27 6e 61 6d 65 73 70 61 63 65 27 2c 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 3a 3a 4f 50 54 49 | 'namespace',.InputArgument::OPTI |
67d80 | 4f 4e 41 4c 2c 20 27 54 68 65 20 6e 61 6d 65 73 70 61 63 65 20 6e 61 6d 65 27 29 2c 0a 6e 65 77 | ONAL,.'The.namespace.name'),.new |
67da0 | 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 78 6d 6c 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f | .InputOption('xml',.null,.InputO |
67dc0 | 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 68 65 | ption::VALUE_NONE,.'To.output.he |
67de0 | 6c 70 20 61 73 20 58 4d 4c 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 72 61 | lp.as.XML'),.new.InputOption('ra |
67e00 | 77 27 2c 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e | w',.null,.InputOption::VALUE_NON |
67e20 | 45 2c 20 27 54 6f 20 6f 75 74 70 75 74 20 72 61 77 20 63 6f 6d 6d 61 6e 64 20 6c 69 73 74 27 29 | E,.'To.output.raw.command.list') |
67e40 | 2c 0a 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | ,.));.}.}.<?php...........namesp |
67e60 | 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 54 65 | ace.Symfony\Component\Console\Te |
67e80 | 73 74 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e | ster;..use.Symfony\Component\Con |
67ea0 | 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | sole\Application;.use.Symfony\Co |
67ec0 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 72 61 79 49 6e 70 75 74 | mponent\Console\Input\ArrayInput |
67ee0 | 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c | ;.use.Symfony\Component\Console\ |
67f00 | 49 6e 70 75 74 5c 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e | Input\InputInterface;.use.Symfon |
67f20 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 | y\Component\Console\Output\Outpu |
67f40 | 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e | tInterface;.use.Symfony\Componen |
67f60 | 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 53 74 72 65 61 6d 4f 75 74 70 75 74 3b 0a 0a | t\Console\Output\StreamOutput;.. |
67f80 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 70 70 6c 69 63 61 74 69 6f 6e 54 65 73 74 65 72 0a 7b 0a 70 | .....class.ApplicationTester.{.p |
67fa0 | 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 24 69 6e | rivate.$application;.private.$in |
67fc0 | 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | put;.private.$output;.......publ |
67fe0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 41 70 70 6c 69 63 61 74 | ic.function.__construct(Applicat |
68000 | 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c 69 | ion.$application).{.$this->appli |
68020 | 63 61 74 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | cation.=.$application;.}........ |
68040 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 61 72 72 61 | ........public.function.run(arra |
68060 | 79 20 24 69 6e 70 75 74 2c 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a | y.$input,.$options.=.array()).{. |
68080 | 24 74 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 24 69 | $this->input.=.new.ArrayInput($i |
680a0 | 6e 70 75 74 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 | nput);.if.(isset($options['inter |
680c0 | 61 63 74 69 76 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 73 65 74 49 6e | active'])).{.$this->input->setIn |
680e0 | 74 65 72 61 63 74 69 76 65 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 74 69 76 65 27 | teractive($options['interactive' |
68100 | 5d 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 74 72 65 61 | ]);.}..$this->output.=.new.Strea |
68120 | 6d 4f 75 74 70 75 74 28 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 2c 20 27 77 | mOutput(fopen('php://memory',.'w |
68140 | 27 2c 20 66 61 6c 73 65 29 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 | ',.false));.if.(isset($options[' |
68160 | 64 65 63 6f 72 61 74 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 | decorated'])).{.$this->output->s |
68180 | 65 74 44 65 63 6f 72 61 74 65 64 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 | etDecorated($options['decorated' |
681a0 | 5d 29 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 | ]);.}.if.(isset($options['verbos |
681c0 | 69 74 79 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 | ity'])).{.$this->output->setVerb |
681e0 | 6f 73 69 74 79 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d 29 3b 0a 7d 0a | osity($options['verbosity']);.}. |
68200 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 72 75 6e 28 | .return.$this->application->run( |
68220 | 24 74 68 69 73 2d 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a | $this->input,.$this->output);.}. |
68240 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 70 6c 61 79 | ......public.function.getDisplay |
68260 | 28 29 0a 7b 0a 72 65 77 69 6e 64 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 | ().{.rewind($this->output->getSt |
68280 | 72 65 61 6d 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 | ream());..return.stream_get_cont |
682a0 | 65 6e 74 73 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 | ents($this->output->getStream()) |
682c0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 | ;.}.......public.function.getInp |
682e0 | 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 3b 0a 7d 0a 0a 0a | ut().{.return.$this->input;.}... |
68300 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a | ....public.function.getOutput(). |
68320 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | {.return.$this->output;.}.}.<?ph |
68340 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | p...........namespace.Symfony\Co |
68360 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 54 65 73 74 65 72 3b 0a 0a 75 73 65 20 53 79 6d | mponent\Console\Tester;..use.Sym |
68380 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 | fony\Component\Console\Command\C |
683a0 | 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f | ommand;.use.Symfony\Component\Co |
683c0 | 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 72 61 79 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 | nsole\Input\ArrayInput;.use.Symf |
683e0 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 53 74 72 | ony\Component\Console\Output\Str |
68400 | 65 61 6d 4f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 6d 61 6e 64 54 65 | eamOutput;.......class.CommandTe |
68420 | 73 74 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 70 72 69 76 61 74 65 | ster.{.private.$command;.private |
68440 | 20 24 69 6e 70 75 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a | .$input;.private.$output;....... |
68460 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 43 6f 6d 6d | public.function.__construct(Comm |
68480 | 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d | and.$command).{.$this->command.= |
684a0 | 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | .$command;.}................publ |
684c0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 65 63 75 74 65 28 61 72 72 61 79 20 24 69 6e 70 75 74 | ic.function.execute(array.$input |
684e0 | 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 | ,.array.$options.=.array()).{.$t |
68500 | 68 69 73 2d 3e 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 24 69 6e 70 | his->input.=.new.ArrayInput($inp |
68520 | 75 74 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 | ut);.if.(isset($options['interac |
68540 | 74 69 76 65 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 | tive'])).{.$this->input->setInte |
68560 | 72 61 63 74 69 76 65 28 24 6f 70 74 69 6f 6e 73 5b 27 69 6e 74 65 72 61 63 74 69 76 65 27 5d 29 | ractive($options['interactive']) |
68580 | 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 53 74 72 65 61 6d 4f | ;.}..$this->output.=.new.StreamO |
685a0 | 75 74 70 75 74 28 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 6d 65 6d 6f 72 79 27 2c 20 27 77 27 2c | utput(fopen('php://memory',.'w', |
685c0 | 20 66 61 6c 73 65 29 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 | .false));.if.(isset($options['de |
685e0 | 63 6f 72 61 74 65 64 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 | corated'])).{.$this->output->set |
68600 | 44 65 63 6f 72 61 74 65 64 28 24 6f 70 74 69 6f 6e 73 5b 27 64 65 63 6f 72 61 74 65 64 27 5d 29 | Decorated($options['decorated']) |
68620 | 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 | ;.}.if.(isset($options['verbosit |
68640 | 79 27 5d 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 | y'])).{.$this->output->setVerbos |
68660 | 69 74 79 28 24 6f 70 74 69 6f 6e 73 5b 27 76 65 72 62 6f 73 69 74 79 27 5d 29 3b 0a 7d 0a 0a 72 | ity($options['verbosity']);.}..r |
68680 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 74 68 69 73 2d | eturn.$this->command->run($this- |
686a0 | 3e 69 6e 70 75 74 2c 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | >input,.$this->output);.}....... |
686c0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 69 73 70 6c 61 79 28 29 0a 7b 0a 72 | public.function.getDisplay().{.r |
686e0 | 65 77 69 6e 64 28 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 | ewind($this->output->getStream() |
68700 | 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 65 61 6d 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 | );..return.stream_get_contents($ |
68720 | 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 67 65 74 53 74 72 65 61 6d 28 29 29 3b 0a 7d 0a 0a 0a | this->output->getStream());.}... |
68740 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 49 6e 70 75 74 28 29 0a 7b | ....public.function.getInput().{ |
68760 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 70 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | .return.$this->input;.}.......pu |
68780 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 | blic.function.getOutput().{.retu |
687a0 | 72 6e 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a | rn.$this->output;.}.}.<?php..... |
687c0 | 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e | ......namespace.Symfony\Componen |
687e0 | 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f | t\Console\Formatter;.....class.O |
68800 | 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 61 63 6b 0a 7b 0a 0a 0a 0a 70 72 | utputFormatterStyleStack.{....pr |
68820 | 69 76 61 74 65 20 24 73 74 79 6c 65 73 3b 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 24 65 6d 70 74 | ivate.$styles;.....private.$empt |
68840 | 79 53 74 79 6c 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | yStyle;.......public.function.__ |
68860 | 63 6f 6e 73 74 72 75 63 74 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e | construct(OutputFormatterStyleIn |
68880 | 74 65 72 66 61 63 65 20 24 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 | terface.$emptyStyle.=.null).{.$t |
688a0 | 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 24 65 6d 70 74 79 53 74 79 6c 65 20 3f 3a | his->emptyStyle.=.$emptyStyle.?: |
688c0 | 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 29 3b 0a 24 74 68 | .new.OutputFormatterStyle();.$th |
688e0 | 69 73 2d 3e 72 65 73 65 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | is->reset();.}.....public.functi |
68900 | 6f 6e 20 72 65 73 65 74 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 20 3d 20 61 72 72 | on.reset().{.$this->styles.=.arr |
68920 | 61 79 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 75 | ay();.}.......public.function.pu |
68940 | 73 68 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 | sh(OutputFormatterStyleInterface |
68960 | 20 24 73 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 5d 20 3d 20 24 73 74 | .$style).{.$this->styles[].=.$st |
68980 | 79 6c 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | yle;.}...........public.function |
689a0 | 20 70 6f 70 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 | .pop(OutputFormatterStyleInterfa |
689c0 | 63 65 20 24 73 74 79 6c 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 74 | ce.$style.=.null).{.if.(empty($t |
689e0 | 68 69 73 2d 3e 73 74 79 6c 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d | his->styles)).{.return.$this->em |
68a00 | 70 74 79 53 74 79 6c 65 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 73 74 79 6c 65 | ptyStyle;.}..if.(null.===.$style |
68a20 | 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 73 74 79 6c | ).{.return.array_pop($this->styl |
68a40 | 65 73 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 61 72 72 61 79 5f 72 65 76 65 72 73 65 28 24 | es);.}..foreach.(array_reverse($ |
68a60 | 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 74 72 75 65 29 20 61 73 20 24 69 6e 64 65 78 20 3d 3e | this->styles,.true).as.$index.=> |
68a80 | 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 29 20 7b 0a 69 66 20 28 24 73 74 79 6c 65 2d 3e 61 70 | .$stackedStyle).{.if.($style->ap |
68aa0 | 70 6c 79 28 27 27 29 20 3d 3d 3d 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 2d 3e 61 70 70 6c 79 | ply('').===.$stackedStyle->apply |
68ac0 | 28 27 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 5f 73 6c | ('')).{.$this->styles.=.array_sl |
68ae0 | 69 63 65 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 2c 20 30 2c 20 24 69 6e 64 65 78 29 3b 0a 0a | ice($this->styles,.0,.$index);.. |
68b00 | 72 65 74 75 72 6e 20 24 73 74 61 63 6b 65 64 53 74 79 6c 65 3b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 | return.$stackedStyle;.}.}..throw |
68b20 | 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 | .new.\InvalidArgumentException(' |
68b40 | 49 6e 63 6f 72 72 65 63 74 6c 79 20 6e 65 73 74 65 64 20 73 74 79 6c 65 20 74 61 67 20 66 6f 75 | Incorrectly.nested.style.tag.fou |
68b60 | 6e 64 2e 27 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | nd.');.}.......public.function.g |
68b80 | 65 74 43 75 72 72 65 6e 74 28 29 0a 7b 0a 69 66 20 28 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 73 | etCurrent().{.if.(empty($this->s |
68ba0 | 74 79 6c 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 | tyles)).{.return.$this->emptySty |
68bc0 | 6c 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 63 6f 75 6e | le;.}..return.$this->styles[coun |
68be0 | 74 28 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 29 2d 31 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 | t($this->styles)-1];.}.......pub |
68c00 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 6d 70 74 79 53 74 79 6c 65 28 4f 75 74 70 75 | lic.function.setEmptyStyle(Outpu |
68c20 | 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 65 6d 70 74 79 53 | tFormatterStyleInterface.$emptyS |
68c40 | 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 20 3d 20 24 65 6d 70 | tyle).{.$this->emptyStyle.=.$emp |
68c60 | 74 79 53 74 79 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 70 75 | tyStyle;..return.$this;.}.....pu |
68c80 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 6d 70 74 79 53 74 79 6c 65 28 29 0a 7b 0a | blic.function.getEmptyStyle().{. |
68ca0 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 65 6d 70 74 79 53 74 79 6c 65 3b 0a 7d 0a 7d 0a 3c 3f | return.$this->emptyStyle;.}.}.<? |
68cc0 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c | php...........namespace.Symfony\ |
68ce0 | 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a | Component\Console\Formatter;.... |
68d00 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 20 | .....class.OutputFormatterStyle. |
68d20 | 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 | implements.OutputFormatterStyleI |
68d40 | 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 61 76 61 69 6c | nterface.{.private.static.$avail |
68d60 | 61 62 6c 65 46 6f 72 65 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 20 3d 20 61 72 72 61 79 28 0a 27 62 | ableForegroundColors.=.array(.'b |
68d80 | 6c 61 63 6b 27 20 3d 3e 20 33 30 2c 0a 27 72 65 64 27 20 3d 3e 20 33 31 2c 0a 27 67 72 65 65 6e | lack'.=>.30,.'red'.=>.31,.'green |
68da0 | 27 20 3d 3e 20 33 32 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d 3e 20 33 33 2c 0a 27 62 6c 75 65 27 20 | '.=>.32,.'yellow'.=>.33,.'blue'. |
68dc0 | 3d 3e 20 33 34 2c 0a 27 6d 61 67 65 6e 74 61 27 20 3d 3e 20 33 35 2c 0a 27 63 79 61 6e 27 20 3d | =>.34,.'magenta'.=>.35,.'cyan'.= |
68de0 | 3e 20 33 36 2c 0a 27 77 68 69 74 65 27 20 3d 3e 20 33 37 0a 29 3b 0a 70 72 69 76 61 74 65 20 73 | >.36,.'white'.=>.37.);.private.s |
68e00 | 74 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 | tatic.$availableBackgroundColors |
68e20 | 20 3d 20 61 72 72 61 79 28 0a 27 62 6c 61 63 6b 27 20 3d 3e 20 34 30 2c 0a 27 72 65 64 27 20 3d | .=.array(.'black'.=>.40,.'red'.= |
68e40 | 3e 20 34 31 2c 0a 27 67 72 65 65 6e 27 20 3d 3e 20 34 32 2c 0a 27 79 65 6c 6c 6f 77 27 20 3d 3e | >.41,.'green'.=>.42,.'yellow'.=> |
68e60 | 20 34 33 2c 0a 27 62 6c 75 65 27 20 3d 3e 20 34 34 2c 0a 27 6d 61 67 65 6e 74 61 27 20 3d 3e 20 | .43,.'blue'.=>.44,.'magenta'.=>. |
68e80 | 34 35 2c 0a 27 63 79 61 6e 27 20 3d 3e 20 34 36 2c 0a 27 77 68 69 74 65 27 20 3d 3e 20 34 37 0a | 45,.'cyan'.=>.46,.'white'.=>.47. |
68ea0 | 29 3b 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 | );.private.static.$availableOpti |
68ec0 | 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 27 62 6f 6c 64 27 20 3d 3e 20 31 2c 0a 27 75 6e 64 65 72 | ons.=.array(.'bold'.=>.1,.'under |
68ee0 | 73 63 6f 72 65 27 20 3d 3e 20 34 2c 0a 27 62 6c 69 6e 6b 27 20 3d 3e 20 35 2c 0a 27 72 65 76 65 | score'.=>.4,.'blink'.=>.5,.'reve |
68f00 | 72 73 65 27 20 3d 3e 20 37 2c 0a 27 63 6f 6e 63 65 61 6c 27 20 3d 3e 20 38 0a 29 3b 0a 0a 70 72 | rse'.=>.7,.'conceal'.=>.8.);..pr |
68f20 | 69 76 61 74 65 20 24 66 6f 72 65 67 72 6f 75 6e 64 3b 0a 70 72 69 76 61 74 65 20 24 62 61 63 6b | ivate.$foreground;.private.$back |
68f40 | 67 72 6f 75 6e 64 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 | ground;.private.$options.=.array |
68f60 | 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | ();...........public.function.__ |
68f80 | 63 6f 6e 73 74 72 75 63 74 28 24 66 6f 72 65 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 2c 20 24 62 | construct($foreground.=.null,.$b |
68fa0 | 61 63 6b 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 | ackground.=.null,.array.$options |
68fc0 | 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 66 6f 72 65 | .=.array()).{.if.(null.!==.$fore |
68fe0 | 67 72 6f 75 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 | ground).{.$this->setForeground($ |
69000 | 66 6f 72 65 67 72 6f 75 6e 64 29 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 62 61 63 | foreground);.}.if.(null.!==.$bac |
69020 | 6b 67 72 6f 75 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 | kground).{.$this->setBackground( |
69040 | 24 62 61 63 6b 67 72 6f 75 6e 64 29 3b 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 28 24 6f 70 74 69 6f | $background);.}.if.(count($optio |
69060 | 6e 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e | ns)).{.$this->setOptions($option |
69080 | 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | s);.}.}...........public.functio |
690a0 | 6e 20 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b | n.setForeground($color.=.null).{ |
690c0 | 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6c 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 66 | .if.(null.===.$color).{.$this->f |
690e0 | 6f 72 65 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 | oreground.=.null;..return;.}..if |
69100 | 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 | .(!isset(static::$availableForeg |
69120 | 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 | roundColors[$color])).{.throw.ne |
69140 | 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 | w.\InvalidArgumentException(spri |
69160 | 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 66 6f 72 65 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 73 | ntf(.'Invalid.foreground.color.s |
69180 | 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 | pecified:."%s"..Expected.one.of. |
691a0 | 28 25 73 29 27 2c 0a 24 63 6f 6c 6f 72 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 | (%s)',.$color,.implode(',.',.arr |
691c0 | 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 | ay_keys(static::$availableForegr |
691e0 | 6f 75 6e 64 43 6f 6c 6f 72 73 29 29 0a 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 66 6f 72 65 67 | oundColors)).));.}..$this->foreg |
69200 | 72 6f 75 6e 64 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 46 6f 72 65 67 72 | round.=.static::$availableForegr |
69220 | 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | oundColors[$color];.}........... |
69240 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 63 | public.function.setBackground($c |
69260 | 6f 6c 6f 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 63 6f 6c | olor.=.null).{.if.(null.===.$col |
69280 | 6f 72 29 20 7b 0a 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 20 3d 20 6e 75 6c 6c 3b 0a | or).{.$this->background.=.null;. |
692a0 | 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 | .return;.}..if.(!isset(static::$ |
692c0 | 61 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 | availableBackgroundColors[$color |
692e0 | 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 | ])).{.throw.new.\InvalidArgument |
69300 | 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 62 61 63 6b | Exception(sprintf(.'Invalid.back |
69320 | 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 73 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 | ground.color.specified:."%s"..Ex |
69340 | 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 27 2c 0a 24 63 6f 6c 6f 72 2c 0a 69 6d 70 | pected.one.of.(%s)',.$color,.imp |
69360 | 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 | lode(',.',.array_keys(static::$a |
69380 | 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 29 29 0a 29 29 3b 0a 7d | vailableBackgroundColors)).));.} |
693a0 | 0a 0a 24 74 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 | ..$this->background.=.static::$a |
693c0 | 76 61 69 6c 61 62 6c 65 42 61 63 6b 67 72 6f 75 6e 64 43 6f 6c 6f 72 73 5b 24 63 6f 6c 6f 72 5d | vailableBackgroundColors[$color] |
693e0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | ;.}...........public.function.se |
69400 | 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 | tOption($option).{.if.(!isset(st |
69420 | 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d | atic::$availableOptions[$option] |
69440 | 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 | )).{.throw.new.\InvalidArgumentE |
69460 | 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 74 69 6f | xception(sprintf(.'Invalid.optio |
69480 | 6e 20 73 70 65 63 69 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 | n.specified:."%s"..Expected.one. |
694a0 | 6f 66 20 28 25 73 29 27 2c 0a 24 6f 70 74 69 6f 6e 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c | of.(%s)',.$option,.implode(',.', |
694c0 | 20 61 72 72 61 79 5f 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 | .array_keys(static::$availableOp |
694e0 | 74 69 6f 6e 73 29 29 0a 29 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 61 72 72 | tions)).));.}..if.(false.===.arr |
69500 | 61 79 5f 73 65 61 72 63 68 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 | ay_search(static::$availableOpti |
69520 | 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 20 7b | ons[$option],.$this->options)).{ |
69540 | 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 73 74 61 74 69 63 3a 3a 24 61 76 61 | .$this->options[].=.static::$ava |
69560 | 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a | ilableOptions[$option];.}.}..... |
69580 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 75 6e 73 65 74 4f 70 74 69 6f 6e | .....public.function.unsetOption |
695a0 | 28 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 73 74 61 74 69 63 3a 3a 24 | ($option).{.if.(!isset(static::$ |
695c0 | 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 29 29 20 7b 0a 74 68 | availableOptions[$option])).{.th |
695e0 | 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f | row.new.\InvalidArgumentExceptio |
69600 | 6e 28 73 70 72 69 6e 74 66 28 0a 27 49 6e 76 61 6c 69 64 20 6f 70 74 69 6f 6e 20 73 70 65 63 69 | n(sprintf(.'Invalid.option.speci |
69620 | 66 69 65 64 3a 20 22 25 73 22 2e 20 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 20 28 25 73 29 | fied:."%s"..Expected.one.of.(%s) |
69640 | 27 2c 0a 24 6f 70 74 69 6f 6e 2c 0a 69 6d 70 6c 6f 64 65 28 27 2c 20 27 2c 20 61 72 72 61 79 5f | ',.$option,.implode(',.',.array_ |
69660 | 6b 65 79 73 28 73 74 61 74 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 29 29 | keys(static::$availableOptions)) |
69680 | 0a 29 29 3b 0a 7d 0a 0a 24 70 6f 73 20 3d 20 61 72 72 61 79 5f 73 65 61 72 63 68 28 73 74 61 74 | .));.}..$pos.=.array_search(stat |
696a0 | 69 63 3a 3a 24 61 76 61 69 6c 61 62 6c 65 4f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 5d 2c 20 | ic::$availableOptions[$option],. |
696c0 | 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 | $this->options);.if.(false.!==.$ |
696e0 | 70 6f 73 29 20 7b 0a 75 6e 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 70 6f 73 | pos).{.unset($this->options[$pos |
69700 | 5d 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | ]);.}.}.......public.function.se |
69720 | 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 79 20 24 6f 70 74 69 6f 6e 73 29 0a 7b 0a 24 74 68 69 73 | tOptions(array.$options).{.$this |
69740 | 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 | ->options.=.array();..foreach.($ |
69760 | 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 | options.as.$option).{.$this->set |
69780 | 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | Option($option);.}.}.........pub |
697a0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 0a 7b 0a 24 63 6f 64 | lic.function.apply($text).{.$cod |
697c0 | 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 68 69 | es.=.array();..if.(null.!==.$thi |
697e0 | 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 29 20 7b 0a 24 63 6f 64 65 73 5b 5d 20 3d 20 24 74 68 69 | s->foreground).{.$codes[].=.$thi |
69800 | 73 2d 3e 66 6f 72 65 67 72 6f 75 6e 64 3b 0a 7d 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 | s->foreground;.}.if.(null.!==.$t |
69820 | 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 29 20 7b 0a 24 63 6f 64 65 73 5b 5d 20 3d 20 24 74 | his->background).{.$codes[].=.$t |
69840 | 68 69 73 2d 3e 62 61 63 6b 67 72 6f 75 6e 64 3b 0a 7d 0a 69 66 20 28 63 6f 75 6e 74 28 24 74 68 | his->background;.}.if.(count($th |
69860 | 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 29 20 7b 0a 24 63 6f 64 65 73 20 3d 20 61 72 72 61 79 5f 6d | is->options)).{.$codes.=.array_m |
69880 | 65 72 67 65 28 24 63 6f 64 65 73 2c 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a | erge($codes,.$this->options);.}. |
698a0 | 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 22 5c 30 33 33 5b 25 73 6d 25 73 5c 30 33 33 5b | .return.sprintf("\033[%sm%s\033[ |
698c0 | 30 6d 22 2c 20 69 6d 70 6c 6f 64 65 28 27 3b 27 2c 20 24 63 6f 64 65 73 29 2c 20 24 74 65 78 74 | 0m",.implode(';',.$codes),.$text |
698e0 | 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 | );.}.}.<?php...........namespace |
69900 | 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 | .Symfony\Component\Console\Forma |
69920 | 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 46 6f | tter;.........interface.OutputFo |
69940 | 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 | rmatterStyleInterface.{........p |
69960 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 63 6f | ublic.function.setForeground($co |
69980 | 6c 6f 72 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | lor.=.null);.........public.func |
699a0 | 74 69 6f 6e 20 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 63 6f 6c 6f 72 20 3d 20 6e 75 6c 6c | tion.setBackground($color.=.null |
699c0 | 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 | );.........public.function.setOp |
699e0 | 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | tion($option);.......public.func |
69a00 | 74 69 6f 6e 20 75 6e 73 65 74 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 0a 0a 0a 0a 0a | tion.unsetOption($option);...... |
69a20 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 61 72 72 61 | .public.function.setOptions(arra |
69a40 | 79 20 24 6f 70 74 69 6f 6e 73 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | y.$options);.........public.func |
69a60 | 74 69 6f 6e 20 61 70 70 6c 79 28 24 74 65 78 74 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a | tion.apply($text);.}.<?php...... |
69a80 | 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 | .....namespace.Symfony\Component |
69aa0 | 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 | \Console\Formatter;.........clas |
69ac0 | 73 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 | s.OutputFormatter.implements.Out |
69ae0 | 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 63 6f 6e 73 74 | putFormatterInterface.{....const |
69b00 | 20 46 4f 52 4d 41 54 5f 50 41 54 54 45 52 4e 20 3d 20 27 23 28 5c 5c 5c 5c 3f 29 3c 28 2f 3f 29 | .FORMAT_PATTERN.=.'#(\\\\?)<(/?) |
69b20 | 28 5b 61 2d 7a 5d 5b 61 2d 7a 30 2d 39 5f 3d 3b 2d 5d 2b 29 3f 3e 28 28 3f 3a 28 3f 21 5c 5c 5c | ([a-z][a-z0-9_=;-]+)?>((?:(?!\\\ |
69b40 | 5c 3f 3c 29 2e 29 2a 29 23 69 73 27 3b 0a 0a 70 72 69 76 61 74 65 20 24 64 65 63 6f 72 61 74 65 | \?<).)*)#is';..private.$decorate |
69b60 | 64 3b 0a 70 72 69 76 61 74 65 20 24 73 74 79 6c 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 | d;.private.$styles.=.array();.pr |
69b80 | 69 76 61 74 65 20 24 73 74 79 6c 65 53 74 61 63 6b 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | ivate.$styleStack;.........publi |
69ba0 | 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 73 63 61 70 65 28 24 74 65 78 74 29 0a | c.static.function.escape($text). |
69bc0 | 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 5b 5e 5c 5c 5c 5c 5d | {.return.preg_replace('/([^\\\\] |
69be0 | 3f 29 3c 2f 69 73 27 2c 20 27 24 31 5c 5c 3c 27 2c 20 24 74 65 78 74 29 3b 0a 7d 0a 0a 0a 0a 0a | ?)</is',.'$1\\<',.$text);.}..... |
69c00 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
69c20 | 28 24 64 65 63 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c 20 61 72 72 61 79 20 24 73 74 79 6c 65 | ($decorated.=.null,.array.$style |
69c40 | 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 20 | s.=.array()).{.$this->decorated. |
69c60 | 3d 20 28 42 6f 6f 6c 65 61 6e 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 0a 24 74 68 69 73 2d 3e | =.(Boolean).$decorated;..$this-> |
69c80 | 73 65 74 53 74 79 6c 65 28 27 65 72 72 6f 72 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d | setStyle('error',.new.OutputForm |
69ca0 | 61 74 74 65 72 53 74 79 6c 65 28 27 77 68 69 74 65 27 2c 20 27 72 65 64 27 29 29 3b 0a 24 74 68 | atterStyle('white',.'red'));.$th |
69cc0 | 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 27 69 6e 66 6f 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 | is->setStyle('info',.new.OutputF |
69ce0 | 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 67 72 65 65 6e 27 29 29 3b 0a 24 74 68 69 73 2d 3e | ormatterStyle('green'));.$this-> |
69d00 | 73 65 74 53 74 79 6c 65 28 27 63 6f 6d 6d 65 6e 74 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 6f | setStyle('comment',.new.OutputFo |
69d20 | 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 79 65 6c 6c 6f 77 27 29 29 3b 0a 24 74 68 69 73 2d 3e | rmatterStyle('yellow'));.$this-> |
69d40 | 73 65 74 53 74 79 6c 65 28 27 71 75 65 73 74 69 6f 6e 27 2c 20 6e 65 77 20 4f 75 74 70 75 74 46 | setStyle('question',.new.OutputF |
69d60 | 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 27 62 6c 61 63 6b 27 2c 20 27 63 79 61 6e 27 29 29 3b | ormatterStyle('black',.'cyan')); |
69d80 | 0a 0a 66 6f 72 65 61 63 68 20 28 24 73 74 79 6c 65 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 | ..foreach.($styles.as.$name.=>.$ |
69da0 | 73 74 79 6c 65 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 | style).{.$this->setStyle($name,. |
69dc0 | 24 73 74 79 6c 65 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 20 3d 20 | $style);.}..$this->styleStack.=. |
69de0 | 6e 65 77 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 53 74 61 63 6b 28 29 3b | new.OutputFormatterStyleStack(); |
69e00 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 | .}.........public.function.setDe |
69e20 | 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 63 | corated($decorated).{.$this->dec |
69e40 | 6f 72 61 74 65 64 20 3d 20 28 42 6f 6f 6c 65 61 6e 29 20 24 64 65 63 6f 72 61 74 65 64 3b 0a 7d | orated.=.(Boolean).$decorated;.} |
69e60 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 6f 72 | .........public.function.isDecor |
69e80 | 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 63 6f 72 61 74 65 64 | ated().{.return.$this->decorated |
69ea0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | ;.}..........public.function.set |
69ec0 | 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c | Style($name,.OutputFormatterStyl |
69ee0 | 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 79 6c 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c | eInterface.$style).{.$this->styl |
69f00 | 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 20 3d 20 24 73 74 79 6c 65 3b 0a | es[strtolower($name)].=.$style;. |
69f20 | 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 | }...........public.function.hasS |
69f40 | 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 | tyle($name).{.return.isset($this |
69f60 | 2d 3e 73 74 79 6c 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 29 3b 0a 7d 0a | ->styles[strtolower($name)]);.}. |
69f80 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 | ............public.function.getS |
69fa0 | 74 79 6c 65 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 53 74 79 | tyle($name).{.if.(!$this->hasSty |
69fc0 | 6c 65 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 | le($name)).{.throw.new.\InvalidA |
69fe0 | 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 64 65 66 69 6e 65 64 20 73 74 79 6c | rgumentException('Undefined.styl |
6a000 | 65 3a 20 27 2e 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 | e:.'.$name);.}..return.$this->st |
6a020 | 79 6c 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a | yles[strtolower($name)];.}...... |
6a040 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6d 65 73 | .....public.function.format($mes |
6a060 | 73 61 67 65 29 0a 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 5f | sage).{.$message.=.preg_replace_ |
6a080 | 63 61 6c 6c 62 61 63 6b 28 73 65 6c 66 3a 3a 46 4f 52 4d 41 54 5f 50 41 54 54 45 52 4e 2c 20 61 | callback(self::FORMAT_PATTERN,.a |
6a0a0 | 72 72 61 79 28 24 74 68 69 73 2c 20 27 72 65 70 6c 61 63 65 53 74 79 6c 65 27 29 2c 20 24 6d 65 | rray($this,.'replaceStyle'),.$me |
6a0c0 | 73 73 61 67 65 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 3c | ssage);..return.str_replace('\\< |
6a0e0 | 27 2c 20 27 3c 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ',.'<',.$message);.}.....public. |
6a100 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 53 74 61 63 6b 28 29 0a 7b 0a 72 65 74 75 72 | function.getStyleStack().{.retur |
6a120 | 6e 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | n.$this->styleStack;.}.........p |
6a140 | 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 70 6c 61 63 65 53 74 79 6c 65 28 24 6d 61 | rivate.function.replaceStyle($ma |
6a160 | 74 63 68 29 0a 7b 0a 0a 20 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 24 6d 61 74 63 68 5b 31 5d 29 | tch).{...if.('\\'.===.$match[1]) |
6a180 | 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 7d 0a 0a 69 66 20 28 27 27 20 3d | .{.return.$match[0];.}..if.(''.= |
6a1a0 | 3d 3d 20 24 6d 61 74 63 68 5b 33 5d 29 20 7b 0a 69 66 20 28 27 2f 27 20 3d 3d 3d 20 24 6d 61 74 | ==.$match[3]).{.if.('/'.===.$mat |
6a1c0 | 63 68 5b 32 5d 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 70 6f | ch[2]).{...$this->styleStack->po |
6a1e0 | 70 28 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 70 70 6c 79 53 74 79 6c 65 28 24 | p();..return.$this->applyStyle($ |
6a200 | 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 67 65 74 43 75 72 72 65 6e 74 28 29 2c 20 | this->styleStack->getCurrent(),. |
6a220 | 24 6d 61 74 63 68 5b 34 5d 29 3b 0a 7d 0a 0a 0a 20 72 65 74 75 72 6e 20 27 3c 3e 27 2e 24 6d 61 | $match[4]);.}....return.'<>'.$ma |
6a240 | 74 63 68 5b 34 5d 3b 0a 7d 0a 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 74 79 6c | tch[4];.}..if.(isset($this->styl |
6a260 | 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 5b 33 5d 29 5d 29 29 20 7b 0a 24 73 | es[strtolower($match[3])])).{.$s |
6a280 | 74 79 6c 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 79 6c 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 | tyle.=.$this->styles[strtolower( |
6a2a0 | 24 6d 61 74 63 68 5b 33 5d 29 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 74 79 6c 65 20 3d 20 24 | $match[3])];.}.else.{.$style.=.$ |
6a2c0 | 74 68 69 73 2d 3e 63 72 65 61 74 65 53 74 79 6c 65 46 72 6f 6d 53 74 72 69 6e 67 28 24 6d 61 74 | this->createStyleFromString($mat |
6a2e0 | 63 68 5b 33 5d 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 73 74 79 6c 65 29 20 7b | ch[3]);..if.(false.===.$style).{ |
6a300 | 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 27 2f 27 20 | .return.$match[0];.}.}..if.('/'. |
6a320 | 3d 3d 3d 20 24 6d 61 74 63 68 5b 32 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 73 74 79 6c 65 53 74 61 | ===.$match[2]).{.$this->styleSta |
6a340 | 63 6b 2d 3e 70 6f 70 28 24 73 74 79 6c 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d | ck->pop($style);.}.else.{.$this- |
6a360 | 3e 73 74 79 6c 65 53 74 61 63 6b 2d 3e 70 75 73 68 28 24 73 74 79 6c 65 29 3b 0a 7d 0a 0a 72 65 | >styleStack->push($style);.}..re |
6a380 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 70 70 6c 79 53 74 79 6c 65 28 24 74 68 69 73 2d 3e 73 74 | turn.$this->applyStyle($this->st |
6a3a0 | 79 6c 65 53 74 61 63 6b 2d 3e 67 65 74 43 75 72 72 65 6e 74 28 29 2c 20 24 6d 61 74 63 68 5b 34 | yleStack->getCurrent(),.$match[4 |
6a3c0 | 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 63 | ]);.}.........private.function.c |
6a3e0 | 72 65 61 74 65 53 74 79 6c 65 46 72 6f 6d 53 74 72 69 6e 67 28 24 73 74 72 69 6e 67 29 0a 7b 0a | reateStyleFromString($string).{. |
6a400 | 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 2f 28 5b 5e 3d 5d 2b 29 3d 28 5b | if.(!preg_match_all('/([^=]+)=([ |
6a420 | 5e 3b 5d 2b 29 28 3b 7c 24 29 2f 27 2c 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 73 74 72 69 6e 67 | ^;]+)(;|$)/',.strtolower($string |
6a440 | 29 2c 20 24 6d 61 74 63 68 65 73 2c 20 50 52 45 47 5f 53 45 54 5f 4f 52 44 45 52 29 29 20 7b 0a | ),.$matches,.PREG_SET_ORDER)).{. |
6a460 | 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 24 73 74 79 6c 65 20 3d 20 6e 65 77 20 4f 75 | return.false;.}..$style.=.new.Ou |
6a480 | 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 | tputFormatterStyle();.foreach.($ |
6a4a0 | 6d 61 74 63 68 65 73 20 61 73 20 24 6d 61 74 63 68 29 20 7b 0a 61 72 72 61 79 5f 73 68 69 66 74 | matches.as.$match).{.array_shift |
6a4c0 | 28 24 6d 61 74 63 68 29 3b 0a 0a 69 66 20 28 27 66 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 5d | ($match);..if.('fg'.==.$match[0] |
6a4e0 | 29 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 46 6f 72 65 67 72 6f 75 6e 64 28 24 6d 61 74 63 68 | ).{.$style->setForeground($match |
6a500 | 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 62 67 27 20 3d 3d 20 24 6d 61 74 63 68 5b 30 | [1]);.}.elseif.('bg'.==.$match[0 |
6a520 | 5d 29 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 42 61 63 6b 67 72 6f 75 6e 64 28 24 6d 61 74 63 | ]).{.$style->setBackground($matc |
6a540 | 68 5b 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 73 74 79 6c 65 2d 3e 73 65 74 4f 70 74 69 6f | h[1]);.}.else.{.$style->setOptio |
6a560 | 6e 28 24 6d 61 74 63 68 5b 31 5d 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 73 74 79 6c 65 | n($match[1]);.}.}..return.$style |
6a580 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 70 | ;.}..........private.function.ap |
6a5a0 | 70 6c 79 53 74 79 6c 65 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 | plyStyle(OutputFormatterStyleInt |
6a5c0 | 65 72 66 61 63 65 20 24 73 74 79 6c 65 2c 20 24 74 65 78 74 29 0a 7b 0a 72 65 74 75 72 6e 20 24 | erface.$style,.$text).{.return.$ |
6a5e0 | 74 68 69 73 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 20 26 26 20 73 74 72 6c 65 6e 28 24 74 | this->isDecorated().&&.strlen($t |
6a600 | 65 78 74 29 20 3e 20 30 20 3f 20 24 73 74 79 6c 65 2d 3e 61 70 70 6c 79 28 24 74 65 78 74 29 20 | ext).>.0.?.$style->apply($text). |
6a620 | 3a 20 24 74 65 78 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | :.$text;.}.}.<?php...........nam |
6a640 | 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | espace.Symfony\Component\Console |
6a660 | 5c 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 4f 75 | \Formatter;.........interface.Ou |
6a680 | 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a | tputFormatterInterface.{........ |
6a6a0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 | public.function.setDecorated($de |
6a6c0 | 63 6f 72 61 74 65 64 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | corated);.........public.functio |
6a6e0 | 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | n.isDecorated();..........public |
6a700 | 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 2c 20 4f 75 74 70 75 74 | .function.setStyle($name,.Output |
6a720 | 46 6f 72 6d 61 74 74 65 72 53 74 79 6c 65 49 6e 74 65 72 66 61 63 65 20 24 73 74 79 6c 65 29 3b | FormatterStyleInterface.$style); |
6a740 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 | ...........public.function.hasSt |
6a760 | 79 6c 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | yle($name);...........public.fun |
6a780 | 63 74 69 6f 6e 20 67 65 74 53 74 79 6c 65 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ction.getStyle($name);.......... |
6a7a0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 | .public.function.format($message |
6a7c0 | 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 | );.}.<?php...........namespace.S |
6a7e0 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 3b 0a 0a 75 73 65 20 53 | ymfony\Component\Console;..use.S |
6a800 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 | ymfony\Component\Console\Input\I |
6a820 | 6e 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | nputInterface;.use.Symfony\Compo |
6a840 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 41 72 67 76 49 6e 70 75 74 3b 0a 75 73 | nent\Console\Input\ArgvInput;.us |
6a860 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 | e.Symfony\Component\Console\Inpu |
6a880 | 74 5c 41 72 72 61 79 49 6e 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e | t\ArrayInput;.use.Symfony\Compon |
6a8a0 | 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f | ent\Console\Input\InputDefinitio |
6a8c0 | 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | n;.use.Symfony\Component\Console |
6a8e0 | 5c 49 6e 70 75 74 5c 49 6e 70 75 74 4f 70 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c | \Input\InputOption;.use.Symfony\ |
6a900 | 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 49 6e 70 75 74 41 72 67 | Component\Console\Input\InputArg |
6a920 | 75 6d 65 6e 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e | ument;.use.Symfony\Component\Con |
6a940 | 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 | sole\Output\OutputInterface;.use |
6a960 | 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 | .Symfony\Component\Console\Outpu |
6a980 | 74 5c 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c | t\Output;.use.Symfony\Component\ |
6a9a0 | 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 73 | Console\Output\ConsoleOutput;.us |
6a9c0 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 | e.Symfony\Component\Console\Outp |
6a9e0 | 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 | ut\ConsoleOutputInterface;.use.S |
6aa00 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 | ymfony\Component\Console\Command |
6aa20 | 5c 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c | \Command;.use.Symfony\Component\ |
6aa40 | 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 48 65 6c 70 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 | Console\Command\HelpCommand;.use |
6aa60 | 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 43 6f 6d 6d 61 | .Symfony\Component\Console\Comma |
6aa80 | 6e 64 5c 4c 69 73 74 43 6f 6d 6d 61 6e 64 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 | nd\ListCommand;.use.Symfony\Comp |
6aaa0 | 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 48 65 6c 70 65 72 53 65 74 3b 0a | onent\Console\Helper\HelperSet;. |
6aac0 | 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 | use.Symfony\Component\Console\He |
6aae0 | 6c 70 65 72 5c 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e | lper\FormatterHelper;.use.Symfon |
6ab00 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 5c 44 69 61 6c 6f | y\Component\Console\Helper\Dialo |
6ab20 | 67 48 65 6c 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 | gHelper;...................class |
6ab40 | 20 41 70 70 6c 69 63 61 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 73 | .Application.{.private.$commands |
6ab60 | 3b 0a 70 72 69 76 61 74 65 20 24 77 61 6e 74 48 65 6c 70 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 | ;.private.$wantHelps.=.false;.pr |
6ab80 | 69 76 61 74 65 20 24 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 3b 0a 70 72 69 76 61 74 65 20 24 | ivate.$runningCommand;.private.$ |
6aba0 | 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 76 65 72 73 69 6f 6e 3b 0a 70 72 69 76 61 74 65 20 | name;.private.$version;.private. |
6abc0 | 24 63 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 61 75 74 6f 45 | $catchExceptions;.private.$autoE |
6abe0 | 78 69 74 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 70 72 69 76 61 74 | xit;.private.$definition;.privat |
6ac00 | 65 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | e.$helperSet;..........public.fu |
6ac20 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 20 3d 20 27 55 4e 4b 4e | nction.__construct($name.=.'UNKN |
6ac40 | 4f 57 4e 27 2c 20 24 76 65 72 73 69 6f 6e 20 3d 20 27 55 4e 4b 4e 4f 57 4e 27 29 0a 7b 0a 24 74 | OWN',.$version.=.'UNKNOWN').{.$t |
6ac60 | 68 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 76 65 72 73 69 6f | his->name.=.$name;.$this->versio |
6ac80 | 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 24 74 68 69 73 2d 3e 63 61 74 63 68 45 78 63 65 70 74 | n.=.$version;.$this->catchExcept |
6aca0 | 69 6f 6e 73 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 74 20 3d 20 74 | ions.=.true;.$this->autoExit.=.t |
6acc0 | 72 75 65 3b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | rue;.$this->commands.=.array();. |
6ace0 | 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 | $this->helperSet.=.$this->getDef |
6ad00 | 61 75 6c 74 48 65 6c 70 65 72 53 65 74 28 29 3b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 | aultHelperSet();.$this->definiti |
6ad20 | 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 6e | on.=.$this->getDefaultInputDefin |
6ad40 | 69 74 69 6f 6e 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 44 65 66 | ition();..foreach.($this->getDef |
6ad60 | 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 28 29 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 | aultCommands().as.$command).{.$t |
6ad80 | 68 69 73 2d 3e 61 64 64 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | his->add($command);.}.}......... |
6ada0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 49 6e 70 75 74 49 6e | .....public.function.run(InputIn |
6adc0 | 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 49 6e 74 | terface.$input.=.null,.OutputInt |
6ade0 | 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c | erface.$output.=.null).{.if.(nul |
6ae00 | 6c 20 3d 3d 3d 20 24 69 6e 70 75 74 29 20 7b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 67 | l.===.$input).{.$input.=.new.Arg |
6ae20 | 76 49 6e 70 75 74 28 29 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 6f 75 74 70 75 | vInput();.}..if.(null.===.$outpu |
6ae40 | 74 29 20 7b 0a 24 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 | t).{.$output.=.new.ConsoleOutput |
6ae60 | 28 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 24 74 68 69 73 | ();.}..try.{.$statusCode.=.$this |
6ae80 | 2d 3e 64 6f 52 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 20 63 61 74 63 | ->doRun($input,.$output);.}.catc |
6aea0 | 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e | h.(\Exception.$e).{.if.(!$this-> |
6aec0 | 63 61 74 63 68 45 78 63 65 70 74 69 6f 6e 73 29 20 7b 0a 74 68 72 6f 77 20 24 65 3b 0a 7d 0a 0a | catchExceptions).{.throw.$e;.}.. |
6aee0 | 69 66 20 28 24 6f 75 74 70 75 74 20 69 6e 73 74 61 6e 63 65 6f 66 20 43 6f 6e 73 6f 6c 65 4f 75 | if.($output.instanceof.ConsoleOu |
6af00 | 74 70 75 74 49 6e 74 65 72 66 61 63 65 29 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 78 | tputInterface).{.$this->renderEx |
6af20 | 63 65 70 74 69 6f 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 2d 3e 67 65 74 45 72 72 6f 72 4f 75 74 | ception($e,.$output->getErrorOut |
6af40 | 70 75 74 28 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 72 65 6e 64 65 72 45 78 | put());.}.else.{.$this->renderEx |
6af60 | 63 65 70 74 69 6f 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 29 3b 0a 7d 0a 24 73 74 61 74 75 73 43 | ception($e,.$output);.}.$statusC |
6af80 | 6f 64 65 20 3d 20 24 65 2d 3e 67 65 74 43 6f 64 65 28 29 3b 0a 0a 24 73 74 61 74 75 73 43 6f 64 | ode.=.$e->getCode();..$statusCod |
6afa0 | 65 20 3d 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 74 61 74 75 73 43 6f 64 65 29 20 26 26 20 24 | e.=.is_numeric($statusCode).&&.$ |
6afc0 | 73 74 61 74 75 73 43 6f 64 65 20 3f 20 24 73 74 61 74 75 73 43 6f 64 65 20 3a 20 31 3b 0a 7d 0a | statusCode.?.$statusCode.:.1;.}. |
6afe0 | 0a 69 66 20 28 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 74 29 20 7b 0a 69 66 20 28 24 73 74 61 | .if.($this->autoExit).{.if.($sta |
6b000 | 74 75 73 43 6f 64 65 20 3e 20 32 35 35 29 20 7b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 32 | tusCode.>.255).{.$statusCode.=.2 |
6b020 | 35 35 3b 0a 7d 0a 0a 20 65 78 69 74 28 24 73 74 61 74 75 73 43 6f 64 65 29 3b 0a 0a 20 7d 0a 0a | 55;.}...exit($statusCode);...}.. |
6b040 | 72 65 74 75 72 6e 20 24 73 74 61 74 75 73 43 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | return.$statusCode;.}..........p |
6b060 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 6f 52 75 6e 28 49 6e 70 75 74 49 6e 74 65 72 66 | ublic.function.doRun(InputInterf |
6b080 | 61 63 65 20 24 69 6e 70 75 74 2c 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 | ace.$input,.OutputInterface.$out |
6b0a0 | 70 75 74 29 0a 7b 0a 24 6e 61 6d 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 43 6f 6d 6d 61 6e 64 | put).{.$name.=.$this->getCommand |
6b0c0 | 4e 61 6d 65 28 24 69 6e 70 75 74 29 3b 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 | Name($input);..if.(true.===.$inp |
6b0e0 | 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d | ut->hasParameterOption(array('-- |
6b100 | 61 6e 73 69 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 | ansi'))).{.$output->setDecorated |
6b120 | 28 74 72 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 | (true);.}.elseif.(true.===.$inpu |
6b140 | 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 6e | t->hasParameterOption(array('--n |
6b160 | 6f 2d 61 6e 73 69 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 73 65 74 44 65 63 6f 72 61 74 | o-ansi'))).{.$output->setDecorat |
6b180 | 65 64 28 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 | ed(false);.}..if.(true.===.$inpu |
6b1a0 | 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 68 | t->hasParameterOption(array('--h |
6b1c0 | 65 6c 70 27 2c 20 27 2d 68 27 29 29 29 20 7b 0a 69 66 20 28 21 24 6e 61 6d 65 29 20 7b 0a 24 6e | elp',.'-h'))).{.if.(!$name).{.$n |
6b1e0 | 61 6d 65 20 3d 20 27 68 65 6c 70 27 3b 0a 24 69 6e 70 75 74 20 3d 20 6e 65 77 20 41 72 72 61 79 | ame.=.'help';.$input.=.new.Array |
6b200 | 49 6e 70 75 74 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 27 20 3d 3e 20 27 68 65 6c 70 27 29 | Input(array('command'.=>.'help') |
6b220 | 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c 70 73 20 3d 20 74 | );.}.else.{.$this->wantHelps.=.t |
6b240 | 72 75 65 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 | rue;.}.}..if.(true.===.$input->h |
6b260 | 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 61 79 28 27 2d 2d 6e 6f 2d 69 6e | asParameterOption(array('--no-in |
6b280 | 74 65 72 61 63 74 69 6f 6e 27 2c 20 27 2d 6e 27 29 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 | teraction',.'-n'))).{.$input->se |
6b2a0 | 74 49 6e 74 65 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 7d 0a 0a 69 66 20 28 66 75 6e 63 | tInteractive(false);.}..if.(func |
6b2c0 | 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 6f 73 69 78 5f 69 73 61 74 74 79 27 29 20 26 26 20 24 | tion_exists('posix_isatty').&&.$ |
6b2e0 | 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 68 61 73 28 27 64 69 61 6c 6f | this->getHelperSet()->has('dialo |
6b300 | 67 27 29 29 20 7b 0a 24 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 | g')).{.$inputStream.=.$this->get |
6b320 | 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 65 74 28 27 64 69 61 6c 6f 67 27 29 2d 3e 67 65 74 49 | HelperSet()->get('dialog')->getI |
6b340 | 6e 70 75 74 53 74 72 65 61 6d 28 29 3b 0a 69 66 20 28 21 70 6f 73 69 78 5f 69 73 61 74 74 79 28 | nputStream();.if.(!posix_isatty( |
6b360 | 24 69 6e 70 75 74 53 74 72 65 61 6d 29 29 20 7b 0a 24 69 6e 70 75 74 2d 3e 73 65 74 49 6e 74 65 | $inputStream)).{.$input->setInte |
6b380 | 72 61 63 74 69 76 65 28 66 61 6c 73 65 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 74 72 75 65 20 3d 3d | ractive(false);.}.}..if.(true.== |
6b3a0 | 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 72 72 | =.$input->hasParameterOption(arr |
6b3c0 | 61 79 28 27 2d 2d 71 75 69 65 74 27 2c 20 27 2d 71 27 29 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d | ay('--quiet',.'-q'))).{.$output- |
6b3e0 | 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3a 3a 56 | >setVerbosity(OutputInterface::V |
6b400 | 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 74 72 75 65 20 | ERBOSITY_QUIET);.}.elseif.(true. |
6b420 | 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 61 | ===.$input->hasParameterOption(a |
6b440 | 72 72 61 79 28 27 2d 2d 76 65 72 62 6f 73 65 27 2c 20 27 2d 76 27 29 29 29 20 7b 0a 24 6f 75 74 | rray('--verbose',.'-v'))).{.$out |
6b460 | 70 75 74 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 | put->setVerbosity(OutputInterfac |
6b480 | 65 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 29 3b 0a 7d 0a 0a 69 66 20 28 74 72 | e::VERBOSITY_VERBOSE);.}..if.(tr |
6b4a0 | 75 65 20 3d 3d 3d 20 24 69 6e 70 75 74 2d 3e 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f | ue.===.$input->hasParameterOptio |
6b4c0 | 6e 28 61 72 72 61 79 28 27 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 27 2d 56 27 29 29 29 20 7b 0a 24 | n(array('--version',.'-V'))).{.$ |
6b4e0 | 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 | output->writeln($this->getLongVe |
6b500 | 72 73 69 6f 6e 28 29 29 3b 0a 0a 72 65 74 75 72 6e 20 30 3b 0a 7d 0a 0a 69 66 20 28 21 24 6e 61 | rsion());..return.0;.}..if.(!$na |
6b520 | 6d 65 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 27 6c 69 73 74 27 3b 0a 24 69 6e 70 75 74 20 3d 20 6e | me).{.$name.=.'list';.$input.=.n |
6b540 | 65 77 20 41 72 72 61 79 49 6e 70 75 74 28 61 72 72 61 79 28 27 63 6f 6d 6d 61 6e 64 27 20 3d 3e | ew.ArrayInput(array('command'.=> |
6b560 | 20 27 6c 69 73 74 27 29 29 3b 0a 7d 0a 0a 0a 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 | .'list'));.}....$command.=.$this |
6b580 | 2d 3e 66 69 6e 64 28 24 6e 61 6d 65 29 3b 0a 0a 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f | ->find($name);..$this->runningCo |
6b5a0 | 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 24 73 74 61 74 75 73 43 6f 64 65 20 3d 20 | mmand.=.$command;.$statusCode.=. |
6b5c0 | 24 63 6f 6d 6d 61 6e 64 2d 3e 72 75 6e 28 24 69 6e 70 75 74 2c 20 24 6f 75 74 70 75 74 29 3b 0a | $command->run($input,.$output);. |
6b5e0 | 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c 3b 0a 0a 72 | $this->runningCommand.=.null;..r |
6b600 | 65 74 75 72 6e 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 73 74 61 74 75 73 43 6f 64 65 29 20 3f 20 | eturn.is_numeric($statusCode).?. |
6b620 | 24 73 74 61 74 75 73 43 6f 64 65 20 3a 20 30 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | $statusCode.:.0;.}.........publi |
6b640 | 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 65 | c.function.setHelperSet(HelperSe |
6b660 | 74 20 24 68 65 6c 70 65 72 53 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 | t.$helperSet).{.$this->helperSet |
6b680 | 20 3d 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .=.$helperSet;.}.........public. |
6b6a0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e | function.getHelperSet().{.return |
6b6c0 | 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | .$this->helperSet;.}.......publi |
6b6e0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 | c.function.getDefinition().{.ret |
6b700 | 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | urn.$this->definition;.}.......p |
6b720 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 28 29 0a 7b 0a 24 6d 65 73 73 | ublic.function.getHelp().{.$mess |
6b740 | 61 67 65 73 20 3d 20 61 72 72 61 79 28 0a 24 74 68 69 73 2d 3e 67 65 74 4c 6f 6e 67 56 65 72 73 | ages.=.array(.$this->getLongVers |
6b760 | 69 6f 6e 28 29 2c 0a 27 27 2c 0a 27 3c 63 6f 6d 6d 65 6e 74 3e 55 73 61 67 65 3a 3c 2f 63 6f 6d | ion(),.'',.'<comment>Usage:</com |
6b780 | 6d 65 6e 74 3e 27 2c 0a 73 70 72 69 6e 74 66 28 22 20 20 5b 6f 70 74 69 6f 6e 73 5d 20 63 6f 6d | ment>',.sprintf("..[options].com |
6b7a0 | 6d 61 6e 64 20 5b 61 72 67 75 6d 65 6e 74 73 5d 5c 6e 22 29 2c 0a 27 3c 63 6f 6d 6d 65 6e 74 3e | mand.[arguments]\n"),.'<comment> |
6b7c0 | 4f 70 74 69 6f 6e 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 0a 29 3b 0a 0a 66 6f 72 65 61 63 68 | Options:</comment>',.);..foreach |
6b7e0 | 20 28 24 74 68 69 73 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 2d 3e 67 65 74 4f 70 74 | .($this->getDefinition()->getOpt |
6b800 | 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d | ions().as.$option).{.$messages[] |
6b820 | 20 3d 20 73 70 72 69 6e 74 66 28 27 20 20 25 2d 32 39 73 20 25 73 20 25 73 27 2c 0a 27 3c 69 6e | .=.sprintf('..%-29s.%s.%s',.'<in |
6b840 | 66 6f 3e 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 3c 2f 69 6e 66 | fo>--'.$option->getName().'</inf |
6b860 | 6f 3e 27 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 27 3c | o>',.$option->getShortcut().?.'< |
6b880 | 69 6e 66 6f 3e 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 2e 27 | info>-'.$option->getShortcut().' |
6b8a0 | 3c 2f 69 6e 66 6f 3e 27 20 3a 20 27 20 20 27 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 | </info>'.:.'..',.$option->getDes |
6b8c0 | 63 72 69 70 74 69 6f 6e 28 29 0a 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 | cription().);.}..return.implode( |
6b8e0 | 50 48 50 5f 45 4f 4c 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | PHP_EOL,.$messages);.}.........p |
6b900 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 61 74 63 68 45 78 63 65 70 74 69 6f 6e | ublic.function.setCatchException |
6b920 | 73 28 24 62 6f 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 61 74 63 68 45 78 63 65 70 74 | s($boolean).{.$this->catchExcept |
6b940 | 69 6f 6e 73 20 3d 20 28 42 6f 6f 6c 65 61 6e 29 20 24 62 6f 6f 6c 65 61 6e 3b 0a 7d 0a 0a 0a 0a | ions.=.(Boolean).$boolean;.}.... |
6b960 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 75 74 6f 45 78 69 74 | .....public.function.setAutoExit |
6b980 | 28 24 62 6f 6f 6c 65 61 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 75 74 6f 45 78 69 74 20 3d 20 28 | ($boolean).{.$this->autoExit.=.( |
6b9a0 | 42 6f 6f 6c 65 61 6e 29 20 24 62 6f 6f 6c 65 61 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | Boolean).$boolean;.}.........pub |
6b9c0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | lic.function.getName().{.return. |
6b9e0 | 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | $this->name;.}.........public.fu |
6ba00 | 6e 63 74 69 6f 6e 20 73 65 74 4e 61 6d 65 28 24 6e 61 6d 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e | nction.setName($name).{.$this->n |
6ba20 | 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ame.=.$name;.}.........public.fu |
6ba40 | 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 73 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | nction.getVersion().{.return.$th |
6ba60 | 69 73 2d 3e 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | is->version;.}.........public.fu |
6ba80 | 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 73 69 6f 6e 28 24 76 65 72 73 69 6f 6e 29 0a 7b 0a 24 74 | nction.setVersion($version).{.$t |
6baa0 | 68 69 73 2d 3e 76 65 72 73 69 6f 6e 20 3d 20 24 76 65 72 73 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a | his->version.=.$version;.}...... |
6bac0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4c 6f 6e 67 56 65 72 73 69 6f | ...public.function.getLongVersio |
6bae0 | 6e 28 29 0a 7b 0a 69 66 20 28 27 55 4e 4b 4e 4f 57 4e 27 20 21 3d 3d 20 24 74 68 69 73 2d 3e 67 | n().{.if.('UNKNOWN'.!==.$this->g |
6bb00 | 65 74 4e 61 6d 65 28 29 20 26 26 20 27 55 4e 4b 4e 4f 57 4e 27 20 21 3d 3d 20 24 74 68 69 73 2d | etName().&&.'UNKNOWN'.!==.$this- |
6bb20 | 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 | >getVersion()).{.return.sprintf( |
6bb40 | 27 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e 66 6f 3e 20 76 65 72 73 69 6f 6e 20 3c 63 6f 6d 6d 65 6e | '<info>%s</info>.version.<commen |
6bb60 | 74 3e 25 73 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 | t>%s</comment>',.$this->getName( |
6bb80 | 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 29 3b 0a 7d 0a 0a 72 65 74 75 | ),.$this->getVersion());.}..retu |
6bba0 | 72 6e 20 27 3c 69 6e 66 6f 3e 43 6f 6e 73 6f 6c 65 20 54 6f 6f 6c 3c 2f 69 6e 66 6f 3e 27 3b 0a | rn.'<info>Console.Tool</info>';. |
6bbc0 | 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 | }...........public.function.regi |
6bbe0 | 73 74 65 72 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 28 | ster($name).{.return.$this->add( |
6bc00 | 6e 65 77 20 43 6f 6d 6d 61 6e 64 28 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | new.Command($name));.}.........p |
6bc20 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6f 6d 6d 61 6e 64 73 28 61 72 72 61 79 | ublic.function.addCommands(array |
6bc40 | 20 24 63 6f 6d 6d 61 6e 64 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 | .$commands).{.foreach.($commands |
6bc60 | 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 28 24 63 6f 6d 6d | .as.$command).{.$this->add($comm |
6bc80 | 61 6e 64 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | and);.}.}.............public.fun |
6bca0 | 63 74 69 6f 6e 20 61 64 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 29 0a 7b 0a 24 63 | ction.add(Command.$command).{.$c |
6bcc0 | 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 24 74 68 69 73 29 3b 0a 0a | ommand->setApplication($this);.. |
6bce0 | 69 66 20 28 21 24 63 6f 6d 6d 61 6e 64 2d 3e 69 73 45 6e 61 62 6c 65 64 28 29 29 20 7b 0a 24 63 | if.(!$command->isEnabled()).{.$c |
6bd00 | 6f 6d 6d 61 6e 64 2d 3e 73 65 74 41 70 70 6c 69 63 61 74 69 6f 6e 28 6e 75 6c 6c 29 3b 0a 0a 72 | ommand->setApplication(null);..r |
6bd20 | 65 74 75 72 6e 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 63 6f 6d 6d 61 | eturn;.}..$this->commands[$comma |
6bd40 | 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 66 6f 72 65 | nd->getName()].=.$command;..fore |
6bd60 | 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 | ach.($command->getAliases().as.$ |
6bd80 | 61 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 61 6c 69 61 73 5d | alias).{.$this->commands[$alias] |
6bda0 | 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b | .=.$command;.}..return.$command; |
6bdc0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | .}.............public.function.g |
6bde0 | 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f | et($name).{.if.(!isset($this->co |
6be00 | 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 | mmands[$name])).{.throw.new.\Inv |
6be20 | 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 | alidArgumentException(sprintf('T |
6be40 | 68 65 20 63 6f 6d 6d 61 6e 64 20 22 25 73 22 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 | he.command."%s".does.not.exist.' |
6be60 | 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e | ,.$name));.}..$command.=.$this-> |
6be80 | 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 77 61 6e | commands[$name];..if.($this->wan |
6bea0 | 74 48 65 6c 70 73 29 20 7b 0a 24 74 68 69 73 2d 3e 77 61 6e 74 48 65 6c 70 73 20 3d 20 66 61 6c | tHelps).{.$this->wantHelps.=.fal |
6bec0 | 73 65 3b 0a 0a 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 28 27 | se;..$helpCommand.=.$this->get(' |
6bee0 | 68 65 6c 70 27 29 3b 0a 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 2d 3e 73 65 74 43 6f 6d 6d 61 6e 64 | help');.$helpCommand->setCommand |
6bf00 | 28 24 63 6f 6d 6d 61 6e 64 29 3b 0a 0a 72 65 74 75 72 6e 20 24 68 65 6c 70 43 6f 6d 6d 61 6e 64 | ($command);..return.$helpCommand |
6bf20 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | ;.}..return.$command;.}......... |
6bf40 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6e 61 6d 65 29 0a 7b 0a 72 | ..public.function.has($name).{.r |
6bf60 | 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d | eturn.isset($this->commands[$nam |
6bf80 | 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | e]);.}.........public.function.g |
6bfa0 | 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 0a 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 20 3d 20 61 | etNamespaces().{.$namespaces.=.a |
6bfc0 | 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 | rray();.foreach.($this->commands |
6bfe0 | 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 5b 5d 20 3d 20 | .as.$command).{.$namespaces[].=. |
6c000 | 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 63 6f 6d 6d 61 6e 64 | $this->extractNamespace($command |
6c020 | 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 | ->getName());..foreach.($command |
6c040 | 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 61 6c 69 61 73 29 20 7b 0a 24 6e 61 6d | ->getAliases().as.$alias).{.$nam |
6c060 | 65 73 70 61 63 65 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 | espaces[].=.$this->extractNamesp |
6c080 | 61 63 65 28 24 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 76 | ace($alias);.}.}..return.array_v |
6c0a0 | 61 6c 75 65 73 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 61 72 72 61 79 5f 66 69 6c 74 65 72 28 | alues(array_unique(array_filter( |
6c0c0 | 24 6e 61 6d 65 73 70 61 63 65 73 29 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | $namespaces)));.}...........publ |
6c0e0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 73 | ic.function.findNamespace($names |
6c100 | 70 61 63 65 29 0a 7b 0a 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 20 3d 20 61 72 72 61 79 28 29 | pace).{.$allNamespaces.=.array() |
6c120 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 | ;.foreach.($this->getNamespaces( |
6c140 | 29 20 61 73 20 24 6e 29 20 7b 0a 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 5b 24 6e 5d 20 3d 20 | ).as.$n).{.$allNamespaces[$n].=. |
6c160 | 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 29 3b 0a 7d 0a 0a 24 66 6f 75 6e 64 20 3d 20 61 72 | explode(':',.$n);.}..$found.=.ar |
6c180 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 61 | ray();.foreach.(explode(':',.$na |
6c1a0 | 6d 65 73 70 61 63 65 29 20 61 73 20 24 69 20 3d 3e 20 24 70 61 72 74 29 20 7b 0a 24 61 62 62 72 | mespace).as.$i.=>.$part).{.$abbr |
6c1c0 | 65 76 73 20 3d 20 73 74 61 74 69 63 3a 3a 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 73 28 61 | evs.=.static::getAbbreviations(a |
6c1e0 | 72 72 61 79 5f 75 6e 69 71 75 65 28 61 72 72 61 79 5f 76 61 6c 75 65 73 28 61 72 72 61 79 5f 66 | rray_unique(array_values(array_f |
6c200 | 69 6c 74 65 72 28 61 72 72 61 79 5f 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 24 70 29 20 75 73 | ilter(array_map(function.($p).us |
6c220 | 65 20 28 24 69 29 20 7b 20 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 70 5b 24 69 5d 29 20 3f 20 | e.($i).{.return.isset($p[$i]).?. |
6c240 | 24 70 5b 24 69 5d 20 3a 20 27 27 3b 20 7d 2c 20 24 61 6c 6c 4e 61 6d 65 73 70 61 63 65 73 29 29 | $p[$i].:.'';.},.$allNamespaces)) |
6c260 | 29 29 29 3b 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 61 62 62 72 65 76 73 5b 24 70 61 72 74 5d | )));..if.(!isset($abbrevs[$part] |
6c280 | 29 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 54 68 65 72 65 20 61 | )).{.$message.=.sprintf('There.a |
6c2a0 | 72 65 20 6e 6f 20 63 6f 6d 6d 61 6e 64 73 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 20 22 25 | re.no.commands.defined.in.the."% |
6c2c0 | 73 22 20 6e 61 6d 65 73 70 61 63 65 2e 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 0a 69 66 | s".namespace.',.$namespace);..if |
6c2e0 | 20 28 31 20 3c 3d 20 24 69 29 20 7b 0a 24 70 61 72 74 20 3d 20 69 6d 70 6c 6f 64 65 28 27 3a 27 | .(1.<=.$i).{.$part.=.implode(':' |
6c300 | 2c 20 24 66 6f 75 6e 64 29 2e 27 3a 27 2e 24 70 61 72 74 3b 0a 7d 0a 0a 69 66 20 28 24 61 6c 74 | ,.$found).':'.$part;.}..if.($alt |
6c320 | 65 72 6e 61 74 69 76 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 | ernatives.=.$this->findAlternati |
6c340 | 76 65 4e 61 6d 65 73 70 61 63 65 28 24 70 61 72 74 2c 20 24 61 62 62 72 65 76 73 29 29 20 7b 0a | veNamespace($part,.$abbrevs)).{. |
6c360 | 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e 20 6f 6e | $message..=."\n\nDid.you.mean.on |
6c380 | 65 20 6f 66 20 74 68 65 73 65 3f 5c 6e 20 20 20 20 22 3b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 | e.of.these?\n....";.$message..=. |
6c3a0 | 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 22 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 65 73 29 | implode("\n....",.$alternatives) |
6c3c0 | 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 | ;.}..throw.new.\InvalidArgumentE |
6c3e0 | 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 69 66 20 28 63 6f 75 6e 74 | xception($message);.}..if.(count |
6c400 | 28 24 61 62 62 72 65 76 73 5b 24 70 61 72 74 5d 29 20 3e 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e | ($abbrevs[$part]).>.1).{.throw.n |
6c420 | 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 | ew.\InvalidArgumentException(spr |
6c440 | 69 6e 74 66 28 27 54 68 65 20 6e 61 6d 65 73 70 61 63 65 20 22 25 73 22 20 69 73 20 61 6d 62 69 | intf('The.namespace."%s".is.ambi |
6c460 | 67 75 6f 75 73 20 28 25 73 29 2e 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 2c 20 24 74 68 69 73 2d | guous.(%s).',.$namespace,.$this- |
6c480 | 3e 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 24 61 62 62 | >getAbbreviationSuggestions($abb |
6c4a0 | 72 65 76 73 5b 24 70 61 72 74 5d 29 29 29 3b 0a 7d 0a 0a 24 66 6f 75 6e 64 5b 5d 20 3d 20 24 61 | revs[$part])));.}..$found[].=.$a |
6c4c0 | 62 62 72 65 76 73 5b 24 70 61 72 74 5d 5b 30 5d 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c | bbrevs[$part][0];.}..return.impl |
6c4e0 | 6f 64 65 28 27 3a 27 2c 20 24 66 6f 75 6e 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ode(':',.$found);.}............. |
6c500 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 28 24 6e 61 6d 65 29 0a 7b | ...public.function.find($name).{ |
6c520 | 0a 0a 20 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 27 27 3b 0a 24 73 65 61 72 63 68 4e 61 6d 65 20 | ...$namespace.=.'';.$searchName. |
6c540 | 3d 20 24 6e 61 6d 65 3b 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 | =.$name;.if.(false.!==.$pos.=.st |
6c560 | 72 72 70 6f 73 28 24 6e 61 6d 65 2c 20 27 3a 27 29 29 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 20 | rrpos($name,.':')).{.$namespace. |
6c580 | 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 73 75 62 73 74 72 28 24 6e | =.$this->findNamespace(substr($n |
6c5a0 | 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 29 3b 0a 24 73 65 61 72 63 68 4e 61 6d 65 20 3d 20 24 6e | ame,.0,.$pos));.$searchName.=.$n |
6c5c0 | 61 6d 65 73 70 61 63 65 2e 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 24 70 6f 73 29 3b 0a 7d 0a | amespace.substr($name,.$pos);.}. |
6c5e0 | 0a 0a 20 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 | ...$commands.=.array();.foreach. |
6c600 | 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a | ($this->commands.as.$command).{. |
6c620 | 69 66 20 28 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 65 28 24 63 6f 6d | if.($this->extractNamespace($com |
6c640 | 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 29 20 | mand->getName()).==.$namespace). |
6c660 | 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d | {.$commands[].=.$command->getNam |
6c680 | 65 28 29 3b 0a 7d 0a 7d 0a 0a 24 61 62 62 72 65 76 73 20 3d 20 73 74 61 74 69 63 3a 3a 67 65 74 | e();.}.}..$abbrevs.=.static::get |
6c6a0 | 41 62 62 72 65 76 69 61 74 69 6f 6e 73 28 61 72 72 61 79 5f 75 6e 69 71 75 65 28 24 63 6f 6d 6d | Abbreviations(array_unique($comm |
6c6c0 | 61 6e 64 73 29 29 3b 0a 69 66 20 28 69 73 73 65 74 28 24 61 62 62 72 65 76 73 5b 24 73 65 61 72 | ands));.if.(isset($abbrevs[$sear |
6c6e0 | 63 68 4e 61 6d 65 5d 29 20 26 26 20 31 20 3d 3d 20 63 6f 75 6e 74 28 24 61 62 62 72 65 76 73 5b | chName]).&&.1.==.count($abbrevs[ |
6c700 | 24 73 65 61 72 63 68 4e 61 6d 65 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 | $searchName])).{.return.$this->g |
6c720 | 65 74 28 24 61 62 62 72 65 76 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 5b 30 5d 29 3b 0a 7d 0a | et($abbrevs[$searchName][0]);.}. |
6c740 | 0a 69 66 20 28 69 73 73 65 74 28 24 61 62 62 72 65 76 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d | .if.(isset($abbrevs[$searchName] |
6c760 | 29 20 26 26 20 63 6f 75 6e 74 28 24 61 62 62 72 65 76 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d | ).&&.count($abbrevs[$searchName] |
6c780 | 29 20 3e 20 31 29 20 7b 0a 24 73 75 67 67 65 73 74 69 6f 6e 73 20 3d 20 24 74 68 69 73 2d 3e 67 | ).>.1).{.$suggestions.=.$this->g |
6c7a0 | 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 24 61 62 62 72 65 | etAbbreviationSuggestions($abbre |
6c7c0 | 76 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 29 3b 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e | vs[$searchName]);..throw.new.\In |
6c7e0 | 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 | validArgumentException(sprintf(' |
6c800 | 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 69 73 20 61 6d 62 69 67 75 6f 75 73 20 28 25 73 29 2e 27 | Command."%s".is.ambiguous.(%s).' |
6c820 | 2c 20 24 6e 61 6d 65 2c 20 24 73 75 67 67 65 73 74 69 6f 6e 73 29 29 3b 0a 7d 0a 0a 0a 20 24 61 | ,.$name,.$suggestions));.}....$a |
6c840 | 6c 69 61 73 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 | liases.=.array();.foreach.($this |
6c860 | 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 66 6f 72 65 61 63 | ->commands.as.$command).{.foreac |
6c880 | 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 41 6c 69 61 73 65 73 28 29 20 61 73 20 24 61 6c | h.($command->getAliases().as.$al |
6c8a0 | 69 61 73 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 | ias).{.if.($this->extractNamespa |
6c8c0 | 63 65 28 24 61 6c 69 61 73 29 20 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 61 6c 69 | ce($alias).==.$namespace).{.$ali |
6c8e0 | 61 73 65 73 5b 5d 20 3d 20 24 61 6c 69 61 73 3b 0a 7d 0a 7d 0a 7d 0a 0a 24 61 6c 69 61 73 65 73 | ases[].=.$alias;.}.}.}..$aliases |
6c900 | 20 3d 20 73 74 61 74 69 63 3a 3a 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 73 28 61 72 72 61 | .=.static::getAbbreviations(arra |
6c920 | 79 5f 75 6e 69 71 75 65 28 24 61 6c 69 61 73 65 73 29 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 | y_unique($aliases));.if.(!isset( |
6c940 | 24 61 6c 69 61 73 65 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 29 29 20 7b 0a 24 6d 65 73 73 61 | $aliases[$searchName])).{.$messa |
6c960 | 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 69 73 20 6e 6f | ge.=.sprintf('Command."%s".is.no |
6c980 | 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 24 61 6c 74 65 72 | t.defined.',.$name);..if.($alter |
6c9a0 | 6e 61 74 69 76 65 73 20 3d 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 | natives.=.$this->findAlternative |
6c9c0 | 43 6f 6d 6d 61 6e 64 73 28 24 73 65 61 72 63 68 4e 61 6d 65 2c 20 24 61 62 62 72 65 76 73 29 29 | Commands($searchName,.$abbrevs)) |
6c9e0 | 20 7b 0a 24 6d 65 73 73 61 67 65 20 2e 3d 20 22 5c 6e 5c 6e 44 69 64 20 79 6f 75 20 6d 65 61 6e | .{.$message..=."\n\nDid.you.mean |
6ca00 | 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 3f 5c 6e 20 20 20 20 22 3b 0a 24 6d 65 73 73 61 67 65 20 | .one.of.these?\n....";.$message. |
6ca20 | 2e 3d 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 20 20 20 20 22 2c 20 24 61 6c 74 65 72 6e 61 74 69 76 | .=.implode("\n....",.$alternativ |
6ca40 | 65 73 29 3b 0a 7d 0a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 | es);.}..throw.new.\InvalidArgume |
6ca60 | 6e 74 45 78 63 65 70 74 69 6f 6e 28 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 69 66 20 28 63 6f | ntException($message);.}..if.(co |
6ca80 | 75 6e 74 28 24 61 6c 69 61 73 65 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 29 20 3e 20 31 29 20 | unt($aliases[$searchName]).>.1). |
6caa0 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 | {.throw.new.\InvalidArgumentExce |
6cac0 | 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 43 6f 6d 6d 61 6e 64 20 22 25 73 22 20 69 73 20 61 | ption(sprintf('Command."%s".is.a |
6cae0 | 6d 62 69 67 75 6f 75 73 20 28 25 73 29 2e 27 2c 20 24 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 67 | mbiguous.(%s).',.$name,.$this->g |
6cb00 | 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 24 61 6c 69 61 73 | etAbbreviationSuggestions($alias |
6cb20 | 65 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 29 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 | es[$searchName])));.}..return.$t |
6cb40 | 68 69 73 2d 3e 67 65 74 28 24 61 6c 69 61 73 65 73 5b 24 73 65 61 72 63 68 4e 61 6d 65 5d 5b 30 | his->get($aliases[$searchName][0 |
6cb60 | 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | ]);.}.............public.functio |
6cb80 | 6e 20 61 6c 6c 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e | n.all($namespace.=.null).{.if.(n |
6cba0 | 75 6c 6c 20 3d 3d 3d 20 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 | ull.===.$namespace).{.return.$th |
6cbc0 | 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 | is->commands;.}..$commands.=.arr |
6cbe0 | 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 20 61 | ay();.foreach.($this->commands.a |
6cc00 | 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 69 66 20 28 24 6e 61 6d 65 | s.$name.=>.$command).{.if.($name |
6cc20 | 73 70 61 63 65 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 70 61 63 | space.===.$this->extractNamespac |
6cc40 | 65 28 24 6e 61 6d 65 2c 20 73 75 62 73 74 72 5f 63 6f 75 6e 74 28 24 6e 61 6d 65 73 70 61 63 65 | e($name,.substr_count($namespace |
6cc60 | 2c 20 27 3a 27 29 20 2b 20 31 29 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 5b 24 6e 61 6d 65 5d 20 | ,.':').+.1)).{.$commands[$name]. |
6cc80 | 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 63 6f 6d 6d 61 6e 64 | =.$command;.}.}..return.$command |
6cca0 | 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 | s;.}.........public.static.funct |
6ccc0 | 69 6f 6e 20 67 65 74 41 62 62 72 65 76 69 61 74 69 6f 6e 73 28 24 6e 61 6d 65 73 29 0a 7b 0a 24 | ion.getAbbreviations($names).{.$ |
6cce0 | 61 62 62 72 65 76 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 61 6d | abbrevs.=.array();.foreach.($nam |
6cd00 | 65 73 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 66 6f 72 20 28 24 6c 65 6e 20 3d 20 73 74 72 6c 65 | es.as.$name).{.for.($len.=.strle |
6cd20 | 6e 28 24 6e 61 6d 65 29 20 2d 20 31 3b 20 24 6c 65 6e 20 3e 20 30 3b 20 2d 2d 24 6c 65 6e 29 20 | n($name).-.1;.$len.>.0;.--$len). |
6cd40 | 7b 0a 24 61 62 62 72 65 76 20 3d 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 6c 65 | {.$abbrev.=.substr($name,.0,.$le |
6cd60 | 6e 29 3b 0a 69 66 20 28 21 69 73 73 65 74 28 24 61 62 62 72 65 76 73 5b 24 61 62 62 72 65 76 5d | n);.if.(!isset($abbrevs[$abbrev] |
6cd80 | 29 29 20 7b 0a 24 61 62 62 72 65 76 73 5b 24 61 62 62 72 65 76 5d 20 3d 20 61 72 72 61 79 28 24 | )).{.$abbrevs[$abbrev].=.array($ |
6cda0 | 6e 61 6d 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 62 62 72 65 76 73 5b 24 61 62 62 72 65 76 | name);.}.else.{.$abbrevs[$abbrev |
6cdc0 | 5d 5b 5d 20 3d 20 24 6e 61 6d 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 | ][].=.$name;.}.}.}....foreach.($ |
6cde0 | 6e 61 6d 65 73 20 61 73 20 24 6e 61 6d 65 29 20 7b 0a 24 61 62 62 72 65 76 73 5b 24 6e 61 6d 65 | names.as.$name).{.$abbrevs[$name |
6ce00 | 5d 20 3d 20 61 72 72 61 79 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 62 62 | ].=.array($name);.}..return.$abb |
6ce20 | 72 65 76 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | revs;.}..........public.function |
6ce40 | 20 61 73 54 65 78 74 28 24 6e 61 6d 65 73 70 61 63 65 20 3d 20 6e 75 6c 6c 2c 20 24 72 61 77 20 | .asText($namespace.=.null,.$raw. |
6ce60 | 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 63 6f 6d 6d 61 6e 64 73 20 3d 20 24 6e 61 6d 65 73 70 61 63 | =.false).{.$commands.=.$namespac |
6ce80 | 65 20 3f 20 24 74 68 69 73 2d 3e 61 6c 6c 28 24 74 68 69 73 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 | e.?.$this->all($this->findNamesp |
6cea0 | 61 63 65 28 24 6e 61 6d 65 73 70 61 63 65 29 29 20 3a 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e | ace($namespace)).:.$this->comman |
6cec0 | 64 73 3b 0a 0a 24 77 69 64 74 68 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 | ds;..$width.=.0;.foreach.($comma |
6cee0 | 6e 64 73 20 61 73 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 77 69 64 74 68 20 3d 20 73 74 72 6c | nds.as.$command).{.$width.=.strl |
6cf00 | 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3e 20 24 77 69 64 74 68 | en($command->getName()).>.$width |
6cf20 | 20 3f 20 73 74 72 6c 65 6e 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 3a | .?.strlen($command->getName()).: |
6cf40 | 20 24 77 69 64 74 68 3b 0a 7d 0a 24 77 69 64 74 68 20 2b 3d 20 32 3b 0a 0a 69 66 20 28 24 72 61 | .$width;.}.$width.+=.2;..if.($ra |
6cf60 | 77 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 | w).{.$messages.=.array();.foreac |
6cf80 | 68 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 24 63 6f 6d 6d 61 6e 64 73 | h.($this->sortCommands($commands |
6cfa0 | 29 20 61 73 20 24 73 70 61 63 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 66 6f 72 65 | ).as.$space.=>.$commands).{.fore |
6cfc0 | 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d | ach.($commands.as.$name.=>.$comm |
6cfe0 | 61 6e 64 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 22 25 2d | and).{.$messages[].=.sprintf("%- |
6d000 | 24 7b 77 69 64 74 68 7d 73 20 25 73 22 2c 20 24 6e 61 6d 65 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e | ${width}s.%s",.$name,.$command-> |
6d020 | 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 | getDescription());.}.}..return.i |
6d040 | 6d 70 6c 6f 64 65 28 50 48 50 5f 45 4f 4c 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 24 | mplode(PHP_EOL,.$messages);.}..$ |
6d060 | 6d 65 73 73 61 67 65 73 20 3d 20 61 72 72 61 79 28 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 28 | messages.=.array($this->getHelp( |
6d080 | 29 2c 20 27 27 29 3b 0a 69 66 20 28 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 6d 65 73 73 61 | ),.'');.if.($namespace).{.$messa |
6d0a0 | 67 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 22 3c 63 6f 6d 6d 65 6e 74 3e 41 76 61 69 6c 61 | ges[].=.sprintf("<comment>Availa |
6d0c0 | 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 20 66 6f 72 20 74 68 65 20 5c 22 25 73 5c 22 20 6e 61 6d 65 | ble.commands.for.the.\"%s\".name |
6d0e0 | 73 70 61 63 65 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 22 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a | space:</comment>",.$namespace);. |
6d100 | 7d 20 65 6c 73 65 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 27 3c 63 6f 6d 6d 65 6e 74 | }.else.{.$messages[].=.'<comment |
6d120 | 3e 41 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b | >Available.commands:</comment>'; |
6d140 | 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 43 6f 6d 6d 61 6e | .}....foreach.($this->sortComman |
6d160 | 64 73 28 24 63 6f 6d 6d 61 6e 64 73 29 20 61 73 20 24 73 70 61 63 65 20 3d 3e 20 24 63 6f 6d 6d | ds($commands).as.$space.=>.$comm |
6d180 | 61 6e 64 73 29 20 7b 0a 69 66 20 28 21 24 6e 61 6d 65 73 70 61 63 65 20 26 26 20 27 5f 67 6c 6f | ands).{.if.(!$namespace.&&.'_glo |
6d1a0 | 62 61 6c 27 20 21 3d 3d 20 24 73 70 61 63 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d | bal'.!==.$space).{.$messages[].= |
6d1c0 | 20 27 3c 63 6f 6d 6d 65 6e 74 3e 27 2e 24 73 70 61 63 65 2e 27 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 | .'<comment>'.$space.'</comment>' |
6d1e0 | 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 | ;.}..foreach.($commands.as.$name |
6d200 | 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 73 70 | .=>.$command).{.$messages[].=.sp |
6d220 | 72 69 6e 74 66 28 22 20 20 3c 69 6e 66 6f 3e 25 2d 24 7b 77 69 64 74 68 7d 73 3c 2f 69 6e 66 6f | rintf("..<info>%-${width}s</info |
6d240 | 3e 20 25 73 22 2c 20 24 6e 61 6d 65 2c 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 73 63 72 | >.%s",.$name,.$command->getDescr |
6d260 | 69 70 74 69 6f 6e 28 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 50 | iption());.}.}..return.implode(P |
6d280 | 48 50 5f 45 4f 4c 2c 20 24 6d 65 73 73 61 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | HP_EOL,.$messages);.}..........p |
6d2a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 58 6d 6c 28 24 6e 61 6d 65 73 70 61 63 65 20 | ublic.function.asXml($namespace. |
6d2c0 | 3d 20 6e 75 6c 6c 2c 20 24 61 73 44 6f 6d 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 63 6f 6d 6d 61 | =.null,.$asDom.=.false).{.$comma |
6d2e0 | 6e 64 73 20 3d 20 24 6e 61 6d 65 73 70 61 63 65 20 3f 20 24 74 68 69 73 2d 3e 61 6c 6c 28 24 74 | nds.=.$namespace.?.$this->all($t |
6d300 | 68 69 73 2d 3e 66 69 6e 64 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 73 70 61 63 65 29 29 20 | his->findNamespace($namespace)). |
6d320 | 3a 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 3b 0a 0a 24 64 6f 6d 20 3d 20 6e 65 77 20 5c | :.$this->commands;..$dom.=.new.\ |
6d340 | 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 24 64 6f | DOMDocument('1.0',.'UTF-8');.$do |
6d360 | 6d 2d 3e 66 6f 72 6d 61 74 4f 75 74 70 75 74 20 3d 20 74 72 75 65 3b 0a 24 64 6f 6d 2d 3e 61 70 | m->formatOutput.=.true;.$dom->ap |
6d380 | 70 65 6e 64 43 68 69 6c 64 28 24 78 6d 6c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 | pendChild($xml.=.$dom->createEle |
6d3a0 | 6d 65 6e 74 28 27 73 79 6d 66 6f 6e 79 27 29 29 3b 0a 0a 24 78 6d 6c 2d 3e 61 70 70 65 6e 64 43 | ment('symfony'));..$xml->appendC |
6d3c0 | 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 | hild($commandsXML.=.$dom->create |
6d3e0 | 45 6c 65 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 73 27 29 29 3b 0a 0a 69 66 20 28 24 6e 61 6d 65 | Element('commands'));..if.($name |
6d400 | 73 70 61 63 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 | space).{.$commandsXML->setAttrib |
6d420 | 75 74 65 28 27 6e 61 6d 65 73 70 61 63 65 27 2c 20 24 6e 61 6d 65 73 70 61 63 65 29 3b 0a 7d 20 | ute('namespace',.$namespace);.}. |
6d440 | 65 6c 73 65 20 7b 0a 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 | else.{.$namespacesXML.=.$dom->cr |
6d460 | 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 6e 61 6d 65 73 70 61 63 65 73 27 29 3b 0a 24 78 6d 6c 2d | eateElement('namespaces');.$xml- |
6d480 | 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 29 3b 0a 7d 0a | >appendChild($namespacesXML);.}. |
6d4a0 | 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 | ...foreach.($this->sortCommands( |
6d4c0 | 24 63 6f 6d 6d 61 6e 64 73 29 20 61 73 20 24 73 70 61 63 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 | $commands).as.$space.=>.$command |
6d4e0 | 73 29 20 7b 0a 69 66 20 28 21 24 6e 61 6d 65 73 70 61 63 65 29 20 7b 0a 24 6e 61 6d 65 73 70 61 | s).{.if.(!$namespace).{.$namespa |
6d500 | 63 65 41 72 72 61 79 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 | ceArrayXML.=.$dom->createElement |
6d520 | 28 27 6e 61 6d 65 73 70 61 63 65 27 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 73 58 4d 4c 2d 3e 61 | ('namespace');.$namespacesXML->a |
6d540 | 70 70 65 6e 64 43 68 69 6c 64 28 24 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 58 4d 4c 29 3b 0a | ppendChild($namespaceArrayXML);. |
6d560 | 24 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 | $namespaceArrayXML->setAttribute |
6d580 | 28 27 69 64 27 2c 20 24 73 70 61 63 65 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6d | ('id',.$space);.}..foreach.($com |
6d5a0 | 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 6e 64 29 20 7b 0a 69 66 | mands.as.$name.=>.$command).{.if |
6d5c0 | 20 28 24 6e 61 6d 65 20 21 3d 3d 20 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 4e 61 6d 65 28 29 29 | .($name.!==.$command->getName()) |
6d5e0 | 20 7b 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 0a 0a 69 66 20 28 21 24 6e 61 6d 65 73 70 61 63 65 29 | .{.continue;.}..if.(!$namespace) |
6d600 | 20 7b 0a 24 63 6f 6d 6d 61 6e 64 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 | .{.$commandXML.=.$dom->createEle |
6d620 | 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 29 3b 0a 24 6e 61 6d 65 73 70 61 63 65 41 72 72 61 79 | ment('command');.$namespaceArray |
6d640 | 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 63 6f 6d 6d 61 6e 64 58 4d 4c 29 3b 0a 24 | XML->appendChild($commandXML);.$ |
6d660 | 63 6f 6d 6d 61 6e 64 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 | commandXML->appendChild($dom->cr |
6d680 | 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 6e 6f 64 65 20 3d | eateTextNode($name));.}..$node.= |
6d6a0 | 20 24 63 6f 6d 6d 61 6e 64 2d 3e 61 73 58 6d 6c 28 74 72 75 65 29 2d 3e 67 65 74 45 6c 65 6d 65 | .$command->asXml(true)->getEleme |
6d6c0 | 6e 74 73 42 79 54 61 67 4e 61 6d 65 28 27 63 6f 6d 6d 61 6e 64 27 29 2d 3e 69 74 65 6d 28 30 29 | ntsByTagName('command')->item(0) |
6d6e0 | 3b 0a 24 6e 6f 64 65 20 3d 20 24 64 6f 6d 2d 3e 69 6d 70 6f 72 74 4e 6f 64 65 28 24 6e 6f 64 65 | ;.$node.=.$dom->importNode($node |
6d700 | 2c 20 74 72 75 65 29 3b 0a 0a 24 63 6f 6d 6d 61 6e 64 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 | ,.true);..$commandsXML->appendCh |
6d720 | 69 6c 64 28 24 6e 6f 64 65 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 73 44 6f 6d 20 3f | ild($node);.}.}..return.$asDom.? |
6d740 | 20 24 64 6f 6d 20 3a 20 24 64 6f 6d 2d 3e 73 61 76 65 58 6d 6c 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | .$dom.:.$dom->saveXml();.}...... |
6d760 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 6e 64 65 72 45 78 63 65 70 74 69 6f | ..public.function.renderExceptio |
6d780 | 6e 28 24 65 2c 20 24 6f 75 74 70 75 74 29 0a 7b 0a 24 73 74 72 6c 65 6e 20 3d 20 66 75 6e 63 74 | n($e,.$output).{.$strlen.=.funct |
6d7a0 | 69 6f 6e 20 28 24 73 74 72 69 6e 67 29 20 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 | ion.($string).{.if.(!function_ex |
6d7c0 | 69 73 74 73 28 27 6d 62 5f 73 74 72 6c 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c | ists('mb_strlen')).{.return.strl |
6d7e0 | 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 65 | en($string);.}..if.(false.===.$e |
6d800 | 6e 63 6f 64 69 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 24 73 74 | ncoding.=.mb_detect_encoding($st |
6d820 | 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 3b | ring)).{.return.strlen($string); |
6d840 | 0a 7d 0a 0a 72 65 74 75 72 6e 20 6d 62 5f 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 2c 20 24 65 | .}..return.mb_strlen($string,.$e |
6d860 | 6e 63 6f 64 69 6e 67 29 3b 0a 7d 3b 0a 0a 64 6f 20 7b 0a 24 74 69 74 6c 65 20 3d 20 73 70 72 69 | ncoding);.};..do.{.$title.=.spri |
6d880 | 6e 74 66 28 27 20 20 5b 25 73 5d 20 20 27 2c 20 67 65 74 5f 63 6c 61 73 73 28 24 65 29 29 3b 0a | ntf('..[%s]..',.get_class($e));. |
6d8a0 | 24 6c 65 6e 20 3d 20 24 73 74 72 6c 65 6e 28 24 74 69 74 6c 65 29 3b 0a 24 77 69 64 74 68 20 3d | $len.=.$strlen($title);.$width.= |
6d8c0 | 20 24 74 68 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 3f 20 24 74 68 | .$this->getTerminalWidth().?.$th |
6d8e0 | 69 73 2d 3e 67 65 74 54 65 72 6d 69 6e 61 6c 57 69 64 74 68 28 29 20 2d 20 31 20 3a 20 50 48 50 | is->getTerminalWidth().-.1.:.PHP |
6d900 | 5f 49 4e 54 5f 4d 41 58 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 | _INT_MAX;.$lines.=.array();.fore |
6d920 | 61 63 68 20 28 70 72 65 67 5f 73 70 6c 69 74 28 22 7b 5c 72 3f 5c 6e 7d 22 2c 20 24 65 2d 3e 67 | ach.(preg_split("{\r?\n}",.$e->g |
6d940 | 65 74 4d 65 73 73 61 67 65 28 29 29 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 66 6f 72 65 61 63 68 | etMessage()).as.$line).{.foreach |
6d960 | 20 28 73 74 72 5f 73 70 6c 69 74 28 24 6c 69 6e 65 2c 20 24 77 69 64 74 68 20 2d 20 34 29 20 61 | .(str_split($line,.$width.-.4).a |
6d980 | 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 20 | s.$line).{.$lines[].=.sprintf('. |
6d9a0 | 20 25 73 20 20 27 2c 20 24 6c 69 6e 65 29 3b 0a 24 6c 65 6e 20 3d 20 6d 61 78 28 24 73 74 72 6c | .%s..',.$line);.$len.=.max($strl |
6d9c0 | 65 6e 28 24 6c 69 6e 65 29 20 2b 20 34 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 7d 0a 0a 24 6d 65 73 73 | en($line).+.4,.$len);.}.}..$mess |
6d9e0 | 61 67 65 73 20 3d 20 61 72 72 61 79 28 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 | ages.=.array(str_repeat('.',.$le |
6da00 | 6e 29 2c 20 24 74 69 74 6c 65 2e 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 6d 61 78 28 30 | n),.$title.str_repeat('.',.max(0 |
6da20 | 2c 20 24 6c 65 6e 20 2d 20 24 73 74 72 6c 65 6e 28 24 74 69 74 6c 65 29 29 29 29 3b 0a 0a 66 6f | ,.$len.-.$strlen($title))));..fo |
6da40 | 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 6c 69 6e 65 29 20 7b 0a 24 6d 65 73 73 61 | reach.($lines.as.$line).{.$messa |
6da60 | 67 65 73 5b 5d 20 3d 20 24 6c 69 6e 65 2e 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c | ges[].=.$line.str_repeat('.',.$l |
6da80 | 65 6e 20 2d 20 24 73 74 72 6c 65 6e 28 24 6c 69 6e 65 29 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 | en.-.$strlen($line));.}..$messag |
6daa0 | 65 73 5b 5d 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 3b 0a 0a 24 | es[].=.str_repeat('.',.$len);..$ |
6dac0 | 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 | output->writeln("");.$output->wr |
6dae0 | 69 74 65 6c 6e 28 22 22 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 | iteln("");.foreach.($messages.as |
6db00 | 20 24 6d 65 73 73 61 67 65 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 27 3c | .$message).{.$output->writeln('< |
6db20 | 65 72 72 6f 72 3e 27 2e 24 6d 65 73 73 61 67 65 2e 27 3c 2f 65 72 72 6f 72 3e 27 29 3b 0a 7d 0a | error>'.$message.'</error>');.}. |
6db40 | 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 | $output->writeln("");.$output->w |
6db60 | 72 69 74 65 6c 6e 28 22 22 29 3b 0a 0a 69 66 20 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 | riteln("");..if.(OutputInterface |
6db80 | 3a 3a 56 45 52 42 4f 53 49 54 59 5f 56 45 52 42 4f 53 45 20 3d 3d 3d 20 24 6f 75 74 70 75 74 2d | ::VERBOSITY_VERBOSE.===.$output- |
6dba0 | 3e 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 | >getVerbosity()).{.$output->writ |
6dbc0 | 65 6c 6e 28 27 3c 63 6f 6d 6d 65 6e 74 3e 45 78 63 65 70 74 69 6f 6e 20 74 72 61 63 65 3a 3c 2f | eln('<comment>Exception.trace:</ |
6dbe0 | 63 6f 6d 6d 65 6e 74 3e 27 29 3b 0a 0a 0a 20 24 74 72 61 63 65 20 3d 20 24 65 2d 3e 67 65 74 54 | comment>');....$trace.=.$e->getT |
6dc00 | 72 61 63 65 28 29 3b 0a 61 72 72 61 79 5f 75 6e 73 68 69 66 74 28 24 74 72 61 63 65 2c 20 61 72 | race();.array_unshift($trace,.ar |
6dc20 | 72 61 79 28 0a 27 66 75 6e 63 74 69 6f 6e 27 20 3d 3e 20 27 27 2c 0a 27 66 69 6c 65 27 20 3d 3e | ray(.'function'.=>.'',.'file'.=> |
6dc40 | 20 24 65 2d 3e 67 65 74 46 69 6c 65 28 29 20 21 3d 20 6e 75 6c 6c 20 3f 20 24 65 2d 3e 67 65 74 | .$e->getFile().!=.null.?.$e->get |
6dc60 | 46 69 6c 65 28 29 20 3a 20 27 6e 2f 61 27 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 65 2d 3e 67 65 | File().:.'n/a',.'line'.=>.$e->ge |
6dc80 | 74 4c 69 6e 65 28 29 20 21 3d 20 6e 75 6c 6c 20 3f 20 24 65 2d 3e 67 65 74 4c 69 6e 65 28 29 20 | tLine().!=.null.?.$e->getLine(). |
6dca0 | 3a 20 27 6e 2f 61 27 2c 0a 27 61 72 67 73 27 20 3d 3e 20 61 72 72 61 79 28 29 2c 0a 29 29 3b 0a | :.'n/a',.'args'.=>.array(),.));. |
6dcc0 | 0a 66 6f 72 20 28 24 69 20 3d 20 30 2c 20 24 63 6f 75 6e 74 20 3d 20 63 6f 75 6e 74 28 24 74 72 | .for.($i.=.0,.$count.=.count($tr |
6dce0 | 61 63 65 29 3b 20 24 69 20 3c 20 24 63 6f 75 6e 74 3b 20 24 69 2b 2b 29 20 7b 0a 24 63 6c 61 73 | ace);.$i.<.$count;.$i++).{.$clas |
6dd00 | 73 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 63 6c 61 73 73 27 5d 29 20 3f | s.=.isset($trace[$i]['class']).? |
6dd20 | 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 63 6c 61 73 73 27 5d 20 3a 20 27 27 3b 0a 24 74 79 70 65 | .$trace[$i]['class'].:.'';.$type |
6dd40 | 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 74 79 70 65 27 5d 29 20 3f 20 24 | .=.isset($trace[$i]['type']).?.$ |
6dd60 | 74 72 61 63 65 5b 24 69 5d 5b 27 74 79 70 65 27 5d 20 3a 20 27 27 3b 0a 24 66 75 6e 63 74 69 6f | trace[$i]['type'].:.'';.$functio |
6dd80 | 6e 20 3d 20 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 75 6e 63 74 69 6f 6e 27 5d 3b 0a 24 66 69 6c | n.=.$trace[$i]['function'];.$fil |
6dda0 | 65 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 69 6c 65 27 5d 29 20 3f 20 | e.=.isset($trace[$i]['file']).?. |
6ddc0 | 24 74 72 61 63 65 5b 24 69 5d 5b 27 66 69 6c 65 27 5d 20 3a 20 27 6e 2f 61 27 3b 0a 24 6c 69 6e | $trace[$i]['file'].:.'n/a';.$lin |
6dde0 | 65 20 3d 20 69 73 73 65 74 28 24 74 72 61 63 65 5b 24 69 5d 5b 27 6c 69 6e 65 27 5d 29 20 3f 20 | e.=.isset($trace[$i]['line']).?. |
6de00 | 24 74 72 61 63 65 5b 24 69 5d 5b 27 6c 69 6e 65 27 5d 20 3a 20 27 6e 2f 61 27 3b 0a 0a 24 6f 75 | $trace[$i]['line'].:.'n/a';..$ou |
6de20 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 20 25 73 25 73 25 73 28 29 | tput->writeln(sprintf('.%s%s%s() |
6de40 | 20 61 74 20 3c 69 6e 66 6f 3e 25 73 3a 25 73 3c 2f 69 6e 66 6f 3e 27 2c 20 24 63 6c 61 73 73 2c | .at.<info>%s:%s</info>',.$class, |
6de60 | 20 24 74 79 70 65 2c 20 24 66 75 6e 63 74 69 6f 6e 2c 20 24 66 69 6c 65 2c 20 24 6c 69 6e 65 29 | .$type,.$function,.$file,.$line) |
6de80 | 29 3b 0a 7d 0a 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 3b 0a 24 6f 75 74 | );.}..$output->writeln("");.$out |
6dea0 | 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 3b 0a 7d 0a 7d 20 77 68 69 6c 65 20 28 24 65 20 | put->writeln("");.}.}.while.($e. |
6dec0 | 3d 20 24 65 2d 3e 67 65 74 50 72 65 76 69 6f 75 73 28 29 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 | =.$e->getPrevious());..if.(null. |
6dee0 | 21 3d 3d 20 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 6f 6d 6d 61 6e 64 29 20 7b 0a 24 6f 75 | !==.$this->runningCommand).{.$ou |
6df00 | 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 69 6e 66 6f 3e 25 73 3c | tput->writeln(sprintf('<info>%s< |
6df20 | 2f 69 6e 66 6f 3e 27 2c 20 73 70 72 69 6e 74 66 28 24 74 68 69 73 2d 3e 72 75 6e 6e 69 6e 67 43 | /info>',.sprintf($this->runningC |
6df40 | 6f 6d 6d 61 6e 64 2d 3e 67 65 74 53 79 6e 6f 70 73 69 73 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 | ommand->getSynopsis(),.$this->ge |
6df60 | 74 4e 61 6d 65 28 29 29 29 29 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 | tName())));.$output->writeln("") |
6df80 | 3b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 22 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a | ;.$output->writeln("");.}.}..... |
6dfa0 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c | ..protected.function.getTerminal |
6dfc0 | 57 69 64 74 68 28 29 0a 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f | Width().{.if.(defined('PHP_WINDO |
6dfe0 | 57 53 5f 56 45 52 53 49 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 69 66 20 28 24 61 6e 73 69 63 | WS_VERSION_BUILD')).{.if.($ansic |
6e000 | 6f 6e 20 3d 20 67 65 74 65 6e 76 28 27 41 4e 53 49 43 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e | on.=.getenv('ANSICON')).{.return |
6e020 | 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 7b 5e 28 5c 64 2b 29 78 2e 2a 24 7d 27 2c 20 27 24 | .preg_replace('{^(\d+)x.*$}',.'$ |
6e040 | 31 27 2c 20 24 61 6e 73 69 63 6f 6e 29 3b 0a 7d 0a 0a 65 78 65 63 28 27 6d 6f 64 65 20 43 4f 4e | 1',.$ansicon);.}..exec('mode.CON |
6e060 | 27 2c 20 24 65 78 65 63 44 61 74 61 29 3b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 7b | ',.$execData);.if.(preg_match('{ |
6e080 | 63 6f 6c 75 6d 6e 73 3a 5c 73 2a 28 5c 64 2b 29 7d 69 27 2c 20 24 65 78 65 63 44 61 74 61 5b 34 | columns:\s*(\d+)}i',.$execData[4 |
6e0a0 | 5d 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 65 73 5b | ],.$matches)).{.return.$matches[ |
6e0c0 | 31 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 22 7b 72 6f 77 73 2e 28 | 1];.}.}..if.(preg_match("{rows.( |
6e0e0 | 5c 64 2b 29 3b 2e 63 6f 6c 75 6d 6e 73 2e 28 5c 64 2b 29 3b 7d 69 22 2c 20 24 74 68 69 73 2d 3e | \d+);.columns.(\d+);}i",.$this-> |
6e100 | 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e 73 28 29 2c 20 24 6d 61 74 63 68 29 29 20 7b 0a 72 65 74 | getSttyColumns(),.$match)).{.ret |
6e120 | 75 72 6e 20 24 6d 61 74 63 68 5b 32 5d 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | urn.$match[2];.}.}.......protect |
6e140 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 54 65 72 6d 69 6e 61 6c 48 65 69 67 68 74 28 29 0a | ed.function.getTerminalHeight(). |
6e160 | 7b 0a 69 66 20 28 64 65 66 69 6e 65 64 28 27 50 48 50 5f 57 49 4e 44 4f 57 53 5f 56 45 52 53 49 | {.if.(defined('PHP_WINDOWS_VERSI |
6e180 | 4f 4e 5f 42 55 49 4c 44 27 29 29 20 7b 0a 69 66 20 28 24 61 6e 73 69 63 6f 6e 20 3d 20 67 65 74 | ON_BUILD')).{.if.($ansicon.=.get |
6e1a0 | 65 6e 76 28 27 41 4e 53 49 43 4f 4e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 70 72 65 67 5f 72 65 | env('ANSICON')).{.return.preg_re |
6e1c0 | 70 6c 61 63 65 28 27 7b 5e 5c 64 2b 78 5c 64 2b 20 5c 28 5c 64 2b 78 28 5c 64 2b 29 5c 29 24 7d | place('{^\d+x\d+.\(\d+x(\d+)\)$} |
6e1e0 | 27 2c 20 27 24 31 27 2c 20 74 72 69 6d 28 24 61 6e 73 69 63 6f 6e 29 29 3b 0a 7d 0a 0a 65 78 65 | ',.'$1',.trim($ansicon));.}..exe |
6e200 | 63 28 27 6d 6f 64 65 20 43 4f 4e 27 2c 20 24 65 78 65 63 44 61 74 61 29 3b 0a 69 66 20 28 70 72 | c('mode.CON',.$execData);.if.(pr |
6e220 | 65 67 5f 6d 61 74 63 68 28 27 7b 6c 69 6e 65 73 3a 5c 73 2a 28 5c 64 2b 29 7d 69 27 2c 20 24 65 | eg_match('{lines:\s*(\d+)}i',.$e |
6e240 | 78 65 63 44 61 74 61 5b 33 5d 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 | xecData[3],.$matches)).{.return. |
6e260 | 24 6d 61 74 63 68 65 73 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 | $matches[1];.}.}..if.(preg_match |
6e280 | 28 22 7b 72 6f 77 73 2e 28 5c 64 2b 29 3b 2e 63 6f 6c 75 6d 6e 73 2e 28 5c 64 2b 29 3b 7d 69 22 | ("{rows.(\d+);.columns.(\d+);}i" |
6e2a0 | 2c 20 24 74 68 69 73 2d 3e 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e 73 28 29 2c 20 24 6d 61 74 63 | ,.$this->getSttyColumns(),.$matc |
6e2c0 | 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 5b 31 5d 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a | h)).{.return.$match[1];.}.}..... |
6e2e0 | 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e | ....protected.function.getComman |
6e300 | 64 4e 61 6d 65 28 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 69 6e 70 75 74 29 0a 7b 0a 72 | dName(InputInterface.$input).{.r |
6e320 | 65 74 75 72 6e 20 24 69 6e 70 75 74 2d 3e 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 | eturn.$input->getFirstArgument() |
6e340 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ;.}.......protected.function.get |
6e360 | 44 65 66 61 75 6c 74 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 | DefaultInputDefinition().{.retur |
6e380 | 6e 20 6e 65 77 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 28 0a 6e 65 77 | n.new.InputDefinition(array(.new |
6e3a0 | 20 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 28 27 63 6f 6d 6d 61 6e 64 27 2c 20 49 6e 70 75 74 41 | .InputArgument('command',.InputA |
6e3c0 | 72 67 75 6d 65 6e 74 3a 3a 52 45 51 55 49 52 45 44 2c 20 27 54 68 65 20 63 6f 6d 6d 61 6e 64 20 | rgument::REQUIRED,.'The.command. |
6e3e0 | 74 6f 20 65 78 65 63 75 74 65 27 29 2c 0a 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 | to.execute'),..new.InputOption(' |
6e400 | 2d 2d 68 65 6c 70 27 2c 20 27 2d 68 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 | --help',.'-h',.InputOption::VALU |
6e420 | 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 70 6c 61 79 20 74 68 69 73 20 68 65 6c 70 20 6d 65 73 73 61 | E_NONE,.'Display.this.help.messa |
6e440 | 67 65 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 71 75 69 65 74 27 | ge.'),.new.InputOption('--quiet' |
6e460 | 2c 20 27 2d 71 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c | ,.'-q',.InputOption::VALUE_NONE, |
6e480 | 20 27 44 6f 20 6e 6f 74 20 6f 75 74 70 75 74 20 61 6e 79 20 6d 65 73 73 61 67 65 2e 27 29 2c 0a | .'Do.not.output.any.message.'),. |
6e4a0 | 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 62 6f 73 65 27 2c 20 27 2d 76 | new.InputOption('--verbose',.'-v |
6e4c0 | 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 49 6e 63 | ',.InputOption::VALUE_NONE,.'Inc |
6e4e0 | 72 65 61 73 65 20 76 65 72 62 6f 73 69 74 79 20 6f 66 20 6d 65 73 73 61 67 65 73 2e 27 29 2c 0a | rease.verbosity.of.messages.'),. |
6e500 | 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 76 65 72 73 69 6f 6e 27 2c 20 27 2d 56 | new.InputOption('--version',.'-V |
6e520 | 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 | ',.InputOption::VALUE_NONE,.'Dis |
6e540 | 70 6c 61 79 20 74 68 69 73 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 76 65 72 73 69 6f 6e 2e 27 29 | play.this.application.version.') |
6e560 | 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 61 6e 73 69 27 2c 20 27 27 2c 20 | ,.new.InputOption('--ansi',.'',. |
6e580 | 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 2c 20 27 46 6f 72 63 65 20 | InputOption::VALUE_NONE,.'Force. |
6e5a0 | 41 4e 53 49 20 6f 75 74 70 75 74 2e 27 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 | ANSI.output.'),.new.InputOption( |
6e5c0 | 27 2d 2d 6e 6f 2d 61 6e 73 69 27 2c 20 27 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 | '--no-ansi',.'',.InputOption::VA |
6e5e0 | 4c 55 45 5f 4e 4f 4e 45 2c 20 27 44 69 73 61 62 6c 65 20 41 4e 53 49 20 6f 75 74 70 75 74 2e 27 | LUE_NONE,.'Disable.ANSI.output.' |
6e600 | 29 2c 0a 6e 65 77 20 49 6e 70 75 74 4f 70 74 69 6f 6e 28 27 2d 2d 6e 6f 2d 69 6e 74 65 72 61 63 | ),.new.InputOption('--no-interac |
6e620 | 74 69 6f 6e 27 2c 20 27 2d 6e 27 2c 20 49 6e 70 75 74 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f | tion',.'-n',.InputOption::VALUE_ |
6e640 | 4e 4f 4e 45 2c 20 27 44 6f 20 6e 6f 74 20 61 73 6b 20 61 6e 79 20 69 6e 74 65 72 61 63 74 69 76 | NONE,.'Do.not.ask.any.interactiv |
6e660 | 65 20 71 75 65 73 74 69 6f 6e 2e 27 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 | e.question.'),.));.}.......prote |
6e680 | 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 43 6f 6d 6d 61 6e 64 73 | cted.function.getDefaultCommands |
6e6a0 | 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 6e 65 77 20 48 65 6c 70 43 6f 6d 6d 61 6e | ().{.return.array(new.HelpComman |
6e6c0 | 64 28 29 2c 20 6e 65 77 20 4c 69 73 74 43 6f 6d 6d 61 6e 64 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | d(),.new.ListCommand());.}...... |
6e6e0 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 66 61 75 6c 74 48 65 | .protected.function.getDefaultHe |
6e700 | 6c 70 65 72 53 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 20 48 65 6c 70 65 72 53 65 74 | lperSet().{.return.new.HelperSet |
6e720 | 28 61 72 72 61 79 28 0a 6e 65 77 20 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 28 29 2c 0a 6e | (array(.new.FormatterHelper(),.n |
6e740 | 65 77 20 44 69 61 6c 6f 67 48 65 6c 70 65 72 28 29 2c 0a 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | ew.DialogHelper(),.));.}.......p |
6e760 | 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 74 74 79 43 6f 6c 75 6d 6e 73 28 29 | rivate.function.getSttyColumns() |
6e780 | 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 70 72 6f 63 5f 6f 70 | .{.if.(!function_exists('proc_op |
6e7a0 | 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 6f 72 73 70 | en')).{.return;.}..$descriptorsp |
6e7c0 | 65 63 20 3d 20 61 72 72 61 79 28 31 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 | ec.=.array(1.=>.array('pipe',.'w |
6e7e0 | 27 29 2c 20 32 20 3d 3e 20 61 72 72 61 79 28 27 70 69 70 65 27 2c 20 27 77 27 29 29 3b 0a 24 70 | '),.2.=>.array('pipe',.'w'));.$p |
6e800 | 72 6f 63 65 73 73 20 3d 20 70 72 6f 63 5f 6f 70 65 6e 28 27 73 74 74 79 20 2d 61 20 7c 20 67 72 | rocess.=.proc_open('stty.-a.|.gr |
6e820 | 65 70 20 63 6f 6c 75 6d 6e 73 27 2c 20 24 64 65 73 63 72 69 70 74 6f 72 73 70 65 63 2c 20 24 70 | ep.columns',.$descriptorspec,.$p |
6e840 | 69 70 65 73 2c 20 6e 75 6c 6c 2c 20 6e 75 6c 6c 2c 20 61 72 72 61 79 28 27 73 75 70 70 72 65 73 | ipes,.null,.null,.array('suppres |
6e860 | 73 5f 65 72 72 6f 72 73 27 20 3d 3e 20 74 72 75 65 29 29 3b 0a 69 66 20 28 69 73 5f 72 65 73 6f | s_errors'.=>.true));.if.(is_reso |
6e880 | 75 72 63 65 28 24 70 72 6f 63 65 73 73 29 29 20 7b 0a 24 69 6e 66 6f 20 3d 20 73 74 72 65 61 6d | urce($process)).{.$info.=.stream |
6e8a0 | 5f 67 65 74 5f 63 6f 6e 74 65 6e 74 73 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c 6f 73 65 | _get_contents($pipes[1]);.fclose |
6e8c0 | 28 24 70 69 70 65 73 5b 31 5d 29 3b 0a 66 63 6c 6f 73 65 28 24 70 69 70 65 73 5b 32 5d 29 3b 0a | ($pipes[1]);.fclose($pipes[2]);. |
6e8e0 | 70 72 6f 63 5f 63 6c 6f 73 65 28 24 70 72 6f 63 65 73 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 69 | proc_close($process);..return.$i |
6e900 | 6e 66 6f 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f | nfo;.}.}.........private.functio |
6e920 | 6e 20 73 6f 72 74 43 6f 6d 6d 61 6e 64 73 28 24 63 6f 6d 6d 61 6e 64 73 29 0a 7b 0a 24 6e 61 6d | n.sortCommands($commands).{.$nam |
6e940 | 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 | espacedCommands.=.array();.forea |
6e960 | 63 68 20 28 24 63 6f 6d 6d 61 6e 64 73 20 61 73 20 24 6e 61 6d 65 20 3d 3e 20 24 63 6f 6d 6d 61 | ch.($commands.as.$name.=>.$comma |
6e980 | 6e 64 29 20 7b 0a 24 6b 65 79 20 3d 20 24 74 68 69 73 2d 3e 65 78 74 72 61 63 74 4e 61 6d 65 73 | nd).{.$key.=.$this->extractNames |
6e9a0 | 70 61 63 65 28 24 6e 61 6d 65 2c 20 31 29 3b 0a 69 66 20 28 21 24 6b 65 79 29 20 7b 0a 24 6b 65 | pace($name,.1);.if.(!$key).{.$ke |
6e9c0 | 79 20 3d 20 27 5f 67 6c 6f 62 61 6c 27 3b 0a 7d 0a 0a 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d | y.=.'_global';.}..$namespacedCom |
6e9e0 | 6d 61 6e 64 73 5b 24 6b 65 79 5d 5b 24 6e 61 6d 65 5d 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d | mands[$key][$name].=.$command;.} |
6ea00 | 0a 6b 73 6f 72 74 28 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 29 3b 0a 0a 66 6f | .ksort($namespacedCommands);..fo |
6ea20 | 72 65 61 63 68 20 28 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 20 61 73 20 26 24 | reach.($namespacedCommands.as.&$ |
6ea40 | 63 6f 6d 6d 61 6e 64 73 29 20 7b 0a 6b 73 6f 72 74 28 24 63 6f 6d 6d 61 6e 64 73 29 3b 0a 7d 0a | commands).{.ksort($commands);.}. |
6ea60 | 0a 72 65 74 75 72 6e 20 24 6e 61 6d 65 73 70 61 63 65 64 43 6f 6d 6d 61 6e 64 73 3b 0a 7d 0a 0a | .return.$namespacedCommands;.}.. |
6ea80 | 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 62 62 72 65 | .......private.function.getAbbre |
6eaa0 | 76 69 61 74 69 6f 6e 53 75 67 67 65 73 74 69 6f 6e 73 28 24 61 62 62 72 65 76 73 29 0a 7b 0a 72 | viationSuggestions($abbrevs).{.r |
6eac0 | 65 74 75 72 6e 20 73 70 72 69 6e 74 66 28 27 25 73 2c 20 25 73 25 73 27 2c 20 24 61 62 62 72 65 | eturn.sprintf('%s,.%s%s',.$abbre |
6eae0 | 76 73 5b 30 5d 2c 20 24 61 62 62 72 65 76 73 5b 31 5d 2c 20 63 6f 75 6e 74 28 24 61 62 62 72 65 | vs[0],.$abbrevs[1],.count($abbre |
6eb00 | 76 73 29 20 3e 20 32 20 3f 20 73 70 72 69 6e 74 66 28 27 20 61 6e 64 20 25 64 20 6d 6f 72 65 27 | vs).>.2.?.sprintf('.and.%d.more' |
6eb20 | 2c 20 63 6f 75 6e 74 28 24 61 62 62 72 65 76 73 29 20 2d 20 32 29 20 3a 20 27 27 29 3b 0a 7d 0a | ,.count($abbrevs).-.2).:.'');.}. |
6eb40 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 61 63 | .........private.function.extrac |
6eb60 | 74 4e 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 24 6c 69 6d 69 74 20 3d 20 6e 75 6c 6c 29 | tNamespace($name,.$limit.=.null) |
6eb80 | 0a 7b 0a 24 70 61 72 74 73 20 3d 20 65 78 70 6c 6f 64 65 28 27 3a 27 2c 20 24 6e 61 6d 65 29 3b | .{.$parts.=.explode(':',.$name); |
6eba0 | 0a 61 72 72 61 79 5f 70 6f 70 28 24 70 61 72 74 73 29 3b 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c | .array_pop($parts);..return.impl |
6ebc0 | 6f 64 65 28 27 3a 27 2c 20 6e 75 6c 6c 20 3d 3d 3d 20 24 6c 69 6d 69 74 20 3f 20 24 70 61 72 74 | ode(':',.null.===.$limit.?.$part |
6ebe0 | 73 20 3a 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 70 61 72 74 73 2c 20 30 2c 20 24 6c 69 6d 69 | s.:.array_slice($parts,.0,.$limi |
6ec00 | 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e | t));.}..........private.function |
6ec20 | 20 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 43 6f 6d 6d 61 6e 64 73 28 24 6e 61 6d 65 2c 20 | .findAlternativeCommands($name,. |
6ec40 | 24 61 62 62 72 65 76 73 29 0a 7b 0a 24 63 61 6c 6c 62 61 63 6b 20 3d 20 66 75 6e 63 74 69 6f 6e | $abbrevs).{.$callback.=.function |
6ec60 | 28 24 69 74 65 6d 29 20 7b 0a 72 65 74 75 72 6e 20 24 69 74 65 6d 2d 3e 67 65 74 4e 61 6d 65 28 | ($item).{.return.$item->getName( |
6ec80 | 29 3b 0a 7d 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 | );.};..return.$this->findAlterna |
6eca0 | 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 73 2c 20 24 61 | tives($name,.$this->commands,.$a |
6ecc0 | 62 62 72 65 76 73 2c 20 24 63 61 6c 6c 62 61 63 6b 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | bbrevs,.$callback);.}..........p |
6ece0 | 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 4e | rivate.function.findAlternativeN |
6ed00 | 61 6d 65 73 70 61 63 65 28 24 6e 61 6d 65 2c 20 24 61 62 62 72 65 76 73 29 0a 7b 0a 72 65 74 75 | amespace($name,.$abbrevs).{.retu |
6ed20 | 72 6e 20 24 74 68 69 73 2d 3e 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 | rn.$this->findAlternatives($name |
6ed40 | 2c 20 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 73 70 61 63 65 73 28 29 2c 20 24 61 62 62 72 65 | ,.$this->getNamespaces(),.$abbre |
6ed60 | 76 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 | vs);.}.............private.funct |
6ed80 | 69 6f 6e 20 66 69 6e 64 41 6c 74 65 72 6e 61 74 69 76 65 73 28 24 6e 61 6d 65 2c 20 24 63 6f 6c | ion.findAlternatives($name,.$col |
6eda0 | 6c 65 63 74 69 6f 6e 2c 20 24 61 62 62 72 65 76 73 2c 20 24 63 61 6c 6c 62 61 63 6b 20 3d 20 6e | lection,.$abbrevs,.$callback.=.n |
6edc0 | 75 6c 6c 29 0a 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | ull).{.$alternatives.=.array();. |
6ede0 | 0a 66 6f 72 65 61 63 68 20 28 24 63 6f 6c 6c 65 63 74 69 6f 6e 20 61 73 20 24 69 74 65 6d 29 20 | .foreach.($collection.as.$item). |
6ee00 | 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 63 61 6c 6c 62 61 63 6b 29 20 7b 0a 24 69 74 65 | {.if.(null.!==.$callback).{.$ite |
6ee20 | 6d 20 3d 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 63 61 6c 6c 62 61 63 6b 2c 20 24 69 | m.=.call_user_func($callback,.$i |
6ee40 | 74 65 6d 29 3b 0a 7d 0a 0a 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 68 74 65 69 6e 28 24 6e 61 6d | tem);.}..$lev.=.levenshtein($nam |
6ee60 | 65 2c 20 24 69 74 65 6d 29 3b 0a 69 66 20 28 24 6c 65 76 20 3c 3d 20 73 74 72 6c 65 6e 28 24 6e | e,.$item);.if.($lev.<=.strlen($n |
6ee80 | 61 6d 65 29 20 2f 20 33 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 28 24 69 74 | ame)./.3.||.false.!==.strpos($it |
6eea0 | 65 6d 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 69 74 65 | em,.$name)).{.$alternatives[$ite |
6eec0 | 6d 5d 20 3d 20 24 6c 65 76 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 21 24 61 6c 74 65 72 6e 61 74 69 76 | m].=.$lev;.}.}..if.(!$alternativ |
6eee0 | 65 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 61 62 62 72 65 76 73 20 61 73 20 24 6b 65 79 20 | es).{.foreach.($abbrevs.as.$key. |
6ef00 | 3d 3e 20 24 76 61 6c 75 65 73 29 20 7b 0a 24 6c 65 76 20 3d 20 6c 65 76 65 6e 73 68 74 65 69 6e | =>.$values).{.$lev.=.levenshtein |
6ef20 | 28 24 6e 61 6d 65 2c 20 24 6b 65 79 29 3b 0a 69 66 20 28 24 6c 65 76 20 3c 3d 20 73 74 72 6c 65 | ($name,.$key);.if.($lev.<=.strle |
6ef40 | 6e 28 24 6e 61 6d 65 29 20 2f 20 33 20 7c 7c 20 66 61 6c 73 65 20 21 3d 3d 20 73 74 72 70 6f 73 | n($name)./.3.||.false.!==.strpos |
6ef60 | 28 24 6b 65 79 2c 20 24 6e 61 6d 65 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 61 6c 75 65 | ($key,.$name)).{.foreach.($value |
6ef80 | 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 24 61 6c 74 65 72 6e 61 74 69 76 65 73 5b 24 76 61 | s.as.$value).{.$alternatives[$va |
6efa0 | 6c 75 65 5d 20 3d 20 24 6c 65 76 3b 0a 7d 0a 7d 0a 7d 0a 7d 0a 0a 61 73 6f 72 74 28 24 61 6c 74 | lue].=.$lev;.}.}.}.}..asort($alt |
6efc0 | 65 72 6e 61 74 69 76 65 73 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 73 28 24 | ernatives);..return.array_keys($ |
6efe0 | 61 6c 74 65 72 6e 61 74 69 76 65 73 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | alternatives);.}.}.<?php........ |
6f000 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 | ...namespace.Symfony\Component\C |
6f020 | 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 70 75 | onsole\Input;.........class.Inpu |
6f040 | 74 41 72 67 75 6d 65 6e 74 0a 7b 0a 63 6f 6e 73 74 20 52 45 51 55 49 52 45 44 20 3d 20 31 3b 0a | tArgument.{.const.REQUIRED.=.1;. |
6f060 | 63 6f 6e 73 74 20 4f 50 54 49 4f 4e 41 4c 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 49 53 5f 41 52 52 | const.OPTIONAL.=.2;.const.IS_ARR |
6f080 | 41 59 20 3d 20 34 3b 0a 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 | AY.=.4;..private.$name;.private. |
6f0a0 | 24 6d 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 3b 0a 70 72 69 76 61 74 65 | $mode;.private.$default;.private |
6f0c0 | 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | .$description;..............publ |
6f0e0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6e 61 6d 65 2c 20 24 | ic.function.__construct($name,.$ |
6f100 | 6d 6f 64 65 20 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 2c 20 | mode.=.null,.$description.=.'',. |
6f120 | 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 | $default.=.null).{.if.(null.===. |
6f140 | 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 4f 50 54 49 4f 4e 41 4c 3b | $mode).{.$mode.=.self::OPTIONAL; |
6f160 | 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6d 6f 64 65 29 20 7c 7c 20 24 6d 6f | .}.elseif.(!is_int($mode).||.$mo |
6f180 | 64 65 20 3e 20 37 20 7c 7c 20 24 6d 6f 64 65 20 3c 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 | de.>.7.||.$mode.<.1).{.throw.new |
6f1a0 | 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e | .\InvalidArgumentException(sprin |
6f1c0 | 74 66 28 27 41 72 67 75 6d 65 6e 74 20 6d 6f 64 65 20 22 25 73 22 20 69 73 20 6e 6f 74 20 76 61 | tf('Argument.mode."%s".is.not.va |
6f1e0 | 6c 69 64 2e 27 2c 20 24 6d 6f 64 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6e 61 6d 65 20 3d | lid.',.$mode));.}..$this->name.= |
6f200 | 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 65 3b 0a 24 74 68 | .$name;.$this->mode.=.$mode;.$th |
6f220 | 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a | is->description.=.$description;. |
6f240 | 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a | .$this->setDefault($default);.}. |
6f260 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a | ......public.function.getName(). |
6f280 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | {.return.$this->name;.}.......pu |
6f2a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 52 65 71 75 69 72 65 64 28 29 0a 7b 0a 72 65 74 | blic.function.isRequired().{.ret |
6f2c0 | 75 72 6e 20 73 65 6c 66 3a 3a 52 45 51 55 49 52 45 44 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 52 45 | urn.self::REQUIRED.===.(self::RE |
6f2e0 | 51 55 49 52 45 44 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | QUIRED.&.$this->mode);.}.......p |
6f300 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 72 72 61 79 28 29 0a 7b 0a 72 65 74 75 72 | ublic.function.isArray().{.retur |
6f320 | 6e 20 73 65 6c 66 3a 3a 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 49 53 5f 41 | n.self::IS_ARRAY.===.(self::IS_A |
6f340 | 52 52 41 59 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | RRAY.&.$this->mode);.}.........p |
6f360 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 | ublic.function.setDefault($defau |
6f380 | 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 73 65 6c 66 3a 3a 52 45 51 55 49 52 45 44 20 | lt.=.null).{.if.(self::REQUIRED. |
6f3a0 | 3d 3d 3d 20 24 74 68 69 73 2d 3e 6d 6f 64 65 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 64 65 66 | ===.$this->mode.&&.null.!==.$def |
6f3c0 | 61 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f | ault).{.throw.new.\LogicExceptio |
6f3e0 | 6e 28 27 43 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 65 78 | n('Cannot.set.a.default.value.ex |
6f400 | 63 65 70 74 20 66 6f 72 20 50 61 72 61 6d 65 74 65 72 3a 3a 4f 50 54 49 4f 4e 41 4c 20 6d 6f 64 | cept.for.Parameter::OPTIONAL.mod |
6f420 | 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b | e.');.}..if.($this->isArray()).{ |
6f440 | 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 64 65 66 61 75 | .if.(null.===.$default).{.$defau |
6f460 | 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 61 72 72 61 | lt.=.array();.}.elseif.(!is_arra |
6f480 | 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 | y($default)).{.throw.new.\LogicE |
6f4a0 | 78 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 66 6f 72 20 61 6e | xception('A.default.value.for.an |
6f4c0 | 20 61 72 72 61 79 20 61 72 67 75 6d 65 6e 74 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 72 61 79 | .array.argument.must.be.an.array |
6f4e0 | 2e 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 64 65 66 61 | .');.}.}..$this->default.=.$defa |
6f500 | 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ult;.}.......public.function.get |
6f520 | 44 65 66 61 75 6c 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c | Default().{.return.$this->defaul |
6f540 | 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 | t;.}.......public.function.getDe |
6f560 | 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 73 63 | scription().{.return.$this->desc |
6f580 | 72 69 70 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d | ription;.}.}.<?php...........nam |
6f5a0 | 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 | espace.Symfony\Component\Console |
6f5c0 | 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 | \Input;.............abstract.cla |
6f5e0 | 73 73 20 49 6e 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 49 6e 70 75 74 49 6e 74 65 72 66 61 | ss.Input.implements.InputInterfa |
6f600 | 63 65 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 70 72 6f 74 | ce.{.protected.$definition;.prot |
6f620 | 65 63 74 65 64 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 61 72 67 75 6d | ected.$options;.protected.$argum |
6f640 | 65 6e 74 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 74 | ents;.protected.$interactive.=.t |
6f660 | 72 75 65 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e | rue;.......public.function.__con |
6f680 | 73 74 72 75 63 74 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 | struct(InputDefinition.$definiti |
6f6a0 | 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 69 6e | on.=.null).{.if.(null.===.$defin |
6f6c0 | 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 65 77 | ition).{.$this->definition.=.new |
6f6e0 | 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 | .InputDefinition();.}.else.{.$th |
6f700 | 69 73 2d 3e 62 69 6e 64 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 24 74 68 69 73 2d 3e 76 61 | is->bind($definition);.$this->va |
6f720 | 6c 69 64 61 74 65 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | lidate();.}.}.......public.funct |
6f740 | 69 6f 6e 20 62 69 6e 64 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 | ion.bind(InputDefinition.$defini |
6f760 | 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 | tion).{.$this->arguments.=.array |
6f780 | 28 29 3b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 | ();.$this->options.=.array();.$t |
6f7a0 | 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 64 65 66 69 6e 69 74 69 6f 6e 3b 0a 0a | his->definition.=.$definition;.. |
6f7c0 | 24 74 68 69 73 2d 3e 70 61 72 73 65 28 29 3b 0a 7d 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 | $this->parse();.}.....abstract.p |
6f7e0 | 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 29 3b 0a 0a 0a 0a 0a 0a | rotected.function.parse();...... |
6f800 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 28 29 0a 7b 0a 69 66 | .public.function.validate().{.if |
6f820 | 20 28 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 20 3c 20 24 74 68 69 | .(count($this->arguments).<.$thi |
6f840 | 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 52 65 71 75 69 72 | s->definition->getArgumentRequir |
6f860 | 65 64 43 6f 75 6e 74 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 | edCount()).{.throw.new.\RuntimeE |
6f880 | 78 63 65 70 74 69 6f 6e 28 27 4e 6f 74 20 65 6e 6f 75 67 68 20 61 72 67 75 6d 65 6e 74 73 2e 27 | xception('Not.enough.arguments.' |
6f8a0 | 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 | );.}.}.......public.function.isI |
6f8c0 | 6e 74 65 72 61 63 74 69 76 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 6e 74 | nteractive().{.return.$this->int |
6f8e0 | 65 72 61 63 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | eractive;.}.......public.functio |
6f900 | 6e 20 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 29 0a 7b | n.setInteractive($interactive).{ |
6f920 | 0a 24 74 68 69 73 2d 3e 69 6e 74 65 72 61 63 74 69 76 65 20 3d 20 28 42 6f 6f 6c 65 61 6e 29 20 | .$this->interactive.=.(Boolean). |
6f940 | 24 69 6e 74 65 72 61 63 74 69 76 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | $interactive;.}.......public.fun |
6f960 | 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 61 72 | ction.getArguments().{.return.ar |
6f980 | 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 | ray_merge($this->definition->get |
6f9a0 | 41 72 67 75 6d 65 6e 74 44 65 66 61 75 6c 74 73 28 29 2c 20 24 74 68 69 73 2d 3e 61 72 67 75 6d | ArgumentDefaults(),.$this->argum |
6f9c0 | 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | ents);.}...........public.functi |
6f9e0 | 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 | on.getArgument($name).{.if.(!$th |
6fa00 | 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d | is->definition->hasArgument($nam |
6fa20 | 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 | e)).{.throw.new.\InvalidArgument |
6fa40 | 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 61 72 67 75 | Exception(sprintf('The."%s".argu |
6fa60 | 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a | ment.does.not.exist.',.$name));. |
6fa80 | 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 | }..return.isset($this->arguments |
6faa0 | 5b 24 6e 61 6d 65 5d 29 20 3f 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d | [$name]).?.$this->arguments[$nam |
6fac0 | 65 5d 20 3a 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d | e].:.$this->definition->getArgum |
6fae0 | 65 6e 74 28 24 6e 61 6d 65 29 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a | ent($name)->getDefault();.}..... |
6fb00 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 | .....public.function.setArgument |
6fb20 | 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 | ($name,.$value).{.if.(!$this->de |
6fb40 | 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a | finition->hasArgument($name)).{. |
6fb60 | 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 | throw.new.\InvalidArgumentExcept |
6fb80 | 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 61 72 67 75 6d 65 6e 74 20 64 | ion(sprintf('The."%s".argument.d |
6fba0 | 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 | oes.not.exist.',.$name));.}..$th |
6fbc0 | 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d | is->arguments[$name].=.$value;.} |
6fbe0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 72 67 75 | .........public.function.hasArgu |
6fc00 | 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 69 | ment($name).{.return.$this->defi |
6fc20 | 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 0a 0a | nition->hasArgument($name);.}... |
6fc40 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 | ....public.function.getOptions() |
6fc60 | 0a 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 64 65 66 | .{.return.array_merge($this->def |
6fc80 | 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 44 65 66 61 75 6c 74 73 28 29 2c 20 24 74 | inition->getOptionDefaults(),.$t |
6fca0 | 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | his->options);.}...........publi |
6fcc0 | 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 | c.function.getOption($name).{.if |
6fce0 | 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 | .(!$this->definition->hasOption( |
6fd00 | 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 | $name)).{.throw.new.\InvalidArgu |
6fd20 | 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 | mentException(sprintf('The."%s". |
6fd40 | 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 | option.does.not.exist.',.$name)) |
6fd60 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 | ;.}..return.isset($this->options |
6fd80 | 5b 24 6e 61 6d 65 5d 29 20 3f 20 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d | [$name]).?.$this->options[$name] |
6fda0 | 20 3a 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 | .:.$this->definition->getOption( |
6fdc0 | 24 6e 61 6d 65 29 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | $name)->getDefault();.}......... |
6fde0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 | .public.function.setOption($name |
6fe00 | 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 | ,.$value).{.if.(!$this->definiti |
6fe20 | 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 | on->hasOption($name)).{.throw.ne |
6fe40 | 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 | w.\InvalidArgumentException(spri |
6fe60 | 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 | ntf('The."%s".option.does.not.ex |
6fe80 | 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e | ist.',.$name));.}..$this->option |
6fea0 | 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | s[$name].=.$value;.}.........pub |
6fec0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a | lic.function.hasOption($name).{. |
6fee0 | 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 | return.$this->definition->hasOpt |
6ff00 | 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ion($name);.}.}.<?php........... |
6ff20 | 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 | namespace.Symfony\Component\Cons |
6ff40 | 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 | ole\Input;.............class.Str |
6ff60 | 69 6e 67 49 6e 70 75 74 20 65 78 74 65 6e 64 73 20 41 72 67 76 49 6e 70 75 74 0a 7b 0a 63 6f 6e | ingInput.extends.ArgvInput.{.con |
6ff80 | 73 74 20 52 45 47 45 58 5f 53 54 52 49 4e 47 20 3d 20 27 28 5b 5e 20 5d 2b 3f 29 28 3f 3a 20 7c | st.REGEX_STRING.=.'([^.]+?)(?:.| |
6ffa0 | 28 3f 3c 21 5c 5c 5c 5c 29 22 7c 28 3f 3c 21 5c 5c 5c 5c 29 5c 27 7c 24 29 27 3b 0a 63 6f 6e 73 | (?<!\\\\)"|(?<!\\\\)\'|$)';.cons |
6ffc0 | 74 20 52 45 47 45 58 5f 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 20 3d 20 27 28 3f 3a 22 28 5b 5e | t.REGEX_QUOTED_STRING.=.'(?:"([^ |
6ffe0 | 22 5c 5c 5c 5c 5d 2a 28 3f 3a 5c 5c 5c 5c 2e 5b 5e 22 5c 5c 5c 5c 5d 2a 29 2a 29 22 7c 5c 27 28 | "\\\\]*(?:\\\\.[^"\\\\]*)*)"|\'( |
70000 | 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 28 3f 3a 5c 5c 5c 5c 2e 5b 5e 5c 27 5c 5c 5c 5c 5d 2a 29 2a 29 5c | [^\'\\\\]*(?:\\\\.[^\'\\\\]*)*)\ |
70020 | 27 29 27 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f | ')';..........public.function.__ |
70040 | 63 6f 6e 73 74 72 75 63 74 28 24 69 6e 70 75 74 2c 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f | construct($input,.InputDefinitio |
70060 | 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a | n.$definition.=.null).{.parent:: |
70080 | 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 28 29 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e | __construct(array(),.$definition |
700a0 | 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 65 74 54 6f 6b 65 6e 73 28 24 74 68 69 73 2d 3e 74 6f 6b 65 | );..$this->setTokens($this->toke |
700c0 | 6e 69 7a 65 28 24 69 6e 70 75 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 | nize($input));.}...........priva |
700e0 | 74 65 20 66 75 6e 63 74 69 6f 6e 20 74 6f 6b 65 6e 69 7a 65 28 24 69 6e 70 75 74 29 0a 7b 0a 24 | te.function.tokenize($input).{.$ |
70100 | 69 6e 70 75 74 20 3d 20 70 72 65 67 5f 72 65 70 6c 61 63 65 28 27 2f 28 5c 72 5c 6e 7c 5c 72 7c | input.=.preg_replace('/(\r\n|\r| |
70120 | 5c 6e 7c 5c 74 29 2f 27 2c 20 27 20 27 2c 20 24 69 6e 70 75 74 29 3b 0a 0a 24 74 6f 6b 65 6e 73 | \n|\t)/',.'.',.$input);..$tokens |
70140 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6c 65 6e 67 74 68 20 3d 20 73 74 72 6c 65 6e 28 24 69 6e | .=.array();.$length.=.strlen($in |
70160 | 70 75 74 29 3b 0a 24 63 75 72 73 6f 72 20 3d 20 30 3b 0a 77 68 69 6c 65 20 28 24 63 75 72 73 6f | put);.$cursor.=.0;.while.($curso |
70180 | 72 20 3c 20 24 6c 65 6e 67 74 68 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f | r.<.$length).{.if.(preg_match('/ |
701a0 | 5c 73 2b 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 | \s+/A',.$input,.$match,.null,.$c |
701c0 | 75 72 73 6f 72 29 29 20 7b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 | ursor)).{.}.elseif.(preg_match(' |
701e0 | 2f 28 5b 5e 3d 22 5c 27 20 5d 2b 3f 29 28 3d 3f 29 28 27 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f | /([^="\'.]+?)(=?)('.self::REGEX_ |
70200 | 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 2e 27 2b 29 2f 41 27 2c 20 24 69 6e 70 75 74 2c 20 24 6d | QUOTED_STRING.'+)/A',.$input,.$m |
70220 | 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 20 7b 0a 24 74 6f 6b 65 6e 73 5b | atch,.null,.$cursor)).{.$tokens[ |
70240 | 5d 20 3d 20 24 6d 61 74 63 68 5b 31 5d 2e 24 6d 61 74 63 68 5b 32 5d 2e 73 74 72 69 70 63 73 6c | ].=.$match[1].$match[2].stripcsl |
70260 | 61 73 68 65 73 28 73 74 72 5f 72 65 70 6c 61 63 65 28 61 72 72 61 79 28 27 22 5c 27 27 2c 20 27 | ashes(str_replace(array('"\'',.' |
70280 | 5c 27 22 27 2c 20 27 5c 27 5c 27 27 2c 20 27 22 22 27 29 2c 20 27 27 2c 20 73 75 62 73 74 72 28 | \'"',.'\'\'',.'""'),.'',.substr( |
702a0 | 24 6d 61 74 63 68 5b 33 5d 2c 20 31 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 33 5d 29 20 | $match[3],.1,.strlen($match[3]). |
702c0 | 2d 20 32 29 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 | -.2)));.}.elseif.(preg_match('/' |
702e0 | 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f 51 55 4f 54 45 44 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c | .self::REGEX_QUOTED_STRING.'/A', |
70300 | 20 24 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 | .$input,.$match,.null,.$cursor)) |
70320 | 20 7b 0a 24 74 6f 6b 65 6e 73 5b 5d 20 3d 20 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 73 75 62 | .{.$tokens[].=.stripcslashes(sub |
70340 | 73 74 72 28 24 6d 61 74 63 68 5b 30 5d 2c 20 31 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b | str($match[0],.1,.strlen($match[ |
70360 | 30 5d 29 20 2d 20 32 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 | 0]).-.2));.}.elseif.(preg_match( |
70380 | 27 2f 27 2e 73 65 6c 66 3a 3a 52 45 47 45 58 5f 53 54 52 49 4e 47 2e 27 2f 41 27 2c 20 24 69 6e | '/'.self::REGEX_STRING.'/A',.$in |
703a0 | 70 75 74 2c 20 24 6d 61 74 63 68 2c 20 6e 75 6c 6c 2c 20 24 63 75 72 73 6f 72 29 29 20 7b 0a 24 | put,.$match,.null,.$cursor)).{.$ |
703c0 | 74 6f 6b 65 6e 73 5b 5d 20 3d 20 73 74 72 69 70 63 73 6c 61 73 68 65 73 28 24 6d 61 74 63 68 5b | tokens[].=.stripcslashes($match[ |
703e0 | 31 5d 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 0a 20 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 | 1]);.}.else.{.....throw.new.\Inv |
70400 | 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 | alidArgumentException(sprintf('U |
70420 | 6e 61 62 6c 65 20 74 6f 20 70 61 72 73 65 20 69 6e 70 75 74 20 6e 65 61 72 20 22 2e 2e 2e 20 25 | nable.to.parse.input.near."....% |
70440 | 73 20 2e 2e 2e 22 27 2c 20 73 75 62 73 74 72 28 24 69 6e 70 75 74 2c 20 24 63 75 72 73 6f 72 2c | s...."',.substr($input,.$cursor, |
70460 | 20 31 30 29 29 29 3b 0a 0a 20 7d 0a 0a 24 63 75 72 73 6f 72 20 2b 3d 20 73 74 72 6c 65 6e 28 24 | .10)));...}..$cursor.+=.strlen($ |
70480 | 6d 61 74 63 68 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 73 3b 0a 7d 0a | match[0]);.}..return.$tokens;.}. |
704a0 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 | }.<?php...........namespace.Symf |
704c0 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a | ony\Component\Console\Input;.... |
704e0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 49 6e 70 75 74 4f 70 74 69 6f 6e 0a 7b 0a 63 6f 6e 73 74 20 56 | .....class.InputOption.{.const.V |
70500 | 41 4c 55 45 5f 4e 4f 4e 45 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 52 45 51 55 49 | ALUE_NONE.=.1;.const.VALUE_REQUI |
70520 | 52 45 44 20 3d 20 32 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 3d 20 | RED.=.2;.const.VALUE_OPTIONAL.=. |
70540 | 34 3b 0a 63 6f 6e 73 74 20 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 3d 20 38 3b 0a 0a 70 72 | 4;.const.VALUE_IS_ARRAY.=.8;..pr |
70560 | 69 76 61 74 65 20 24 6e 61 6d 65 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 3b 0a | ivate.$name;.private.$shortcut;. |
70580 | 70 72 69 76 61 74 65 20 24 6d 6f 64 65 3b 0a 70 72 69 76 61 74 65 20 24 64 65 66 61 75 6c 74 3b | private.$mode;.private.$default; |
705a0 | 0a 70 72 69 76 61 74 65 20 24 64 65 73 63 72 69 70 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | .private.$description;.......... |
705c0 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
705e0 | 28 24 6e 61 6d 65 2c 20 24 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 6c 6c 2c 20 24 6d 6f 64 65 20 | ($name,.$shortcut.=.null,.$mode. |
70600 | 3d 20 6e 75 6c 6c 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 27 27 2c 20 24 64 65 66 61 | =.null,.$description.=.'',.$defa |
70620 | 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 24 | ult.=.null).{.if.(0.===.strpos($ |
70640 | 6e 61 6d 65 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 6e | name,.'--')).{.$name.=.substr($n |
70660 | 61 6d 65 2c 20 32 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 6e 61 6d 65 29 29 20 7b 0a | ame,.2);.}..if.(empty($name)).{. |
70680 | 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 | throw.new.\InvalidArgumentExcept |
706a0 | 69 6f 6e 28 27 41 6e 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 20 63 61 6e 6e 6f 74 20 62 65 20 65 6d | ion('An.option.name.cannot.be.em |
706c0 | 70 74 79 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 68 6f 72 74 63 75 74 29 29 | pty.');.}..if.(empty($shortcut)) |
706e0 | 20 7b 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c | .{.$shortcut.=.null;.}..if.(null |
70700 | 20 21 3d 3d 20 24 73 68 6f 72 74 63 75 74 29 20 7b 0a 69 66 20 28 27 2d 27 20 3d 3d 3d 20 24 73 | .!==.$shortcut).{.if.('-'.===.$s |
70720 | 68 6f 72 74 63 75 74 5b 30 5d 29 20 7b 0a 24 73 68 6f 72 74 63 75 74 20 3d 20 73 75 62 73 74 72 | hortcut[0]).{.$shortcut.=.substr |
70740 | 28 24 73 68 6f 72 74 63 75 74 2c 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 65 6d 70 74 79 28 24 73 68 | ($shortcut,.1);.}..if.(empty($sh |
70760 | 6f 72 74 63 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 | ortcut)).{.throw.new.\InvalidArg |
70780 | 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 41 6e 20 6f 70 74 69 6f 6e 20 73 68 6f 72 74 63 | umentException('An.option.shortc |
707a0 | 75 74 20 63 61 6e 6e 6f 74 20 62 65 20 65 6d 70 74 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 69 66 20 28 | ut.cannot.be.empty.');.}.}..if.( |
707c0 | 6e 75 6c 6c 20 3d 3d 3d 20 24 6d 6f 64 65 29 20 7b 0a 24 6d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a | null.===.$mode).{.$mode.=.self:: |
707e0 | 56 41 4c 55 45 5f 4e 4f 4e 45 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 5f 69 6e 74 28 24 6d | VALUE_NONE;.}.elseif.(!is_int($m |
70800 | 6f 64 65 29 20 7c 7c 20 24 6d 6f 64 65 20 3e 20 31 35 20 7c 7c 20 24 6d 6f 64 65 20 3c 20 31 29 | ode).||.$mode.>.15.||.$mode.<.1) |
70820 | 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 | .{.throw.new.\InvalidArgumentExc |
70840 | 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 4f 70 74 69 6f 6e 20 6d 6f 64 65 20 22 25 73 22 | eption(sprintf('Option.mode."%s" |
70860 | 20 69 73 20 6e 6f 74 20 76 61 6c 69 64 2e 27 2c 20 24 6d 6f 64 65 29 29 3b 0a 7d 0a 0a 24 74 68 | .is.not.valid.',.$mode));.}..$th |
70880 | 69 73 2d 3e 6e 61 6d 65 20 3d 20 24 6e 61 6d 65 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 | is->name.=.$name;.$this->shortcu |
708a0 | 74 20 3d 20 24 73 68 6f 72 74 63 75 74 3b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f | t.=.$shortcut;.$this->mode.=.$mo |
708c0 | 64 65 3b 0a 24 74 68 69 73 2d 3e 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 24 64 65 73 63 72 69 | de;.$this->description.=.$descri |
708e0 | 70 74 69 6f 6e 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 20 26 26 20 | ption;..if.($this->isArray().&&. |
70900 | 21 24 74 68 69 73 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 74 68 72 6f 77 20 6e | !$this->acceptValue()).{.throw.n |
70920 | 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6d | ew.\InvalidArgumentException('Im |
70940 | 70 6f 73 73 69 62 6c 65 20 74 6f 20 68 61 76 65 20 61 6e 20 6f 70 74 69 6f 6e 20 6d 6f 64 65 20 | possible.to.have.an.option.mode. |
70960 | 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 69 66 20 74 68 65 20 6f 70 74 69 6f 6e 20 64 6f 65 | VALUE_IS_ARRAY.if.the.option.doe |
70980 | 73 20 6e 6f 74 20 61 63 63 65 70 74 20 61 20 76 61 6c 75 65 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 | s.not.accept.a.value.');.}..$thi |
709a0 | 73 2d 3e 73 65 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | s->setDefault($default);.}...... |
709c0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 53 68 6f 72 74 63 75 74 28 29 0a 7b | .public.function.getShortcut().{ |
709e0 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 3b 0a 7d 0a 0a 0a 0a 0a 0a | .return.$this->shortcut;.}...... |
70a00 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 | .public.function.getName().{.ret |
70a20 | 75 72 6e 20 24 74 68 69 73 2d 3e 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | urn.$this->name;.}.......public. |
70a40 | 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 56 61 6c 75 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | function.acceptValue().{.return. |
70a60 | 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 7c 7c 20 24 74 68 69 | $this->isValueRequired().||.$thi |
70a80 | 73 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | s->isValueOptional();.}.......pu |
70aa0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 0a | blic.function.isValueRequired(). |
70ac0 | 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 3d 3d | {.return.self::VALUE_REQUIRED.== |
70ae0 | 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 52 45 51 55 49 52 45 44 20 26 20 24 74 68 69 73 2d | =.(self::VALUE_REQUIRED.&.$this- |
70b00 | 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | >mode);.}.......public.function. |
70b20 | 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 0a 7b 0a 72 65 74 75 72 6e 20 73 65 6c 66 3a | isValueOptional().{.return.self: |
70b40 | 3a 56 41 4c 55 45 5f 4f 50 54 49 4f 4e 41 4c 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 45 | :VALUE_OPTIONAL.===.(self::VALUE |
70b60 | 5f 4f 50 54 49 4f 4e 41 4c 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b 0a 7d 0a 0a 0a 0a 0a | _OPTIONAL.&.$this->mode);.}..... |
70b80 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 41 72 72 61 79 28 29 0a 7b 0a 72 65 | ..public.function.isArray().{.re |
70ba0 | 74 75 72 6e 20 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 3d 3d 3d 20 28 73 | turn.self::VALUE_IS_ARRAY.===.(s |
70bc0 | 65 6c 66 3a 3a 56 41 4c 55 45 5f 49 53 5f 41 52 52 41 59 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 | elf::VALUE_IS_ARRAY.&.$this->mod |
70be0 | 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | e);.}.........public.function.se |
70c00 | 74 44 65 66 61 75 6c 74 28 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 | tDefault($default.=.null).{.if.( |
70c20 | 73 65 6c 66 3a 3a 56 41 4c 55 45 5f 4e 4f 4e 45 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 56 41 4c 55 | self::VALUE_NONE.===.(self::VALU |
70c40 | 45 5f 4e 4f 4e 45 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 6e 75 6c 6c 20 21 3d | E_NONE.&.$this->mode).&&.null.!= |
70c60 | 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 | =.$default).{.throw.new.\LogicEx |
70c80 | 63 65 70 74 69 6f 6e 28 27 43 61 6e 6e 6f 74 20 73 65 74 20 61 20 64 65 66 61 75 6c 74 20 76 61 | ception('Cannot.set.a.default.va |
70ca0 | 6c 75 65 20 77 68 65 6e 20 75 73 69 6e 67 20 4f 70 74 69 6f 6e 3a 3a 56 41 4c 55 45 5f 4e 4f 4e | lue.when.using.Option::VALUE_NON |
70cc0 | 45 20 6d 6f 64 65 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 | E.mode.');.}..if.($this->isArray |
70ce0 | 28 29 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 24 | ()).{.if.(null.===.$default).{.$ |
70d00 | 64 65 66 61 75 6c 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 21 69 73 | default.=.array();.}.elseif.(!is |
70d20 | 5f 61 72 72 61 79 28 24 64 65 66 61 75 6c 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c | _array($default)).{.throw.new.\L |
70d40 | 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 41 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 66 | ogicException('A.default.value.f |
70d60 | 6f 72 20 61 6e 20 61 72 72 61 79 20 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 61 6e 20 61 72 | or.an.array.option.must.be.an.ar |
70d80 | 72 61 79 2e 27 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 20 3d 20 24 74 | ray.');.}.}..$this->default.=.$t |
70da0 | 68 69 73 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f 20 24 64 65 66 61 75 6c 74 20 3a 20 | his->acceptValue().?.$default.:. |
70dc0 | 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | false;.}.......public.function.g |
70de0 | 65 74 44 65 66 61 75 6c 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 66 61 | etDefault().{.return.$this->defa |
70e00 | 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | ult;.}.......public.function.get |
70e20 | 44 65 73 63 72 69 70 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 | Description().{.return.$this->de |
70e40 | 73 63 72 69 70 74 69 6f 6e 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | scription;.}........public.funct |
70e60 | 69 6f 6e 20 65 71 75 61 6c 73 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a | ion.equals(InputOption.$option). |
70e80 | 7b 0a 72 65 74 75 72 6e 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 20 3d 3d 3d 20 | {.return.$option->getName().===. |
70ea0 | 24 74 68 69 73 2d 3e 67 65 74 4e 61 6d 65 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 | $this->getName().&&.$option->get |
70ec0 | 53 68 6f 72 74 63 75 74 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 67 65 74 53 68 6f 72 74 63 75 | Shortcut().===.$this->getShortcu |
70ee0 | 74 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3d 3d 3d | t().&&.$option->getDefault().=== |
70f00 | 20 24 74 68 69 73 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 0a 26 26 20 24 6f 70 74 69 6f 6e 2d | .$this->getDefault().&&.$option- |
70f20 | 3e 69 73 41 72 72 61 79 28 29 20 3d 3d 3d 20 24 74 68 69 73 2d 3e 69 73 41 72 72 61 79 28 29 0a | >isArray().===.$this->isArray(). |
70f40 | 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 3d 3d | &&.$option->isValueRequired().== |
70f60 | 3d 20 24 74 68 69 73 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 0a 26 26 20 24 6f | =.$this->isValueRequired().&&.$o |
70f80 | 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3d 3d 3d 20 24 74 68 | ption->isValueOptional().===.$th |
70fa0 | 69 73 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 0a 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | is->isValueOptional().;.}.}.<?ph |
70fc0 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | p...........namespace.Symfony\Co |
70fe0 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | mponent\Console\Input;.......... |
71000 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 67 76 49 6e 70 | ...................class.ArgvInp |
71020 | 75 74 20 65 78 74 65 6e 64 73 20 49 6e 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 74 6f 6b 65 | ut.extends.Input.{.private.$toke |
71040 | 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 70 61 72 73 65 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | ns;.private.$parsed;..........pu |
71060 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 | blic.function.__construct(array. |
71080 | 24 61 72 67 76 20 3d 20 6e 75 6c 6c 2c 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 | $argv.=.null,.InputDefinition.$d |
710a0 | 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d | efinition.=.null).{.if.(null.=== |
710c0 | 20 24 61 72 67 76 29 20 7b 0a 24 61 72 67 76 20 3d 20 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 | .$argv).{.$argv.=.$_SERVER['argv |
710e0 | 27 5d 3b 0a 7d 0a 0a 0a 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 61 72 67 76 29 3b 0a 0a 24 74 | '];.}....array_shift($argv);..$t |
71100 | 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 3d 20 24 61 72 67 76 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f | his->tokens.=.$argv;..parent::__ |
71120 | 63 6f 6e 73 74 72 75 63 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d 0a 0a 70 72 6f 74 65 | construct($definition);.}..prote |
71140 | 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 6f 6b 65 6e 73 28 61 72 72 61 79 20 24 74 | cted.function.setTokens(array.$t |
71160 | 6f 6b 65 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 20 3d 20 24 74 6f 6b 65 6e 73 | okens).{.$this->tokens.=.$tokens |
71180 | 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 | ;.}.....protected.function.parse |
711a0 | 28 29 0a 7b 0a 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 3d 20 74 72 75 65 3b 0a 24 74 68 69 73 | ().{.$parseOptions.=.true;.$this |
711c0 | 2d 3e 70 61 72 73 65 64 20 3d 20 24 74 68 69 73 2d 3e 74 6f 6b 65 6e 73 3b 0a 77 68 69 6c 65 20 | ->parsed.=.$this->tokens;.while. |
711e0 | 28 6e 75 6c 6c 20 21 3d 3d 20 24 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 | (null.!==.$token.=.array_shift($ |
71200 | 74 68 69 73 2d 3e 70 61 72 73 65 64 29 29 20 7b 0a 69 66 20 28 24 70 61 72 73 65 4f 70 74 69 6f | this->parsed)).{.if.($parseOptio |
71220 | 6e 73 20 26 26 20 27 27 20 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 | ns.&&.''.==.$token).{.$this->par |
71240 | 73 65 41 72 67 75 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 | seArgument($token);.}.elseif.($p |
71260 | 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 27 2d 2d 27 20 3d 3d 20 24 74 6f 6b 65 6e 29 20 7b | arseOptions.&&.'--'.==.$token).{ |
71280 | 0a 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 | .$parseOptions.=.false;.}.elseif |
712a0 | 20 28 24 70 61 72 73 65 4f 70 74 69 6f 6e 73 20 26 26 20 30 20 3d 3d 3d 20 73 74 72 70 6f 73 28 | .($parseOptions.&&.0.===.strpos( |
712c0 | 24 74 6f 6b 65 6e 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 4c 6f 6e | $token,.'--')).{.$this->parseLon |
712e0 | 67 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 70 61 72 73 | gOption($token);.}.elseif.($pars |
71300 | 65 4f 70 74 69 6f 6e 73 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 74 6f 6b 65 6e 5b 30 5d 29 20 7b | eOptions.&&.'-'.===.$token[0]).{ |
71320 | 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 | .$this->parseShortOption($token) |
71340 | 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 41 72 67 75 6d 65 6e 74 28 | ;.}.else.{.$this->parseArgument( |
71360 | 24 74 6f 6b 65 6e 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e | $token);.}.}.}.......private.fun |
71380 | 63 74 69 6f 6e 20 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 0a 7b | ction.parseShortOption($token).{ |
713a0 | 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 31 29 3b 0a 0a 69 66 20 | .$name.=.substr($token,.1);..if. |
713c0 | 28 73 74 72 6c 65 6e 28 24 6e 61 6d 65 29 20 3e 20 31 29 20 7b 0a 69 66 20 28 24 74 68 69 73 2d | (strlen($name).>.1).{.if.($this- |
713e0 | 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 30 | >definition->hasShortcut($name[0 |
71400 | 5d 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 | ]).&&.$this->definition->getOpti |
71420 | 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 30 5d 29 2d 3e 61 63 63 65 70 74 56 | onForShortcut($name[0])->acceptV |
71440 | 61 6c 75 65 28 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f 70 74 69 6f | alue()).{...$this->addShortOptio |
71460 | 6e 28 24 6e 61 6d 65 5b 30 5d 2c 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 31 29 29 3b 0a 7d | n($name[0],.substr($name,.1));.} |
71480 | 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 65 53 68 6f 72 74 4f 70 74 69 6f 6e 53 | .else.{.$this->parseShortOptionS |
714a0 | 65 74 28 24 6e 61 6d 65 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 | et($name);.}.}.else.{.$this->add |
714c0 | 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a 0a 0a | ShortOption($name,.null);.}.}... |
714e0 | 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 53 68 6f 72 | ......private.function.parseShor |
71500 | 74 4f 70 74 69 6f 6e 53 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 24 6c 65 6e 20 3d 20 73 74 72 6c 65 | tOptionSet($name).{.$len.=.strle |
71520 | 6e 28 24 6e 61 6d 65 29 3b 0a 66 6f 72 20 28 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 6c 65 6e | n($name);.for.($i.=.0;.$i.<.$len |
71540 | 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e | ;.$i++).{.if.(!$this->definition |
71560 | 2d 3e 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 5b 24 69 5d 29 29 20 7b 0a 74 68 72 6f | ->hasShortcut($name[$i])).{.thro |
71580 | 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 | w.new.\RuntimeException(sprintf( |
715a0 | 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 | 'The."-%s".option.does.not.exist |
715c0 | 2e 27 2c 20 24 6e 61 6d 65 5b 24 69 5d 29 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 74 | .',.$name[$i]));.}..$option.=.$t |
715e0 | 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f | his->definition->getOptionForSho |
71600 | 72 74 63 75 74 28 24 6e 61 6d 65 5b 24 69 5d 29 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 | rtcut($name[$i]);.if.($option->a |
71620 | 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 | cceptValue()).{.$this->addLongOp |
71640 | 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 69 20 3d 3d 3d 20 | tion($option->getName(),.$i.===. |
71660 | 24 6c 65 6e 20 2d 20 31 20 3f 20 6e 75 6c 6c 20 3a 20 73 75 62 73 74 72 28 24 6e 61 6d 65 2c 20 | $len.-.1.?.null.:.substr($name,. |
71680 | 24 69 20 2b 20 31 29 29 3b 0a 0a 62 72 65 61 6b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 | $i.+.1));..break;.}.else.{.$this |
716a0 | 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 | ->addLongOption($option->getName |
716c0 | 28 29 2c 20 74 72 75 65 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 | (),.true);.}.}.}.......private.f |
716e0 | 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 6f 6b 65 6e 29 0a | unction.parseLongOption($token). |
71700 | 7b 0a 24 6e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 32 29 3b 0a 0a 69 66 | {.$name.=.substr($token,.2);..if |
71720 | 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 6e 61 6d 65 2c | .(false.!==.$pos.=.strpos($name, |
71740 | 20 27 3d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 73 75 | .'=')).{.$this->addLongOption(su |
71760 | 62 73 74 72 28 24 6e 61 6d 65 2c 20 30 2c 20 24 70 6f 73 29 2c 20 73 75 62 73 74 72 28 24 6e 61 | bstr($name,.0,.$pos),.substr($na |
71780 | 6d 65 2c 20 24 70 6f 73 20 2b 20 31 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e | me,.$pos.+.1));.}.else.{.$this-> |
717a0 | 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 6e 75 6c 6c 29 3b 0a 7d 0a 7d 0a | addLongOption($name,.null);.}.}. |
717c0 | 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 41 72 | ........private.function.parseAr |
717e0 | 67 75 6d 65 6e 74 28 24 74 6f 6b 65 6e 29 0a 7b 0a 24 63 20 3d 20 63 6f 75 6e 74 28 24 74 68 69 | gument($token).{.$c.=.count($thi |
71800 | 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 0a 0a 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 66 | s->arguments);....if.($this->def |
71820 | 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 63 29 29 20 7b 0a 24 61 72 67 | inition->hasArgument($c)).{.$arg |
71840 | 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 75 6d 65 6e | .=.$this->definition->getArgumen |
71860 | 74 28 24 63 29 3b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 2d 3e 67 65 | t($c);.$this->arguments[$arg->ge |
71880 | 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 2d 3e 69 73 41 72 72 61 79 28 29 3f 20 61 72 72 61 | tName()].=.$arg->isArray()?.arra |
718a0 | 79 28 24 74 6f 6b 65 6e 29 20 3a 20 24 74 6f 6b 65 6e 3b 0a 0a 0a 20 7d 20 65 6c 73 65 69 66 20 | y($token).:.$token;....}.elseif. |
718c0 | 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 | ($this->definition->hasArgument( |
718e0 | 24 63 20 2d 20 31 29 20 26 26 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 | $c.-.1).&&.$this->definition->ge |
71900 | 74 41 72 67 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a | tArgument($c.-.1)->isArray()).{. |
71920 | 24 61 72 67 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 41 72 67 | $arg.=.$this->definition->getArg |
71940 | 75 6d 65 6e 74 28 24 63 20 2d 20 31 29 3b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b | ument($c.-.1);.$this->arguments[ |
71960 | 24 61 72 67 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 5b 5d 20 3d 20 24 74 6f 6b 65 6e 3b 0a 0a 0a 20 | $arg->getName()][].=.$token;.... |
71980 | 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 | }.else.{.throw.new.\RuntimeExcep |
719a0 | 74 69 6f 6e 28 27 54 6f 6f 20 6d 61 6e 79 20 61 72 67 75 6d 65 6e 74 73 2e 27 29 3b 0a 7d 0a 7d | tion('Too.many.arguments.');.}.} |
719c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 53 68 | ..........private.function.addSh |
719e0 | 6f 72 74 4f 70 74 69 6f 6e 28 24 73 68 6f 72 74 63 75 74 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 | ortOption($shortcut,.$value).{.i |
71a00 | 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 53 68 6f 72 74 63 | f.(!$this->definition->hasShortc |
71a20 | 75 74 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 | ut($shortcut)).{.throw.new.\Runt |
71a40 | 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 25 73 22 20 | imeException(sprintf('The."-%s". |
71a60 | 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 73 68 6f 72 74 63 | option.does.not.exist.',.$shortc |
71a80 | 75 74 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 | ut));.}..$this->addLongOption($t |
71aa0 | 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f | his->definition->getOptionForSho |
71ac0 | 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 | rtcut($shortcut)->getName(),.$va |
71ae0 | 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f | lue);.}..........private.functio |
71b00 | 6e 20 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b | n.addLongOption($name,.$value).{ |
71b20 | 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 | .if.(!$this->definition->hasOpti |
71b40 | 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 | on($name)).{.throw.new.\RuntimeE |
71b60 | 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 | xception(sprintf('The."--%s".opt |
71b80 | 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d | ion.does.not.exist.',.$name));.} |
71ba0 | 0a 0a 24 6f 70 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 | ..$option.=.$this->definition->g |
71bc0 | 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 | etOption($name);..if.(null.===.$ |
71be0 | 76 61 6c 75 65 20 26 26 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 | value.&&.$option->acceptValue()) |
71c00 | 20 7b 0a 0a 20 0a 20 24 6e 65 78 74 20 3d 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 | .{.....$next.=.array_shift($this |
71c20 | 2d 3e 70 61 72 73 65 64 29 3b 0a 69 66 20 28 27 2d 27 20 21 3d 3d 20 24 6e 65 78 74 5b 30 5d 29 | ->parsed);.if.('-'.!==.$next[0]) |
71c40 | 20 7b 0a 24 76 61 6c 75 65 20 3d 20 24 6e 65 78 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 61 72 72 61 | .{.$value.=.$next;.}.else.{.arra |
71c60 | 79 5f 75 6e 73 68 69 66 74 28 24 74 68 69 73 2d 3e 70 61 72 73 65 64 2c 20 24 6e 65 78 74 29 3b | y_unshift($this->parsed,.$next); |
71c80 | 0a 7d 0a 7d 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 | .}.}..if.(null.===.$value).{.if. |
71ca0 | 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 29 20 7b 0a 74 | ($option->isValueRequired()).{.t |
71cc0 | 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e | hrow.new.\RuntimeException(sprin |
71ce0 | 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 65 73 20 61 | tf('The."--%s".option.requires.a |
71d00 | 20 76 61 6c 75 65 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 76 61 6c 75 65 20 3d 20 24 | .value.',.$name));.}..$value.=.$ |
71d20 | 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 24 6f 70 74 | option->isValueOptional().?.$opt |
71d40 | 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 74 72 75 65 3b 0a 7d 0a 0a 69 66 20 | ion->getDefault().:.true;.}..if. |
71d60 | 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6f 70 | ($option->isArray()).{.$this->op |
71d80 | 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 5b 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 20 65 6c 73 65 20 | tions[$name][].=.$value;.}.else. |
71da0 | 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 76 61 6c 75 65 | {.$this->options[$name].=.$value |
71dc0 | 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 | ;.}.}.......public.function.getF |
71de0 | 69 72 73 74 41 72 67 75 6d 65 6e 74 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d | irstArgument().{.foreach.($this- |
71e00 | 3e 74 6f 6b 65 6e 73 20 61 73 20 24 74 6f 6b 65 6e 29 20 7b 0a 69 66 20 28 24 74 6f 6b 65 6e 20 | >tokens.as.$token).{.if.($token. |
71e20 | 26 26 20 27 2d 27 20 3d 3d 3d 20 24 74 6f 6b 65 6e 5b 30 5d 29 20 7b 0a 63 6f 6e 74 69 6e 75 65 | &&.'-'.===.$token[0]).{.continue |
71e40 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | ;.}..return.$token;.}.}......... |
71e60 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 72 61 6d 65 74 65 72 4f | ...public.function.hasParameterO |
71e80 | 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 72 72 61 | ption($values).{.$values.=.(arra |
71ea0 | 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 74 6f 6b | y).$values;..foreach.($this->tok |
71ec0 | 65 6e 73 20 61 73 20 24 76 29 20 7b 0a 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 76 2c 20 24 76 | ens.as.$v).{.if.(in_array($v,.$v |
71ee0 | 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 | alues)).{.return.true;.}.}..retu |
71f00 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | rn.false;.}.............public.f |
71f20 | 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 | unction.getParameterOption($valu |
71f40 | 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 24 76 61 6c 75 65 73 20 | es,.$default.=.false).{.$values. |
71f60 | 3d 20 28 61 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a 24 74 6f 6b 65 6e 73 20 3d 20 24 74 | =.(array).$values;..$tokens.=.$t |
71f80 | 68 69 73 2d 3e 74 6f 6b 65 6e 73 3b 0a 77 68 69 6c 65 20 28 24 74 6f 6b 65 6e 20 3d 20 61 72 72 | his->tokens;.while.($token.=.arr |
71fa0 | 61 79 5f 73 68 69 66 74 28 24 74 6f 6b 65 6e 73 29 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 24 76 | ay_shift($tokens)).{.foreach.($v |
71fc0 | 61 6c 75 65 73 20 61 73 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 74 72 | alues.as.$value).{.if.(0.===.str |
71fe0 | 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 24 76 61 6c 75 65 29 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 | pos($token,.$value)).{.if.(false |
72000 | 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 72 70 6f 73 28 24 74 6f 6b 65 6e 2c 20 27 3d 27 29 29 | .!==.$pos.=.strpos($token,.'=')) |
72020 | 20 7b 0a 72 65 74 75 72 6e 20 73 75 62 73 74 72 28 24 74 6f 6b 65 6e 2c 20 24 70 6f 73 20 2b 20 | .{.return.substr($token,.$pos.+. |
72040 | 31 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 6f 6b 65 6e | 1);.}..return.array_shift($token |
72060 | 73 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 7d 0a | s);.}.}.}..return.$default;.}.}. |
72080 | 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e | <?php...........namespace.Symfon |
720a0 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a | y\Component\Console\Input;...... |
720c0 | 0a 69 6e 74 65 72 66 61 63 65 20 49 6e 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a | .interface.InputInterface.{..... |
720e0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 72 73 74 41 72 67 75 6d 65 6e | .public.function.getFirstArgumen |
72100 | 74 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | t();............public.function. |
72120 | 68 61 73 50 61 72 61 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 3b 0a 0a 0a 0a | hasParameterOption($values);.... |
72140 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 | .........public.function.getPara |
72160 | 6d 65 74 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 | meterOption($values,.$default.=. |
72180 | 66 61 6c 73 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 62 69 | false);.......public.function.bi |
721a0 | 6e 64 28 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b | nd(InputDefinition.$definition); |
721c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 | .........public.function.validat |
721e0 | 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 | e();.......public.function.getAr |
72200 | 67 75 6d 65 6e 74 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | guments();.........public.functi |
72220 | 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | on.getArgument($name);.......... |
72240 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d | public.function.setArgument($nam |
72260 | 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | e,.$value);.........public.funct |
72280 | 69 6f 6e 20 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 | ion.hasArgument($name);.......pu |
722a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 3b 0a 0a 0a 0a 0a | blic.function.getOptions();..... |
722c0 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 28 24 6e | ....public.function.getOption($n |
722e0 | 61 6d 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | ame);..........public.function.s |
72300 | 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 3b 0a 0a 0a 0a 0a 0a 0a 0a | etOption($name,.$value);........ |
72320 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 | .public.function.hasOption($name |
72340 | 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 49 6e 74 65 72 | );.......public.function.isInter |
72360 | 61 63 74 69 76 65 28 29 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | active();.......public.function. |
72380 | 73 65 74 49 6e 74 65 72 61 63 74 69 76 65 28 24 69 6e 74 65 72 61 63 74 69 76 65 29 3b 0a 7d 0a | setInteractive($interactive);.}. |
723a0 | 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e | <?php...........namespace.Symfon |
723c0 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a | y\Component\Console\Input;...... |
723e0 | 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 41 72 72 61 79 49 6e 70 75 74 20 65 78 74 65 6e 64 73 20 | .......class.ArrayInput.extends. |
72400 | 49 6e 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a 0a 0a 0a | Input.{.private.$parameters;.... |
72420 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 | ......public.function.__construc |
72440 | 74 28 61 72 72 61 79 20 24 70 61 72 61 6d 65 74 65 72 73 2c 20 49 6e 70 75 74 44 65 66 69 6e 69 | t(array.$parameters,.InputDefini |
72460 | 74 69 6f 6e 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 | tion.$definition.=.null).{.$this |
72480 | 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 3d 20 24 70 61 72 61 6d 65 74 65 72 73 3b 0a 0a 70 61 72 | ->parameters.=.$parameters;..par |
724a0 | 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 64 65 66 69 6e 69 74 69 6f 6e 29 3b 0a 7d | ent::__construct($definition);.} |
724c0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 69 72 73 74 41 | .......public.function.getFirstA |
724e0 | 72 67 75 6d 65 6e 74 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 | rgument().{.foreach.($this->para |
72500 | 6d 65 74 65 72 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 | meters.as.$key.=>.$value).{.if.( |
72520 | 24 6b 65 79 20 26 26 20 27 2d 27 20 3d 3d 3d 20 24 6b 65 79 5b 30 5d 29 20 7b 0a 63 6f 6e 74 69 | $key.&&.'-'.===.$key[0]).{.conti |
72540 | 6e 75 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a | nue;.}..return.$value;.}.}...... |
72560 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 50 61 72 61 6d 65 74 | ......public.function.hasParamet |
72580 | 65 72 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 | erOption($values).{.$values.=.(a |
725a0 | 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e | rray).$values;..foreach.($this-> |
725c0 | 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 28 21 69 | parameters.as.$k.=>.$v).{.if.(!i |
725e0 | 73 5f 69 6e 74 28 24 6b 29 29 20 7b 0a 24 76 20 3d 20 24 6b 3b 0a 7d 0a 0a 69 66 20 28 69 6e 5f | s_int($k)).{.$v.=.$k;.}..if.(in_ |
72600 | 61 72 72 61 79 28 24 76 2c 20 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 | array($v,.$values)).{.return.tru |
72620 | 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | e;.}.}..return.false;.}......... |
72640 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 72 61 6d 65 74 65 72 | ....public.function.getParameter |
72660 | 4f 70 74 69 6f 6e 28 24 76 61 6c 75 65 73 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 66 61 6c 73 65 | Option($values,.$default.=.false |
72680 | 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 76 61 6c 75 65 73 3b 0a 0a | ).{.$values.=.(array).$values;.. |
726a0 | 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 65 72 73 20 61 73 20 24 6b | foreach.($this->parameters.as.$k |
726c0 | 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 28 69 73 5f 69 6e 74 28 24 6b 29 20 26 26 20 69 6e 5f 61 | .=>.$v).{.if.(is_int($k).&&.in_a |
726e0 | 72 72 61 79 28 24 76 2c 20 24 76 61 6c 75 65 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 | rray($v,.$values)).{.return.true |
72700 | 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 6e 5f 61 72 72 61 79 28 24 6b 2c 20 24 76 61 6c 75 65 73 | ;.}.elseif.(in_array($k,.$values |
72720 | 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 76 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 64 65 66 | )).{.return.$v;.}.}..return.$def |
72740 | 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 | ault;.}.....protected.function.p |
72760 | 61 72 73 65 28 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 65 74 | arse().{.foreach.($this->paramet |
72780 | 65 72 73 20 61 73 20 24 6b 65 79 20 3d 3e 20 24 76 61 6c 75 65 29 20 7b 0a 69 66 20 28 30 20 3d | ers.as.$key.=>.$value).{.if.(0.= |
727a0 | 3d 3d 20 73 74 72 70 6f 73 28 24 6b 65 79 2c 20 27 2d 2d 27 29 29 20 7b 0a 24 74 68 69 73 2d 3e | ==.strpos($key,.'--')).{.$this-> |
727c0 | 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 73 75 62 73 74 72 28 24 6b 65 79 2c 20 32 29 2c 20 24 | addLongOption(substr($key,.2),.$ |
727e0 | 76 61 6c 75 65 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2d 27 20 3d 3d 3d 20 24 6b 65 79 5b 30 | value);.}.elseif.('-'.===.$key[0 |
72800 | 5d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 73 75 62 73 74 | ]).{.$this->addShortOption(subst |
72820 | 72 28 24 6b 65 79 2c 20 31 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 | r($key,.1),.$value);.}.else.{.$t |
72840 | 68 69 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6b 65 79 2c 20 24 76 61 6c 75 65 29 3b 0a | his->addArgument($key,.$value);. |
72860 | 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 | }.}.}..........private.function. |
72880 | 61 64 64 53 68 6f 72 74 4f 70 74 69 6f 6e 28 24 73 68 6f 72 74 63 75 74 2c 20 24 76 61 6c 75 65 | addShortOption($shortcut,.$value |
728a0 | 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 53 | ).{.if.(!$this->definition->hasS |
728c0 | 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 | hortcut($shortcut)).{.throw.new. |
728e0 | 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 | \InvalidArgumentException(sprint |
72900 | 66 28 27 54 68 65 20 22 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 | f('The."-%s".option.does.not.exi |
72920 | 73 74 2e 27 2c 20 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 64 64 | st.',.$shortcut));.}..$this->add |
72940 | 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 | LongOption($this->definition->ge |
72960 | 74 4f 70 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 2d 3e 67 | tOptionForShortcut($shortcut)->g |
72980 | 65 74 4e 61 6d 65 28 29 2c 20 24 76 61 6c 75 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | etName(),.$value);.}...........p |
729a0 | 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4c 6f 6e 67 4f 70 74 69 6f 6e 28 24 6e | rivate.function.addLongOption($n |
729c0 | 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e | ame,.$value).{.if.(!$this->defin |
729e0 | 69 74 69 6f 6e 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 | ition->hasOption($name)).{.throw |
72a00 | 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 | .new.\InvalidArgumentException(s |
72a20 | 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e | printf('The."--%s".option.does.n |
72a40 | 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 6f 70 74 69 6f 6e 20 | ot.exist.',.$name));.}..$option. |
72a60 | 3d 20 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 | =.$this->definition->getOption($ |
72a80 | 6e 61 6d 65 29 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 76 61 6c 75 65 29 20 7b 0a 69 | name);..if.(null.===.$value).{.i |
72aa0 | 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 29 20 7b | f.($option->isValueRequired()).{ |
72ac0 | 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 | .throw.new.\InvalidArgumentExcep |
72ae0 | 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 | tion(sprintf('The."--%s".option. |
72b00 | 72 65 71 75 69 72 65 73 20 61 20 76 61 6c 75 65 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a | requires.a.value.',.$name));.}.. |
72b20 | 24 76 61 6c 75 65 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 4f 70 74 69 6f 6e 61 | $value.=.$option->isValueOptiona |
72b40 | 6c 28 29 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 74 72 | l().?.$option->getDefault().:.tr |
72b60 | 75 65 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 20 3d 20 24 | ue;.}..$this->options[$name].=.$ |
72b80 | 76 61 6c 75 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 | value;.}..........private.functi |
72ba0 | 6f 6e 20 61 64 64 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 2c 20 24 76 61 6c 75 65 29 0a 7b 0a | on.addArgument($name,.$value).{. |
72bc0 | 69 66 20 28 21 24 74 68 69 73 2d 3e 64 65 66 69 6e 69 74 69 6f 6e 2d 3e 68 61 73 41 72 67 75 6d | if.(!$this->definition->hasArgum |
72be0 | 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 | ent($name)).{.throw.new.\Invalid |
72c00 | 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 | ArgumentException(sprintf('The." |
72c20 | 25 73 22 20 61 72 67 75 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 | %s".argument.does.not.exist.',.$ |
72c40 | 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d | name));.}..$this->arguments[$nam |
72c60 | 65 5d 20 3d 20 24 76 61 6c 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | e].=.$value;.}.}.<?php.......... |
72c80 | 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e | .namespace.Symfony\Component\Con |
72ca0 | 73 6f 6c 65 5c 49 6e 70 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 | sole\Input;................class |
72cc0 | 20 49 6e 70 75 74 44 65 66 69 6e 69 74 69 6f 6e 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 72 67 75 | .InputDefinition.{.private.$argu |
72ce0 | 6d 65 6e 74 73 3b 0a 70 72 69 76 61 74 65 20 24 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a 70 | ments;.private.$requiredCount;.p |
72d00 | 72 69 76 61 74 65 20 24 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 66 61 6c | rivate.$hasAnArrayArgument.=.fal |
72d20 | 73 65 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 4f 70 74 69 6f 6e 61 6c 3b 0a 70 72 69 76 61 74 | se;.private.$hasOptional;.privat |
72d40 | 65 20 24 6f 70 74 69 6f 6e 73 3b 0a 70 72 69 76 61 74 65 20 24 73 68 6f 72 74 63 75 74 73 3b 0a | e.$options;.private.$shortcuts;. |
72d60 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 | ........public.function.__constr |
72d80 | 75 63 74 28 61 72 72 61 79 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 61 72 72 61 79 28 29 29 | uct(array.$definition.=.array()) |
72da0 | 0a 7b 0a 24 74 68 69 73 2d 3e 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 24 64 65 66 69 6e 69 74 | .{.$this->setDefinition($definit |
72dc0 | 69 6f 6e 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ion);.}.........public.function. |
72de0 | 73 65 74 44 65 66 69 6e 69 74 69 6f 6e 28 61 72 72 61 79 20 24 64 65 66 69 6e 69 74 69 6f 6e 29 | setDefinition(array.$definition) |
72e00 | 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 6f 70 74 69 6f 6e | .{.$arguments.=.array();.$option |
72e20 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 69 6e 69 74 69 6f | s.=.array();.foreach.($definitio |
72e40 | 6e 20 61 73 20 24 69 74 65 6d 29 20 7b 0a 69 66 20 28 24 69 74 65 6d 20 69 6e 73 74 61 6e 63 65 | n.as.$item).{.if.($item.instance |
72e60 | 6f 66 20 49 6e 70 75 74 4f 70 74 69 6f 6e 29 20 7b 0a 24 6f 70 74 69 6f 6e 73 5b 5d 20 3d 20 24 | of.InputOption).{.$options[].=.$ |
72e80 | 69 74 65 6d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 5b 5d 20 3d 20 24 69 | item;.}.else.{.$arguments[].=.$i |
72ea0 | 74 65 6d 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 61 | tem;.}.}..$this->setArguments($a |
72ec0 | 72 67 75 6d 65 6e 74 73 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 | rguments);.$this->setOptions($op |
72ee0 | 74 69 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | tions);.}.........public.functio |
72f00 | 6e 20 73 65 74 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 | n.setArguments($arguments.=.arra |
72f20 | 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 | y()).{.$this->arguments.=.array( |
72f40 | 29 3b 0a 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 20 3d 20 30 3b 0a 24 74 68 | );.$this->requiredCount.=.0;.$th |
72f60 | 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e | is->hasOptional.=.false;.$this-> |
72f80 | 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 | hasAnArrayArgument.=.false;.$thi |
72fa0 | 73 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a | s->addArguments($arguments);.}.. |
72fc0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 75 6d 65 | .......public.function.addArgume |
72fe0 | 6e 74 73 28 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 69 66 20 28 | nts($arguments.=.array()).{.if.( |
73000 | 6e 75 6c 6c 20 21 3d 3d 20 24 61 72 67 75 6d 65 6e 74 73 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 | null.!==.$arguments).{.foreach.( |
73020 | 24 61 72 67 75 6d 65 6e 74 73 20 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 74 68 69 73 | $arguments.as.$argument).{.$this |
73040 | 2d 3e 61 64 64 41 72 67 75 6d 65 6e 74 28 24 61 72 67 75 6d 65 6e 74 29 3b 0a 7d 0a 7d 0a 7d 0a | ->addArgument($argument);.}.}.}. |
73060 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 41 72 67 | ..........public.function.addArg |
73080 | 75 6d 65 6e 74 28 49 6e 70 75 74 41 72 67 75 6d 65 6e 74 20 24 61 72 67 75 6d 65 6e 74 29 0a 7b | ument(InputArgument.$argument).{ |
730a0 | 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 | .if.(isset($this->arguments[$arg |
730c0 | 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 | ument->getName()])).{.throw.new. |
730e0 | 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 61 72 67 75 | \LogicException(sprintf('An.argu |
73100 | 6d 65 6e 74 20 77 69 74 68 20 6e 61 6d 65 20 22 25 73 22 20 61 6c 72 65 61 64 79 20 65 78 69 73 | ment.with.name."%s".already.exis |
73120 | 74 73 2e 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 7d 0a | ts.',.$argument->getName()));.}. |
73140 | 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 29 20 | .if.($this->hasAnArrayArgument). |
73160 | 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 27 43 61 6e | {.throw.new.\LogicException('Can |
73180 | 6e 6f 74 20 61 64 64 20 61 6e 20 61 72 67 75 6d 65 6e 74 20 61 66 74 65 72 20 61 6e 20 61 72 72 | not.add.an.argument.after.an.arr |
731a0 | 61 79 20 61 72 67 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 24 61 72 67 75 6d 65 6e 74 | ay.argument.');.}..if.($argument |
731c0 | 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 20 26 26 20 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 | ->isRequired().&&.$this->hasOpti |
731e0 | 6f 6e 61 6c 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f | onal).{.throw.new.\LogicExceptio |
73200 | 6e 28 27 43 61 6e 6e 6f 74 20 61 64 64 20 61 20 72 65 71 75 69 72 65 64 20 61 72 67 75 6d 65 6e | n('Cannot.add.a.required.argumen |
73220 | 74 20 61 66 74 65 72 20 61 6e 20 6f 70 74 69 6f 6e 61 6c 20 6f 6e 65 2e 27 29 3b 0a 7d 0a 0a 69 | t.after.an.optional.one.');.}..i |
73240 | 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 74 68 69 73 | f.($argument->isArray()).{.$this |
73260 | 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d 65 6e 74 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a | ->hasAnArrayArgument.=.true;.}.. |
73280 | 69 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 29 20 7b 0a 2b | if.($argument->isRequired()).{.+ |
732a0 | 2b 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a | +$this->requiredCount;.}.else.{. |
732c0 | 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 61 6c 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 24 74 | $this->hasOptional.=.true;.}..$t |
732e0 | 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 5b 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d | his->arguments[$argument->getNam |
73300 | 65 28 29 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | e()].=.$argument;.}............. |
73320 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d | public.function.getArgument($nam |
73340 | 65 29 0a 7b 0a 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 20 | e).{.$arguments.=.is_int($name). |
73360 | 3f 20 61 72 72 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 | ?.array_values($this->arguments) |
73380 | 20 3a 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 69 66 20 28 21 24 74 68 69 73 | .:.$this->arguments;..if.(!$this |
733a0 | 2d 3e 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 | ->hasArgument($name)).{.throw.ne |
733c0 | 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 | w.\InvalidArgumentException(spri |
733e0 | 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 61 72 67 75 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 | ntf('The."%s".argument.does.not. |
73400 | 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 72 67 | exist.',.$name));.}..return.$arg |
73420 | 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | uments[$name];.}...........publi |
73440 | 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 41 72 67 75 6d 65 6e 74 28 24 6e 61 6d 65 29 0a 7b 0a | c.function.hasArgument($name).{. |
73460 | 24 61 72 67 75 6d 65 6e 74 73 20 3d 20 69 73 5f 69 6e 74 28 24 6e 61 6d 65 29 20 3f 20 61 72 72 | $arguments.=.is_int($name).?.arr |
73480 | 61 79 5f 76 61 6c 75 65 73 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 29 20 3a 20 24 74 | ay_values($this->arguments).:.$t |
734a0 | 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 61 | his->arguments;..return.isset($a |
734c0 | 72 67 75 6d 65 6e 74 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | rguments[$name]);.}.........publ |
734e0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 0a 7b 0a 72 65 74 | ic.function.getArguments().{.ret |
73500 | 75 72 6e 20 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | urn.$this->arguments;.}.......pu |
73520 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 43 6f 75 6e 74 28 29 | blic.function.getArgumentCount() |
73540 | 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 61 73 41 6e 41 72 72 61 79 41 72 67 75 6d | .{.return.$this->hasAnArrayArgum |
73560 | 65 6e 74 20 3f 20 50 48 50 5f 49 4e 54 5f 4d 41 58 20 3a 20 63 6f 75 6e 74 28 24 74 68 69 73 2d | ent.?.PHP_INT_MAX.:.count($this- |
73580 | 3e 61 72 67 75 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | >arguments);.}.......public.func |
735a0 | 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 6e 74 52 65 71 75 69 72 65 64 43 6f 75 6e 74 28 29 0a | tion.getArgumentRequiredCount(). |
735c0 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 71 75 69 72 65 64 43 6f 75 6e 74 3b 0a 7d | {.return.$this->requiredCount;.} |
735e0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 41 72 67 75 6d 65 | .......public.function.getArgume |
73600 | 6e 74 44 65 66 61 75 6c 74 73 28 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 28 29 | ntDefaults().{.$values.=.array() |
73620 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 61 72 67 75 6d 65 6e 74 73 20 61 73 20 24 | ;.foreach.($this->arguments.as.$ |
73640 | 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 76 61 6c 75 65 73 5b 24 61 72 67 75 6d 65 6e 74 2d 3e 67 | argument).{.$values[$argument->g |
73660 | 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c | etName()].=.$argument->getDefaul |
73680 | 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 61 6c 75 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | t();.}..return.$values;.}....... |
736a0 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 24 6f 70 | ..public.function.setOptions($op |
736c0 | 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e | tions.=.array()).{.$this->option |
736e0 | 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 20 3d 20 | s.=.array();.$this->shortcuts.=. |
73700 | 61 72 72 61 79 28 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 | array();.$this->addOptions($opti |
73720 | 6f 6e 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | ons);.}.........public.function. |
73740 | 61 64 64 4f 70 74 69 6f 6e 73 28 24 6f 70 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b | addOptions($options.=.array()).{ |
73760 | 0a 66 6f 72 65 61 63 68 20 28 24 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b | .foreach.($options.as.$option).{ |
73780 | 0a 24 74 68 69 73 2d 3e 61 64 64 4f 70 74 69 6f 6e 28 24 6f 70 74 69 6f 6e 29 3b 0a 7d 0a 7d 0a | .$this->addOption($option);.}.}. |
737a0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 4f 70 74 | ..........public.function.addOpt |
737c0 | 69 6f 6e 28 49 6e 70 75 74 4f 70 74 69 6f 6e 20 24 6f 70 74 69 6f 6e 29 0a 7b 0a 69 66 20 28 69 | ion(InputOption.$option).{.if.(i |
737e0 | 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 | sset($this->options[$option->get |
73800 | 4e 61 6d 65 28 29 5d 29 20 26 26 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 6c 73 28 24 74 68 | Name()]).&&.!$option->equals($th |
73820 | 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 29 | is->options[$option->getName()]) |
73840 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 65 70 74 69 6f 6e 28 73 70 | ).{.throw.new.\LogicException(sp |
73860 | 72 69 6e 74 66 28 27 41 6e 20 6f 70 74 69 6f 6e 20 6e 61 6d 65 64 20 22 25 73 22 20 61 6c 72 65 | rintf('An.option.named."%s".alre |
73880 | 61 64 79 20 65 78 69 73 74 73 2e 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 | ady.exists.',.$option->getName() |
738a0 | 29 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 | ));.}.elseif.(isset($this->short |
738c0 | 63 75 74 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 5d 29 20 26 26 | cuts[$option->getShortcut()]).&& |
738e0 | 20 21 24 6f 70 74 69 6f 6e 2d 3e 65 71 75 61 6c 73 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 | .!$option->equals($this->options |
73900 | 5b 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 | [$this->shortcuts[$option->getSh |
73920 | 6f 72 74 63 75 74 28 29 5d 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 | ortcut()]])).{.throw.new.\LogicE |
73940 | 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 41 6e 20 6f 70 74 69 6f 6e 20 77 69 74 68 | xception(sprintf('An.option.with |
73960 | 20 73 68 6f 72 74 63 75 74 20 22 25 73 22 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2e 27 2c | .shortcut."%s".already.exists.', |
73980 | 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 29 3b 0a 7d 0a 0a 24 74 | .$option->getShortcut()));.}..$t |
739a0 | 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d | his->options[$option->getName()] |
739c0 | 20 3d 20 24 6f 70 74 69 6f 6e 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 | .=.$option;.if.($option->getShor |
739e0 | 74 63 75 74 28 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 6f 70 74 69 | tcut()).{.$this->shortcuts[$opti |
73a00 | 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 5d 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 | on->getShortcut()].=.$option->ge |
73a20 | 74 4e 61 6d 65 28 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | tName();.}.}.............public. |
73a40 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 | function.getOption($name).{.if.( |
73a60 | 21 24 74 68 69 73 2d 3e 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 6d 65 29 29 20 7b 0a 74 68 72 6f | !$this->hasOption($name)).{.thro |
73a80 | 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 | w.new.\InvalidArgumentException( |
73aa0 | 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 2d 25 73 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 | sprintf('The."--%s".option.does. |
73ac0 | 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | not.exist.',.$name));.}..return. |
73ae0 | 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 5b 24 6e 61 6d 65 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | $this->options[$name];.}........ |
73b00 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 4f 70 74 69 6f 6e 28 24 6e 61 | ...public.function.hasOption($na |
73b20 | 6d 65 29 0a 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e | me).{.return.isset($this->option |
73b40 | 73 5b 24 6e 61 6d 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | s[$name]);.}.........public.func |
73b60 | 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | tion.getOptions().{.return.$this |
73b80 | 2d 3e 6f 70 74 69 6f 6e 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ->options;.}.........public.func |
73ba0 | 74 69 6f 6e 20 68 61 73 53 68 6f 72 74 63 75 74 28 24 6e 61 6d 65 29 0a 7b 0a 72 65 74 75 72 6e | tion.hasShortcut($name).{.return |
73bc0 | 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 6e 61 6d 65 5d 29 3b | .isset($this->shortcuts[$name]); |
73be0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 | .}.........public.function.getOp |
73c00 | 74 69 6f 6e 46 6f 72 53 68 6f 72 74 63 75 74 28 24 73 68 6f 72 74 63 75 74 29 0a 7b 0a 72 65 74 | tionForShortcut($shortcut).{.ret |
73c20 | 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 28 24 74 68 69 73 2d 3e 73 68 6f 72 | urn.$this->getOption($this->shor |
73c40 | 74 63 75 74 54 6f 4e 61 6d 65 28 24 73 68 6f 72 74 63 75 74 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | tcutToName($shortcut));.}....... |
73c60 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4f 70 74 69 6f 6e 44 65 66 61 75 6c 74 | public.function.getOptionDefault |
73c80 | 73 28 29 0a 7b 0a 24 76 61 6c 75 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 | s().{.$values.=.array();.foreach |
73ca0 | 20 28 24 74 68 69 73 2d 3e 6f 70 74 69 6f 6e 73 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 | .($this->options.as.$option).{.$ |
73cc0 | 76 61 6c 75 65 73 5b 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 6f 70 | values[$option->getName()].=.$op |
73ce0 | 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 76 | tion->getDefault();.}..return.$v |
73d00 | 61 6c 75 65 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 | alues;.}...........private.funct |
73d20 | 69 6f 6e 20 73 68 6f 72 74 63 75 74 54 6f 4e 61 6d 65 28 24 73 68 6f 72 74 63 75 74 29 0a 7b 0a | ion.shortcutToName($shortcut).{. |
73d40 | 69 66 20 28 21 69 73 73 65 74 28 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 74 73 5b 24 73 68 6f | if.(!isset($this->shortcuts[$sho |
73d60 | 72 74 63 75 74 5d 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 | rtcut])).{.throw.new.\InvalidArg |
73d80 | 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 2d 25 73 | umentException(sprintf('The."-%s |
73da0 | 22 20 6f 70 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 73 68 6f 72 | ".option.does.not.exist.',.$shor |
73dc0 | 74 63 75 74 29 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 68 6f 72 74 63 75 | tcut));.}..return.$this->shortcu |
73de0 | 74 73 5b 24 73 68 6f 72 74 63 75 74 5d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ts[$shortcut];.}.......public.fu |
73e00 | 6e 63 74 69 6f 6e 20 67 65 74 53 79 6e 6f 70 73 69 73 28 29 0a 7b 0a 24 65 6c 65 6d 65 6e 74 73 | nction.getSynopsis().{.$elements |
73e20 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 4f | .=.array();.foreach.($this->getO |
73e40 | 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 73 68 6f 72 74 63 75 74 | ptions().as.$option).{.$shortcut |
73e60 | 20 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 73 70 72 69 | .=.$option->getShortcut().?.spri |
73e80 | 6e 74 66 28 27 2d 25 73 7c 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 | ntf('-%s|',.$option->getShortcut |
73ea0 | 28 29 29 20 3a 20 27 27 3b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 | ()).:.'';.$elements[].=.sprintf( |
73ec0 | 27 5b 27 2e 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 | '['.($option->isValueRequired(). |
73ee0 | 3f 20 27 25 73 2d 2d 25 73 3d 22 2e 2e 2e 22 27 20 3a 20 28 24 6f 70 74 69 6f 6e 2d 3e 69 73 56 | ?.'%s--%s="..."'.:.($option->isV |
73f00 | 61 6c 75 65 4f 70 74 69 6f 6e 61 6c 28 29 20 3f 20 27 25 73 2d 2d 25 73 5b 3d 22 2e 2e 2e 22 5d | alueOptional().?.'%s--%s[="..."] |
73f20 | 27 20 3a 20 27 25 73 2d 2d 25 73 27 29 29 2e 27 5d 27 2c 20 24 73 68 6f 72 74 63 75 74 2c 20 24 | '.:.'%s--%s')).']',.$shortcut,.$ |
73f40 | 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 | option->getName());.}..foreach.( |
73f60 | 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 67 75 6d 65 | $this->getArguments().as.$argume |
73f80 | 6e 74 29 20 7b 0a 24 65 6c 65 6d 65 6e 74 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 24 61 72 67 | nt).{.$elements[].=.sprintf($arg |
73fa0 | 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 20 3f 20 27 25 73 27 20 3a 20 27 5b 25 | ument->isRequired().?.'%s'.:.'[% |
73fc0 | 73 5d 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 28 24 61 72 67 75 | s]',.$argument->getName().($argu |
73fe0 | 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 27 31 27 20 3a 20 27 27 29 29 3b 0a 0a 69 | ment->isArray().?.'1'.:.''));..i |
74000 | 66 20 28 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 29 20 7b 0a 24 65 6c 65 6d | f.($argument->isArray()).{.$elem |
74020 | 65 6e 74 73 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 27 2e 2e 2e 20 5b 25 73 4e 5d 27 2c 20 24 61 | ents[].=.sprintf('....[%sN]',.$a |
74040 | 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e | rgument->getName());.}.}..return |
74060 | 20 69 6d 70 6c 6f 64 65 28 27 20 27 2c 20 24 65 6c 65 6d 65 6e 74 73 29 3b 0a 7d 0a 0a 0a 0a 0a | .implode('.',.$elements);.}..... |
74080 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 54 65 78 74 28 29 0a 7b 0a 0a 20 24 | ..public.function.asText().{...$ |
740a0 | 6d 61 78 20 3d 20 30 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 | max.=.0;.foreach.($this->getOpti |
740c0 | 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 6e 61 6d 65 4c 65 6e 67 74 68 20 | ons().as.$option).{.$nameLength. |
740e0 | 3d 20 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 2b 20 32 | =.strlen($option->getName()).+.2 |
74100 | 3b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 7b 0a | ;.if.($option->getShortcut()).{. |
74120 | 24 6e 61 6d 65 4c 65 6e 67 74 68 20 2b 3d 20 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 | $nameLength.+=.strlen($option->g |
74140 | 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 2b 20 33 3b 0a 7d 0a 0a 24 6d 61 78 20 3d 20 6d 61 78 | etShortcut()).+.3;.}..$max.=.max |
74160 | 28 24 6d 61 78 2c 20 24 6e 61 6d 65 4c 65 6e 67 74 68 29 3b 0a 7d 0a 66 6f 72 65 61 63 68 20 28 | ($max,.$nameLength);.}.foreach.( |
74180 | 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 67 75 6d 65 | $this->getArguments().as.$argume |
741a0 | 6e 74 29 20 7b 0a 24 6d 61 78 20 3d 20 6d 61 78 28 24 6d 61 78 2c 20 73 74 72 6c 65 6e 28 24 61 | nt).{.$max.=.max($max,.strlen($a |
741c0 | 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 29 3b 0a 7d 0a 2b 2b 24 6d 61 78 3b 0a | rgument->getName()));.}.++$max;. |
741e0 | 0a 24 74 65 78 74 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 67 65 | .$text.=.array();..if.($this->ge |
74200 | 74 41 72 67 75 6d 65 6e 74 73 28 29 29 20 7b 0a 24 74 65 78 74 5b 5d 20 3d 20 27 3c 63 6f 6d 6d | tArguments()).{.$text[].=.'<comm |
74220 | 65 6e 74 3e 41 72 67 75 6d 65 6e 74 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b 0a 66 6f 72 65 61 | ent>Arguments:</comment>';.forea |
74240 | 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 61 73 20 24 61 72 | ch.($this->getArguments().as.$ar |
74260 | 67 75 6d 65 6e 74 29 20 7b 0a 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 72 67 75 6d 65 6e 74 | gument).{.if.(null.!==.$argument |
74280 | 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 72 72 61 79 28 24 61 72 | ->getDefault().&&.(!is_array($ar |
742a0 | 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 7c 7c 20 63 6f 75 6e 74 28 24 | gument->getDefault()).||.count($ |
742c0 | 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 29 20 7b 0a 24 64 65 66 | argument->getDefault()))).{.$def |
742e0 | 61 75 6c 74 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 20 28 64 65 66 61 75 | ault.=.sprintf('<comment>.(defau |
74300 | 6c 74 3a 20 25 73 29 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 | lt:.%s)</comment>',.$this->forma |
74320 | 74 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 | tDefaultValue($argument->getDefa |
74340 | 75 6c 74 28 29 29 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 27 27 3b | ult()));.}.else.{.$default.=.''; |
74360 | 0a 7d 0a 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 | .}..$description.=.str_replace(" |
74380 | 5c 6e 22 2c 20 22 5c 6e 22 2e 73 74 72 5f 70 61 64 28 27 27 2c 20 24 6d 61 78 20 2b 20 32 2c 20 | \n",."\n".str_pad('',.$max.+.2,. |
743a0 | 27 20 27 29 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 | '.'),.$argument->getDescription( |
743c0 | 29 29 3b 0a 0a 24 74 65 78 74 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 22 20 3c 69 6e 66 6f 3e 25 | ));..$text[].=.sprintf(".<info>% |
743e0 | 2d 24 7b 6d 61 78 7d 73 3c 2f 69 6e 66 6f 3e 20 25 73 25 73 22 2c 20 24 61 72 67 75 6d 65 6e 74 | -${max}s</info>.%s%s",.$argument |
74400 | 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 20 24 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 24 64 65 66 61 | ->getName(),.$description,.$defa |
74420 | 75 6c 74 29 3b 0a 7d 0a 0a 24 74 65 78 74 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 0a 69 66 20 28 24 74 | ult);.}..$text[].=.'';.}..if.($t |
74440 | 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 29 20 7b 0a 24 74 65 78 74 5b 5d 20 3d 20 27 | his->getOptions()).{.$text[].=.' |
74460 | 3c 63 6f 6d 6d 65 6e 74 3e 4f 70 74 69 6f 6e 73 3a 3c 2f 63 6f 6d 6d 65 6e 74 3e 27 3b 0a 0a 66 | <comment>Options:</comment>';..f |
74480 | 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 | oreach.($this->getOptions().as.$ |
744a0 | 6f 70 74 69 6f 6e 29 20 7b 0a 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c | option).{.if.($option->acceptVal |
744c0 | 75 65 28 29 20 26 26 20 6e 75 6c 6c 20 21 3d 3d 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 | ue().&&.null.!==.$option->getDef |
744e0 | 61 75 6c 74 28 29 20 26 26 20 28 21 69 73 5f 61 72 72 61 79 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 | ault().&&.(!is_array($option->ge |
74500 | 74 44 65 66 61 75 6c 74 28 29 29 20 7c 7c 20 63 6f 75 6e 74 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 | tDefault()).||.count($option->ge |
74520 | 74 44 65 66 61 75 6c 74 28 29 29 29 29 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 73 70 72 69 6e | tDefault()))).{.$default.=.sprin |
74540 | 74 66 28 27 3c 63 6f 6d 6d 65 6e 74 3e 20 28 64 65 66 61 75 6c 74 3a 20 25 73 29 3c 2f 63 6f 6d | tf('<comment>.(default:.%s)</com |
74560 | 6d 65 6e 74 3e 27 2c 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 44 65 66 61 75 6c 74 56 61 6c 75 | ment>',.$this->formatDefaultValu |
74580 | 65 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 29 3b 0a 7d 20 65 6c 73 | e($option->getDefault()));.}.els |
745a0 | 65 20 7b 0a 24 64 65 66 61 75 6c 74 20 3d 20 27 27 3b 0a 7d 0a 0a 24 6d 75 6c 74 69 70 6c 65 20 | e.{.$default.=.'';.}..$multiple. |
745c0 | 3d 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 27 3c 63 6f 6d 6d 65 6e 74 | =.$option->isArray().?.'<comment |
745e0 | 3e 20 28 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 20 61 6c 6c 6f 77 65 64 29 3c 2f 63 6f 6d | >.(multiple.values.allowed)</com |
74600 | 6d 65 6e 74 3e 27 20 3a 20 27 27 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 20 3d 20 73 74 72 5f | ment>'.:.'';.$description.=.str_ |
74620 | 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c 6e 22 2e 73 74 72 5f 70 61 64 28 27 27 2c 20 24 | replace("\n",."\n".str_pad('',.$ |
74640 | 6d 61 78 20 2b 20 32 2c 20 27 20 27 29 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 | max.+.2,.'.'),.$option->getDescr |
74660 | 69 70 74 69 6f 6e 28 29 29 3b 0a 0a 24 6f 70 74 69 6f 6e 4d 61 78 20 3d 20 24 6d 61 78 20 2d 20 | iption());..$optionMax.=.$max.-. |
74680 | 73 74 72 6c 65 6e 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 20 2d 20 32 3b 0a | strlen($option->getName()).-.2;. |
746a0 | 24 74 65 78 74 5b 5d 20 3d 20 73 70 72 69 6e 74 66 28 22 20 3c 69 6e 66 6f 3e 25 73 3c 2f 69 6e | $text[].=.sprintf(".<info>%s</in |
746c0 | 66 6f 3e 20 25 2d 24 7b 6f 70 74 69 6f 6e 4d 61 78 7d 73 25 73 25 73 25 73 22 2c 0a 27 2d 2d 27 | fo>.%-${optionMax}s%s%s%s",.'--' |
746e0 | 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2c 0a 24 6f 70 74 69 6f 6e 2d 3e 67 65 | .$option->getName(),.$option->ge |
74700 | 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 73 70 72 69 6e 74 66 28 27 28 2d 25 73 29 20 27 2c 20 | tShortcut().?.sprintf('(-%s).',. |
74720 | 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 29 20 3a 20 27 27 2c 0a 24 64 | $option->getShortcut()).:.'',.$d |
74740 | 65 73 63 72 69 70 74 69 6f 6e 2c 0a 24 64 65 66 61 75 6c 74 2c 0a 24 6d 75 6c 74 69 70 6c 65 0a | escription,.$default,.$multiple. |
74760 | 29 3b 0a 7d 0a 0a 24 74 65 78 74 5b 5d 20 3d 20 27 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d | );.}..$text[].=.'';.}..return.im |
74780 | 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 74 65 78 74 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | plode("\n",.$text);.}.........pu |
747a0 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 58 6d 6c 28 24 61 73 44 6f 6d 20 3d 20 66 61 6c | blic.function.asXml($asDom.=.fal |
747c0 | 73 65 29 0a 7b 0a 24 64 6f 6d 20 3d 20 6e 65 77 20 5c 44 4f 4d 44 6f 63 75 6d 65 6e 74 28 27 31 | se).{.$dom.=.new.\DOMDocument('1 |
747e0 | 2e 30 27 2c 20 27 55 54 46 2d 38 27 29 3b 0a 24 64 6f 6d 2d 3e 66 6f 72 6d 61 74 4f 75 74 70 75 | .0',.'UTF-8');.$dom->formatOutpu |
74800 | 74 20 3d 20 74 72 75 65 3b 0a 24 64 6f 6d 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 | t.=.true;.$dom->appendChild($def |
74820 | 69 6e 69 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 | initionXML.=.$dom->createElement |
74840 | 28 27 64 65 66 69 6e 69 74 69 6f 6e 27 29 29 3b 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c | ('definition'));..$definitionXML |
74860 | 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 20 3d 20 24 64 | ->appendChild($argumentsXML.=.$d |
74880 | 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 61 72 67 75 6d 65 6e 74 73 27 29 29 3b | om->createElement('arguments')); |
748a0 | 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 67 65 74 41 72 67 75 6d 65 6e 74 73 28 29 20 | .foreach.($this->getArguments(). |
748c0 | 61 73 20 24 61 72 67 75 6d 65 6e 74 29 20 7b 0a 24 61 72 67 75 6d 65 6e 74 73 58 4d 4c 2d 3e 61 | as.$argument).{.$argumentsXML->a |
748e0 | 70 70 65 6e 64 43 68 69 6c 64 28 24 61 72 67 75 6d 65 6e 74 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e | ppendChild($argumentXML.=.$dom-> |
74900 | 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 61 72 67 75 6d 65 6e 74 27 29 29 3b 0a 24 61 72 67 | createElement('argument'));.$arg |
74920 | 75 6d 65 6e 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 6d 65 27 2c 20 24 | umentXML->setAttribute('name',.$ |
74940 | 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 61 72 67 75 6d 65 6e 74 58 | argument->getName());.$argumentX |
74960 | 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 73 5f 72 65 71 75 69 72 65 64 27 2c 20 | ML->setAttribute('is_required',. |
74980 | 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 52 65 71 75 69 72 65 64 28 29 20 3f 20 31 20 3a 20 30 29 | $argument->isRequired().?.1.:.0) |
749a0 | 3b 0a 24 61 72 67 75 6d 65 6e 74 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 73 | ;.$argumentXML->setAttribute('is |
749c0 | 5f 61 72 72 61 79 27 2c 20 24 61 72 67 75 6d 65 6e 74 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 | _array',.$argument->isArray().?. |
749e0 | 31 20 3a 20 30 29 3b 0a 24 61 72 67 75 6d 65 6e 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c | 1.:.0);.$argumentXML->appendChil |
74a00 | 64 28 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 | d($descriptionXML.=.$dom->create |
74a20 | 45 6c 65 6d 65 6e 74 28 27 64 65 73 63 72 69 70 74 69 6f 6e 27 29 29 3b 0a 24 64 65 73 63 72 69 | Element('description'));.$descri |
74a40 | 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 | ptionXML->appendChild($dom->crea |
74a60 | 74 65 54 65 78 74 4e 6f 64 65 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 73 63 72 69 70 | teTextNode($argument->getDescrip |
74a80 | 74 69 6f 6e 28 29 29 29 3b 0a 0a 24 61 72 67 75 6d 65 6e 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 | tion()));..$argumentXML->appendC |
74aa0 | 68 69 6c 64 28 24 64 65 66 61 75 6c 74 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 | hild($defaultsXML.=.$dom->create |
74ac0 | 45 6c 65 6d 65 6e 74 28 27 64 65 66 61 75 6c 74 73 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 73 20 | Element('defaults'));.$defaults. |
74ae0 | 3d 20 69 73 5f 61 72 72 61 79 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 | =.is_array($argument->getDefault |
74b00 | 28 29 29 20 3f 20 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3a 20 | ()).?.$argument->getDefault().:. |
74b20 | 28 69 73 5f 62 6f 6f 6c 28 24 61 72 67 75 6d 65 6e 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 | (is_bool($argument->getDefault() |
74b40 | 29 20 3f 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 24 61 72 67 75 6d 65 6e 74 2d 3e | ).?.array(var_export($argument-> |
74b60 | 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 28 24 61 72 67 75 6d 65 6e | getDefault(),.true)).:.($argumen |
74b80 | 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 61 72 67 75 6d 65 6e | t->getDefault().?.array($argumen |
74ba0 | 74 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3a 20 61 72 72 61 79 28 29 29 29 3b 0a 66 6f | t->getDefault()).:.array()));.fo |
74bc0 | 72 65 61 63 68 20 28 24 64 65 66 61 75 6c 74 73 20 61 73 20 24 64 65 66 61 75 6c 74 29 20 7b 0a | reach.($defaults.as.$default).{. |
74be0 | 24 64 65 66 61 75 6c 74 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 61 75 | $defaultsXML->appendChild($defau |
74c00 | 6c 74 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 | ltXML.=.$dom->createElement('def |
74c20 | 61 75 6c 74 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c | ault'));.$defaultXML->appendChil |
74c40 | 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 64 65 66 61 75 6c 74 29 | d($dom->createTextNode($default) |
74c60 | 29 3b 0a 7d 0a 7d 0a 0a 24 64 65 66 69 6e 69 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 | );.}.}..$definitionXML->appendCh |
74c80 | 69 6c 64 28 24 6f 70 74 69 6f 6e 73 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c | ild($optionsXML.=.$dom->createEl |
74ca0 | 65 6d 65 6e 74 28 27 6f 70 74 69 6f 6e 73 27 29 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 | ement('options'));.foreach.($thi |
74cc0 | 73 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 6f | s->getOptions().as.$option).{.$o |
74ce0 | 70 74 69 6f 6e 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 6f 70 74 69 6f 6e 58 4d | ptionsXML->appendChild($optionXM |
74d00 | 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 6f 70 74 69 6f 6e 27 | L.=.$dom->createElement('option' |
74d20 | 29 29 3b 0a 24 6f 70 74 69 6f 6e 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 6e 61 | ));.$optionXML->setAttribute('na |
74d40 | 6d 65 27 2c 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 29 3b 0a 24 | me',.'--'.$option->getName());.$ |
74d60 | 6f 70 74 69 6f 6e 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 73 68 6f 72 74 63 75 | optionXML->setAttribute('shortcu |
74d80 | 74 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3f 20 27 2d 27 | t',.$option->getShortcut().?.'-' |
74da0 | 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 53 68 6f 72 74 63 75 74 28 29 20 3a 20 27 27 29 3b 0a 24 | .$option->getShortcut().:.'');.$ |
74dc0 | 6f 70 74 69 6f 6e 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 61 63 63 65 70 74 5f | optionXML->setAttribute('accept_ |
74de0 | 76 61 6c 75 65 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 20 3f | value',.$option->acceptValue().? |
74e00 | 20 31 20 3a 20 30 29 3b 0a 24 6f 70 74 69 6f 6e 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 | .1.:.0);.$optionXML->setAttribut |
74e20 | 65 28 27 69 73 5f 76 61 6c 75 65 5f 72 65 71 75 69 72 65 64 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e | e('is_value_required',.$option-> |
74e40 | 69 73 56 61 6c 75 65 52 65 71 75 69 72 65 64 28 29 20 3f 20 31 20 3a 20 30 29 3b 0a 24 6f 70 74 | isValueRequired().?.1.:.0);.$opt |
74e60 | 69 6f 6e 58 4d 4c 2d 3e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 69 73 5f 6d 75 6c 74 69 70 6c | ionXML->setAttribute('is_multipl |
74e80 | 65 27 2c 20 24 6f 70 74 69 6f 6e 2d 3e 69 73 41 72 72 61 79 28 29 20 3f 20 31 20 3a 20 30 29 3b | e',.$option->isArray().?.1.:.0); |
74ea0 | 0a 24 6f 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 73 63 72 69 | .$optionXML->appendChild($descri |
74ec0 | 70 74 69 6f 6e 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 | ptionXML.=.$dom->createElement(' |
74ee0 | 64 65 73 63 72 69 70 74 69 6f 6e 27 29 29 3b 0a 24 64 65 73 63 72 69 70 74 69 6f 6e 58 4d 4c 2d | description'));.$descriptionXML- |
74f00 | 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 | >appendChild($dom->createTextNod |
74f20 | 65 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 73 63 72 69 70 74 69 6f 6e 28 29 29 29 3b 0a 0a | e($option->getDescription()));.. |
74f40 | 69 66 20 28 24 6f 70 74 69 6f 6e 2d 3e 61 63 63 65 70 74 56 61 6c 75 65 28 29 29 20 7b 0a 24 6f | if.($option->acceptValue()).{.$o |
74f60 | 70 74 69 6f 6e 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 64 65 66 61 75 6c 74 73 58 | ptionXML->appendChild($defaultsX |
74f80 | 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 65 66 61 75 6c | ML.=.$dom->createElement('defaul |
74fa0 | 74 73 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 73 20 3d 20 69 73 5f 61 72 72 61 79 28 24 6f 70 74 | ts'));.$defaults.=.is_array($opt |
74fc0 | 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3f 20 24 6f 70 74 69 6f 6e 2d 3e 67 65 | ion->getDefault()).?.$option->ge |
74fe0 | 74 44 65 66 61 75 6c 74 28 29 20 3a 20 28 69 73 5f 62 6f 6f 6c 28 24 6f 70 74 69 6f 6e 2d 3e 67 | tDefault().:.(is_bool($option->g |
75000 | 65 74 44 65 66 61 75 6c 74 28 29 29 20 3f 20 61 72 72 61 79 28 76 61 72 5f 65 78 70 6f 72 74 28 | etDefault()).?.array(var_export( |
75020 | 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 2c 20 74 72 75 65 29 29 20 3a 20 | $option->getDefault(),.true)).:. |
75040 | 28 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 20 3f 20 61 72 72 61 79 28 24 | ($option->getDefault().?.array($ |
75060 | 6f 70 74 69 6f 6e 2d 3e 67 65 74 44 65 66 61 75 6c 74 28 29 29 20 3a 20 61 72 72 61 79 28 29 29 | option->getDefault()).:.array()) |
75080 | 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 64 65 66 61 75 6c 74 73 20 61 73 20 24 64 65 66 61 75 6c | );.foreach.($defaults.as.$defaul |
750a0 | 74 29 20 7b 0a 24 64 65 66 61 75 6c 74 73 58 4d 4c 2d 3e 61 70 70 65 6e 64 43 68 69 6c 64 28 24 | t).{.$defaultsXML->appendChild($ |
750c0 | 64 65 66 61 75 6c 74 58 4d 4c 20 3d 20 24 64 6f 6d 2d 3e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 | defaultXML.=.$dom->createElement |
750e0 | 28 27 64 65 66 61 75 6c 74 27 29 29 3b 0a 24 64 65 66 61 75 6c 74 58 4d 4c 2d 3e 61 70 70 65 6e | ('default'));.$defaultXML->appen |
75100 | 64 43 68 69 6c 64 28 24 64 6f 6d 2d 3e 63 72 65 61 74 65 54 65 78 74 4e 6f 64 65 28 24 64 65 66 | dChild($dom->createTextNode($def |
75120 | 61 75 6c 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 61 73 44 6f 6d 20 3f 20 24 | ault));.}.}.}..return.$asDom.?.$ |
75140 | 64 6f 6d 20 3a 20 24 64 6f 6d 2d 3e 73 61 76 65 58 6d 6c 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 | dom.:.$dom->saveXml();.}..privat |
75160 | 65 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 44 65 66 61 75 6c 74 56 61 6c 75 65 28 24 64 | e.function.formatDefaultValue($d |
75180 | 65 66 61 75 6c 74 29 0a 7b 0a 72 65 74 75 72 6e 20 6a 73 6f 6e 5f 65 6e 63 6f 64 65 28 24 64 65 | efault).{.return.json_encode($de |
751a0 | 66 61 75 6c 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | fault);.}.}.<?php...........name |
751c0 | 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 3b | space.Symfony\Component\Console; |
751e0 | 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c | ..use.Symfony\Component\Console\ |
75200 | 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 | Application;.use.Symfony\Compone |
75220 | 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 49 6e 70 75 74 5c 53 74 72 69 6e 67 49 6e 70 75 74 3b 0a 75 73 | nt\Console\Input\StringInput;.us |
75240 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 | e.Symfony\Component\Console\Outp |
75260 | 75 74 5c 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | ut\ConsoleOutput;.use.Symfony\Co |
75280 | 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 72 6f 63 65 73 73 42 75 69 6c 64 65 72 3b 0a | mponent\Process\ProcessBuilder;. |
752a0 | 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 50 72 6f 63 65 73 73 5c 50 68 | use.Symfony\Component\Process\Ph |
752c0 | 70 45 78 65 63 75 74 61 62 6c 65 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 | pExecutableFinder;...........cla |
752e0 | 73 73 20 53 68 65 6c 6c 0a 7b 0a 70 72 69 76 61 74 65 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b | ss.Shell.{.private.$application; |
75300 | 0a 70 72 69 76 61 74 65 20 24 68 69 73 74 6f 72 79 3b 0a 70 72 69 76 61 74 65 20 24 6f 75 74 70 | .private.$history;.private.$outp |
75320 | 75 74 3b 0a 70 72 69 76 61 74 65 20 24 68 61 73 52 65 61 64 6c 69 6e 65 3b 0a 70 72 69 76 61 74 | ut;.private.$hasReadline;.privat |
75340 | 65 20 24 70 72 6f 6d 70 74 3b 0a 70 72 69 76 61 74 65 20 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 | e.$prompt;.private.$processIsola |
75360 | 74 69 6f 6e 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f | tion;..........public.function._ |
75380 | 5f 63 6f 6e 73 74 72 75 63 74 28 41 70 70 6c 69 63 61 74 69 6f 6e 20 24 61 70 70 6c 69 63 61 74 | _construct(Application.$applicat |
753a0 | 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 20 3d 20 66 75 6e 63 | ion).{.$this->hasReadline.=.func |
753c0 | 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 72 65 61 64 6c 69 6e 65 27 29 3b 0a 24 74 68 69 73 2d 3e | tion_exists('readline');.$this-> |
753e0 | 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 24 61 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 24 74 68 69 | application.=.$application;.$thi |
75400 | 73 2d 3e 68 69 73 74 6f 72 79 20 3d 20 67 65 74 65 6e 76 28 27 48 4f 4d 45 27 29 2e 27 2f 2e 68 | s->history.=.getenv('HOME').'/.h |
75420 | 69 73 74 6f 72 79 5f 27 2e 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 | istory_'.$application->getName() |
75440 | 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 20 3d 20 6e 65 77 20 43 6f 6e 73 6f 6c 65 4f 75 74 | ;.$this->output.=.new.ConsoleOut |
75460 | 70 75 74 28 29 3b 0a 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 20 3d 20 24 61 70 70 6c 69 63 61 74 | put();.$this->prompt.=.$applicat |
75480 | 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 2e 27 20 3e 20 27 3b 0a 24 74 68 69 73 2d 3e 70 72 6f | ion->getName().'.>.';.$this->pro |
754a0 | 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 | cessIsolation.=.false;.}.....pub |
754c0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 75 6e 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 61 70 70 6c | lic.function.run().{.$this->appl |
754e0 | 69 63 61 74 69 6f 6e 2d 3e 73 65 74 41 75 74 6f 45 78 69 74 28 66 61 6c 73 65 29 3b 0a 24 74 68 | ication->setAutoExit(false);.$th |
75500 | 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 73 65 74 43 61 74 63 68 45 78 63 65 70 74 69 | is->application->setCatchExcepti |
75520 | 6f 6e 73 28 74 72 75 65 29 3b 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 | ons(true);..if.($this->hasReadli |
75540 | 6e 65 29 20 7b 0a 72 65 61 64 6c 69 6e 65 5f 72 65 61 64 5f 68 69 73 74 6f 72 79 28 24 74 68 69 | ne).{.readline_read_history($thi |
75560 | 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a 72 65 61 64 6c 69 6e 65 5f 63 6f 6d 70 6c 65 74 69 6f 6e | s->history);.readline_completion |
75580 | 5f 66 75 6e 63 74 69 6f 6e 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 61 75 74 6f 63 6f 6d 70 | _function(array($this,.'autocomp |
755a0 | 6c 65 74 65 72 27 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 | leter'));.}..$this->output->writ |
755c0 | 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 48 65 61 64 65 72 28 29 29 3b 0a 24 70 68 70 20 3d 20 | eln($this->getHeader());.$php.=. |
755e0 | 6e 75 6c 6c 3b 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f | null;.if.($this->processIsolatio |
75600 | 6e 29 20 7b 0a 24 66 69 6e 64 65 72 20 3d 20 6e 65 77 20 50 68 70 45 78 65 63 75 74 61 62 6c 65 | n).{.$finder.=.new.PhpExecutable |
75620 | 46 69 6e 64 65 72 28 29 3b 0a 24 70 68 70 20 3d 20 24 66 69 6e 64 65 72 2d 3e 66 69 6e 64 28 29 | Finder();.$php.=.$finder->find() |
75640 | 3b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 3c 3c 3c 45 4f 46 0a | ;.$this->output->writeln(<<<EOF. |
75660 | 3c 69 6e 66 6f 3e 52 75 6e 6e 69 6e 67 20 77 69 74 68 20 70 72 6f 63 65 73 73 20 69 73 6f 6c 61 | <info>Running.with.process.isola |
75680 | 74 69 6f 6e 2c 20 79 6f 75 20 73 68 6f 75 6c 64 20 63 6f 6e 73 69 64 65 72 20 74 68 69 73 3a 3c | tion,.you.should.consider.this:< |
756a0 | 2f 69 6e 66 6f 3e 0a 20 20 2a 20 65 61 63 68 20 63 6f 6d 6d 61 6e 64 20 69 73 20 65 78 65 63 75 | /info>...*.each.command.is.execu |
756c0 | 74 65 64 20 61 73 20 73 65 70 61 72 61 74 65 20 70 72 6f 63 65 73 73 2c 0a 20 20 2a 20 63 6f 6d | ted.as.separate.process,...*.com |
756e0 | 6d 61 6e 64 73 20 64 6f 6e 27 74 20 73 75 70 70 6f 72 74 20 69 6e 74 65 72 61 63 74 69 76 69 74 | mands.don't.support.interactivit |
75700 | 79 2c 20 61 6c 6c 20 70 61 72 61 6d 73 20 6d 75 73 74 20 62 65 20 70 61 73 73 65 64 20 65 78 70 | y,.all.params.must.be.passed.exp |
75720 | 6c 69 63 69 74 6c 79 2c 0a 20 20 2a 20 63 6f 6d 6d 61 6e 64 73 20 6f 75 74 70 75 74 20 69 73 20 | licitly,...*.commands.output.is. |
75740 | 6e 6f 74 20 63 6f 6c 6f 72 69 7a 65 64 2e 0a 0a 45 4f 46 0a 29 3b 0a 7d 0a 0a 77 68 69 6c 65 20 | not.colorized...EOF.);.}..while. |
75760 | 28 74 72 75 65 29 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 69 73 2d 3e 72 65 61 64 6c | (true).{.$command.=.$this->readl |
75780 | 69 6e 65 28 29 3b 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 24 63 6f 6d 6d 61 6e 64 29 20 | ine();..if.(false.===.$command). |
757a0 | 7b 0a 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 22 5c 6e 22 29 3b 0a | {.$this->output->writeln("\n");. |
757c0 | 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e | .break;.}..if.($this->hasReadlin |
757e0 | 65 29 20 7b 0a 72 65 61 64 6c 69 6e 65 5f 61 64 64 5f 68 69 73 74 6f 72 79 28 24 63 6f 6d 6d 61 | e).{.readline_add_history($comma |
75800 | 6e 64 29 3b 0a 72 65 61 64 6c 69 6e 65 5f 77 72 69 74 65 5f 68 69 73 74 6f 72 79 28 24 74 68 69 | nd);.readline_write_history($thi |
75820 | 73 2d 3e 68 69 73 74 6f 72 79 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 63 65 | s->history);.}..if.($this->proce |
75840 | 73 73 49 73 6f 6c 61 74 69 6f 6e 29 20 7b 0a 24 70 62 20 3d 20 6e 65 77 20 50 72 6f 63 65 73 73 | ssIsolation).{.$pb.=.new.Process |
75860 | 42 75 69 6c 64 65 72 28 29 3b 0a 0a 24 70 72 6f 63 65 73 73 20 3d 20 24 70 62 0a 2d 3e 61 64 64 | Builder();..$process.=.$pb.->add |
75880 | 28 24 70 68 70 29 0a 2d 3e 61 64 64 28 24 5f 53 45 52 56 45 52 5b 27 61 72 67 76 27 5d 5b 30 5d | ($php).->add($_SERVER['argv'][0] |
758a0 | 29 0a 2d 3e 61 64 64 28 24 63 6f 6d 6d 61 6e 64 29 0a 2d 3e 69 6e 68 65 72 69 74 45 6e 76 69 72 | ).->add($command).->inheritEnvir |
758c0 | 6f 6e 6d 65 6e 74 56 61 72 69 61 62 6c 65 73 28 74 72 75 65 29 0a 2d 3e 67 65 74 50 72 6f 63 65 | onmentVariables(true).->getProce |
758e0 | 73 73 28 29 0a 3b 0a 0a 24 6f 75 74 70 75 74 20 3d 20 24 74 68 69 73 2d 3e 6f 75 74 70 75 74 3b | ss().;..$output.=.$this->output; |
75900 | 0a 24 70 72 6f 63 65 73 73 2d 3e 72 75 6e 28 66 75 6e 63 74 69 6f 6e 28 24 74 79 70 65 2c 20 24 | .$process->run(function($type,.$ |
75920 | 64 61 74 61 29 20 75 73 65 20 28 24 6f 75 74 70 75 74 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 | data).use.($output).{.$output->w |
75940 | 72 69 74 65 6c 6e 28 24 64 61 74 61 29 3b 0a 7d 29 3b 0a 0a 24 72 65 74 20 3d 20 24 70 72 6f 63 | riteln($data);.});..$ret.=.$proc |
75960 | 65 73 73 2d 3e 67 65 74 45 78 69 74 43 6f 64 65 28 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 72 65 | ess->getExitCode();.}.else.{.$re |
75980 | 74 20 3d 20 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 72 75 6e 28 6e 65 77 20 | t.=.$this->application->run(new. |
759a0 | 53 74 72 69 6e 67 49 6e 70 75 74 28 24 63 6f 6d 6d 61 6e 64 29 2c 20 24 74 68 69 73 2d 3e 6f 75 | StringInput($command),.$this->ou |
759c0 | 74 70 75 74 29 3b 0a 7d 0a 0a 69 66 20 28 30 20 21 3d 3d 20 24 72 65 74 29 20 7b 0a 24 74 68 69 | tput);.}..if.(0.!==.$ret).{.$thi |
759e0 | 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 6c 6e 28 73 70 72 69 6e 74 66 28 27 3c 65 72 72 | s->output->writeln(sprintf('<err |
75a00 | 6f 72 3e 54 68 65 20 63 6f 6d 6d 61 6e 64 20 74 65 72 6d 69 6e 61 74 65 64 20 77 69 74 68 20 61 | or>The.command.terminated.with.a |
75a20 | 6e 20 65 72 72 6f 72 20 73 74 61 74 75 73 20 28 25 73 29 3c 2f 65 72 72 6f 72 3e 27 2c 20 24 72 | n.error.status.(%s)</error>',.$r |
75a40 | 65 74 29 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 | et));.}.}.}.......protected.func |
75a60 | 74 69 6f 6e 20 67 65 74 48 65 61 64 65 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 3c 3c 3c 45 4f 46 | tion.getHeader().{.return.<<<EOF |
75a80 | 0a 0a 57 65 6c 63 6f 6d 65 20 74 6f 20 74 68 65 20 3c 69 6e 66 6f 3e 7b 24 74 68 69 73 2d 3e 61 | ..Welcome.to.the.<info>{$this->a |
75aa0 | 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 7d 3c 2f 69 6e 66 6f 3e 20 73 68 | pplication->getName()}</info>.sh |
75ac0 | 65 6c 6c 20 28 3c 63 6f 6d 6d 65 6e 74 3e 7b 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f | ell.(<comment>{$this->applicatio |
75ae0 | 6e 2d 3e 67 65 74 56 65 72 73 69 6f 6e 28 29 7d 3c 2f 63 6f 6d 6d 65 6e 74 3e 29 2e 0a 0a 41 74 | n->getVersion()}</comment>)...At |
75b00 | 20 74 68 65 20 70 72 6f 6d 70 74 2c 20 74 79 70 65 20 3c 63 6f 6d 6d 65 6e 74 3e 68 65 6c 70 3c | .the.prompt,.type.<comment>help< |
75b20 | 2f 63 6f 6d 6d 65 6e 74 3e 20 66 6f 72 20 73 6f 6d 65 20 68 65 6c 70 2c 0a 6f 72 20 3c 63 6f 6d | /comment>.for.some.help,.or.<com |
75b40 | 6d 65 6e 74 3e 6c 69 73 74 3c 2f 63 6f 6d 6d 65 6e 74 3e 20 74 6f 20 67 65 74 20 61 20 6c 69 73 | ment>list</comment>.to.get.a.lis |
75b60 | 74 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 6d 61 6e 64 73 2e 0a 0a 54 6f 20 65 78 69 | t.of.available.commands...To.exi |
75b80 | 74 20 74 68 65 20 73 68 65 6c 6c 2c 20 74 79 70 65 20 3c 63 6f 6d 6d 65 6e 74 3e 5e 44 3c 2f 63 | t.the.shell,.type.<comment>^D</c |
75ba0 | 6f 6d 6d 65 6e 74 3e 2e 0a 0a 45 4f 46 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 | omment>...EOF;.}.........private |
75bc0 | 20 66 75 6e 63 74 69 6f 6e 20 61 75 74 6f 63 6f 6d 70 6c 65 74 65 72 28 24 74 65 78 74 29 0a 7b | .function.autocompleter($text).{ |
75be0 | 0a 24 69 6e 66 6f 20 3d 20 72 65 61 64 6c 69 6e 65 5f 69 6e 66 6f 28 29 3b 0a 24 74 65 78 74 20 | .$info.=.readline_info();.$text. |
75c00 | 3d 20 73 75 62 73 74 72 28 24 69 6e 66 6f 5b 27 6c 69 6e 65 5f 62 75 66 66 65 72 27 5d 2c 20 30 | =.substr($info['line_buffer'],.0 |
75c20 | 2c 20 24 69 6e 66 6f 5b 27 65 6e 64 27 5d 29 3b 0a 0a 69 66 20 28 24 69 6e 66 6f 5b 27 70 6f 69 | ,.$info['end']);..if.($info['poi |
75c40 | 6e 74 27 5d 20 21 3d 3d 20 24 69 6e 66 6f 5b 27 65 6e 64 27 5d 29 20 7b 0a 72 65 74 75 72 6e 20 | nt'].!==.$info['end']).{.return. |
75c60 | 74 72 75 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 73 74 72 70 6f 73 28 | true;.}....if.(false.===.strpos( |
75c80 | 24 74 65 78 74 2c 20 27 20 27 29 20 7c 7c 20 21 24 74 65 78 74 29 20 7b 0a 72 65 74 75 72 6e 20 | $text,.'.').||.!$text).{.return. |
75ca0 | 61 72 72 61 79 5f 6b 65 79 73 28 24 74 68 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 61 | array_keys($this->application->a |
75cc0 | 6c 6c 28 29 29 3b 0a 7d 0a 0a 0a 20 74 72 79 20 7b 0a 24 63 6f 6d 6d 61 6e 64 20 3d 20 24 74 68 | ll());.}....try.{.$command.=.$th |
75ce0 | 69 73 2d 3e 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e 66 69 6e 64 28 73 75 62 73 74 72 28 24 74 65 | is->application->find(substr($te |
75d00 | 78 74 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 74 65 78 74 2c 20 27 20 27 29 29 29 3b 0a 7d 20 63 | xt,.0,.strpos($text,.'.')));.}.c |
75d20 | 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 | atch.(\Exception.$e).{.return.tr |
75d40 | 75 65 3b 0a 7d 0a 0a 24 6c 69 73 74 20 3d 20 61 72 72 61 79 28 27 2d 2d 68 65 6c 70 27 29 3b 0a | ue;.}..$list.=.array('--help');. |
75d60 | 66 6f 72 65 61 63 68 20 28 24 63 6f 6d 6d 61 6e 64 2d 3e 67 65 74 44 65 66 69 6e 69 74 69 6f 6e | foreach.($command->getDefinition |
75d80 | 28 29 2d 3e 67 65 74 4f 70 74 69 6f 6e 73 28 29 20 61 73 20 24 6f 70 74 69 6f 6e 29 20 7b 0a 24 | ()->getOptions().as.$option).{.$ |
75da0 | 6c 69 73 74 5b 5d 20 3d 20 27 2d 2d 27 2e 24 6f 70 74 69 6f 6e 2d 3e 67 65 74 4e 61 6d 65 28 29 | list[].=.'--'.$option->getName() |
75dc0 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6c 69 73 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 | ;.}..return.$list;.}.......priva |
75de0 | 74 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 6c 69 6e 65 28 29 0a 7b 0a 69 66 20 28 24 74 68 | te.function.readline().{.if.($th |
75e00 | 69 73 2d 3e 68 61 73 52 65 61 64 6c 69 6e 65 29 20 7b 0a 24 6c 69 6e 65 20 3d 20 72 65 61 64 6c | is->hasReadline).{.$line.=.readl |
75e20 | 69 6e 65 28 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 | ine($this->prompt);.}.else.{.$th |
75e40 | 69 73 2d 3e 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 74 68 69 73 2d 3e 70 72 6f 6d 70 74 29 | is->output->write($this->prompt) |
75e60 | 3b 0a 24 6c 69 6e 65 20 3d 20 66 67 65 74 73 28 53 54 44 49 4e 2c 20 31 30 32 34 29 3b 0a 24 6c | ;.$line.=.fgets(STDIN,.1024);.$l |
75e80 | 69 6e 65 20 3d 20 28 21 24 6c 69 6e 65 20 26 26 20 73 74 72 6c 65 6e 28 24 6c 69 6e 65 29 20 3d | ine.=.(!$line.&&.strlen($line).= |
75ea0 | 3d 20 30 29 20 3f 20 66 61 6c 73 65 20 3a 20 72 74 72 69 6d 28 24 6c 69 6e 65 29 3b 0a 7d 0a 0a | =.0).?.false.:.rtrim($line);.}.. |
75ec0 | 72 65 74 75 72 6e 20 24 6c 69 6e 65 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | return.$line;.}..public.function |
75ee0 | 20 67 65 74 50 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | .getProcessIsolation().{.return. |
75f00 | 24 74 68 69 73 2d 3e 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 3b 0a 7d 0a 0a 70 75 62 6c | $this->processIsolation;.}..publ |
75f20 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 50 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 28 | ic.function.setProcessIsolation( |
75f40 | 24 70 72 6f 63 65 73 73 49 73 6f 6c 61 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 70 72 6f 63 | $processIsolation).{.$this->proc |
75f60 | 65 73 73 49 73 6f 6c 61 74 69 6f 6e 20 3d 20 28 42 6f 6f 6c 65 61 6e 29 20 24 70 72 6f 63 65 73 | essIsolation.=.(Boolean).$proces |
75f80 | 73 49 73 6f 6c 61 74 69 6f 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | sIsolation;.}.}.<?php........... |
75fa0 | 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 | namespace.Symfony\Component\Cons |
75fc0 | 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 | ole\Output;..use.Symfony\Compone |
75fe0 | 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 | nt\Console\Formatter\OutputForma |
76000 | 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | tterInterface;.use.Symfony\Compo |
76020 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 | nent\Console\Formatter\OutputFor |
76040 | 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 | matter;...............abstract.c |
76060 | 6c 61 73 73 20 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 4f 75 74 70 75 74 49 6e 74 | lass.Output.implements.OutputInt |
76080 | 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 76 65 72 62 6f 73 69 74 79 3b 0a 70 72 69 | erface.{.private.$verbosity;.pri |
760a0 | 76 61 74 65 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | vate.$formatter;...........publi |
760c0 | 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 | c.function.__construct($verbosit |
760e0 | 79 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 | y.=.self::VERBOSITY_NORMAL,.$dec |
76100 | 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e | orated.=.null,.OutputFormatterIn |
76120 | 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 | terface.$formatter.=.null).{.$th |
76140 | 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 20 3d 20 6e 75 6c 6c 20 3d 3d 3d 20 24 76 65 72 62 6f 73 | is->verbosity.=.null.===.$verbos |
76160 | 69 74 79 20 3f 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 3a 20 24 | ity.?.self::VERBOSITY_NORMAL.:.$ |
76180 | 76 65 72 62 6f 73 69 74 79 3b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 | verbosity;.$this->formatter.=.nu |
761a0 | 6c 6c 20 3d 3d 3d 20 24 66 6f 72 6d 61 74 74 65 72 20 3f 20 6e 65 77 20 4f 75 74 70 75 74 46 6f | ll.===.$formatter.?.new.OutputFo |
761c0 | 72 6d 61 74 74 65 72 28 29 20 3a 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 24 74 68 69 73 2d 3e 66 | rmatter().:.$formatter;.$this->f |
761e0 | 6f 72 6d 61 74 74 65 72 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 28 42 6f 6f 6c 65 61 6e 29 | ormatter->setDecorated((Boolean) |
76200 | 20 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | .$decorated);.}.........public.f |
76220 | 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 | unction.setFormatter(OutputForma |
76240 | 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 0a 7b 0a 24 74 68 69 | tterInterface.$formatter).{.$thi |
76260 | 73 2d 3e 66 6f 72 6d 61 74 74 65 72 20 3d 20 24 66 6f 72 6d 61 74 74 65 72 3b 0a 7d 0a 0a 0a 0a | s->formatter.=.$formatter;.}.... |
76280 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 | .....public.function.getFormatte |
762a0 | 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 3b 0a 7d | r().{.return.$this->formatter;.} |
762c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f | .........public.function.setDeco |
762e0 | 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 72 6d 61 | rated($decorated).{.$this->forma |
76300 | 74 74 65 72 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 28 42 6f 6f 6c 65 61 6e 29 20 24 64 65 | tter->setDecorated((Boolean).$de |
76320 | 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | corated);.}.........public.funct |
76340 | 69 6f 6e 20 69 73 44 65 63 6f 72 61 74 65 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | ion.isDecorated().{.return.$this |
76360 | 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 69 73 44 65 63 6f 72 61 74 65 64 28 29 3b 0a 7d 0a 0a 0a | ->formatter->isDecorated();.}... |
76380 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f 73 69 | ......public.function.setVerbosi |
763a0 | 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 20 3d 20 | ty($level).{.$this->verbosity.=. |
763c0 | 28 69 6e 74 29 20 24 6c 65 76 65 6c 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 | (int).$level;.}.........public.f |
763e0 | 75 6e 63 74 69 6f 6e 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | unction.getVerbosity().{.return. |
76400 | 24 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | $this->verbosity;.}..........pub |
76420 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 | lic.function.writeln($messages,. |
76440 | 24 74 79 70 65 20 3d 20 30 29 0a 7b 0a 24 74 68 69 73 2d 3e 77 72 69 74 65 28 24 6d 65 73 73 61 | $type.=.0).{.$this->write($messa |
76460 | 67 65 73 2c 20 74 72 75 65 2c 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ges,.true,.$type);.}............ |
76480 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 67 65 73 | .public.function.write($messages |
764a0 | 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 74 79 70 65 20 3d 20 30 29 0a 7b | ,.$newline.=.false,.$type.=.0).{ |
764c0 | 0a 69 66 20 28 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 3d 3d 20 24 | .if.(self::VERBOSITY_QUIET.===.$ |
764e0 | 74 68 69 73 2d 3e 76 65 72 62 6f 73 69 74 79 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a 0a 24 6d | this->verbosity).{.return;.}..$m |
76500 | 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 6d 65 73 73 61 67 65 73 3b 0a 0a 66 6f | essages.=.(array).$messages;..fo |
76520 | 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 73 61 67 65 29 20 7b 0a | reach.($messages.as.$message).{. |
76540 | 73 77 69 74 63 68 20 28 24 74 79 70 65 29 20 7b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 | switch.($type).{.case.OutputInte |
76560 | 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 4e 4f 52 4d 41 4c 3a 0a 24 6d 65 73 73 61 67 65 20 3d | rface::OUTPUT_NORMAL:.$message.= |
76580 | 20 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d 3e 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 | .$this->formatter->format($messa |
765a0 | 67 65 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 | ge);.break;.case.OutputInterface |
765c0 | 3a 3a 4f 55 54 50 55 54 5f 52 41 57 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 4f 75 74 70 75 74 | ::OUTPUT_RAW:.break;.case.Output |
765e0 | 49 6e 74 65 72 66 61 63 65 3a 3a 4f 55 54 50 55 54 5f 50 4c 41 49 4e 3a 0a 24 6d 65 73 73 61 67 | Interface::OUTPUT_PLAIN:.$messag |
76600 | 65 20 3d 20 73 74 72 69 70 5f 74 61 67 73 28 24 74 68 69 73 2d 3e 66 6f 72 6d 61 74 74 65 72 2d | e.=.strip_tags($this->formatter- |
76620 | 3e 66 6f 72 6d 61 74 28 24 6d 65 73 73 61 67 65 29 29 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 | >format($message));.break;.defau |
76640 | 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 | lt:.throw.new.\InvalidArgumentEx |
76660 | 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 55 6e 6b 6e 6f 77 6e 20 6f 75 74 70 75 74 20 | ception(sprintf('Unknown.output. |
76680 | 74 79 70 65 20 67 69 76 65 6e 20 28 25 73 29 27 2c 20 24 74 79 70 65 29 29 3b 0a 7d 0a 0a 24 74 | type.given.(%s)',.$type));.}..$t |
766a0 | 68 69 73 2d 3e 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c 69 6e 65 29 | his->doWrite($message,.$newline) |
766c0 | 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 | ;.}.}........abstract.protected. |
766e0 | 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c | function.doWrite($message,.$newl |
76700 | 69 6e 65 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | ine);.}.<?php...........namespac |
76720 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 | e.Symfony\Component\Console\Outp |
76740 | 75 74 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6c 6c 4f 75 74 70 75 74 20 65 | ut;...........class.NullOutput.e |
76760 | 78 74 65 6e 64 73 20 4f 75 74 70 75 74 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 | xtends.Output.{.......protected. |
76780 | 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c | function.doWrite($message,.$newl |
767a0 | 69 6e 65 29 0a 7b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 | ine).{.}.}.<?php...........names |
767c0 | 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f | pace.Symfony\Component\Console\O |
767e0 | 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f | utput;..use.Symfony\Component\Co |
76800 | 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a | nsole\Output\OutputInterface;... |
76820 | 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 | .....interface.ConsoleOutputInte |
76840 | 72 66 61 63 65 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a | rface.extends.OutputInterface.{. |
76860 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 4f 75 74 70 75 | ...public.function.getErrorOutpu |
76880 | 74 28 29 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 4f 75 | t();..public.function.setErrorOu |
768a0 | 74 70 75 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 65 72 72 6f 72 29 3b 0a 7d 0a | tput(OutputInterface.$error);.}. |
768c0 | 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e | <?php...........namespace.Symfon |
768e0 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 | y\Component\Console\Output;..use |
76900 | 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 | .Symfony\Component\Console\Forma |
76920 | 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a | tter\OutputFormatterInterface;.. |
76940 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 65 61 6d 4f 75 74 70 75 | ...............class.StreamOutpu |
76960 | 74 20 65 78 74 65 6e 64 73 20 4f 75 74 70 75 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 74 72 65 | t.extends.Output.{.private.$stre |
76980 | 61 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | am;...............public.functio |
769a0 | 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 73 74 72 65 61 6d 2c 20 24 76 65 72 62 6f 73 69 74 | n.__construct($stream,.$verbosit |
769c0 | 79 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 | y.=.self::VERBOSITY_NORMAL,.$dec |
769e0 | 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e | orated.=.null,.OutputFormatterIn |
76a00 | 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 | terface.$formatter.=.null).{.if. |
76a20 | 28 21 69 73 5f 72 65 73 6f 75 72 63 65 28 24 73 74 72 65 61 6d 29 20 7c 7c 20 27 73 74 72 65 61 | (!is_resource($stream).||.'strea |
76a40 | 6d 27 20 21 3d 3d 20 67 65 74 5f 72 65 73 6f 75 72 63 65 5f 74 79 70 65 28 24 73 74 72 65 61 6d | m'.!==.get_resource_type($stream |
76a60 | 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 | )).{.throw.new.\InvalidArgumentE |
76a80 | 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 53 74 72 65 61 6d 4f 75 74 70 75 74 20 63 6c 61 73 73 | xception('The.StreamOutput.class |
76aa0 | 20 6e 65 65 64 73 20 61 20 73 74 72 65 61 6d 20 61 73 20 69 74 73 20 66 69 72 73 74 20 61 72 67 | .needs.a.stream.as.its.first.arg |
76ac0 | 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 20 3d 20 24 73 74 | ument.');.}..$this->stream.=.$st |
76ae0 | 72 65 61 6d 3b 0a 0a 69 66 20 28 6e 75 6c 6c 20 3d 3d 3d 20 24 64 65 63 6f 72 61 74 65 64 29 20 | ream;..if.(null.===.$decorated). |
76b00 | 7b 0a 24 64 65 63 6f 72 61 74 65 64 20 3d 20 24 74 68 69 73 2d 3e 68 61 73 43 6f 6c 6f 72 53 75 | {.$decorated.=.$this->hasColorSu |
76b20 | 70 70 6f 72 74 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f | pport($decorated);.}..parent::__ |
76b40 | 63 6f 6e 73 74 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 6f 72 61 74 65 64 | construct($verbosity,.$decorated |
76b60 | 2c 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ,.$formatter);.}.......public.fu |
76b80 | 6e 63 74 69 6f 6e 20 67 65 74 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 | nction.getStream().{.return.$thi |
76ba0 | 73 2d 3e 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 | s->stream;.}..........protected. |
76bc0 | 66 75 6e 63 74 69 6f 6e 20 64 6f 57 72 69 74 65 28 24 6d 65 73 73 61 67 65 2c 20 24 6e 65 77 6c | function.doWrite($message,.$newl |
76be0 | 69 6e 65 29 0a 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 40 66 77 72 69 74 65 28 24 74 68 | ine).{.if.(false.===.@fwrite($th |
76c00 | 69 73 2d 3e 73 74 72 65 61 6d 2c 20 24 6d 65 73 73 61 67 65 2e 28 24 6e 65 77 6c 69 6e 65 20 3f | is->stream,.$message.($newline.? |
76c20 | 20 50 48 50 5f 45 4f 4c 20 3a 20 27 27 29 29 29 20 7b 0a 0a 20 0a 20 74 68 72 6f 77 20 6e 65 77 | .PHP_EOL.:.''))).{.....throw.new |
76c40 | 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 55 6e 61 62 6c 65 20 74 6f 20 77 72 | .\RuntimeException('Unable.to.wr |
76c60 | 69 74 65 20 6f 75 74 70 75 74 2e 27 29 3b 0a 0a 20 7d 0a 0a 66 66 6c 75 73 68 28 24 74 68 69 73 | ite.output.');...}..fflush($this |
76c80 | 2d 3e 73 74 72 65 61 6d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 | ->stream);.}............protecte |
76ca0 | 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 43 6f 6c 6f 72 53 75 70 70 6f 72 74 28 29 0a 7b 0a 0a | d.function.hasColorSupport().{.. |
76cc0 | 20 69 66 20 28 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 3d 3d 20 27 5c 5c 27 | .if.(DIRECTORY_SEPARATOR.==.'\\' |
76ce0 | 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 20 21 3d 3d 20 67 65 74 65 6e 76 28 27 41 4e 53 | ).{.return.false.!==.getenv('ANS |
76d00 | 49 43 4f 4e 27 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 | ICON');.}..return.function_exist |
76d20 | 73 28 27 70 6f 73 69 78 5f 69 73 61 74 74 79 27 29 20 26 26 20 40 70 6f 73 69 78 5f 69 73 61 74 | s('posix_isatty').&&.@posix_isat |
76d40 | 74 79 28 24 74 68 69 73 2d 3e 73 74 72 65 61 6d 29 3b 0a 0a 20 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a | ty($this->stream);...}.}.<?php.. |
76d60 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f | .........namespace.Symfony\Compo |
76d80 | 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e | nent\Console\Output;..use.Symfon |
76da0 | 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 | y\Component\Console\Formatter\Ou |
76dc0 | 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a | tputFormatterInterface;......... |
76de0 | 69 6e 74 65 72 66 61 63 65 20 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 63 6f 6e 73 | interface.OutputInterface.{.cons |
76e00 | 74 20 56 45 52 42 4f 53 49 54 59 5f 51 55 49 45 54 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 56 45 52 | t.VERBOSITY_QUIET.=.0;.const.VER |
76e20 | 42 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 56 45 52 42 4f 53 49 | BOSITY_NORMAL.=.1;.const.VERBOSI |
76e40 | 54 59 5f 56 45 52 42 4f 53 45 20 3d 20 32 3b 0a 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 4e 4f | TY_VERBOSE.=.2;..const.OUTPUT_NO |
76e60 | 52 4d 41 4c 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 52 41 57 20 3d 20 31 3b 0a | RMAL.=.0;.const.OUTPUT_RAW.=.1;. |
76e80 | 63 6f 6e 73 74 20 4f 55 54 50 55 54 5f 50 4c 41 49 4e 20 3d 20 32 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a | const.OUTPUT_PLAIN.=.2;......... |
76ea0 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 65 28 24 6d 65 73 73 61 | ....public.function.write($messa |
76ec0 | 67 65 73 2c 20 24 6e 65 77 6c 69 6e 65 20 3d 20 66 61 6c 73 65 2c 20 24 74 79 70 65 20 3d 20 30 | ges,.$newline.=.false,.$type.=.0 |
76ee0 | 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 77 72 69 74 | );..........public.function.writ |
76f00 | 65 6c 6e 28 24 6d 65 73 73 61 67 65 73 2c 20 24 74 79 70 65 20 3d 20 30 29 3b 0a 0a 0a 0a 0a 0a | eln($messages,.$type.=.0);...... |
76f20 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f 73 69 74 79 28 | ...public.function.setVerbosity( |
76f40 | 24 6c 65 76 65 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | $level);.........public.function |
76f60 | 20 67 65 74 56 65 72 62 6f 73 69 74 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .getVerbosity();.........public. |
76f80 | 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 | function.setDecorated($decorated |
76fa0 | 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 44 65 63 | );.........public.function.isDec |
76fc0 | 6f 72 61 74 65 64 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | orated();.........public.functio |
76fe0 | 6e 20 73 65 74 46 6f 72 6d 61 74 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e | n.setFormatter(OutputFormatterIn |
77000 | 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | terface.$formatter);.........pub |
77020 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 6f 72 6d 61 74 74 65 72 28 29 3b 0a 7d 0a 3c | lic.function.getFormatter();.}.< |
77040 | 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 | ?php...........namespace.Symfony |
77060 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 3b 0a 0a 75 73 65 20 | \Component\Console\Output;..use. |
77080 | 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 | Symfony\Component\Console\Format |
770a0 | 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 75 73 65 20 53 79 6d 66 6f 6e 79 | ter\OutputFormatter;.use.Symfony |
770c0 | 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 6d 61 74 74 65 72 5c 4f 75 74 | \Component\Console\Formatter\Out |
770e0 | 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 3b 0a 75 73 65 20 53 79 6d 66 6f | putFormatterInterface;.use.Symfo |
77100 | 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 43 6f 6e 73 | ny\Component\Console\Output\Cons |
77120 | 6f 6c 65 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | oleOutputInterface;............. |
77140 | 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6e 73 6f 6c 65 4f 75 74 70 75 74 20 65 78 74 65 6e 64 73 20 | ....class.ConsoleOutput.extends. |
77160 | 53 74 72 65 61 6d 4f 75 74 70 75 74 20 69 6d 70 6c 65 6d 65 6e 74 73 20 43 6f 6e 73 6f 6c 65 4f | StreamOutput.implements.ConsoleO |
77180 | 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 74 64 65 72 72 | utputInterface.{.private.$stderr |
771a0 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 | ;............public.function.__c |
771c0 | 6f 6e 73 74 72 75 63 74 28 24 76 65 72 62 6f 73 69 74 79 20 3d 20 73 65 6c 66 3a 3a 56 45 52 42 | onstruct($verbosity.=.self::VERB |
771e0 | 4f 53 49 54 59 5f 4e 4f 52 4d 41 4c 2c 20 24 64 65 63 6f 72 61 74 65 64 20 3d 20 6e 75 6c 6c 2c | OSITY_NORMAL,.$decorated.=.null, |
77200 | 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f 72 6d 61 | .OutputFormatterInterface.$forma |
77220 | 74 74 65 72 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 6f 75 74 70 75 74 53 74 72 65 61 6d 20 3d 20 27 | tter.=.null).{.$outputStream.=.' |
77240 | 70 68 70 3a 2f 2f 73 74 64 6f 75 74 27 3b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 53 74 | php://stdout';.if.(!$this->hasSt |
77260 | 64 6f 75 74 53 75 70 70 6f 72 74 28 29 29 20 7b 0a 24 6f 75 74 70 75 74 53 74 72 65 61 6d 20 3d | doutSupport()).{.$outputStream.= |
77280 | 20 27 70 68 70 3a 2f 2f 6f 75 74 70 75 74 27 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f | .'php://output';.}..parent::__co |
772a0 | 6e 73 74 72 75 63 74 28 66 6f 70 65 6e 28 24 6f 75 74 70 75 74 53 74 72 65 61 6d 2c 20 27 77 27 | nstruct(fopen($outputStream,.'w' |
772c0 | 29 2c 20 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 6f 72 61 74 65 64 2c 20 24 66 6f 72 6d | ),.$verbosity,.$decorated,.$form |
772e0 | 61 74 74 65 72 29 3b 0a 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 6e 65 77 20 53 74 72 | atter);..$this->stderr.=.new.Str |
77300 | 65 61 6d 4f 75 74 70 75 74 28 66 6f 70 65 6e 28 27 70 68 70 3a 2f 2f 73 74 64 65 72 72 27 2c 20 | eamOutput(fopen('php://stderr',. |
77320 | 27 77 27 29 2c 20 24 76 65 72 62 6f 73 69 74 79 2c 20 24 64 65 63 6f 72 61 74 65 64 2c 20 24 66 | 'w'),.$verbosity,.$decorated,.$f |
77340 | 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 | ormatter);.}..public.function.se |
77360 | 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 0a 7b 0a 70 61 72 65 6e 74 3a | tDecorated($decorated).{.parent: |
77380 | 3a 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 64 29 3b 0a 24 74 68 69 73 | :setDecorated($decorated);.$this |
773a0 | 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 44 65 63 6f 72 61 74 65 64 28 24 64 65 63 6f 72 61 74 65 | ->stderr->setDecorated($decorate |
773c0 | 64 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 46 6f 72 6d 61 74 | d);.}..public.function.setFormat |
773e0 | 74 65 72 28 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 49 6e 74 65 72 66 61 63 65 20 24 66 6f | ter(OutputFormatterInterface.$fo |
77400 | 72 6d 61 74 74 65 72 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 73 65 74 46 6f 72 6d 61 74 74 65 72 28 | rmatter).{.parent::setFormatter( |
77420 | 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 24 74 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 46 | $formatter);.$this->stderr->setF |
77440 | 6f 72 6d 61 74 74 65 72 28 24 66 6f 72 6d 61 74 74 65 72 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 | ormatter($formatter);.}..public. |
77460 | 66 75 6e 63 74 69 6f 6e 20 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 0a 7b 0a | function.setVerbosity($level).{. |
77480 | 70 61 72 65 6e 74 3a 3a 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c 29 3b 0a 24 74 | parent::setVerbosity($level);.$t |
774a0 | 68 69 73 2d 3e 73 74 64 65 72 72 2d 3e 73 65 74 56 65 72 62 6f 73 69 74 79 28 24 6c 65 76 65 6c | his->stderr->setVerbosity($level |
774c0 | 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f | );.}.....public.function.getErro |
774e0 | 72 4f 75 74 70 75 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 74 64 65 72 72 | rOutput().{.return.$this->stderr |
77500 | 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 45 72 72 6f 72 4f 75 74 | ;.}..public.function.setErrorOut |
77520 | 70 75 74 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 65 72 72 6f 72 29 0a 7b 0a 24 74 | put(OutputInterface.$error).{.$t |
77540 | 68 69 73 2d 3e 73 74 64 65 72 72 20 3d 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | his->stderr.=.$error;.}......... |
77560 | 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 53 74 64 6f 75 74 53 | ...protected.function.hasStdoutS |
77580 | 75 70 70 6f 72 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 28 27 4f 53 34 30 30 27 20 21 3d 20 70 68 | upport().{.return.('OS400'.!=.ph |
775a0 | 70 5f 75 6e 61 6d 65 28 27 73 27 29 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | p_uname('s'));.}.}.<?php........ |
775c0 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 | ...namespace.Symfony\Component\C |
775e0 | 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 66 61 63 65 | onsole\Helper;.........interface |
77600 | 20 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | .HelperInterface.{........public |
77620 | 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c 70 65 72 53 65 74 | .function.setHelperSet(HelperSet |
77640 | 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e 75 6c 6c 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | .$helperSet.=.null);.........pub |
77660 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 3b 0a 0a 0a 0a | lic.function.getHelperSet();.... |
77680 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 3b 0a | .....public.function.getName();. |
776a0 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 | }.<?php...........namespace.Symf |
776c0 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 | ony\Component\Console\Helper;..u |
776e0 | 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 46 6f 72 | se.Symfony\Component\Console\For |
77700 | 6d 61 74 74 65 72 5c 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c | matter\OutputFormatter;.......cl |
77720 | 61 73 73 20 46 6f 72 6d 61 74 74 65 72 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 | ass.FormatterHelper.extends.Help |
77740 | 65 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f | er.{..........public.function.fo |
77760 | 72 6d 61 74 53 65 63 74 69 6f 6e 28 24 73 65 63 74 69 6f 6e 2c 20 24 6d 65 73 73 61 67 65 2c 20 | rmatSection($section,.$message,. |
77780 | 24 73 74 79 6c 65 20 3d 20 27 69 6e 66 6f 27 29 0a 7b 0a 72 65 74 75 72 6e 20 73 70 72 69 6e 74 | $style.=.'info').{.return.sprint |
777a0 | 66 28 27 3c 25 73 3e 5b 25 73 5d 3c 2f 25 73 3e 20 25 73 27 2c 20 24 73 74 79 6c 65 2c 20 24 73 | f('<%s>[%s]</%s>.%s',.$style,.$s |
777c0 | 65 63 74 69 6f 6e 2c 20 24 73 74 79 6c 65 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 7d 0a 0a 0a 0a | ection,.$style,.$message);.}.... |
777e0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 6d 61 74 42 6c 6f | .......public.function.formatBlo |
77800 | 63 6b 28 24 6d 65 73 73 61 67 65 73 2c 20 24 73 74 79 6c 65 2c 20 24 6c 61 72 67 65 20 3d 20 66 | ck($messages,.$style,.$large.=.f |
77820 | 61 6c 73 65 29 0a 7b 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 28 61 72 72 61 79 29 20 24 6d 65 73 | alse).{.$messages.=.(array).$mes |
77840 | 73 61 67 65 73 3b 0a 0a 24 6c 65 6e 20 3d 20 30 3b 0a 24 6c 69 6e 65 73 20 3d 20 61 72 72 61 79 | sages;..$len.=.0;.$lines.=.array |
77860 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 24 6d 65 73 73 61 | ();.foreach.($messages.as.$messa |
77880 | 67 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 4f 75 74 70 75 74 46 6f 72 6d 61 74 74 65 72 | ge).{.$message.=.OutputFormatter |
778a0 | 3a 3a 65 73 63 61 70 65 28 24 6d 65 73 73 61 67 65 29 3b 0a 24 6c 69 6e 65 73 5b 5d 20 3d 20 73 | ::escape($message);.$lines[].=.s |
778c0 | 70 72 69 6e 74 66 28 24 6c 61 72 67 65 20 3f 20 27 20 20 25 73 20 20 27 20 3a 20 27 20 25 73 20 | printf($large.?.'..%s..'.:.'.%s. |
778e0 | 27 2c 20 24 6d 65 73 73 61 67 65 29 3b 0a 24 6c 65 6e 20 3d 20 6d 61 78 28 24 74 68 69 73 2d 3e | ',.$message);.$len.=.max($this-> |
77900 | 73 74 72 6c 65 6e 28 24 6d 65 73 73 61 67 65 29 20 2b 20 28 24 6c 61 72 67 65 20 3f 20 34 20 3a | strlen($message).+.($large.?.4.: |
77920 | 20 32 29 2c 20 24 6c 65 6e 29 3b 0a 7d 0a 0a 24 6d 65 73 73 61 67 65 73 20 3d 20 24 6c 61 72 67 | .2),.$len);.}..$messages.=.$larg |
77940 | 65 20 3f 20 61 72 72 61 79 28 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 29 | e.?.array(str_repeat('.',.$len)) |
77960 | 20 3a 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6c 69 6e 65 73 20 61 73 20 24 | .:.array();.foreach.($lines.as.$ |
77980 | 6c 69 6e 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 73 5b 5d 20 3d 20 24 6c 69 6e 65 2e 73 74 72 5f | line).{.$messages[].=.$line.str_ |
779a0 | 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 20 2d 20 24 74 68 69 73 2d 3e 73 74 72 6c 65 6e | repeat('.',.$len.-.$this->strlen |
779c0 | 28 24 6c 69 6e 65 29 29 3b 0a 7d 0a 69 66 20 28 24 6c 61 72 67 65 29 20 7b 0a 24 6d 65 73 73 61 | ($line));.}.if.($large).{.$messa |
779e0 | 67 65 73 5b 5d 20 3d 20 73 74 72 5f 72 65 70 65 61 74 28 27 20 27 2c 20 24 6c 65 6e 29 3b 0a 7d | ges[].=.str_repeat('.',.$len);.} |
77a00 | 0a 0a 66 6f 72 65 61 63 68 20 28 24 6d 65 73 73 61 67 65 73 20 61 73 20 26 24 6d 65 73 73 61 67 | ..foreach.($messages.as.&$messag |
77a20 | 65 29 20 7b 0a 24 6d 65 73 73 61 67 65 20 3d 20 73 70 72 69 6e 74 66 28 27 3c 25 73 3e 25 73 3c | e).{.$message.=.sprintf('<%s>%s< |
77a40 | 2f 25 73 3e 27 2c 20 24 73 74 79 6c 65 2c 20 24 6d 65 73 73 61 67 65 2c 20 24 73 74 79 6c 65 29 | /%s>',.$style,.$message,.$style) |
77a60 | 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 69 6d 70 6c 6f 64 65 28 22 5c 6e 22 2c 20 24 6d 65 73 73 61 | ;.}..return.implode("\n",.$messa |
77a80 | 67 65 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e | ges);.}.........private.function |
77aa0 | 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 0a 7b 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e | .strlen($string).{.if.(!function |
77ac0 | 5f 65 78 69 73 74 73 28 27 6d 62 5f 73 74 72 6c 65 6e 27 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 | _exists('mb_strlen')).{.return.s |
77ae0 | 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d | trlen($string);.}..if.(false.=== |
77b00 | 20 24 65 6e 63 6f 64 69 6e 67 20 3d 20 6d 62 5f 64 65 74 65 63 74 5f 65 6e 63 6f 64 69 6e 67 28 | .$encoding.=.mb_detect_encoding( |
77b20 | 24 73 74 72 69 6e 67 29 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 73 74 72 69 6e | $string)).{.return.strlen($strin |
77b40 | 67 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6d 62 5f 73 74 72 6c 65 6e 28 24 73 74 72 69 6e 67 2c | g);.}..return.mb_strlen($string, |
77b60 | 20 24 65 6e 63 6f 64 69 6e 67 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | .$encoding);.}.......public.func |
77b80 | 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 66 6f 72 6d 61 74 74 | tion.getName().{.return.'formatt |
77ba0 | 65 72 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 | er';.}.}.<?php...........namespa |
77bc0 | 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c | ce.Symfony\Component\Console\Hel |
77be0 | 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 | per;..use.Symfony\Component\Cons |
77c00 | 6f 6c 65 5c 43 6f 6d 6d 61 6e 64 5c 43 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 | ole\Command\Command;.......class |
77c20 | 20 48 65 6c 70 65 72 53 65 74 0a 7b 0a 70 72 69 76 61 74 65 20 24 68 65 6c 70 65 72 73 3b 0a 70 | .HelperSet.{.private.$helpers;.p |
77c40 | 72 69 76 61 74 65 20 24 63 6f 6d 6d 61 6e 64 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | rivate.$command;.......public.fu |
77c60 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 61 72 72 61 79 20 24 68 65 6c 70 65 72 | nction.__construct(array.$helper |
77c80 | 73 20 3d 20 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 20 3d 20 | s.=.array()).{.$this->helpers.=. |
77ca0 | 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 68 65 6c 70 65 72 73 20 61 73 20 24 61 | array();.foreach.($helpers.as.$a |
77cc0 | 6c 69 61 73 20 3d 3e 20 24 68 65 6c 70 65 72 29 20 7b 0a 24 74 68 69 73 2d 3e 73 65 74 28 24 68 | lias.=>.$helper).{.$this->set($h |
77ce0 | 65 6c 70 65 72 2c 20 69 73 5f 69 6e 74 28 24 61 6c 69 61 73 29 20 3f 20 6e 75 6c 6c 20 3a 20 24 | elper,.is_int($alias).?.null.:.$ |
77d00 | 61 6c 69 61 73 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | alias);.}.}........public.functi |
77d20 | 6f 6e 20 73 65 74 28 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 20 24 68 65 6c 70 65 72 2c 20 | on.set(HelperInterface.$helper,. |
77d40 | 24 61 6c 69 61 73 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b | $alias.=.null).{.$this->helpers[ |
77d60 | 24 68 65 6c 70 65 72 2d 3e 67 65 74 4e 61 6d 65 28 29 5d 20 3d 20 24 68 65 6c 70 65 72 3b 0a 69 | $helper->getName()].=.$helper;.i |
77d80 | 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 61 6c 69 61 73 29 20 7b 0a 24 74 68 69 73 2d 3e 68 65 6c | f.(null.!==.$alias).{.$this->hel |
77da0 | 70 65 72 73 5b 24 61 6c 69 61 73 5d 20 3d 20 24 68 65 6c 70 65 72 3b 0a 7d 0a 0a 24 68 65 6c 70 | pers[$alias].=.$helper;.}..$help |
77dc0 | 65 72 2d 3e 73 65 74 48 65 6c 70 65 72 53 65 74 28 24 74 68 69 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a | er->setHelperSet($this);.}...... |
77de0 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 68 61 73 28 24 6e 61 6d 65 29 0a 7b 0a | ...public.function.has($name).{. |
77e00 | 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d | return.isset($this->helpers[$nam |
77e20 | 65 5d 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | e]);.}...........public.function |
77e40 | 20 67 65 74 28 24 6e 61 6d 65 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 73 2d 3e 68 61 73 28 24 6e | .get($name).{.if.(!$this->has($n |
77e60 | 61 6d 65 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 | ame)).{.throw.new.\InvalidArgume |
77e80 | 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 68 65 6c 70 65 72 20 | ntException(sprintf('The.helper. |
77ea0 | 22 25 73 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2e 27 2c 20 24 6e 61 6d 65 29 29 3b 0a | "%s".is.not.defined.',.$name));. |
77ec0 | 7d 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 73 5b 24 6e 61 6d 65 5d 3b | }..return.$this->helpers[$name]; |
77ee0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 43 6f 6d 6d | .}.......public.function.setComm |
77f00 | 61 6e 64 28 43 6f 6d 6d 61 6e 64 20 24 63 6f 6d 6d 61 6e 64 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 | and(Command.$command.=.null).{.$ |
77f20 | 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 20 3d 20 24 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 0a 0a 0a 0a | this->command.=.$command;.}..... |
77f40 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6d 6d 61 6e 64 28 29 0a 7b | ..public.function.getCommand().{ |
77f60 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6d 6d 61 6e 64 3b 0a 7d 0a 7d 0a 3c 3f 70 68 | .return.$this->command;.}.}.<?ph |
77f80 | 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f | p...........namespace.Symfony\Co |
77fa0 | 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 65 72 3b 0a 0a 75 73 65 20 53 79 6d | mponent\Console\Helper;..use.Sym |
77fc0 | 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 4f 75 74 70 75 74 5c 4f 75 | fony\Component\Console\Output\Ou |
77fe0 | 74 70 75 74 49 6e 74 65 72 66 61 63 65 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 69 61 6c 6f | tputInterface;.......class.Dialo |
78000 | 67 48 65 6c 70 65 72 20 65 78 74 65 6e 64 73 20 48 65 6c 70 65 72 0a 7b 0a 70 72 69 76 61 74 65 | gHelper.extends.Helper.{.private |
78020 | 20 24 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 | .$inputStream;.............publi |
78040 | 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 | c.function.ask(OutputInterface.$ |
78060 | 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 | output,.$question,.$default.=.nu |
78080 | 6c 6c 29 0a 7b 0a 24 6f 75 74 70 75 74 2d 3e 77 72 69 74 65 28 24 71 75 65 73 74 69 6f 6e 29 3b | ll).{.$output->write($question); |
780a0 | 0a 0a 24 72 65 74 20 3d 20 66 67 65 74 73 28 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 | ..$ret.=.fgets($this->inputStrea |
780c0 | 6d 20 3f 3a 20 53 54 44 49 4e 2c 20 34 30 39 36 29 3b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d | m.?:.STDIN,.4096);.if.(false.=== |
780e0 | 20 24 72 65 74 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 75 6e 74 69 6d 65 45 78 63 65 70 | .$ret).{.throw.new.\RuntimeExcep |
78100 | 74 69 6f 6e 28 27 41 62 6f 72 74 65 64 27 29 3b 0a 7d 0a 24 72 65 74 20 3d 20 74 72 69 6d 28 24 | tion('Aborted');.}.$ret.=.trim($ |
78120 | 72 65 74 29 3b 0a 0a 72 65 74 75 72 6e 20 73 74 72 6c 65 6e 28 24 72 65 74 29 20 3e 20 30 20 3f | ret);..return.strlen($ret).>.0.? |
78140 | 20 24 72 65 74 20 3a 20 24 64 65 66 61 75 6c 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | .$ret.:.$default;.}............. |
78160 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 73 6b 43 6f 6e 66 69 72 6d 61 74 69 6f 6e 28 | public.function.askConfirmation( |
78180 | 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 | OutputInterface.$output,.$questi |
781a0 | 6f 6e 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 74 72 75 65 29 0a 7b 0a 24 61 6e 73 77 65 72 20 3d | on,.$default.=.true).{.$answer.= |
781c0 | 20 27 7a 27 3b 0a 77 68 69 6c 65 20 28 24 61 6e 73 77 65 72 20 26 26 20 21 69 6e 5f 61 72 72 61 | .'z';.while.($answer.&&.!in_arra |
781e0 | 79 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 2c 20 61 72 72 61 79 28 | y(strtolower($answer[0]),.array( |
78200 | 27 79 27 2c 20 27 6e 27 29 29 29 20 7b 0a 24 61 6e 73 77 65 72 20 3d 20 24 74 68 69 73 2d 3e 61 | 'y',.'n'))).{.$answer.=.$this->a |
78220 | 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 29 3b 0a 7d 0a 0a 69 66 20 28 66 | sk($output,.$question);.}..if.(f |
78240 | 61 6c 73 65 20 3d 3d 3d 20 24 64 65 66 61 75 6c 74 29 20 7b 0a 72 65 74 75 72 6e 20 24 61 6e 73 | alse.===.$default).{.return.$ans |
78260 | 77 65 72 20 26 26 20 27 79 27 20 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 | wer.&&.'y'.==.strtolower($answer |
78280 | 5b 30 5d 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 21 24 61 6e 73 77 65 72 20 7c 7c 20 27 79 27 20 | [0]);.}..return.!$answer.||.'y'. |
782a0 | 3d 3d 20 73 74 72 74 6f 6c 6f 77 65 72 28 24 61 6e 73 77 65 72 5b 30 5d 29 3b 0a 7d 0a 0a 0a 0a | ==.strtolower($answer[0]);.}.... |
782c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 | ...............public.function.a |
782e0 | 73 6b 41 6e 64 56 61 6c 69 64 61 74 65 28 4f 75 74 70 75 74 49 6e 74 65 72 66 61 63 65 20 24 6f | skAndValidate(OutputInterface.$o |
78300 | 75 74 70 75 74 2c 20 24 71 75 65 73 74 69 6f 6e 2c 20 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 61 | utput,.$question,.$validator,.$a |
78320 | 74 74 65 6d 70 74 73 20 3d 20 66 61 6c 73 65 2c 20 24 64 65 66 61 75 6c 74 20 3d 20 6e 75 6c 6c | ttempts.=.false,.$default.=.null |
78340 | 29 0a 7b 0a 24 65 72 72 6f 72 20 3d 20 6e 75 6c 6c 3b 0a 77 68 69 6c 65 20 28 66 61 6c 73 65 20 | ).{.$error.=.null;.while.(false. |
78360 | 3d 3d 3d 20 24 61 74 74 65 6d 70 74 73 20 7c 7c 20 24 61 74 74 65 6d 70 74 73 2d 2d 29 20 7b 0a | ===.$attempts.||.$attempts--).{. |
78380 | 69 66 20 28 6e 75 6c 6c 20 21 3d 3d 20 24 65 72 72 6f 72 29 20 7b 0a 24 6f 75 74 70 75 74 2d 3e | if.(null.!==.$error).{.$output-> |
783a0 | 77 72 69 74 65 6c 6e 28 24 74 68 69 73 2d 3e 67 65 74 48 65 6c 70 65 72 53 65 74 28 29 2d 3e 67 | writeln($this->getHelperSet()->g |
783c0 | 65 74 28 27 66 6f 72 6d 61 74 74 65 72 27 29 2d 3e 66 6f 72 6d 61 74 42 6c 6f 63 6b 28 24 65 72 | et('formatter')->formatBlock($er |
783e0 | 72 6f 72 2d 3e 67 65 74 4d 65 73 73 61 67 65 28 29 2c 20 27 65 72 72 6f 72 27 29 29 3b 0a 7d 0a | ror->getMessage(),.'error'));.}. |
78400 | 0a 24 76 61 6c 75 65 20 3d 20 24 74 68 69 73 2d 3e 61 73 6b 28 24 6f 75 74 70 75 74 2c 20 24 71 | .$value.=.$this->ask($output,.$q |
78420 | 75 65 73 74 69 6f 6e 2c 20 24 64 65 66 61 75 6c 74 29 3b 0a 0a 74 72 79 20 7b 0a 72 65 74 75 72 | uestion,.$default);..try.{.retur |
78440 | 6e 20 63 61 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 76 61 6c 69 64 61 74 6f 72 2c 20 24 76 61 | n.call_user_func($validator,.$va |
78460 | 6c 75 65 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f 6e 20 24 65 72 72 6f 72 | lue);.}.catch.(\Exception.$error |
78480 | 29 20 7b 0a 7d 0a 7d 0a 0a 74 68 72 6f 77 20 24 65 72 72 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | ).{.}.}..throw.$error;.}........ |
784a0 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 | .public.function.setInputStream( |
784c0 | 24 73 74 72 65 61 6d 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 20 3d 20 | $stream).{.$this->inputStream.=. |
784e0 | 24 73 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | $stream;.}.......public.function |
78500 | 20 67 65 74 49 6e 70 75 74 53 74 72 65 61 6d 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 | .getInputStream().{.return.$this |
78520 | 2d 3e 69 6e 70 75 74 53 74 72 65 61 6d 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ->inputStream;.}.......public.fu |
78540 | 6e 63 74 69 6f 6e 20 67 65 74 4e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 27 64 69 61 6c 6f | nction.getName().{.return.'dialo |
78560 | 67 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | g';.}.}.<?php...........namespac |
78580 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 43 6f 6e 73 6f 6c 65 5c 48 65 6c 70 | e.Symfony\Component\Console\Help |
785a0 | 65 72 3b 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 48 65 6c 70 65 72 20 | er;.......abstract.class.Helper. |
785c0 | 69 6d 70 6c 65 6d 65 6e 74 73 20 48 65 6c 70 65 72 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f | implements.HelperInterface.{.pro |
785e0 | 74 65 63 74 65 64 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e 75 6c 6c 3b 0a 0a 0a 0a 0a 0a 0a | tected.$helperSet.=.null;....... |
78600 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 48 65 6c 70 65 72 53 65 74 28 48 65 6c | public.function.setHelperSet(Hel |
78620 | 70 65 72 53 65 74 20 24 68 65 6c 70 65 72 53 65 74 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 68 69 | perSet.$helperSet.=.null).{.$thi |
78640 | 73 2d 3e 68 65 6c 70 65 72 53 65 74 20 3d 20 24 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 0a 0a 0a | s->helperSet.=.$helperSet;.}.... |
78660 | 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 48 65 6c 70 65 72 53 65 74 28 | ...public.function.getHelperSet( |
78680 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 68 65 6c 70 65 72 53 65 74 3b 0a 7d 0a 7d | ).{.return.$this->helperSet;.}.} |
786a0 | 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f | .<?php...........namespace.Symfo |
786c0 | 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ny\Component\Finder;............ |
786e0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6e 64 65 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 | .....class.Finder.implements.\It |
78700 | 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 2c 20 5c 43 6f 75 6e 74 61 62 6c 65 0a 7b 0a 63 6f | eratorAggregate,.\Countable.{.co |
78720 | 6e 73 74 20 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 | nst.IGNORE_VCS_FILES.=.1;.const. |
78740 | 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 3d 20 32 3b 0a 0a 70 72 69 76 61 74 65 20 24 | IGNORE_DOT_FILES.=.2;..private.$ |
78760 | 6d 6f 64 65 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 24 6e 61 6d 65 73 20 3d 20 61 72 72 61 79 | mode.=.0;.private.$names.=.array |
78780 | 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 4e 61 6d 65 73 20 3d 20 61 72 72 61 79 28 29 3b | ();.private.$notNames.=.array(); |
787a0 | 0a 70 72 69 76 61 74 65 20 24 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 | .private.$exclude.=.array();.pri |
787c0 | 76 61 74 65 20 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 | vate.$filters.=.array();.private |
787e0 | 20 24 64 65 70 74 68 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 73 69 7a | .$depths.=.array();.private.$siz |
78800 | 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 66 6f 6c 6c 6f 77 4c 69 6e | es.=.array();.private.$followLin |
78820 | 6b 73 20 3d 20 66 61 6c 73 65 3b 0a 70 72 69 76 61 74 65 20 24 73 6f 72 74 20 3d 20 66 61 6c 73 | ks.=.false;.private.$sort.=.fals |
78840 | 65 3b 0a 70 72 69 76 61 74 65 20 24 69 67 6e 6f 72 65 20 3d 20 30 3b 0a 70 72 69 76 61 74 65 20 | e;.private.$ignore.=.0;.private. |
78860 | 24 64 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 64 61 74 65 73 20 | $dirs.=.array();.private.$dates. |
78880 | 3d 20 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 73 20 3d 20 | =.array();.private.$iterators.=. |
788a0 | 61 72 72 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 74 61 69 6e 73 20 3d 20 61 72 72 | array();.private.$contains.=.arr |
788c0 | 61 79 28 29 3b 0a 70 72 69 76 61 74 65 20 24 6e 6f 74 43 6f 6e 74 61 69 6e 73 20 3d 20 61 72 72 | ay();.private.$notContains.=.arr |
788e0 | 61 79 28 29 3b 0a 0a 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 24 76 63 73 50 61 74 74 65 72 | ay();..private.static.$vcsPatter |
78900 | 6e 73 20 3d 20 61 72 72 61 79 28 27 2e 73 76 6e 27 2c 20 27 5f 73 76 6e 27 2c 20 27 43 56 53 27 | ns.=.array('.svn',.'_svn',.'CVS' |
78920 | 2c 20 27 5f 64 61 72 63 73 27 2c 20 27 2e 61 72 63 68 2d 70 61 72 61 6d 73 27 2c 20 27 2e 6d 6f | ,.'_darcs',.'.arch-params',.'.mo |
78940 | 6e 6f 74 6f 6e 65 27 2c 20 27 2e 62 7a 72 27 2c 20 27 2e 67 69 74 27 2c 20 27 2e 68 67 27 29 3b | notone',.'.bzr',.'.git',.'.hg'); |
78960 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 | .....public.function.__construct |
78980 | 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 3d 20 73 74 61 74 69 63 3a 3a 49 47 4e | ().{.$this->ignore.=.static::IGN |
789a0 | 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 7c 20 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 | ORE_VCS_FILES.|.static::IGNORE_D |
789c0 | 4f 54 5f 46 49 4c 45 53 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 | OT_FILES;.}.........public.stati |
789e0 | 63 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 74 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 6e 65 77 | c.function.create().{.return.new |
78a00 | 20 73 65 6c 66 28 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | .self();.}.........public.functi |
78a20 | 6f 6e 20 64 69 72 65 63 74 6f 72 69 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d | on.directories().{.$this->mode.= |
78a40 | 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 | .Iterator\FileTypeFilterIterator |
78a60 | 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 | ::ONLY_DIRECTORIES;..return.$thi |
78a80 | 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c | s;.}.........public.function.fil |
78aa0 | 65 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 49 74 65 72 61 74 6f 72 5c 46 69 | es().{.$this->mode.=.Iterator\Fi |
78ac0 | 6c 65 54 79 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 | leTypeFilterIterator::ONLY_FILES |
78ae0 | 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ;..return.$this;.}.............. |
78b00 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 65 70 74 68 28 24 6c 65 76 65 | .....public.function.depth($leve |
78b20 | 6c 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 70 74 68 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 | l).{.$this->depths[].=.new.Compa |
78b40 | 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 28 24 6c 65 76 65 6c 29 3b 0a | rator\NumberComparator($level);. |
78b60 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | .return.$this;.}................ |
78b80 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 64 61 74 65 28 24 64 61 74 65 | ......public.function.date($date |
78ba0 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 61 74 65 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 72 61 | ).{.$this->dates[].=.new.Compara |
78bc0 | 74 6f 72 5c 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 28 24 64 61 74 65 29 3b 0a 0a 72 65 74 75 | tor\DateComparator($date);..retu |
78be0 | 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | rn.$this;.}...................pu |
78c00 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 61 6d 65 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 | blic.function.name($pattern).{.$ |
78c20 | 74 68 69 73 2d 3e 6e 61 6d 65 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 | this->names[].=.$pattern;..retur |
78c40 | 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | n.$this;.}.............public.fu |
78c60 | 6e 63 74 69 6f 6e 20 6e 6f 74 4e 61 6d 65 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 68 69 73 | nction.notName($pattern).{.$this |
78c80 | 2d 3e 6e 6f 74 4e 61 6d 65 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e | ->notNames[].=.$pattern;..return |
78ca0 | 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | .$this;.}................public. |
78cc0 | 66 75 6e 63 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 73 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 24 74 | function.contains($pattern).{.$t |
78ce0 | 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 0a 72 65 74 | his->contains[].=.$pattern;..ret |
78d00 | 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | urn.$this;.}.................pub |
78d20 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 74 43 6f 6e 74 61 69 6e 73 28 24 70 61 74 74 65 72 | lic.function.notContains($patter |
78d40 | 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 61 69 6e 73 5b 5d 20 3d 20 24 70 61 74 | n).{.$this->notContains[].=.$pat |
78d60 | 74 65 72 6e 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | tern;..return.$this;.}.......... |
78d80 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 69 7a 65 28 24 73 69 | ........public.function.size($si |
78da0 | 7a 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 69 7a 65 73 5b 5d 20 3d 20 6e 65 77 20 43 6f 6d 70 61 | ze).{.$this->sizes[].=.new.Compa |
78dc0 | 72 61 74 6f 72 5c 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 28 24 73 69 7a 65 29 3b 0a 0a | rator\NumberComparator($size);.. |
78de0 | 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | return.$this;.}.............publ |
78e00 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 65 78 63 6c 75 64 65 28 24 64 69 72 73 29 0a 7b 0a 24 74 68 | ic.function.exclude($dirs).{.$th |
78e20 | 69 73 2d 3e 65 78 63 6c 75 64 65 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d | is->exclude.=.array_merge($this- |
78e40 | 3e 65 78 63 6c 75 64 65 2c 20 28 61 72 72 61 79 29 20 24 64 69 72 73 29 3b 0a 0a 72 65 74 75 72 | >exclude,.(array).$dirs);..retur |
78e60 | 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | n.$this;.}.............public.fu |
78e80 | 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 28 24 69 67 6e 6f 72 65 44 6f 74 | nction.ignoreDotFiles($ignoreDot |
78ea0 | 46 69 6c 65 73 29 0a 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 44 6f 74 46 69 6c 65 73 29 20 7b 0a | Files).{.if.($ignoreDotFiles).{. |
78ec0 | 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 3d 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 7c 20 | $this->ignore.=.$this->ignore.|. |
78ee0 | 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 3b 0a 7d 20 65 6c 73 65 | static::IGNORE_DOT_FILES;.}.else |
78f00 | 20 7b 0a 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 3d 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 | .{.$this->ignore.=.$this->ignore |
78f20 | 20 26 20 7e 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 3b 0a 7d 0a | .&.~static::IGNORE_DOT_FILES;.}. |
78f40 | 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 | .return.$this;.}.............pub |
78f60 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 67 6e 6f 72 65 56 43 53 28 24 69 67 6e 6f 72 65 56 43 | lic.function.ignoreVCS($ignoreVC |
78f80 | 53 29 0a 7b 0a 69 66 20 28 24 69 67 6e 6f 72 65 56 43 53 29 20 7b 0a 24 74 68 69 73 2d 3e 69 67 | S).{.if.($ignoreVCS).{.$this->ig |
78fa0 | 6e 6f 72 65 20 3d 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 7c 20 73 74 61 74 69 63 3a 3a 49 | nore.=.$this->ignore.|.static::I |
78fc0 | 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d | GNORE_VCS_FILES;.}.else.{.$this- |
78fe0 | 3e 69 67 6e 6f 72 65 20 3d 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 20 26 20 7e 73 74 61 74 69 | >ignore.=.$this->ignore.&.~stati |
79000 | 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 | c::IGNORE_VCS_FILES;.}..return.$ |
79020 | 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 | this;.}..public.static.function. |
79040 | 61 64 64 56 43 53 50 61 74 74 65 72 6e 28 24 70 61 74 74 65 72 6e 29 0a 7b 0a 73 65 6c 66 3a 3a | addVCSPattern($pattern).{.self:: |
79060 | 24 76 63 73 50 61 74 74 65 72 6e 73 5b 5d 20 3d 20 24 70 61 74 74 65 72 6e 3b 0a 7d 0a 0a 0a 0a | $vcsPatterns[].=.$pattern;.}.... |
79080 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 | .............public.function.sor |
790a0 | 74 28 5c 43 6c 6f 73 75 72 65 20 24 63 6c 6f 73 75 72 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f | t(\Closure.$closure).{.$this->so |
790c0 | 72 74 20 3d 20 24 63 6c 6f 73 75 72 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a | rt.=.$closure;..return.$this;.}. |
790e0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 | ............public.function.sort |
79100 | 42 79 4e 61 6d 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f | ByName().{.$this->sort.=.Iterato |
79120 | 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 | r\SortableIterator::SORT_BY_NAME |
79140 | 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | ;..return.$this;.}.............p |
79160 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 54 79 70 65 28 29 0a 7b 0a 24 74 | ublic.function.sortByType().{.$t |
79180 | 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 | his->sort.=.Iterator\SortableIte |
791a0 | 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 | rator::SORT_BY_TYPE;..return.$th |
791c0 | 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | is;.}...............public.funct |
791e0 | 69 6f 6e 20 73 6f 72 74 42 79 41 63 63 65 73 73 65 64 54 69 6d 65 28 29 0a 7b 0a 24 74 68 69 73 | ion.sortByAccessedTime().{.$this |
79200 | 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 | ->sort.=.Iterator\SortableIterat |
79220 | 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 3b 0a 0a 72 65 74 75 | or::SORT_BY_ACCESSED_TIME;..retu |
79240 | 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | rn.$this;.}.................publ |
79260 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 43 68 61 6e 67 65 64 54 69 6d 65 28 29 0a | ic.function.sortByChangedTime(). |
79280 | 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c | {.$this->sort.=.Iterator\Sortabl |
792a0 | 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 3b | eIterator::SORT_BY_CHANGED_TIME; |
792c0 | 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ..return.$this;.}............... |
792e0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 6f 72 74 42 79 4d 6f 64 69 66 69 65 64 54 69 | public.function.sortByModifiedTi |
79300 | 6d 65 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 49 74 65 72 61 74 6f 72 5c 53 6f | me().{.$this->sort.=.Iterator\So |
79320 | 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 3a 3a 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 | rtableIterator::SORT_BY_MODIFIED |
79340 | 5f 54 49 4d 45 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | _TIME;..return.$this;.}......... |
79360 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6c 74 65 72 28 5c 43 | .......public.function.filter(\C |
79380 | 6c 6f 73 75 72 65 20 24 63 6c 6f 73 75 72 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 | losure.$closure).{.$this->filter |
793a0 | 73 5b 5d 20 3d 20 24 63 6c 6f 73 75 72 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d | s[].=.$closure;..return.$this;.} |
793c0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 6f 6c 6c 6f 77 4c | .........public.function.followL |
793e0 | 69 6e 6b 73 28 29 0a 7b 0a 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 20 3d 20 74 72 | inks().{.$this->followLinks.=.tr |
79400 | 75 65 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | ue;..return.$this;.}............ |
79420 | 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 6e 28 24 64 69 72 73 29 0a 7b 0a 24 64 69 | .public.function.in($dirs).{.$di |
79440 | 72 73 20 3d 20 28 61 72 72 61 79 29 20 24 64 69 72 73 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 64 | rs.=.(array).$dirs;..foreach.($d |
79460 | 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 21 69 73 5f 64 69 72 28 24 64 69 72 29 | irs.as.$dir).{.if.(!is_dir($dir) |
79480 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 | ).{.throw.new.\InvalidArgumentEx |
794a0 | 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 54 68 65 20 22 25 73 22 20 64 69 72 65 63 74 | ception(sprintf('The."%s".direct |
794c0 | 6f 72 79 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 27 2c 20 24 64 69 72 29 29 3b 0a 7d 0a | ory.does.not.exist.',.$dir));.}. |
794e0 | 7d 0a 0a 24 74 68 69 73 2d 3e 64 69 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 | }..$this->dirs.=.array_merge($th |
79500 | 69 73 2d 3e 64 69 72 73 2c 20 24 64 69 72 73 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b | is->dirs,.$dirs);..return.$this; |
79520 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | .}...........public.function.get |
79540 | 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 | Iterator().{.if.(0.===.count($th |
79560 | 69 73 2d 3e 64 69 72 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 4c 6f 67 69 63 45 78 63 | is->dirs)).{.throw.new.\LogicExc |
79580 | 65 70 74 69 6f 6e 28 27 59 6f 75 20 6d 75 73 74 20 63 61 6c 6c 20 74 68 65 20 69 6e 28 29 20 6d | eption('You.must.call.the.in().m |
795a0 | 65 74 68 6f 64 20 62 65 66 6f 72 65 20 69 74 65 72 61 74 69 6e 67 20 6f 76 65 72 20 61 20 46 69 | ethod.before.iterating.over.a.Fi |
795c0 | 6e 64 65 72 2e 27 29 3b 0a 7d 0a 0a 69 66 20 28 31 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 | nder.');.}..if.(1.===.count($thi |
795e0 | 73 2d 3e 64 69 72 73 29 20 26 26 20 30 20 3d 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 69 | s->dirs).&&.0.===.count($this->i |
79600 | 74 65 72 61 74 6f 72 73 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 65 61 72 63 | terators)).{.return.$this->searc |
79620 | 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 74 68 69 73 2d 3e 64 69 72 73 5b 30 5d 29 3b 0a 7d 0a | hInDirectory($this->dirs[0]);.}. |
79640 | 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 5c 41 70 70 65 6e 64 49 74 65 72 61 74 6f 72 | .$iterator.=.new.\AppendIterator |
79660 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 64 69 72 73 20 61 73 20 24 64 69 72 | ();.foreach.($this->dirs.as.$dir |
79680 | 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 61 70 70 65 6e 64 28 24 74 68 69 73 2d 3e 73 65 61 | ).{.$iterator->append($this->sea |
796a0 | 72 63 68 49 6e 44 69 72 65 63 74 6f 72 79 28 24 64 69 72 29 29 3b 0a 7d 0a 0a 66 6f 72 65 61 63 | rchInDirectory($dir));.}..foreac |
796c0 | 68 20 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 20 61 73 20 24 69 74 29 20 7b 0a 24 69 | h.($this->iterators.as.$it).{.$i |
796e0 | 74 65 72 61 74 6f 72 2d 3e 61 70 70 65 6e 64 28 24 69 74 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 | terator->append($it);.}..return. |
79700 | 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | $iterator;.}.........public.func |
79720 | 74 69 6f 6e 20 61 70 70 65 6e 64 28 24 69 74 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 24 69 74 | tion.append($iterator).{.if.($it |
79740 | 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 49 74 65 72 61 74 6f 72 41 67 67 72 65 | erator.instanceof.\IteratorAggre |
79760 | 67 61 74 65 29 20 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 | gate).{.$this->iterators[].=.$it |
79780 | 65 72 61 74 6f 72 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 3b 0a 7d 20 65 6c 73 65 69 66 20 | erator->getIterator();.}.elseif. |
797a0 | 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 5c 49 74 65 72 61 74 6f 72 29 | ($iterator.instanceof.\Iterator) |
797c0 | 20 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 73 5b 5d 20 3d 20 24 69 74 65 72 61 74 6f | .{.$this->iterators[].=.$iterato |
797e0 | 72 3b 0a 7d 20 65 6c 73 65 69 66 20 28 24 69 74 65 72 61 74 6f 72 20 69 6e 73 74 61 6e 63 65 6f | r;.}.elseif.($iterator.instanceo |
79800 | 66 20 5c 54 72 61 76 65 72 73 61 62 6c 65 20 7c 7c 20 69 73 5f 61 72 72 61 79 28 24 69 74 65 72 | f.\Traversable.||.is_array($iter |
79820 | 61 74 6f 72 29 29 20 7b 0a 24 69 74 20 3d 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f | ator)).{.$it.=.new.\ArrayIterato |
79840 | 72 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 69 74 65 72 61 74 6f 72 20 61 73 20 24 66 69 6c 65 | r();.foreach.($iterator.as.$file |
79860 | 29 20 7b 0a 24 69 74 2d 3e 61 70 70 65 6e 64 28 24 66 69 6c 65 20 69 6e 73 74 61 6e 63 65 6f 66 | ).{.$it->append($file.instanceof |
79880 | 20 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 20 3f 20 24 66 69 6c 65 20 3a 20 6e 65 77 20 5c 53 70 6c | .\SplFileInfo.?.$file.:.new.\Spl |
798a0 | 46 69 6c 65 49 6e 66 6f 28 24 66 69 6c 65 29 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 | FileInfo($file));.}.$this->itera |
798c0 | 74 6f 72 73 5b 5d 20 3d 20 24 69 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 | tors[].=.$it;.}.else.{.throw.new |
798e0 | 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 46 69 6e 64 | .\InvalidArgumentException('Find |
79900 | 65 72 3a 3a 61 70 70 65 6e 64 28 29 20 6d 65 74 68 6f 64 20 77 72 6f 6e 67 20 61 72 67 75 6d 65 | er::append().method.wrong.argume |
79920 | 6e 74 20 74 79 70 65 2e 27 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | nt.type.');.}.}.......public.fun |
79940 | 63 74 69 6f 6e 20 63 6f 75 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 69 74 65 72 61 74 6f 72 5f | ction.count().{.return.iterator_ |
79960 | 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 28 29 29 3b 0a 7d 0a 0a | count($this->getIterator());.}.. |
79980 | 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 65 61 72 63 68 49 6e 44 69 72 65 63 74 6f | private.function.searchInDirecto |
799a0 | 72 79 28 24 64 69 72 29 0a 7b 0a 24 66 6c 61 67 73 20 3d 20 5c 52 65 63 75 72 73 69 76 65 44 69 | ry($dir).{.$flags.=.\RecursiveDi |
799c0 | 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 53 4b 49 50 5f 44 4f 54 53 3b 0a 0a 69 66 20 | rectoryIterator::SKIP_DOTS;..if. |
799e0 | 28 24 74 68 69 73 2d 3e 66 6f 6c 6c 6f 77 4c 69 6e 6b 73 29 20 7b 0a 24 66 6c 61 67 73 20 7c 3d | ($this->followLinks).{.$flags.|= |
79a00 | 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 3a 3a 46 4f | .\RecursiveDirectoryIterator::FO |
79a20 | 4c 4c 4f 57 5f 53 59 4d 4c 49 4e 4b 53 3b 0a 7d 0a 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 | LLOW_SYMLINKS;.}..$iterator.=.ne |
79a40 | 77 20 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 28 0a 6e 65 | w.\RecursiveIteratorIterator(.ne |
79a60 | 77 20 49 74 65 72 61 74 6f 72 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 | w.Iterator\RecursiveDirectoryIte |
79a80 | 72 61 74 6f 72 28 24 64 69 72 2c 20 24 66 6c 61 67 73 29 2c 0a 5c 52 65 63 75 72 73 69 76 65 49 | rator($dir,.$flags),.\RecursiveI |
79aa0 | 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 3a 3a 53 45 4c 46 5f 46 49 52 53 54 0a 29 3b 0a 0a | teratorIterator::SELF_FIRST.);.. |
79ac0 | 69 66 20 28 24 74 68 69 73 2d 3e 64 65 70 74 68 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d | if.($this->depths).{.$iterator.= |
79ae0 | 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 65 70 74 68 52 61 6e 67 65 46 69 6c 74 65 72 49 74 | .new.Iterator\DepthRangeFilterIt |
79b00 | 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 64 65 70 74 68 73 29 | erator($iterator,.$this->depths) |
79b20 | 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 7b 0a 24 69 74 65 72 61 74 6f | ;.}..if.($this->mode).{.$iterato |
79b40 | 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 54 79 70 65 46 69 6c 74 65 72 49 | r.=.new.Iterator\FileTypeFilterI |
79b60 | 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 3b | terator($iterator,.$this->mode); |
79b80 | 0a 7d 0a 0a 69 66 20 28 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 | .}..if.(static::IGNORE_VCS_FILES |
79ba0 | 20 3d 3d 3d 20 28 73 74 61 74 69 63 3a 3a 49 47 4e 4f 52 45 5f 56 43 53 5f 46 49 4c 45 53 20 26 | .===.(static::IGNORE_VCS_FILES.& |
79bc0 | 20 24 74 68 69 73 2d 3e 69 67 6e 6f 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 | .$this->ignore)).{.$this->exclud |
79be0 | 65 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 2c 20 | e.=.array_merge($this->exclude,. |
79c00 | 73 65 6c 66 3a 3a 24 76 63 73 50 61 74 74 65 72 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 73 74 61 74 | self::$vcsPatterns);.}..if.(stat |
79c20 | 69 63 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 3d 3d 3d 20 28 73 74 61 74 69 63 | ic::IGNORE_DOT_FILES.===.(static |
79c40 | 3a 3a 49 47 4e 4f 52 45 5f 44 4f 54 5f 46 49 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 69 67 6e 6f | ::IGNORE_DOT_FILES.&.$this->igno |
79c60 | 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 5b 5d 20 3d 20 27 2f 5e 5c 2e | re)).{.$this->notNames[].=.'/^\. |
79c80 | 2e 2b 2f 27 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 20 7b 0a 24 | .+/';.}..if.($this->exclude).{.$ |
79ca0 | 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 45 78 63 6c 75 64 65 44 | iterator.=.new.Iterator\ExcludeD |
79cc0 | 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 | irectoryFilterIterator($iterator |
79ce0 | 2c 20 24 74 68 69 73 2d 3e 65 78 63 6c 75 64 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d | ,.$this->exclude);.}..if.($this- |
79d00 | 3e 6e 61 6d 65 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 20 7b 0a 24 69 74 | >names.||.$this->notNames).{.$it |
79d20 | 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 46 69 6c 65 6e 61 6d 65 46 69 | erator.=.new.Iterator\FilenameFi |
79d40 | 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 6e | lterIterator($iterator,.$this->n |
79d60 | 61 6d 65 73 2c 20 24 74 68 69 73 2d 3e 6e 6f 74 4e 61 6d 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 | ames,.$this->notNames);.}..if.($ |
79d80 | 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 20 7c 7c 20 24 74 68 69 73 2d 3e 6e 6f 74 43 6f 6e 74 | this->contains.||.$this->notCont |
79da0 | 61 69 6e 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 | ains).{.$iterator.=.new.Iterator |
79dc0 | 5c 46 69 6c 65 63 6f 6e 74 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 | \FilecontentFilterIterator($iter |
79de0 | 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 74 61 69 6e 73 2c 20 24 74 68 69 73 2d 3e 6e 6f | ator,.$this->contains,.$this->no |
79e00 | 74 43 6f 6e 74 61 69 6e 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 73 69 7a 65 73 29 | tContains);.}..if.($this->sizes) |
79e20 | 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 53 69 7a 65 | .{.$iterator.=.new.Iterator\Size |
79e40 | 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c 20 24 | RangeFilterIterator($iterator,.$ |
79e60 | 74 68 69 73 2d 3e 73 69 7a 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 61 74 65 | this->sizes);.}..if.($this->date |
79e80 | 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f 72 5c 44 61 | s).{.$iterator.=.new.Iterator\Da |
79ea0 | 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 2c | teRangeFilterIterator($iterator, |
79ec0 | 20 24 74 68 69 73 2d 3e 64 61 74 65 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 66 69 | .$this->dates);.}..if.($this->fi |
79ee0 | 6c 74 65 72 73 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 20 3d 20 6e 65 77 20 49 74 65 72 61 74 6f | lters).{.$iterator.=.new.Iterato |
79f00 | 72 5c 43 75 73 74 6f 6d 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 28 24 69 74 65 72 61 74 6f 72 | r\CustomFilterIterator($iterator |
79f20 | 2c 20 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 29 3b 0a 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d | ,.$this->filters);.}..if.($this- |
79f40 | 3e 73 6f 72 74 29 20 7b 0a 24 69 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 20 3d 20 6e 65 | >sort).{.$iteratorAggregate.=.ne |
79f60 | 77 20 49 74 65 72 61 74 6f 72 5c 53 6f 72 74 61 62 6c 65 49 74 65 72 61 74 6f 72 28 24 69 74 65 | w.Iterator\SortableIterator($ite |
79f80 | 72 61 74 6f 72 2c 20 24 74 68 69 73 2d 3e 73 6f 72 74 29 3b 0a 24 69 74 65 72 61 74 6f 72 20 3d | rator,.$this->sort);.$iterator.= |
79fa0 | 20 24 69 74 65 72 61 74 6f 72 41 67 67 72 65 67 61 74 65 2d 3e 67 65 74 49 74 65 72 61 74 6f 72 | .$iteratorAggregate->getIterator |
79fc0 | 28 29 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 69 74 65 72 61 74 6f 72 3b 0a 7d 0a 7d 0a 3c 3f 70 | ();.}..return.$iterator;.}.}.<?p |
79fe0 | 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 | hp...........namespace.Symfony\C |
7a000 | 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | omponent\Finder;................ |
7a020 | 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 47 6c 6f 62 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 | ........class.Glob.{..........pu |
7a040 | 62 6c 69 63 20 73 74 61 74 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 24 67 6c | blic.static.function.toRegex($gl |
7a060 | 6f 62 2c 20 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 3d 20 74 72 75 65 2c 20 24 73 | ob,.$strictLeadingDot.=.true,.$s |
7a080 | 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3d 20 74 72 75 65 29 0a 7b 0a 24 66 69 | trictWildcardSlash.=.true).{.$fi |
7a0a0 | 72 73 74 42 79 74 65 20 3d 20 74 72 75 65 3b 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 66 61 6c 73 | rstByte.=.true;.$escaping.=.fals |
7a0c0 | 65 3b 0a 24 69 6e 43 75 72 6c 69 65 73 20 3d 20 30 3b 0a 24 72 65 67 65 78 20 3d 20 27 27 3b 0a | e;.$inCurlies.=.0;.$regex.=.'';. |
7a0e0 | 24 73 69 7a 65 47 6c 6f 62 20 3d 20 73 74 72 6c 65 6e 28 24 67 6c 6f 62 29 3b 0a 66 6f 72 20 28 | $sizeGlob.=.strlen($glob);.for.( |
7a100 | 24 69 20 3d 20 30 3b 20 24 69 20 3c 20 24 73 69 7a 65 47 6c 6f 62 3b 20 24 69 2b 2b 29 20 7b 0a | $i.=.0;.$i.<.$sizeGlob;.$i++).{. |
7a120 | 24 63 61 72 20 3d 20 24 67 6c 6f 62 5b 24 69 5d 3b 0a 69 66 20 28 24 66 69 72 73 74 42 79 74 65 | $car.=.$glob[$i];.if.($firstByte |
7a140 | 29 20 7b 0a 69 66 20 28 24 73 74 72 69 63 74 4c 65 61 64 69 6e 67 44 6f 74 20 26 26 20 27 2e 27 | ).{.if.($strictLeadingDot.&&.'.' |
7a160 | 20 21 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 28 3f 3d 5b 5e 5c 2e 5d | .!==.$car).{.$regex..=.'(?=[^\.] |
7a180 | 29 27 3b 0a 7d 0a 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 69 66 | )';.}..$firstByte.=.false;.}..if |
7a1a0 | 20 28 27 2f 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 66 69 72 73 74 42 79 74 65 20 3d 20 74 | .('/'.===.$car).{.$firstByte.=.t |
7a1c0 | 72 75 65 3b 0a 7d 0a 0a 69 66 20 28 27 2e 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 28 27 20 | rue;.}..if.('.'.===.$car.||.'('. |
7a1e0 | 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 29 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 7c 27 20 | ===.$car.||.')'.===.$car.||.'|'. |
7a200 | 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 2b 27 20 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 5e 27 20 | ===.$car.||.'+'.===.$car.||.'^'. |
7a220 | 3d 3d 3d 20 24 63 61 72 20 7c 7c 20 27 24 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 | ===.$car.||.'$'.===.$car).{.$reg |
7a240 | 65 78 20 2e 3d 20 22 5c 5c 24 63 61 72 22 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 2a 27 20 3d 3d | ex..=."\\$car";.}.elseif.('*'.== |
7a260 | 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 | =.$car).{.$regex..=.$escaping.?. |
7a280 | 27 5c 5c 2a 27 20 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3f 20 | '\\*'.:.($strictWildcardSlash.?. |
7a2a0 | 27 5b 5e 2f 5d 2a 27 20 3a 20 27 2e 2a 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 3f 27 20 3d | '[^/]*'.:.'.*');.}.elseif.('?'.= |
7a2c0 | 3d 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f | ==.$car).{.$regex..=.$escaping.? |
7a2e0 | 20 27 5c 5c 3f 27 20 3a 20 28 24 73 74 72 69 63 74 57 69 6c 64 63 61 72 64 53 6c 61 73 68 20 3f | .'\\?'.:.($strictWildcardSlash.? |
7a300 | 20 27 5b 5e 2f 5d 27 20 3a 20 27 2e 27 29 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 7b 27 20 3d 3d | .'[^/]'.:.'.');.}.elseif.('{'.== |
7a320 | 3d 20 24 63 61 72 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 | =.$car).{.$regex..=.$escaping.?. |
7a340 | 27 5c 5c 7b 27 20 3a 20 27 28 27 3b 0a 69 66 20 28 21 24 65 73 63 61 70 69 6e 67 29 20 7b 0a 2b | '\\{'.:.'(';.if.(!$escaping).{.+ |
7a360 | 2b 24 69 6e 43 75 72 6c 69 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 27 7d 27 20 3d 3d 3d | +$inCurlies;.}.}.elseif.('}'.=== |
7a380 | 20 24 63 61 72 20 26 26 20 24 69 6e 43 75 72 6c 69 65 73 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d | .$car.&&.$inCurlies).{.$regex..= |
7a3a0 | 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 7d 27 20 3a 20 27 29 27 3b 0a 69 66 20 28 21 24 65 73 | .$escaping.?.'}'.:.')';.if.(!$es |
7a3c0 | 63 61 70 69 6e 67 29 20 7b 0a 2d 2d 24 69 6e 43 75 72 6c 69 65 73 3b 0a 7d 0a 7d 20 65 6c 73 65 | caping).{.--$inCurlies;.}.}.else |
7a3e0 | 69 66 20 28 27 2c 27 20 3d 3d 3d 20 24 63 61 72 20 26 26 20 24 69 6e 43 75 72 6c 69 65 73 29 20 | if.(','.===.$car.&&.$inCurlies). |
7a400 | 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 65 73 63 61 70 69 6e 67 20 3f 20 27 2c 27 20 3a 20 27 7c | {.$regex..=.$escaping.?.','.:.'| |
7a420 | 27 3b 0a 7d 20 65 6c 73 65 69 66 20 28 27 5c 5c 27 20 3d 3d 3d 20 24 63 61 72 29 20 7b 0a 69 66 | ';.}.elseif.('\\'.===.$car).{.if |
7a440 | 20 28 24 65 73 63 61 70 69 6e 67 29 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 27 5c 5c 5c 5c 27 3b | .($escaping).{.$regex..=.'\\\\'; |
7a460 | 0a 24 65 73 63 61 70 69 6e 67 20 3d 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 73 | .$escaping.=.false;.}.else.{.$es |
7a480 | 63 61 70 69 6e 67 20 3d 20 74 72 75 65 3b 0a 7d 0a 0a 63 6f 6e 74 69 6e 75 65 3b 0a 7d 20 65 6c | caping.=.true;.}..continue;.}.el |
7a4a0 | 73 65 20 7b 0a 24 72 65 67 65 78 20 2e 3d 20 24 63 61 72 3b 0a 7d 0a 24 65 73 63 61 70 69 6e 67 | se.{.$regex..=.$car;.}.$escaping |
7a4c0 | 20 3d 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 27 23 5e 27 2e 24 72 65 67 65 78 2e | .=.false;.}..return.'#^'.$regex. |
7a4e0 | 27 24 23 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 | '$#';.}.}.<?php...........namesp |
7a500 | 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 | ace.Symfony\Component\Finder\Ite |
7a520 | 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 65 70 74 68 52 61 6e 67 65 46 69 6c | rator;.......class.DepthRangeFil |
7a540 | 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 65 72 61 | terIterator.extends.\FilterItera |
7a560 | 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 6d 69 6e 44 65 70 74 68 20 3d 20 30 3b 0a 0a 0a 0a | tor.{.private.$minDepth.=.0;.... |
7a580 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 | ....public.function.__construct( |
7a5a0 | 5c 52 65 63 75 72 73 69 76 65 49 74 65 72 61 74 6f 72 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 | \RecursiveIteratorIterator.$iter |
7a5c0 | 61 74 6f 72 2c 20 61 72 72 61 79 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 29 0a 7b 0a 24 6d 69 6e | ator,.array.$comparators).{.$min |
7a5e0 | 44 65 70 74 68 20 3d 20 30 3b 0a 24 6d 61 78 44 65 70 74 68 20 3d 20 49 4e 46 3b 0a 66 6f 72 65 | Depth.=.0;.$maxDepth.=.INF;.fore |
7a600 | 61 63 68 20 28 24 63 6f 6d 70 61 72 61 74 6f 72 73 20 61 73 20 24 63 6f 6d 70 61 72 61 74 6f 72 | ach.($comparators.as.$comparator |
7a620 | 29 20 7b 0a 73 77 69 74 63 68 20 28 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 4f 70 65 72 | ).{.switch.($comparator->getOper |
7a640 | 61 74 6f 72 28 29 29 20 7b 0a 63 61 73 65 20 27 3e 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 | ator()).{.case.'>':.$minDepth.=. |
7a660 | 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 20 2b 20 31 3b 0a 62 72 | $comparator->getTarget().+.1;.br |
7a680 | 65 61 6b 3b 0a 63 61 73 65 20 27 3e 3d 27 3a 0a 24 6d 69 6e 44 65 70 74 68 20 3d 20 24 63 6f 6d | eak;.case.'>=':.$minDepth.=.$com |
7a6a0 | 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 | parator->getTarget();.break;.cas |
7a6c0 | 65 20 27 3c 27 3a 0a 24 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e | e.'<':.$maxDepth.=.$comparator-> |
7a6e0 | 67 65 74 54 61 72 67 65 74 28 29 20 2d 20 31 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 3c 3d | getTarget().-.1;.break;.case.'<= |
7a700 | 27 3a 0a 24 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 74 54 | ':.$maxDepth.=.$comparator->getT |
7a720 | 61 72 67 65 74 28 29 3b 0a 62 72 65 61 6b 3b 0a 64 65 66 61 75 6c 74 3a 0a 24 6d 69 6e 44 65 70 | arget();.break;.default:.$minDep |
7a740 | 74 68 20 3d 20 24 6d 61 78 44 65 70 74 68 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 2d 3e 67 65 | th.=.$maxDepth.=.$comparator->ge |
7a760 | 74 54 61 72 67 65 74 28 29 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 6d 69 6e 44 65 70 74 68 20 | tTarget();.}.}..$this->minDepth. |
7a780 | 3d 20 24 6d 69 6e 44 65 70 74 68 3b 0a 24 69 74 65 72 61 74 6f 72 2d 3e 73 65 74 4d 61 78 44 65 | =.$minDepth;.$iterator->setMaxDe |
7a7a0 | 70 74 68 28 49 4e 46 20 3d 3d 3d 20 24 6d 61 78 44 65 70 74 68 20 3f 20 2d 31 20 3a 20 24 6d 61 | pth(INF.===.$maxDepth.?.-1.:.$ma |
7a7c0 | 78 44 65 70 74 68 29 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 | xDepth);..parent::__construct($i |
7a7e0 | 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | terator);.}.......public.functio |
7a800 | 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 67 65 74 49 6e | n.accept().{.return.$this->getIn |
7a820 | 6e 65 72 49 74 65 72 61 74 6f 72 28 29 2d 3e 67 65 74 44 65 70 74 68 28 29 20 3e 3d 20 24 74 68 | nerIterator()->getDepth().>=.$th |
7a840 | 69 73 2d 3e 6d 69 6e 44 65 70 74 68 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | is->minDepth;.}.}.<?php......... |
7a860 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 | ..namespace.Symfony\Component\Fi |
7a880 | 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 6f 72 74 61 | nder\Iterator;.......class.Sorta |
7a8a0 | 62 6c 65 49 74 65 72 61 74 6f 72 20 69 6d 70 6c 65 6d 65 6e 74 73 20 5c 49 74 65 72 61 74 6f 72 | bleIterator.implements.\Iterator |
7a8c0 | 41 67 67 72 65 67 61 74 65 0a 7b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 3d | Aggregate.{.const.SORT_BY_NAME.= |
7a8e0 | 20 31 3b 0a 63 6f 6e 73 74 20 53 4f 52 54 5f 42 59 5f 54 59 50 45 20 3d 20 32 3b 0a 63 6f 6e 73 | .1;.const.SORT_BY_TYPE.=.2;.cons |
7a900 | 74 20 53 4f 52 54 5f 42 59 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 20 33 3b 0a 63 6f 6e | t.SORT_BY_ACCESSED_TIME.=.3;.con |
7a920 | 73 74 20 53 4f 52 54 5f 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d 20 34 3b 0a 63 6f 6e | st.SORT_BY_CHANGED_TIME.=.4;.con |
7a940 | 73 74 20 53 4f 52 54 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 20 3d 20 35 3b 0a 0a 70 | st.SORT_BY_MODIFIED_TIME.=.5;..p |
7a960 | 72 69 76 61 74 65 20 24 69 74 65 72 61 74 6f 72 3b 0a 70 72 69 76 61 74 65 20 24 73 6f 72 74 3b | rivate.$iterator;.private.$sort; |
7a980 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 | ........public.function.__constr |
7a9a0 | 75 63 74 28 5c 54 72 61 76 65 72 73 61 62 6c 65 20 24 69 74 65 72 61 74 6f 72 2c 20 24 73 6f 72 | uct(\Traversable.$iterator,.$sor |
7a9c0 | 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 20 3d 20 24 69 74 65 72 61 74 6f 72 | t).{.$this->iterator.=.$iterator |
7a9e0 | 3b 0a 0a 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 4e 41 4d 45 20 3d 3d 3d 20 24 73 | ;..if.(self::SORT_BY_NAME.===.$s |
7aa00 | 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 | ort).{.$this->sort.=.function.($ |
7aa20 | 61 2c 20 24 62 29 20 7b 0a 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 24 61 2d 3e 67 65 74 52 65 | a,.$b).{.return.strcmp($a->getRe |
7aa40 | 61 6c 70 61 74 68 28 29 2c 20 24 62 2d 3e 67 65 74 52 65 61 6c 70 61 74 68 28 29 29 3b 0a 7d 3b | alpath(),.$b->getRealpath());.}; |
7aa60 | 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 5f 54 59 50 45 20 3d 3d | .}.elseif.(self::SORT_BY_TYPE.== |
7aa80 | 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f | =.$sort).{.$this->sort.=.functio |
7aaa0 | 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 69 66 20 28 24 61 2d 3e 69 73 44 69 72 28 29 20 26 26 20 | n.($a,.$b).{.if.($a->isDir().&&. |
7aac0 | 24 62 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 2d 31 3b 0a 7d 20 65 6c 73 | $b->isFile()).{.return.-1;.}.els |
7aae0 | 65 69 66 20 28 24 61 2d 3e 69 73 46 69 6c 65 28 29 20 26 26 20 24 62 2d 3e 69 73 44 69 72 28 29 | eif.($a->isFile().&&.$b->isDir() |
7ab00 | 29 20 7b 0a 72 65 74 75 72 6e 20 31 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 73 74 72 63 6d 70 28 24 | ).{.return.1;.}..return.strcmp($ |
7ab20 | 61 2d 3e 67 65 74 52 65 61 6c 70 61 74 68 28 29 2c 20 24 62 2d 3e 67 65 74 52 65 61 6c 70 61 74 | a->getRealpath(),.$b->getRealpat |
7ab40 | 68 28 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f 42 59 | h());.};.}.elseif.(self::SORT_BY |
7ab60 | 5f 41 43 43 45 53 53 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 69 | _ACCESSED_TIME.===.$sort).{.$thi |
7ab80 | 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 65 | s->sort.=.function.($a,.$b).{.re |
7aba0 | 74 75 72 6e 20 28 24 61 2d 3e 67 65 74 41 54 69 6d 65 28 29 20 3e 20 24 62 2d 3e 67 65 74 41 54 | turn.($a->getATime().>.$b->getAT |
7abc0 | 69 6d 65 28 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 5f | ime());.};.}.elseif.(self::SORT_ |
7abe0 | 42 59 5f 43 48 41 4e 47 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 74 68 | BY_CHANGED_TIME.===.$sort).{.$th |
7ac00 | 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b 0a 72 | is->sort.=.function.($a,.$b).{.r |
7ac20 | 65 74 75 72 6e 20 28 24 61 2d 3e 67 65 74 43 54 69 6d 65 28 29 20 3e 20 24 62 2d 3e 67 65 74 43 | eturn.($a->getCTime().>.$b->getC |
7ac40 | 54 69 6d 65 28 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c 66 3a 3a 53 4f 52 54 | Time());.};.}.elseif.(self::SORT |
7ac60 | 5f 42 59 5f 4d 4f 44 49 46 49 45 44 5f 54 49 4d 45 20 3d 3d 3d 20 24 73 6f 72 74 29 20 7b 0a 24 | _BY_MODIFIED_TIME.===.$sort).{.$ |
7ac80 | 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 24 61 2c 20 24 62 29 20 7b | this->sort.=.function.($a,.$b).{ |
7aca0 | 0a 72 65 74 75 72 6e 20 28 24 61 2d 3e 67 65 74 4d 54 69 6d 65 28 29 20 3e 20 24 62 2d 3e 67 65 | .return.($a->getMTime().>.$b->ge |
7acc0 | 74 4d 54 69 6d 65 28 29 29 3b 0a 7d 3b 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 63 61 6c 6c 61 | tMTime());.};.}.elseif.(is_calla |
7ace0 | 62 6c 65 28 24 73 6f 72 74 29 29 20 7b 0a 24 74 68 69 73 2d 3e 73 6f 72 74 20 3d 20 24 73 6f 72 | ble($sort)).{.$this->sort.=.$sor |
7ad00 | 74 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 | t;.}.else.{.throw.new.\InvalidAr |
7ad20 | 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 54 68 65 20 53 6f 72 74 61 62 6c 65 49 74 65 | gumentException('The.SortableIte |
7ad40 | 72 61 74 6f 72 20 74 61 6b 65 73 20 61 20 50 48 50 20 63 61 6c 6c 62 61 63 6b 20 6f 72 20 61 20 | rator.takes.a.PHP.callback.or.a. |
7ad60 | 76 61 6c 69 64 20 62 75 69 6c 74 2d 69 6e 20 73 6f 72 74 20 61 6c 67 6f 72 69 74 68 6d 20 61 73 | valid.built-in.sort.algorithm.as |
7ad80 | 20 61 6e 20 61 72 67 75 6d 65 6e 74 2e 27 29 3b 0a 7d 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e | .an.argument.');.}.}..public.fun |
7ada0 | 63 74 69 6f 6e 20 67 65 74 49 74 65 72 61 74 6f 72 28 29 0a 7b 0a 24 61 72 72 61 79 20 3d 20 69 | ction.getIterator().{.$array.=.i |
7adc0 | 74 65 72 61 74 6f 72 5f 74 6f 5f 61 72 72 61 79 28 24 74 68 69 73 2d 3e 69 74 65 72 61 74 6f 72 | terator_to_array($this->iterator |
7ade0 | 2c 20 74 72 75 65 29 3b 0a 75 61 73 6f 72 74 28 24 61 72 72 61 79 2c 20 24 74 68 69 73 2d 3e 73 | ,.true);.uasort($array,.$this->s |
7ae00 | 6f 72 74 29 3b 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 5c 41 72 72 61 79 49 74 65 72 61 74 6f 72 | ort);..return.new.\ArrayIterator |
7ae20 | 28 24 61 72 72 61 79 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 | ($array);.}.}.<?php...........na |
7ae40 | 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 | mespace.Symfony\Component\Finder |
7ae60 | 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 63 6f 6e 74 | \Iterator;........class.Filecont |
7ae80 | 65 6e 74 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 4d 75 6c 74 69 70 | entFilterIterator.extends.Multip |
7aea0 | 6c 65 50 63 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 70 75 62 6c | lePcreFilterIterator.{......publ |
7aec0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 69 66 20 28 21 24 74 68 69 | ic.function.accept().{.if.(!$thi |
7aee0 | 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 20 26 26 20 21 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 | s->matchRegexps.&&.!$this->noMat |
7af00 | 63 68 52 65 67 65 78 70 73 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 66 69 | chRegexps).{.return.true;.}..$fi |
7af20 | 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 | leinfo.=.$this->current();..if.( |
7af40 | 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 44 69 72 28 29 20 7c 7c 20 21 24 66 69 6c 65 69 6e 66 6f | $fileinfo->isDir().||.!$fileinfo |
7af60 | 2d 3e 69 73 52 65 61 64 61 62 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a | ->isReadable()).{.return.false;. |
7af80 | 7d 0a 0a 24 63 6f 6e 74 65 6e 74 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 43 6f 6e 74 | }..$content.=.$fileinfo->getCont |
7afa0 | 65 6e 74 73 28 29 3b 0a 69 66 20 28 21 24 63 6f 6e 74 65 6e 74 29 20 7b 0a 72 65 74 75 72 6e 20 | ents();.if.(!$content).{.return. |
7afc0 | 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6e 6f 4d 61 | false;.}....foreach.($this->noMa |
7afe0 | 74 63 68 52 65 67 65 78 70 73 20 61 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 | tchRegexps.as.$regex).{.if.(preg |
7b000 | 5f 6d 61 74 63 68 28 24 72 65 67 65 78 2c 20 24 63 6f 6e 74 65 6e 74 29 29 20 7b 0a 72 65 74 75 | _match($regex,.$content)).{.retu |
7b020 | 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 0a 20 24 6d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a | rn.false;.}.}....$match.=.true;. |
7b040 | 69 66 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 29 20 7b 0a 24 6d 61 74 63 | if.($this->matchRegexps).{.$matc |
7b060 | 68 20 3d 20 66 61 6c 73 65 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 | h.=.false;.foreach.($this->match |
7b080 | 52 65 67 65 78 70 73 20 61 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 | Regexps.as.$regex).{.if.(preg_ma |
7b0a0 | 74 63 68 28 24 72 65 67 65 78 2c 20 24 63 6f 6e 74 65 6e 74 29 29 20 7b 0a 72 65 74 75 72 6e 20 | tch($regex,.$content)).{.return. |
7b0c0 | 74 72 75 65 3b 0a 7d 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 3b 0a 7d 0a 0a 0a | true;.}.}.}..return.$match;.}... |
7b0e0 | 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 | ......protected.function.toRegex |
7b100 | 28 24 73 74 72 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 65 67 65 78 28 24 | ($str).{.return.$this->isRegex($ |
7b120 | 73 74 72 29 20 3f 20 24 73 74 72 20 3a 20 27 2f 27 2e 70 72 65 67 5f 71 75 6f 74 65 28 24 73 74 | str).?.$str.:.'/'.preg_quote($st |
7b140 | 72 2c 20 27 2f 27 29 2e 27 2f 27 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | r,.'/').'/';.}.}.<?php.......... |
7b160 | 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e | .namespace.Symfony\Component\Fin |
7b180 | 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 69 7a 65 52 61 | der\Iterator;.......class.SizeRa |
7b1a0 | 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 | ngeFilterIterator.extends.\Filte |
7b1c0 | 72 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 | rIterator.{.private.$comparators |
7b1e0 | 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 | .=.array();........public.functi |
7b200 | 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 | on.__construct(\Iterator.$iterat |
7b220 | 6f 72 2c 20 61 72 72 61 79 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d | or,.array.$comparators).{.$this- |
7b240 | 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 3b 0a 0a 70 61 | >comparators.=.$comparators;..pa |
7b260 | 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a | rent::__construct($iterator);.}. |
7b280 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b | ......public.function.accept().{ |
7b2a0 | 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 69 | .$fileinfo.=.$this->current();.i |
7b2c0 | 66 20 28 21 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 | f.(!$fileinfo->isFile()).{.retur |
7b2e0 | 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 66 69 6c 65 73 69 7a 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f | n.true;.}..$filesize.=.$fileinfo |
7b300 | 2d 3e 67 65 74 53 69 7a 65 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d | ->getSize();.foreach.($this->com |
7b320 | 70 61 72 61 74 6f 72 73 20 61 73 20 24 63 6f 6d 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f | parators.as.$compare).{.if.(!$co |
7b340 | 6d 70 61 72 65 2d 3e 74 65 73 74 28 24 66 69 6c 65 73 69 7a 65 29 29 20 7b 0a 72 65 74 75 72 6e | mpare->test($filesize)).{.return |
7b360 | 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f | .false;.}.}..return.true;.}.}.<? |
7b380 | 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c | php...........namespace.Symfony\ |
7b3a0 | 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a | Component\Finder\Iterator;...... |
7b3c0 | 0a 63 6c 61 73 73 20 45 78 63 6c 75 64 65 44 69 72 65 63 74 6f 72 79 46 69 6c 74 65 72 49 74 65 | .class.ExcludeDirectoryFilterIte |
7b3e0 | 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a | rator.extends.\FilterIterator.{. |
7b400 | 70 72 69 76 61 74 65 20 24 70 61 74 74 65 72 6e 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 | private.$patterns;........public |
7b420 | 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 | .function.__construct(\Iterator. |
7b440 | 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 64 69 72 65 63 74 6f 72 69 65 73 29 0a 7b | $iterator,.array.$directories).{ |
7b460 | 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 | .$this->patterns.=.array();.fore |
7b480 | 61 63 68 20 28 24 64 69 72 65 63 74 6f 72 69 65 73 20 61 73 20 24 64 69 72 65 63 74 6f 72 79 29 | ach.($directories.as.$directory) |
7b4a0 | 20 7b 0a 24 74 68 69 73 2d 3e 70 61 74 74 65 72 6e 73 5b 5d 20 3d 20 27 23 28 5e 7c 2f 29 27 2e | .{.$this->patterns[].=.'#(^|/)'. |
7b4c0 | 70 72 65 67 5f 71 75 6f 74 65 28 24 64 69 72 65 63 74 6f 72 79 2c 20 27 23 27 29 2e 27 28 2f 7c | preg_quote($directory,.'#').'(/| |
7b4e0 | 24 29 23 27 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 | $)#';.}..parent::__construct($it |
7b500 | 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | erator);.}.......public.function |
7b520 | 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 73 44 69 72 | .accept().{.$path.=.$this->isDir |
7b540 | 28 29 20 3f 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 52 65 6c 61 74 69 | ().?.$this->current()->getRelati |
7b560 | 76 65 50 61 74 68 6e 61 6d 65 28 29 20 3a 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d | vePathname().:.$this->current()- |
7b580 | 3e 67 65 74 52 65 6c 61 74 69 76 65 50 61 74 68 28 29 3b 0a 24 70 61 74 68 20 3d 20 73 74 72 74 | >getRelativePath();.$path.=.strt |
7b5a0 | 72 28 24 70 61 74 68 2c 20 27 5c 5c 27 2c 20 27 2f 27 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 | r($path,.'\\',.'/');.foreach.($t |
7b5c0 | 68 69 73 2d 3e 70 61 74 74 65 72 6e 73 20 61 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 69 66 20 | his->patterns.as.$pattern).{.if. |
7b5e0 | 28 70 72 65 67 5f 6d 61 74 63 68 28 24 70 61 74 74 65 72 6e 2c 20 24 70 61 74 68 29 29 20 7b 0a | (preg_match($pattern,.$path)).{. |
7b600 | 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a | return.false;.}.}..return.true;. |
7b620 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 | }.}.<?php...........namespace.Sy |
7b640 | 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b | mfony\Component\Finder\Iterator; |
7b660 | 0a 0a 0a 0a 0a 0a 0a 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 4d 75 6c 74 69 70 6c 65 50 63 | .......abstract.class.MultiplePc |
7b680 | 72 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 | reFilterIterator.extends.\Filter |
7b6a0 | 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 6f 74 65 63 74 65 64 20 24 6d 61 74 63 68 52 65 67 65 78 | Iterator.{.protected.$matchRegex |
7b6c0 | 70 73 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 3b 0a 0a | ps;.protected.$noMatchRegexps;.. |
7b6e0 | 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 | .......public.function.__constru |
7b700 | 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 6d | ct(\Iterator.$iterator,.array.$m |
7b720 | 61 74 63 68 50 61 74 74 65 72 6e 73 2c 20 61 72 72 61 79 20 24 6e 6f 4d 61 74 63 68 50 61 74 74 | atchPatterns,.array.$noMatchPatt |
7b740 | 65 72 6e 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 20 3d 20 61 72 | erns).{.$this->matchRegexps.=.ar |
7b760 | 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 74 63 68 50 61 74 74 65 72 6e 73 20 61 | ray();.foreach.($matchPatterns.a |
7b780 | 73 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 | s.$pattern).{.$this->matchRegexp |
7b7a0 | 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 78 28 24 70 61 74 74 65 72 6e 29 3b 0a | s[].=.$this->toRegex($pattern);. |
7b7c0 | 7d 0a 0a 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 20 3d 20 61 72 72 61 79 | }..$this->noMatchRegexps.=.array |
7b7e0 | 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 6e 6f 4d 61 74 63 68 50 61 74 74 65 72 6e 73 20 61 73 | ();.foreach.($noMatchPatterns.as |
7b800 | 20 24 70 61 74 74 65 72 6e 29 20 7b 0a 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 78 | .$pattern).{.$this->noMatchRegex |
7b820 | 70 73 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 74 6f 52 65 67 65 78 28 24 70 61 74 74 65 72 6e 29 3b | ps[].=.$this->toRegex($pattern); |
7b840 | 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f | .}..parent::__construct($iterato |
7b860 | 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | r);.}.........protected.function |
7b880 | 20 69 73 52 65 67 65 78 28 24 73 74 72 29 0a 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 | .isRegex($str).{.if.(preg_match( |
7b8a0 | 27 2f 5e 28 2e 7b 33 2c 7d 3f 29 5b 69 6d 73 78 75 41 44 55 5d 2a 24 2f 27 2c 20 24 73 74 72 2c | '/^(.{3,}?)[imsxuADU]*$/',.$str, |
7b8c0 | 20 24 6d 29 29 20 7b 0a 24 73 74 61 72 74 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 30 | .$m)).{.$start.=.substr($m[1],.0 |
7b8e0 | 2c 20 31 29 3b 0a 24 65 6e 64 20 3d 20 73 75 62 73 74 72 28 24 6d 5b 31 5d 2c 20 2d 31 29 3b 0a | ,.1);.$end.=.substr($m[1],.-1);. |
7b900 | 0a 69 66 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 24 65 6e 64 29 20 7b 0a 72 65 74 75 72 6e 20 21 | .if.($start.===.$end).{.return.! |
7b920 | 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 5b 2a 3f 5b 3a 61 6c 6e 75 6d 3a 5d 20 5c 5c 5c 5c 5d 2f | preg_match('/[*?[:alnum:].\\\\]/ |
7b940 | 27 2c 20 24 73 74 61 72 74 29 3b 0a 7d 0a 0a 69 66 20 28 24 73 74 61 72 74 20 3d 3d 3d 20 27 7b | ',.$start);.}..if.($start.===.'{ |
7b960 | 27 20 26 26 20 24 65 6e 64 20 3d 3d 3d 20 27 7d 27 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 | '.&&.$end.===.'}').{.return.true |
7b980 | 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 61 | ;.}.}..return.false;.}.........a |
7b9a0 | 62 73 74 72 61 63 74 20 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 | bstract.protected.function.toReg |
7b9c0 | 65 78 28 24 73 74 72 29 3b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | ex($str);.}.<?php...........name |
7b9e0 | 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 | space.Symfony\Component\Finder\I |
7ba00 | 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 75 73 74 6f 6d 46 69 | terator;..........class.CustomFi |
7ba20 | 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 65 72 | lterIterator.extends.\FilterIter |
7ba40 | 61 74 6f 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 66 69 6c 74 65 72 73 20 3d 20 61 72 72 61 79 28 | ator.{.private.$filters.=.array( |
7ba60 | 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 | );........public.function.__cons |
7ba80 | 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 | truct(\Iterator.$iterator,.array |
7baa0 | 20 24 66 69 6c 74 65 72 73 29 0a 7b 0a 66 6f 72 65 61 63 68 20 28 24 66 69 6c 74 65 72 73 20 61 | .$filters).{.foreach.($filters.a |
7bac0 | 73 20 24 66 69 6c 74 65 72 29 20 7b 0a 69 66 20 28 21 69 73 5f 63 61 6c 6c 61 62 6c 65 28 24 66 | s.$filter).{.if.(!is_callable($f |
7bae0 | 69 6c 74 65 72 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 | ilter)).{.throw.new.\InvalidArgu |
7bb00 | 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 49 6e 76 61 6c 69 64 20 50 48 50 20 63 61 6c 6c 62 | mentException('Invalid.PHP.callb |
7bb20 | 61 63 6b 2e 27 29 3b 0a 7d 0a 7d 0a 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 73 20 3d 20 24 66 69 | ack.');.}.}.$this->filters.=.$fi |
7bb40 | 6c 74 65 72 73 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 | lters;..parent::__construct($ite |
7bb60 | 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | rator);.}.......public.function. |
7bb80 | 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 | accept().{.$fileinfo.=.$this->cu |
7bba0 | 72 72 65 6e 74 28 29 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 69 6c 74 65 72 | rrent();..foreach.($this->filter |
7bbc0 | 73 20 61 73 20 24 66 69 6c 74 65 72 29 20 7b 0a 69 66 20 28 66 61 6c 73 65 20 3d 3d 3d 20 63 61 | s.as.$filter).{.if.(false.===.ca |
7bbe0 | 6c 6c 5f 75 73 65 72 5f 66 75 6e 63 28 24 66 69 6c 74 65 72 2c 20 24 66 69 6c 65 69 6e 66 6f 29 | ll_user_func($filter,.$fileinfo) |
7bc00 | 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 74 72 | ).{.return.false;.}.}..return.tr |
7bc20 | 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 | ue;.}.}.<?php...........namespac |
7bc40 | 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 | e.Symfony\Component\Finder\Itera |
7bc60 | 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 | tor;..use.Symfony\Component\Find |
7bc80 | 65 72 5c 47 6c 6f 62 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 6e 61 6d 65 46 69 6c | er\Glob;.......class.FilenameFil |
7bca0 | 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 4d 75 6c 74 69 70 6c 65 50 63 72 65 | terIterator.extends.MultiplePcre |
7bcc0 | 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | FilterIterator.{.......public.fu |
7bce0 | 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 6e 61 6d 65 20 3d 20 24 74 | nction.accept().{.$filename.=.$t |
7bd00 | 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 2d 3e 67 65 74 46 69 6c 65 6e 61 6d 65 28 29 3b 0a 0a | his->current()->getFilename();.. |
7bd20 | 0a 20 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6e 6f 4d 61 74 63 68 52 65 67 65 78 70 73 | ..foreach.($this->noMatchRegexps |
7bd40 | 20 61 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 | .as.$regex).{.if.(preg_match($re |
7bd60 | 67 65 78 2c 20 24 66 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b | gex,.$filename)).{.return.false; |
7bd80 | 0a 7d 0a 7d 0a 0a 0a 20 24 6d 61 74 63 68 20 3d 20 74 72 75 65 3b 0a 69 66 20 28 24 74 68 69 73 | .}.}....$match.=.true;.if.($this |
7bda0 | 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 29 20 7b 0a 24 6d 61 74 63 68 20 3d 20 66 61 6c 73 65 | ->matchRegexps).{.$match.=.false |
7bdc0 | 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 52 65 67 65 78 70 73 20 61 | ;.foreach.($this->matchRegexps.a |
7bde0 | 73 20 24 72 65 67 65 78 29 20 7b 0a 69 66 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 72 65 67 65 | s.$regex).{.if.(preg_match($rege |
7be00 | 78 2c 20 24 66 69 6c 65 6e 61 6d 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a | x,.$filename)).{.return.true;.}. |
7be20 | 7d 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 6d 61 74 63 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | }.}..return.$match;.}........... |
7be40 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 74 6f 52 65 67 65 78 28 24 73 74 72 | .protected.function.toRegex($str |
7be60 | 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 69 73 52 65 67 65 78 28 24 73 74 72 29 20 | ).{.return.$this->isRegex($str). |
7be80 | 3f 20 24 73 74 72 20 3a 20 47 6c 6f 62 3a 3a 74 6f 52 65 67 65 78 28 24 73 74 72 29 3b 0a 7d 0a | ?.$str.:.Glob::toRegex($str);.}. |
7bea0 | 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 | }.<?php...........namespace.Symf |
7bec0 | 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a | ony\Component\Finder\Iterator;.. |
7bee0 | 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 61 74 65 52 61 6e 67 65 46 69 6c 74 65 72 49 74 65 72 61 74 | .....class.DateRangeFilterIterat |
7bf00 | 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 0a 7b 0a 70 72 69 | or.extends.\FilterIterator.{.pri |
7bf20 | 76 61 74 65 20 24 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 0a 0a | vate.$comparators.=.array();.... |
7bf40 | 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 | ....public.function.__construct( |
7bf60 | 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 74 6f 72 2c 20 61 72 72 61 79 20 24 63 6f 6d 70 | \Iterator.$iterator,.array.$comp |
7bf80 | 61 72 61 74 6f 72 73 29 0a 7b 0a 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 3d 20 | arators).{.$this->comparators.=. |
7bfa0 | 24 63 6f 6d 70 61 72 61 74 6f 72 73 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 | $comparators;..parent::__constru |
7bfc0 | 63 74 28 24 69 74 65 72 61 74 6f 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ct($iterator);.}.......public.fu |
7bfe0 | 6e 63 74 69 6f 6e 20 61 63 63 65 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 | nction.accept().{.$fileinfo.=.$t |
7c000 | 68 69 73 2d 3e 63 75 72 72 65 6e 74 28 29 3b 0a 0a 69 66 20 28 21 24 66 69 6c 65 69 6e 66 6f 2d | his->current();..if.(!$fileinfo- |
7c020 | 3e 69 73 46 69 6c 65 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 24 66 69 | >isFile()).{.return.true;.}..$fi |
7c040 | 6c 65 64 61 74 65 20 3d 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 67 65 74 4d 54 69 6d 65 28 29 3b 0a | ledate.=.$fileinfo->getMTime();. |
7c060 | 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 63 6f 6d 70 61 72 61 74 6f 72 73 20 61 73 20 24 | foreach.($this->comparators.as.$ |
7c080 | 63 6f 6d 70 61 72 65 29 20 7b 0a 69 66 20 28 21 24 63 6f 6d 70 61 72 65 2d 3e 74 65 73 74 28 24 | compare).{.if.(!$compare->test($ |
7c0a0 | 66 69 6c 65 64 61 74 65 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 7d 0a 0a | filedate)).{.return.false;.}.}.. |
7c0c0 | 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | return.true;.}.}.<?php.......... |
7c0e0 | 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e | .namespace.Symfony\Component\Fin |
7c100 | 64 65 72 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 46 69 6c 65 54 79 | der\Iterator;.......class.FileTy |
7c120 | 70 65 46 69 6c 74 65 72 49 74 65 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 5c 46 69 6c 74 65 72 | peFilterIterator.extends.\Filter |
7c140 | 49 74 65 72 61 74 6f 72 0a 7b 0a 63 6f 6e 73 74 20 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d 20 31 3b | Iterator.{.const.ONLY_FILES.=.1; |
7c160 | 0a 63 6f 6e 73 74 20 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 3d 20 32 3b 0a 0a 70 72 | .const.ONLY_DIRECTORIES.=.2;..pr |
7c180 | 69 76 61 74 65 20 24 6d 6f 64 65 3b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | ivate.$mode;........public.funct |
7c1a0 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 5c 49 74 65 72 61 74 6f 72 20 24 69 74 65 72 61 | ion.__construct(\Iterator.$itera |
7c1c0 | 74 6f 72 2c 20 24 6d 6f 64 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 6d 6f 64 65 20 3d 20 24 6d 6f 64 | tor,.$mode).{.$this->mode.=.$mod |
7c1e0 | 65 3b 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 69 74 65 72 61 74 6f | e;..parent::__construct($iterato |
7c200 | 72 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 63 63 65 | r);.}.......public.function.acce |
7c220 | 70 74 28 29 0a 7b 0a 24 66 69 6c 65 69 6e 66 6f 20 3d 20 24 74 68 69 73 2d 3e 63 75 72 72 65 6e | pt().{.$fileinfo.=.$this->curren |
7c240 | 74 28 29 3b 0a 69 66 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 | t();.if.(self::ONLY_DIRECTORIES. |
7c260 | 3d 3d 3d 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 44 49 52 45 43 54 4f 52 49 45 53 20 26 20 24 74 | ===.(self::ONLY_DIRECTORIES.&.$t |
7c280 | 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 24 66 69 6c 65 69 6e 66 6f 2d 3e 69 73 46 69 6c 65 28 | his->mode).&&.$fileinfo->isFile( |
7c2a0 | 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 20 65 6c 73 65 69 66 20 28 73 65 6c | )).{.return.false;.}.elseif.(sel |
7c2c0 | 66 3a 3a 4f 4e 4c 59 5f 46 49 4c 45 53 20 3d 3d 3d 20 28 73 65 6c 66 3a 3a 4f 4e 4c 59 5f 46 49 | f::ONLY_FILES.===.(self::ONLY_FI |
7c2e0 | 4c 45 53 20 26 20 24 74 68 69 73 2d 3e 6d 6f 64 65 29 20 26 26 20 24 66 69 6c 65 69 6e 66 6f 2d | LES.&.$this->mode).&&.$fileinfo- |
7c300 | 3e 69 73 44 69 72 28 29 29 20 7b 0a 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 7d 0a 0a 72 65 74 | >isDir()).{.return.false;.}..ret |
7c320 | 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 | urn.true;.}.}.<?php...........na |
7c340 | 6d 65 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 | mespace.Symfony\Component\Finder |
7c360 | 5c 49 74 65 72 61 74 6f 72 3b 0a 0a 75 73 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e | \Iterator;..use.Symfony\Componen |
7c380 | 74 5c 46 69 6e 64 65 72 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 | t\Finder\SplFileInfo;.......clas |
7c3a0 | 73 20 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 20 65 78 74 | s.RecursiveDirectoryIterator.ext |
7c3c0 | 65 6e 64 73 20 5c 52 65 63 75 72 73 69 76 65 44 69 72 65 63 74 6f 72 79 49 74 65 72 61 74 6f 72 | ends.\RecursiveDirectoryIterator |
7c3e0 | 0a 7b 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 | .{.public.function.__construct($ |
7c400 | 70 61 74 68 2c 20 24 66 6c 61 67 73 29 0a 7b 0a 69 66 20 28 24 66 6c 61 67 73 20 26 20 28 73 65 | path,.$flags).{.if.($flags.&.(se |
7c420 | 6c 66 3a 3a 43 55 52 52 45 4e 54 5f 41 53 5f 50 41 54 48 4e 41 4d 45 20 7c 20 73 65 6c 66 3a 3a | lf::CURRENT_AS_PATHNAME.|.self:: |
7c440 | 43 55 52 52 45 4e 54 5f 41 53 5f 53 45 4c 46 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 52 | CURRENT_AS_SELF)).{.throw.new.\R |
7c460 | 75 6e 74 69 6d 65 45 78 63 65 70 74 69 6f 6e 28 27 54 68 69 73 20 69 74 65 72 61 74 6f 72 20 6f | untimeException('This.iterator.o |
7c480 | 6e 6c 79 20 73 75 70 70 6f 72 74 20 72 65 74 75 72 6e 69 6e 67 20 63 75 72 72 65 6e 74 20 61 73 | nly.support.returning.current.as |
7c4a0 | 20 66 69 6c 65 69 6e 66 6f 2e 27 29 3b 0a 7d 0a 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 | .fileinfo.');.}..parent::__const |
7c4c0 | 72 75 63 74 28 24 70 61 74 68 2c 20 24 66 6c 61 67 73 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 | ruct($path,.$flags);.}.......pub |
7c4e0 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 | lic.function.current().{.return. |
7c500 | 6e 65 77 20 53 70 6c 46 69 6c 65 49 6e 66 6f 28 70 61 72 65 6e 74 3a 3a 63 75 72 72 65 6e 74 28 | new.SplFileInfo(parent::current( |
7c520 | 29 2d 3e 67 65 74 50 61 74 68 6e 61 6d 65 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 53 75 62 50 | )->getPathname(),.$this->getSubP |
7c540 | 61 74 68 28 29 2c 20 24 74 68 69 73 2d 3e 67 65 74 53 75 62 50 61 74 68 6e 61 6d 65 28 29 29 3b | ath(),.$this->getSubPathname()); |
7c560 | 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 | .}.}.<?php...........namespace.S |
7c580 | 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 | ymfony\Component\Finder\Comparat |
7c5a0 | 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 44 61 74 65 43 6f 6d 70 61 72 61 74 6f 72 20 65 | or;.......class.DateComparator.e |
7c5c0 | 78 74 65 6e 64 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c | xtends.Comparator.{.........publ |
7c5e0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 65 73 74 29 0a 7b | ic.function.__construct($test).{ |
7c600 | 0a 69 66 20 28 21 70 72 65 67 5f 6d 61 74 63 68 28 27 23 5e 5c 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c | .if.(!preg_match('#^\s*(==|!=|[< |
7c620 | 3e 5d 3d 3f 7c 61 66 74 65 72 7c 73 69 6e 63 65 7c 62 65 66 6f 72 65 7c 75 6e 74 69 6c 29 3f 5c | >]=?|after|since|before|until)?\ |
7c640 | 73 2a 28 2e 2b 3f 29 5c 73 2a 24 23 69 27 2c 20 24 74 65 73 74 2c 20 24 6d 61 74 63 68 65 73 29 | s*(.+?)\s*$#i',.$test,.$matches) |
7c660 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 | ).{.throw.new.\InvalidArgumentEx |
7c680 | 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 44 6f 6e 5c 27 74 20 75 6e 64 65 72 73 74 61 | ception(sprintf('Don\'t.understa |
7c6a0 | 6e 64 20 22 25 73 22 20 61 73 20 61 20 64 61 74 65 20 74 65 73 74 2e 27 2c 20 24 74 65 73 74 29 | nd."%s".as.a.date.test.',.$test) |
7c6c0 | 29 3b 0a 7d 0a 0a 74 72 79 20 7b 0a 24 64 61 74 65 20 3d 20 6e 65 77 20 5c 44 61 74 65 54 69 6d | );.}..try.{.$date.=.new.\DateTim |
7c6e0 | 65 28 24 6d 61 74 63 68 65 73 5b 32 5d 29 3b 0a 24 74 61 72 67 65 74 20 3d 20 24 64 61 74 65 2d | e($matches[2]);.$target.=.$date- |
7c700 | 3e 66 6f 72 6d 61 74 28 27 55 27 29 3b 0a 7d 20 63 61 74 63 68 20 28 5c 45 78 63 65 70 74 69 6f | >format('U');.}.catch.(\Exceptio |
7c720 | 6e 20 24 65 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 | n.$e).{.throw.new.\InvalidArgume |
7c740 | 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 22 25 73 22 20 69 73 20 6e 6f 74 | ntException(sprintf('"%s".is.not |
7c760 | 20 61 20 76 61 6c 69 64 20 64 61 74 65 2e 27 2c 20 24 6d 61 74 63 68 65 73 5b 32 5d 29 29 3b 0a | .a.valid.date.',.$matches[2]));. |
7c780 | 7d 0a 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 31 5d | }..$operator.=.isset($matches[1] |
7c7a0 | 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3a 20 27 3d 3d 27 3b 0a 69 66 20 28 27 73 69 6e | ).?.$matches[1].:.'==';.if.('sin |
7c7c0 | 63 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 20 7c 7c 20 27 61 66 74 65 72 27 20 3d 3d 3d | ce'.===.$operator.||.'after'.=== |
7c7e0 | 20 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3e 27 3b 0a 7d | .$operator).{.$operator.=.'>';.} |
7c800 | 0a 0a 69 66 20 28 27 75 6e 74 69 6c 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 20 7c 7c 20 27 | ..if.('until'.===.$operator.||.' |
7c820 | 62 65 66 6f 72 65 27 20 3d 3d 3d 20 24 6f 70 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 | before'.===.$operator).{.$operat |
7c840 | 6f 72 20 3d 20 27 3c 27 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 | or.=.'<';.}..$this->setOperator( |
7c860 | 24 6f 70 65 72 61 74 6f 72 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 | $operator);.$this->setTarget($ta |
7c880 | 72 67 65 74 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 | rget);.}.}.<?php...........names |
7c8a0 | 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f | pace.Symfony\Component\Finder\Co |
7c8c0 | 6d 70 61 72 61 74 6f 72 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | mparator;....................... |
7c8e0 | 0a 63 6c 61 73 73 20 4e 75 6d 62 65 72 43 6f 6d 70 61 72 61 74 6f 72 20 65 78 74 65 6e 64 73 20 | .class.NumberComparator.extends. |
7c900 | 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | Comparator.{........public.funct |
7c920 | 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 74 65 73 74 29 0a 7b 0a 69 66 20 28 21 70 72 | ion.__construct($test).{.if.(!pr |
7c940 | 65 67 5f 6d 61 74 63 68 28 27 23 5e 5c 73 2a 28 3d 3d 7c 21 3d 7c 5b 3c 3e 5d 3d 3f 29 3f 5c 73 | eg_match('#^\s*(==|!=|[<>]=?)?\s |
7c960 | 2a 28 5b 30 2d 39 5c 2e 5d 2b 29 5c 73 2a 28 5b 6b 6d 67 5d 69 3f 29 3f 5c 73 2a 24 23 69 27 2c | *([0-9\.]+)\s*([kmg]i?)?\s*$#i', |
7c980 | 20 24 74 65 73 74 2c 20 24 6d 61 74 63 68 65 73 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c | .$test,.$matches)).{.throw.new.\ |
7c9a0 | 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 | InvalidArgumentException(sprintf |
7c9c0 | 28 27 44 6f 6e 5c 27 74 20 75 6e 64 65 72 73 74 61 6e 64 20 22 25 73 22 20 61 73 20 61 20 6e 75 | ('Don\'t.understand."%s".as.a.nu |
7c9e0 | 6d 62 65 72 20 74 65 73 74 2e 27 2c 20 24 74 65 73 74 29 29 3b 0a 7d 0a 0a 24 74 61 72 67 65 74 | mber.test.',.$test));.}..$target |
7ca00 | 20 3d 20 24 6d 61 74 63 68 65 73 5b 32 5d 3b 0a 69 66 20 28 21 69 73 5f 6e 75 6d 65 72 69 63 28 | .=.$matches[2];.if.(!is_numeric( |
7ca20 | 24 74 61 72 67 65 74 29 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 | $target)).{.throw.new.\InvalidAr |
7ca40 | 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 | gumentException(sprintf('Invalid |
7ca60 | 20 6e 75 6d 62 65 72 20 22 25 73 22 2e 27 2c 20 24 74 61 72 67 65 74 29 29 3b 0a 7d 0a 69 66 20 | .number."%s".',.$target));.}.if. |
7ca80 | 28 69 73 73 65 74 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 0a 20 73 77 69 74 63 68 20 | (isset($matches[3])).{...switch. |
7caa0 | 28 73 74 72 74 6f 6c 6f 77 65 72 28 24 6d 61 74 63 68 65 73 5b 33 5d 29 29 20 7b 0a 63 61 73 65 | (strtolower($matches[3])).{.case |
7cac0 | 20 27 6b 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 | .'k':.$target.*=.1000;.break;.ca |
7cae0 | 73 65 20 27 6b 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 3b 0a 62 72 65 61 6b 3b | se.'ki':.$target.*=.1024;.break; |
7cb00 | 0a 63 61 73 65 20 27 6d 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 30 30 30 30 30 3b 0a 62 | .case.'m':.$target.*=.1000000;.b |
7cb20 | 72 65 61 6b 3b 0a 63 61 73 65 20 27 6d 69 27 3a 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 | reak;.case.'mi':.$target.*=.1024 |
7cb40 | 2a 31 30 32 34 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 67 27 3a 0a 24 74 61 72 67 65 74 20 | *1024;.break;.case.'g':.$target. |
7cb60 | 2a 3d 20 31 30 30 30 30 30 30 30 30 30 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 27 67 69 27 3a | *=.1000000000;.break;.case.'gi': |
7cb80 | 0a 24 74 61 72 67 65 74 20 2a 3d 20 31 30 32 34 2a 31 30 32 34 2a 31 30 32 34 3b 0a 62 72 65 61 | .$target.*=.1024*1024*1024;.brea |
7cba0 | 6b 3b 0a 7d 0a 7d 0a 0a 24 74 68 69 73 2d 3e 73 65 74 54 61 72 67 65 74 28 24 74 61 72 67 65 74 | k;.}.}..$this->setTarget($target |
7cbc0 | 29 3b 0a 24 74 68 69 73 2d 3e 73 65 74 4f 70 65 72 61 74 6f 72 28 69 73 73 65 74 28 24 6d 61 74 | );.$this->setOperator(isset($mat |
7cbe0 | 63 68 65 73 5b 31 5d 29 20 3f 20 24 6d 61 74 63 68 65 73 5b 31 5d 20 3a 20 27 3d 3d 27 29 3b 0a | ches[1]).?.$matches[1].:.'==');. |
7cc00 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 79 | }.}.<?php...........namespace.Sy |
7cc20 | 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 5c 43 6f 6d 70 61 72 61 74 6f | mfony\Component\Finder\Comparato |
7cc40 | 72 3b 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6d 70 61 72 61 74 6f 72 0a 7b 0a 70 72 69 76 | r;.......class.Comparator.{.priv |
7cc60 | 61 74 65 20 24 74 61 72 67 65 74 3b 0a 70 72 69 76 61 74 65 20 24 6f 70 65 72 61 74 6f 72 20 3d | ate.$target;.private.$operator.= |
7cc80 | 20 27 3d 3d 27 3b 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 | .'==';.......public.function.get |
7cca0 | 54 61 72 67 65 74 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b | Target().{.return.$this->target; |
7ccc0 | 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 54 61 72 67 | .}.......public.function.setTarg |
7cce0 | 65 74 28 24 74 61 72 67 65 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 74 61 72 67 65 74 20 3d 20 24 74 | et($target).{.$this->target.=.$t |
7cd00 | 61 72 67 65 74 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 | arget;.}.......public.function.g |
7cd20 | 65 74 4f 70 65 72 61 74 6f 72 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 6f 70 65 | etOperator().{.return.$this->ope |
7cd40 | 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 | rator;.}.......public.function.s |
7cd60 | 65 74 4f 70 65 72 61 74 6f 72 28 24 6f 70 65 72 61 74 6f 72 29 0a 7b 0a 69 66 20 28 21 24 6f 70 | etOperator($operator).{.if.(!$op |
7cd80 | 65 72 61 74 6f 72 29 20 7b 0a 24 6f 70 65 72 61 74 6f 72 20 3d 20 27 3d 3d 27 3b 0a 7d 0a 0a 69 | erator).{.$operator.=.'==';.}..i |
7cda0 | 66 20 28 21 69 6e 5f 61 72 72 61 79 28 24 6f 70 65 72 61 74 6f 72 2c 20 61 72 72 61 79 28 27 3e | f.(!in_array($operator,.array('> |
7cdc0 | 27 2c 20 27 3c 27 2c 20 27 3e 3d 27 2c 20 27 3c 3d 27 2c 20 27 3d 3d 27 2c 20 27 21 3d 27 29 29 | ',.'<',.'>=',.'<=',.'==',.'!=')) |
7cde0 | 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 | ).{.throw.new.\InvalidArgumentEx |
7ce00 | 63 65 70 74 69 6f 6e 28 73 70 72 69 6e 74 66 28 27 49 6e 76 61 6c 69 64 20 6f 70 65 72 61 74 6f | ception(sprintf('Invalid.operato |
7ce20 | 72 20 22 25 73 22 2e 27 2c 20 24 6f 70 65 72 61 74 6f 72 29 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d | r."%s".',.$operator));.}..$this- |
7ce40 | 3e 6f 70 65 72 61 74 6f 72 20 3d 20 24 6f 70 65 72 61 74 6f 72 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 | >operator.=.$operator;.}.......p |
7ce60 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 74 65 73 74 28 24 74 65 73 74 29 0a 7b 0a 73 77 69 | ublic.function.test($test).{.swi |
7ce80 | 74 63 68 20 28 24 74 68 69 73 2d 3e 6f 70 65 72 61 74 6f 72 29 20 7b 0a 63 61 73 65 20 27 3e 27 | tch.($this->operator).{.case.'>' |
7cea0 | 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3e 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a | :.return.$test.>.$this->target;. |
7cec0 | 63 61 73 65 20 27 3e 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3e 3d 20 24 74 68 69 73 | case.'>=':.return.$test.>=.$this |
7cee0 | 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3c 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 | ->target;.case.'<':.return.$test |
7cf00 | 20 3c 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 20 27 3c 3d 27 3a 0a 72 65 74 | .<.$this->target;.case.'<=':.ret |
7cf20 | 75 72 6e 20 24 74 65 73 74 20 3c 3d 20 24 74 68 69 73 2d 3e 74 61 72 67 65 74 3b 0a 63 61 73 65 | urn.$test.<=.$this->target;.case |
7cf40 | 20 27 21 3d 27 3a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 21 3d 20 24 74 68 69 73 2d 3e 74 61 | .'!=':.return.$test.!=.$this->ta |
7cf60 | 72 67 65 74 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 24 74 65 73 74 20 3d 3d 20 24 74 68 69 73 2d 3e | rget;.}..return.$test.==.$this-> |
7cf80 | 74 61 72 67 65 74 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 | target;.}.}.<?php...........name |
7cfa0 | 73 70 61 63 65 20 53 79 6d 66 6f 6e 79 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 46 69 6e 64 65 72 3b 0a | space.Symfony\Component\Finder;. |
7cfc0 | 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 70 6c 46 69 6c 65 49 6e 66 6f 20 65 78 74 65 6e 64 73 20 | ......class.SplFileInfo.extends. |
7cfe0 | 5c 53 70 6c 46 69 6c 65 49 6e 66 6f 0a 7b 0a 70 72 69 76 61 74 65 20 24 72 65 6c 61 74 69 76 65 | \SplFileInfo.{.private.$relative |
7d000 | 50 61 74 68 3b 0a 70 72 69 76 61 74 65 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b | Path;.private.$relativePathname; |
7d020 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 | .........public.function.__const |
7d040 | 72 75 63 74 28 24 66 69 6c 65 2c 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 2c 20 24 72 65 6c 61 | ruct($file,.$relativePath,.$rela |
7d060 | 74 69 76 65 50 61 74 68 6e 61 6d 65 29 0a 7b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 | tivePathname).{.parent::__constr |
7d080 | 75 63 74 28 24 66 69 6c 65 29 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 20 | uct($file);.$this->relativePath. |
7d0a0 | 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 3b 0a 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 | =.$relativePath;.$this->relative |
7d0c0 | 50 61 74 68 6e 61 6d 65 20 3d 20 24 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b 0a 7d 0a | Pathname.=.$relativePathname;.}. |
7d0e0 | 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 52 65 6c 61 74 69 76 | ......public.function.getRelativ |
7d100 | 65 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 72 65 6c 61 74 69 76 65 | ePath().{.return.$this->relative |
7d120 | 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 | Path;.}.......public.function.ge |
7d140 | 74 52 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 | tRelativePathname().{.return.$th |
7d160 | 69 73 2d 3e 72 65 6c 61 74 69 76 65 50 61 74 68 6e 61 6d 65 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 | is->relativePathname;.}.......pu |
7d180 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6f 6e 74 65 6e 74 73 28 29 0a 7b 0a 24 66 | blic.function.getContents().{.$f |
7d1a0 | 69 6c 65 20 3d 20 6e 65 77 20 5c 53 70 6c 46 69 6c 65 4f 62 6a 65 63 74 28 24 74 68 69 73 2d 3e | ile.=.new.\SplFileObject($this-> |
7d1c0 | 67 65 74 52 65 61 6c 70 61 74 68 28 29 2c 20 27 72 62 27 29 3b 0a 6f 62 5f 73 74 61 72 74 28 29 | getRealpath(),.'rb');.ob_start() |
7d1e0 | 3b 0a 24 66 69 6c 65 2d 3e 66 70 61 73 73 74 68 72 75 28 29 3b 0a 0a 72 65 74 75 72 6e 20 6f 62 | ;.$file->fpassthru();..return.ob |
7d200 | 5f 67 65 74 5f 63 6c 65 61 6e 28 29 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a | _get_clean();.}.}.<?php......... |
7d220 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 63 6c 61 73 | ..namespace.Seld\JsonLint;..clas |
7d240 | 73 20 55 6e 64 65 66 69 6e 65 64 0a 7b 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | s.Undefined.{.}.<?php........... |
7d260 | 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 75 73 65 20 73 74 | namespace.Seld\JsonLint;..use.st |
7d280 | 64 43 6c 61 73 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4a 73 6f 6e | dClass;...............class.Json |
7d2a0 | 50 61 72 73 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 73 74 61 63 6b 3b 0a 70 72 69 76 61 74 65 | Parser.{.private.$stack;.private |
7d2c0 | 20 24 76 73 74 61 63 6b 3b 20 0a 20 70 72 69 76 61 74 65 20 24 6c 73 74 61 63 6b 3b 20 0a 0a 70 | .$vstack;...private.$lstack;...p |
7d2e0 | 72 69 76 61 74 65 20 24 79 79 3b 0a 70 72 69 76 61 74 65 20 24 73 79 6d 62 6f 6c 73 20 3d 20 61 | rivate.$yy;.private.$symbols.=.a |
7d300 | 72 72 61 79 28 0a 27 65 72 72 6f 72 27 20 3d 3e 20 32 2c 0a 27 4a 53 4f 4e 53 74 72 69 6e 67 27 | rray(.'error'.=>.2,.'JSONString' |
7d320 | 20 3d 3e 20 33 2c 0a 27 53 54 52 49 4e 47 27 20 3d 3e 20 34 2c 0a 27 4a 53 4f 4e 4e 75 6d 62 65 | .=>.3,.'STRING'.=>.4,.'JSONNumbe |
7d340 | 72 27 20 3d 3e 20 35 2c 0a 27 4e 55 4d 42 45 52 27 20 3d 3e 20 36 2c 0a 27 4a 53 4f 4e 4e 75 6c | r'.=>.5,.'NUMBER'.=>.6,.'JSONNul |
7d360 | 6c 4c 69 74 65 72 61 6c 27 20 3d 3e 20 37 2c 0a 27 4e 55 4c 4c 27 20 3d 3e 20 38 2c 0a 27 4a 53 | lLiteral'.=>.7,.'NULL'.=>.8,.'JS |
7d380 | 4f 4e 42 6f 6f 6c 65 61 6e 4c 69 74 65 72 61 6c 27 20 3d 3e 20 39 2c 0a 27 54 52 55 45 27 20 3d | ONBooleanLiteral'.=>.9,.'TRUE'.= |
7d3a0 | 3e 20 31 30 2c 0a 27 46 41 4c 53 45 27 20 3d 3e 20 31 31 2c 0a 27 4a 53 4f 4e 54 65 78 74 27 20 | >.10,.'FALSE'.=>.11,.'JSONText'. |
7d3c0 | 3d 3e 20 31 32 2c 0a 27 4a 53 4f 4e 56 61 6c 75 65 27 20 3d 3e 20 31 33 2c 0a 27 45 4f 46 27 20 | =>.12,.'JSONValue'.=>.13,.'EOF'. |
7d3e0 | 3d 3e 20 31 34 2c 0a 27 4a 53 4f 4e 4f 62 6a 65 63 74 27 20 3d 3e 20 31 35 2c 0a 27 4a 53 4f 4e | =>.14,.'JSONObject'.=>.15,.'JSON |
7d400 | 41 72 72 61 79 27 20 3d 3e 20 31 36 2c 0a 27 7b 27 20 3d 3e 20 31 37 2c 0a 27 7d 27 20 3d 3e 20 | Array'.=>.16,.'{'.=>.17,.'}'.=>. |
7d420 | 31 38 2c 0a 27 4a 53 4f 4e 4d 65 6d 62 65 72 4c 69 73 74 27 20 3d 3e 20 31 39 2c 0a 27 4a 53 4f | 18,.'JSONMemberList'.=>.19,.'JSO |
7d440 | 4e 4d 65 6d 62 65 72 27 20 3d 3e 20 32 30 2c 0a 27 3a 27 20 3d 3e 20 32 31 2c 0a 27 2c 27 20 3d | NMember'.=>.20,.':'.=>.21,.','.= |
7d460 | 3e 20 32 32 2c 0a 27 5b 27 20 3d 3e 20 32 33 2c 0a 27 5d 27 20 3d 3e 20 32 34 2c 0a 27 4a 53 4f | >.22,.'['.=>.23,.']'.=>.24,.'JSO |
7d480 | 4e 45 6c 65 6d 65 6e 74 4c 69 73 74 27 20 3d 3e 20 32 35 2c 0a 27 24 61 63 63 65 70 74 27 20 3d | NElementList'.=>.25,.'$accept'.= |
7d4a0 | 3e 20 30 2c 0a 27 24 65 6e 64 27 20 3d 3e 20 31 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 74 | >.0,.'$end'.=>.1,.);..private.$t |
7d4c0 | 65 72 6d 69 6e 61 6c 73 5f 20 3d 20 61 72 72 61 79 28 0a 32 20 3d 3e 20 22 65 72 72 6f 72 22 2c | erminals_.=.array(.2.=>."error", |
7d4e0 | 0a 34 20 3d 3e 20 22 53 54 52 49 4e 47 22 2c 0a 36 20 3d 3e 20 22 4e 55 4d 42 45 52 22 2c 0a 38 | .4.=>."STRING",.6.=>."NUMBER",.8 |
7d500 | 20 3d 3e 20 22 4e 55 4c 4c 22 2c 0a 31 30 20 3d 3e 20 22 54 52 55 45 22 2c 0a 31 31 20 3d 3e 20 | .=>."NULL",.10.=>."TRUE",.11.=>. |
7d520 | 22 46 41 4c 53 45 22 2c 0a 31 34 20 3d 3e 20 22 45 4f 46 22 2c 0a 31 37 20 3d 3e 20 22 7b 22 2c | "FALSE",.14.=>."EOF",.17.=>."{", |
7d540 | 0a 31 38 20 3d 3e 20 22 7d 22 2c 0a 32 31 20 3d 3e 20 22 3a 22 2c 0a 32 32 20 3d 3e 20 22 2c 22 | .18.=>."}",.21.=>.":",.22.=>."," |
7d560 | 2c 0a 32 33 20 3d 3e 20 22 5b 22 2c 0a 32 34 20 3d 3e 20 22 5d 22 2c 0a 29 3b 0a 0a 70 72 69 76 | ,.23.=>."[",.24.=>."]",.);..priv |
7d580 | 61 74 65 20 24 70 72 6f 64 75 63 74 69 6f 6e 73 5f 20 3d 20 61 72 72 61 79 28 0a 30 2c 0a 61 72 | ate.$productions_.=.array(.0,.ar |
7d5a0 | 72 61 79 28 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 35 2c 20 31 29 2c 0a 61 72 72 61 79 28 37 2c | ray(3,.1),.array(5,.1),.array(7, |
7d5c0 | 20 31 29 2c 0a 61 72 72 61 79 28 39 2c 20 31 29 2c 0a 61 72 72 61 79 28 39 2c 20 31 29 2c 0a 61 | .1),.array(9,.1),.array(9,.1),.a |
7d5e0 | 72 72 61 79 28 31 32 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 | rray(12,.2),.array(13,.1),.array |
7d600 | 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c | (13,.1),.array(13,.1),.array(13, |
7d620 | 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 33 2c 20 31 29 2c | .1),.array(13,.1),.array(13,.1), |
7d640 | 0a 61 72 72 61 79 28 31 35 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 35 2c 20 33 29 2c 0a 61 72 72 | .array(15,.2),.array(15,.3),.arr |
7d660 | 61 79 28 32 30 2c 20 33 29 2c 0a 61 72 72 61 79 28 31 39 2c 20 31 29 2c 0a 61 72 72 61 79 28 31 | ay(20,.3),.array(19,.1),.array(1 |
7d680 | 39 2c 20 33 29 2c 0a 61 72 72 61 79 28 31 36 2c 20 32 29 2c 0a 61 72 72 61 79 28 31 36 2c 20 33 | 9,.3),.array(16,.2),.array(16,.3 |
7d6a0 | 29 2c 0a 61 72 72 61 79 28 32 35 2c 20 31 29 2c 0a 61 72 72 61 79 28 32 35 2c 20 33 29 0a 29 3b | ),.array(25,.1),.array(25,.3).); |
7d6c0 | 0a 0a 70 72 69 76 61 74 65 20 24 74 61 62 6c 65 20 3d 20 61 72 72 61 79 28 61 72 72 61 79 28 33 | ..private.$table.=.array(array(3 |
7d6e0 | 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 35 20 3d 3e 20 36 2c | .=>.5,.4.=>.array(1,12),.5.=>.6, |
7d700 | 20 36 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 33 29 2c 20 37 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 | .6.=>.array(1,13),.7.=>.3,.8.=>. |
7d720 | 61 72 72 61 79 28 31 2c 39 29 2c 20 39 20 3d 3e 20 34 2c 20 31 30 20 3d 3e 20 61 72 72 61 79 28 | array(1,9),.9.=>.4,.10.=>.array( |
7d740 | 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 32 20 3d 3e 20 | 1,10),.11.=>.array(1,11),.12.=>. |
7d760 | 31 2c 20 31 33 20 3d 3e 20 32 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 38 2c 20 31 37 | 1,.13.=>.2,.15.=>.7,.16.=>.8,.17 |
7d780 | 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 | .=>.array(1,14),.23.=>.array(1,1 |
7d7a0 | 35 29 29 2c 20 61 72 72 61 79 28 20 31 20 3d 3e 20 61 72 72 61 79 28 33 29 29 2c 20 61 72 72 61 | 5)),.array(.1.=>.array(3)),.arra |
7d7c0 | 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 | y(.14.=>.array(1,16)),.array(.14 |
7d7e0 | 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 | .=>.array(2,7),.18.=>.array(2,7) |
7d800 | 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 37 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 | ,.22.=>.array(2,7),.24.=>.array( |
7d820 | 32 2c 37 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 2c 20 | 2,7)),.array(.14.=>.array(2,8),. |
7d840 | 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c | 18.=>.array(2,8),.22.=>.array(2, |
7d860 | 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 38 29 29 2c 20 61 72 72 61 79 28 20 31 34 | 8),.24.=>.array(2,8)),.array(.14 |
7d880 | 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 | .=>.array(2,9),.18.=>.array(2,9) |
7d8a0 | 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 39 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 | ,.22.=>.array(2,9),.24.=>.array( |
7d8c0 | 32 2c 39 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 2c | 2,9)),.array(.14.=>.array(2,10), |
7d8e0 | 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 | .18.=>.array(2,10),.22.=>.array( |
7d900 | 32 2c 31 30 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 30 29 29 2c 20 61 72 72 61 79 | 2,10),.24.=>.array(2,10)),.array |
7d920 | 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 | (.14.=>.array(2,11),.18.=>.array |
7d940 | 28 32 2c 31 31 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 31 29 2c 20 32 34 20 3d 3e | (2,11),.22.=>.array(2,11),.24.=> |
7d960 | 20 61 72 72 61 79 28 32 2c 31 31 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 | .array(2,11)),.array(.14.=>.arra |
7d980 | 79 28 32 2c 31 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 2c 20 32 32 20 3d | y(2,12),.18.=>.array(2,12),.22.= |
7d9a0 | 3e 20 61 72 72 61 79 28 32 2c 31 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 32 29 | >.array(2,12),.24.=>.array(2,12) |
7d9c0 | 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 31 38 20 3d | ),.array(.14.=>.array(2,3),.18.= |
7d9e0 | 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 2c 20 | >.array(2,3),.22.=>.array(2,3),. |
7da00 | 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 33 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 | 24.=>.array(2,3)),.array(.14.=>. |
7da20 | 61 72 72 61 79 28 32 2c 34 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 2c 20 32 32 | array(2,4),.18.=>.array(2,4),.22 |
7da40 | 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 34 29 | .=>.array(2,4),.24.=>.array(2,4) |
7da60 | 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 31 38 20 3d | ),.array(.14.=>.array(2,5),.18.= |
7da80 | 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 2c 20 | >.array(2,5),.22.=>.array(2,5),. |
7daa0 | 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 35 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 | 24.=>.array(2,5)),.array(.14.=>. |
7dac0 | 61 72 72 61 79 28 32 2c 31 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 32 31 | array(2,1),.18.=>.array(2,1),.21 |
7dae0 | 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 | .=>.array(2,1),.22.=>.array(2,1) |
7db00 | 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d | ,.24.=>.array(2,1)),.array(.14.= |
7db20 | 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 | >.array(2,2),.18.=>.array(2,2),. |
7db40 | 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c | 22.=>.array(2,2),.24.=>.array(2, |
7db60 | 32 29 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 32 30 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 | 2)),.array(.3.=>.20,.4.=>.array( |
7db80 | 31 2c 31 32 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 37 29 2c 20 31 39 20 3d 3e 20 | 1,12),.18.=>.array(1,17),.19.=>. |
7dba0 | 31 38 2c 20 32 30 20 3d 3e 20 31 39 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 | 18,.20.=>.19.),.array(.3.=>.5,.4 |
7dbc0 | 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 | .=>.array(1,12),.5.=>.6,.6.=>.ar |
7dbe0 | 72 61 79 28 31 2c 31 33 29 2c 20 37 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 28 31 2c | ray(1,13),.7.=>.3,.8.=>.array(1, |
7dc00 | 39 29 2c 20 39 20 3d 3e 20 34 2c 20 31 30 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 2c 20 31 | 9),.9.=>.4,.10.=>.array(1,10),.1 |
7dc20 | 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 32 33 2c 20 31 35 20 3d | 1.=>.array(1,11),.13.=>.23,.15.= |
7dc40 | 3e 20 37 2c 20 31 36 20 3d 3e 20 38 2c 20 31 37 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c | >.7,.16.=>.8,.17.=>.array(1,14), |
7dc60 | 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 35 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 | .23.=>.array(1,15),.24.=>.array( |
7dc80 | 31 2c 32 31 29 2c 20 32 35 20 3d 3e 20 32 32 20 29 2c 20 61 72 72 61 79 28 20 31 20 3d 3e 20 61 | 1,21),.25.=>.22.),.array(.1.=>.a |
7dca0 | 72 72 61 79 28 32 2c 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 | rray(2,6)),.array(.14.=>.array(2 |
7dcc0 | 2c 31 33 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 2c 20 32 32 20 3d 3e 20 61 | ,13),.18.=>.array(2,13),.22.=>.a |
7dce0 | 72 72 61 79 28 32 2c 31 33 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 33 29 29 2c 20 | rray(2,13),.24.=>.array(2,13)),. |
7dd00 | 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 34 29 2c 20 32 32 20 3d 3e 20 | array(.18.=>.array(1,24),.22.=>. |
7dd20 | 61 72 72 61 79 28 31 2c 32 35 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 | array(1,25)),.array(.18.=>.array |
7dd40 | 28 32 2c 31 36 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 36 29 29 2c 20 61 72 72 61 | (2,16),.22.=>.array(2,16)),.arra |
7dd60 | 79 28 20 32 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 36 29 29 2c 20 61 72 72 61 79 28 20 31 34 | y(.21.=>.array(1,26)),.array(.14 |
7dd80 | 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 | .=>.array(2,18),.18.=>.array(2,1 |
7dda0 | 38 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 | 8),.22.=>.array(2,18),.24.=>.arr |
7ddc0 | 61 79 28 32 2c 31 38 29 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 31 2c | ay(2,18)),.array(.22.=>.array(1, |
7dde0 | 32 38 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 32 37 29 29 2c 20 61 72 72 61 79 28 20 | 28),.24.=>.array(1,27)),.array(. |
7de00 | 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 30 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 | 22.=>.array(2,20),.24.=>.array(2 |
7de20 | 2c 32 30 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 2c | ,20)),.array(.14.=>.array(2,14), |
7de40 | 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 | .18.=>.array(2,14),.22.=>.array( |
7de60 | 32 2c 31 34 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 34 29 29 2c 20 61 72 72 61 79 | 2,14),.24.=>.array(2,14)),.array |
7de80 | 28 20 33 20 3d 3e 20 32 30 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 29 2c 20 32 30 20 | (.3.=>.20,.4.=>.array(1,12),.20. |
7dea0 | 3d 3e 20 32 39 20 29 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 72 72 | =>.29.),.array(.3.=>.5,.4.=>.arr |
7dec0 | 61 79 28 31 2c 31 32 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 | ay(1,12),.5.=>.6,.6.=>.array(1,1 |
7dee0 | 33 29 2c 20 37 20 3d 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 39 29 2c 20 39 20 3d | 3),.7.=>.3,.8.=>.array(1,9),.9.= |
7df00 | 3e 20 34 2c 20 31 30 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 61 72 | >.4,.10.=>.array(1,10),.11.=>.ar |
7df20 | 72 61 79 28 31 2c 31 31 29 2c 20 31 33 20 3d 3e 20 33 30 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 | ray(1,11),.13.=>.30,.15.=>.7,.16 |
7df40 | 20 3d 3e 20 38 2c 20 31 37 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 | .=>.8,.17.=>.array(1,14),.23.=>. |
7df60 | 61 72 72 61 79 28 31 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 31 34 20 3d 3e 20 61 72 72 61 79 | array(1,15)),.array(.14.=>.array |
7df80 | 28 32 2c 31 39 29 2c 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 2c 20 32 32 20 3d 3e | (2,19),.18.=>.array(2,19),.22.=> |
7dfa0 | 20 61 72 72 61 79 28 32 2c 31 39 29 2c 20 32 34 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 39 29 29 | .array(2,19),.24.=>.array(2,19)) |
7dfc0 | 2c 20 61 72 72 61 79 28 20 33 20 3d 3e 20 35 2c 20 34 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 32 | ,.array(.3.=>.5,.4.=>.array(1,12 |
7dfe0 | 29 2c 20 35 20 3d 3e 20 36 2c 20 36 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 33 29 2c 20 37 20 3d | ),.5.=>.6,.6.=>.array(1,13),.7.= |
7e000 | 3e 20 33 2c 20 38 20 3d 3e 20 61 72 72 61 79 28 31 2c 39 29 2c 20 39 20 3d 3e 20 34 2c 20 31 30 | >.3,.8.=>.array(1,9),.9.=>.4,.10 |
7e020 | 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 30 29 2c 20 31 31 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 | .=>.array(1,10),.11.=>.array(1,1 |
7e040 | 31 29 2c 20 31 33 20 3d 3e 20 33 31 2c 20 31 35 20 3d 3e 20 37 2c 20 31 36 20 3d 3e 20 38 2c 20 | 1),.13.=>.31,.15.=>.7,.16.=>.8,. |
7e060 | 31 37 20 3d 3e 20 61 72 72 61 79 28 31 2c 31 34 29 2c 20 32 33 20 3d 3e 20 61 72 72 61 79 28 31 | 17.=>.array(1,14),.23.=>.array(1 |
7e080 | 2c 31 35 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 37 29 2c | ,15)),.array(.18.=>.array(2,17), |
7e0a0 | 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 37 29 29 2c 20 61 72 72 61 79 28 20 31 38 20 3d | .22.=>.array(2,17)),.array(.18.= |
7e0c0 | 3e 20 61 72 72 61 79 28 32 2c 31 35 29 2c 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 31 35 29 | >.array(2,15),.22.=>.array(2,15) |
7e0e0 | 29 2c 20 61 72 72 61 79 28 20 32 32 20 3d 3e 20 61 72 72 61 79 28 32 2c 32 31 29 2c 20 32 34 20 | ),.array(.22.=>.array(2,21),.24. |
7e100 | 3d 3e 20 61 72 72 61 79 28 32 2c 32 31 29 29 2c 0a 29 3b 0a 0a 70 72 69 76 61 74 65 20 24 64 65 | =>.array(2,21)),.);..private.$de |
7e120 | 66 61 75 6c 74 41 63 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a 31 36 20 3d 3e 20 61 72 72 61 | faultActions.=.array(.16.=>.arra |
7e140 | 79 28 32 2c 20 36 29 0a 29 3b 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 | y(2,.6).);......public.function. |
7e160 | 6c 69 6e 74 28 24 69 6e 70 75 74 29 0a 7b 0a 74 72 79 20 7b 0a 24 74 68 69 73 2d 3e 70 61 72 73 | lint($input).{.try.{.$this->pars |
7e180 | 65 28 24 69 6e 70 75 74 29 3b 0a 7d 20 63 61 74 63 68 20 28 50 61 72 73 69 6e 67 45 78 63 65 70 | e($input);.}.catch.(ParsingExcep |
7e1a0 | 74 69 6f 6e 20 24 65 29 20 7b 0a 72 65 74 75 72 6e 20 24 65 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a | tion.$e).{.return.$e;.}.}....... |
7e1c0 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 28 24 69 6e 70 75 74 29 0a 7b 0a | public.function.parse($input).{. |
7e1e0 | 24 74 68 69 73 2d 3e 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 30 29 3b 0a 24 74 68 69 73 2d 3e | $this->stack.=.array(0);.$this-> |
7e200 | 76 73 74 61 63 6b 20 3d 20 61 72 72 61 79 28 6e 75 6c 6c 29 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 | vstack.=.array(null);.$this->lst |
7e220 | 61 63 6b 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 24 79 79 74 65 78 74 20 3d 20 27 27 3b 0a 24 79 | ack.=.array();..$yytext.=.'';.$y |
7e240 | 79 6c 69 6e 65 6e 6f 20 3d 20 30 3b 0a 24 79 79 6c 65 6e 67 20 3d 20 30 3b 0a 24 72 65 63 6f 76 | ylineno.=.0;.$yyleng.=.0;.$recov |
7e260 | 65 72 69 6e 67 20 3d 20 30 3b 0a 24 54 45 52 52 4f 52 20 3d 20 32 3b 0a 24 45 4f 46 20 3d 20 31 | ering.=.0;.$TERROR.=.2;.$EOF.=.1 |
7e280 | 3b 0a 0a 24 74 68 69 73 2d 3e 6c 65 78 65 72 20 3d 20 6e 65 77 20 4c 65 78 65 72 28 29 3b 0a 24 | ;..$this->lexer.=.new.Lexer();.$ |
7e2a0 | 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 29 3b 0a 0a | this->lexer->setInput($input);.. |
7e2c0 | 24 79 79 6c 6f 63 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 | $yyloc.=.$this->lexer->yylloc;.$ |
7e2e0 | 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 5d 20 3d 20 24 79 79 6c 6f 63 3b 0a 0a 24 73 79 6d 62 6f | this->lstack[].=.$yyloc;..$symbo |
7e300 | 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 20 3d 20 6e 75 6c 6c | l.=.null;.$preErrorSymbol.=.null |
7e320 | 3b 0a 24 73 74 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 61 63 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b | ;.$state.=.null;.$action.=.null; |
7e340 | 0a 24 61 20 3d 20 6e 75 6c 6c 3b 0a 24 72 20 3d 20 6e 75 6c 6c 3b 0a 24 79 79 76 61 6c 20 3d 20 | .$a.=.null;.$r.=.null;.$yyval.=. |
7e360 | 6e 65 77 20 73 74 64 43 6c 61 73 73 3b 0a 24 70 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 65 6e 20 3d 20 | new.stdClass;.$p.=.null;.$len.=. |
7e380 | 6e 75 6c 6c 3b 0a 24 6e 65 77 53 74 61 74 65 20 3d 20 6e 75 6c 6c 3b 0a 24 65 78 70 65 63 74 65 | null;.$newState.=.null;.$expecte |
7e3a0 | 64 20 3d 20 6e 75 6c 6c 3b 0a 24 65 72 72 53 74 72 20 3d 20 6e 75 6c 6c 3b 0a 0a 77 68 69 6c 65 | d.=.null;.$errStr.=.null;..while |
7e3c0 | 20 28 74 72 75 65 29 20 7b 0a 0a 20 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 63 | .(true).{...$state.=.$this->stac |
7e3e0 | 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 0a 0a 20 69 66 20 | k[count($this->stack)-1];....if. |
7e400 | 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 64 65 66 61 75 6c 74 41 63 74 69 6f 6e 73 5b 24 73 74 | (isset($this->defaultActions[$st |
7e420 | 61 74 65 5d 29 29 20 7b 0a 24 61 63 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 64 65 66 61 75 6c | ate])).{.$action.=.$this->defaul |
7e440 | 74 41 63 74 69 6f 6e 73 5b 24 73 74 61 74 65 5d 3b 0a 7d 20 65 6c 73 65 20 7b 0a 69 66 20 28 24 | tActions[$state];.}.else.{.if.($ |
7e460 | 73 79 6d 62 6f 6c 20 3d 3d 20 6e 75 6c 6c 29 20 7b 0a 24 73 79 6d 62 6f 6c 20 3d 20 24 74 68 69 | symbol.==.null).{.$symbol.=.$thi |
7e480 | 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 20 24 61 63 74 69 6f 6e 20 3d 20 69 73 73 65 74 28 24 74 | s->lex();.}...$action.=.isset($t |
7e4a0 | 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d 29 20 3f 20 24 | his->table[$state][$symbol]).?.$ |
7e4c0 | 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 73 79 6d 62 6f 6c 5d 20 3a 20 66 | this->table[$state][$symbol].:.f |
7e4e0 | 61 6c 73 65 3b 0a 7d 0a 0a 0a 20 69 66 20 28 21 24 61 63 74 69 6f 6e 20 7c 7c 20 21 24 61 63 74 | alse;.}....if.(!$action.||.!$act |
7e500 | 69 6f 6e 5b 30 5d 29 20 7b 0a 69 66 20 28 21 24 72 65 63 6f 76 65 72 69 6e 67 29 20 7b 0a 0a 20 | ion[0]).{.if.(!$recovering).{... |
7e520 | 24 65 78 70 65 63 74 65 64 20 3d 20 61 72 72 61 79 28 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 | $expected.=.array();.foreach.($t |
7e540 | 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 20 61 73 20 24 70 20 3d 3e 20 24 69 67 6e | his->table[$state].as.$p.=>.$ign |
7e560 | 6f 72 65 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c | ore).{.if.(isset($this->terminal |
7e580 | 73 5f 5b 24 70 5d 29 20 26 26 20 24 70 20 3e 20 32 29 20 7b 0a 24 65 78 70 65 63 74 65 64 5b 5d | s_[$p]).&&.$p.>.2).{.$expected[] |
7e5a0 | 20 3d 20 22 27 22 20 2e 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 70 5d 20 2e | .=."'"...$this->terminals_[$p].. |
7e5c0 | 20 22 27 22 3b 0a 7d 0a 7d 0a 0a 24 65 72 72 53 74 72 20 3d 20 27 50 61 72 73 65 20 65 72 72 6f | ."'";.}.}..$errStr.=.'Parse.erro |
7e5e0 | 72 20 6f 6e 20 6c 69 6e 65 20 27 20 2e 20 28 24 79 79 6c 69 6e 65 6e 6f 2b 31 29 20 2e 20 22 3a | r.on.line.'...($yylineno+1)...": |
7e600 | 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 73 68 6f 77 50 6f 73 69 74 69 6f 6e | \n"...$this->lexer->showPosition |
7e620 | 28 29 20 2e 20 22 5c 6e 45 78 70 65 63 74 65 64 20 6f 6e 65 20 6f 66 3a 20 22 20 2e 20 69 6d 70 | ()..."\nExpected.one.of:."...imp |
7e640 | 6c 6f 64 65 28 27 2c 20 27 2c 20 24 65 78 70 65 63 74 65 64 29 3b 0a 24 74 68 69 73 2d 3e 70 61 | lode(',.',.$expected);.$this->pa |
7e660 | 72 73 65 45 72 72 6f 72 28 24 65 72 72 53 74 72 2c 20 61 72 72 61 79 28 0a 27 74 65 78 74 27 20 | rseError($errStr,.array(.'text'. |
7e680 | 3d 3e 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 6d 61 74 63 68 2c 0a 27 74 6f 6b 65 6e 27 20 | =>.$this->lexer->match,.'token'. |
7e6a0 | 3d 3e 20 21 65 6d 70 74 79 28 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 73 79 6d | =>.!empty($this->terminals_[$sym |
7e6c0 | 62 6f 6c 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 65 72 6d 69 6e 61 6c 73 5f 5b 24 73 79 6d 62 6f | bol]).?.$this->terminals_[$symbo |
7e6e0 | 6c 5d 20 3a 20 24 73 79 6d 62 6f 6c 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c | l].:.$symbol,.'line'.=>.$this->l |
7e700 | 65 78 65 72 2d 3e 79 79 6c 69 6e 65 6e 6f 2c 0a 27 6c 6f 63 27 20 3d 3e 20 24 79 79 6c 6f 63 2c | exer->yylineno,.'loc'.=>.$yyloc, |
7e720 | 0a 27 65 78 70 65 63 74 65 64 27 20 3d 3e 20 24 65 78 70 65 63 74 65 64 2c 0a 29 29 3b 0a 7d 0a | .'expected'.=>.$expected,.));.}. |
7e740 | 0a 0a 20 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e 67 20 3d 3d 20 33 29 20 7b 0a 69 66 20 28 24 | ...if.($recovering.==.3).{.if.($ |
7e760 | 73 79 6d 62 6f 6c 20 3d 3d 20 24 45 4f 46 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 61 72 73 | symbol.==.$EOF).{.throw.new.Pars |
7e780 | 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 20 3f 3a 20 27 50 61 72 73 69 6e 67 | ingException($errStr.?:.'Parsing |
7e7a0 | 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a 0a 0a 20 24 79 79 6c 65 6e 67 20 3d 20 24 74 68 69 73 | .halted.');.}....$yyleng.=.$this |
7e7c0 | 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 65 6e 67 3b 0a 24 79 79 74 65 78 74 20 3d 20 24 74 68 69 73 | ->lexer->yyleng;.$yytext.=.$this |
7e7e0 | 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a 24 79 79 6c 69 6e 65 6e 6f 20 3d 20 24 74 68 | ->lexer->yytext;.$yylineno.=.$th |
7e800 | 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 69 6e 65 6e 6f 3b 0a 24 79 79 6c 6f 63 20 3d 20 24 74 | is->lexer->yylineno;.$yyloc.=.$t |
7e820 | 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 73 79 6d 62 6f 6c 20 3d 20 24 74 | his->lexer->yylloc;.$symbol.=.$t |
7e840 | 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 0a 20 77 68 69 6c 65 20 28 74 72 75 65 29 20 7b 0a | his->lex();.}....while.(true).{. |
7e860 | 0a 20 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 54 45 52 52 4f 52 2c 20 | ..if.(array_key_exists($TERROR,. |
7e880 | 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 29 29 20 7b 0a 62 72 65 61 6b 3b 0a | $this->table[$state])).{.break;. |
7e8a0 | 7d 0a 69 66 20 28 24 73 74 61 74 65 20 3d 3d 20 30 29 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 | }.if.($state.==.0).{.throw.new.P |
7e8c0 | 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 65 72 72 53 74 72 20 3f 3a 20 27 50 61 72 73 | arsingException($errStr.?:.'Pars |
7e8e0 | 69 6e 67 20 68 61 6c 74 65 64 2e 27 29 3b 0a 7d 0a 24 74 68 69 73 2d 3e 70 6f 70 53 74 61 63 6b | ing.halted.');.}.$this->popStack |
7e900 | 28 31 29 3b 0a 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e 74 | (1);.$state.=.$this->stack[count |
7e920 | 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 7d 0a 0a 24 70 72 65 45 72 72 6f 72 53 | ($this->stack)-1];.}..$preErrorS |
7e940 | 79 6d 62 6f 6c 20 3d 20 24 73 79 6d 62 6f 6c 3b 20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 24 54 45 | ymbol.=.$symbol;...$symbol.=.$TE |
7e960 | 52 52 4f 52 3b 20 0a 20 24 73 74 61 74 65 20 3d 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f | RROR;...$state.=.$this->stack[co |
7e980 | 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 3b 0a 24 61 63 74 69 6f 6e 20 3d 20 | unt($this->stack)-1];.$action.=. |
7e9a0 | 69 73 73 65 74 28 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 54 45 52 52 | isset($this->table[$state][$TERR |
7e9c0 | 4f 52 5d 29 20 3f 20 24 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 73 74 61 74 65 5d 5b 24 54 45 52 | OR]).?.$this->table[$state][$TER |
7e9e0 | 52 4f 52 5d 20 3a 20 66 61 6c 73 65 3b 0a 24 72 65 63 6f 76 65 72 69 6e 67 20 3d 20 33 3b 20 0a | ROR].:.false;.$recovering.=.3;.. |
7ea00 | 20 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 61 63 74 69 6f 6e 5b 30 5d 29 20 26 | .}....if.(is_array($action[0]).& |
7ea20 | 26 20 63 6f 75 6e 74 28 24 61 63 74 69 6f 6e 29 20 3e 20 31 29 20 7b 0a 74 68 72 6f 77 20 6e 65 | &.count($action).>.1).{.throw.ne |
7ea40 | 77 20 50 61 72 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 27 50 61 72 73 65 20 45 72 72 6f 72 3a | w.ParsingException('Parse.Error: |
7ea60 | 20 6d 75 6c 74 69 70 6c 65 20 61 63 74 69 6f 6e 73 20 70 6f 73 73 69 62 6c 65 20 61 74 20 73 74 | .multiple.actions.possible.at.st |
7ea80 | 61 74 65 3a 20 27 20 2e 20 24 73 74 61 74 65 20 2e 20 27 2c 20 74 6f 6b 65 6e 3a 20 27 20 2e 20 | ate:.'...$state...',.token:.'... |
7eaa0 | 24 73 79 6d 62 6f 6c 29 3b 0a 7d 0a 0a 73 77 69 74 63 68 20 28 24 61 63 74 69 6f 6e 5b 30 5d 29 | $symbol);.}..switch.($action[0]) |
7eac0 | 20 7b 0a 63 61 73 65 20 31 3a 20 0a 20 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 73 | .{.case.1:...$this->stack[].=.$s |
7eae0 | 79 6d 62 6f 6c 3b 0a 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e | ymbol;.$this->vstack[].=.$this-> |
7eb00 | 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 5d 20 3d | lexer->yytext;.$this->lstack[].= |
7eb20 | 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f 63 3b 0a 24 74 68 69 73 2d 3e 73 74 | .$this->lexer->yylloc;.$this->st |
7eb40 | 61 63 6b 5b 5d 20 3d 20 24 61 63 74 69 6f 6e 5b 31 5d 3b 20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 | ack[].=.$action[1];...$symbol.=. |
7eb60 | 6e 75 6c 6c 3b 0a 69 66 20 28 21 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 29 20 7b 20 0a 20 | null;.if.(!$preErrorSymbol).{... |
7eb80 | 24 79 79 6c 65 6e 67 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 65 6e 67 3b 0a | $yyleng.=.$this->lexer->yyleng;. |
7eba0 | 24 79 79 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 74 65 78 74 3b 0a | $yytext.=.$this->lexer->yytext;. |
7ebc0 | 24 79 79 6c 69 6e 65 6e 6f 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 69 6e 65 | $yylineno.=.$this->lexer->yyline |
7ebe0 | 6e 6f 3b 0a 24 79 79 6c 6f 63 20 3d 20 24 74 68 69 73 2d 3e 6c 65 78 65 72 2d 3e 79 79 6c 6c 6f | no;.$yyloc.=.$this->lexer->yyllo |
7ec00 | 63 3b 0a 69 66 20 28 24 72 65 63 6f 76 65 72 69 6e 67 20 3e 20 30 29 20 7b 0a 24 72 65 63 6f 76 | c;.if.($recovering.>.0).{.$recov |
7ec20 | 65 72 69 6e 67 2d 2d 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 20 0a 20 24 73 79 6d 62 6f 6c 20 3d 20 | ering--;.}.}.else.{...$symbol.=. |
7ec40 | 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c 3b 0a 24 70 72 65 45 72 72 6f 72 53 79 6d 62 6f 6c | $preErrorSymbol;.$preErrorSymbol |
7ec60 | 20 3d 20 6e 75 6c 6c 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 32 3a 20 0a 20 24 6c 65 | .=.null;.}.break;..case.2:...$le |
7ec80 | 6e 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 64 75 63 74 69 6f 6e 73 5f 5b 24 61 63 74 69 6f 6e 5b | n.=.$this->productions_[$action[ |
7eca0 | 31 5d 5d 5b 31 5d 3b 0a 0a 0a 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 | 1]][1];....$yyval->token.=.$this |
7ecc0 | 2d 3e 76 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 29 20 2d 20 | ->vstack[count($this->vstack).-. |
7ece0 | 24 6c 65 6e 5d 3b 20 0a 20 0a 20 24 79 79 76 61 6c 2d 3e 73 74 6f 72 65 20 3d 20 61 72 72 61 79 | $len];.....$yyval->store.=.array |
7ed00 | 28 20 0a 20 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 | (...'first_line'.=>.$this->lstac |
7ed20 | 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 28 24 6c 65 6e 20 3f | k[count($this->lstack).-.($len.? |
7ed40 | 3a 20 31 29 5d 5b 27 66 69 72 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 6c 61 73 74 5f 6c 69 6e 65 27 | :.1)]['first_line'],.'last_line' |
7ed60 | 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c | .=>.$this->lstack[count($this->l |
7ed80 | 73 74 61 63 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 66 69 72 73 74 | stack).-.1]['last_line'],.'first |
7eda0 | 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 | _column'.=>.$this->lstack[count( |
7edc0 | 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 29 20 2d 20 28 24 6c 65 6e 20 3f 3a 20 31 29 5d 5b 27 66 | $this->lstack).-.($len.?:.1)]['f |
7ede0 | 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 5d 2c 0a 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 | irst_column'],.'last_column'.=>. |
7ee00 | 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 6c 73 74 61 63 | $this->lstack[count($this->lstac |
7ee20 | 6b 29 20 2d 20 31 5d 5b 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 5d 2c 0a 29 3b 0a 24 72 20 3d 20 | k).-.1]['last_column'],.);.$r.=. |
7ee40 | 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 6d 41 63 74 69 6f 6e 28 24 79 79 76 61 6c 2c 20 24 79 79 | $this->performAction($yyval,.$yy |
7ee60 | 74 65 78 74 2c 20 24 79 79 6c 65 6e 67 2c 20 24 79 79 6c 69 6e 65 6e 6f 2c 20 24 61 63 74 69 6f | text,.$yyleng,.$yylineno,.$actio |
7ee80 | 6e 5b 31 5d 2c 20 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 2c 20 24 74 68 69 73 2d 3e 6c 73 74 61 | n[1],.$this->vstack,.$this->lsta |
7eea0 | 63 6b 29 3b 0a 0a 69 66 20 28 21 24 72 20 69 6e 73 74 61 6e 63 65 6f 66 20 55 6e 64 65 66 69 6e | ck);..if.(!$r.instanceof.Undefin |
7eec0 | 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 0a 69 66 20 28 24 6c 65 6e 29 20 7b 0a | ed).{.return.$r;.}..if.($len).{. |
7eee0 | 24 74 68 69 73 2d 3e 70 6f 70 53 74 61 63 6b 28 24 6c 65 6e 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d | $this->popStack($len);.}..$this- |
7ef00 | 3e 73 74 61 63 6b 5b 5d 20 3d 20 24 74 68 69 73 2d 3e 70 72 6f 64 75 63 74 69 6f 6e 73 5f 5b 24 | >stack[].=.$this->productions_[$ |
7ef20 | 61 63 74 69 6f 6e 5b 31 5d 5d 5b 30 5d 3b 20 0a 20 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 5b 5d | action[1]][0];...$this->vstack[] |
7ef40 | 20 3d 20 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 3b 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 5b | .=.$yyval->token;.$this->lstack[ |
7ef60 | 5d 20 3d 20 24 79 79 76 61 6c 2d 3e 73 74 6f 72 65 3b 0a 24 6e 65 77 53 74 61 74 65 20 3d 20 24 | ].=.$yyval->store;.$newState.=.$ |
7ef80 | 74 68 69 73 2d 3e 74 61 62 6c 65 5b 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f 75 6e 74 28 24 | this->table[$this->stack[count($ |
7efa0 | 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 32 5d 5d 5b 24 74 68 69 73 2d 3e 73 74 61 63 6b 5b 63 6f | this->stack)-2]][$this->stack[co |
7efc0 | 75 6e 74 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 29 2d 31 5d 5d 3b 0a 24 74 68 69 73 2d 3e 73 74 | unt($this->stack)-1]];.$this->st |
7efe0 | 61 63 6b 5b 5d 20 3d 20 24 6e 65 77 53 74 61 74 65 3b 0a 62 72 65 61 6b 3b 0a 0a 63 61 73 65 20 | ack[].=.$newState;.break;..case. |
7f000 | 33 3a 20 0a 20 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 72 65 74 75 72 6e 20 74 72 75 | 3:...return.true;.}.}.return.tru |
7f020 | 65 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 45 72 | e;.}..protected.function.parseEr |
7f040 | 72 6f 72 28 24 73 74 72 2c 20 24 68 61 73 68 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 50 61 72 | ror($str,.$hash).{.throw.new.Par |
7f060 | 73 69 6e 67 45 78 63 65 70 74 69 6f 6e 28 24 73 74 72 2c 20 24 68 61 73 68 29 3b 0a 7d 0a 0a 0a | singException($str,.$hash);.}... |
7f080 | 20 0a 20 0a 20 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 66 6f 72 6d 41 63 74 | .....private.function.performAct |
7f0a0 | 69 6f 6e 28 73 74 64 43 6c 61 73 73 20 24 79 79 76 61 6c 2c 20 24 79 79 74 65 78 74 2c 20 24 79 | ion(stdClass.$yyval,.$yytext,.$y |
7f0c0 | 79 6c 65 6e 67 2c 20 24 79 79 6c 69 6e 65 6e 6f 2c 20 24 79 79 73 74 61 74 65 2c 20 26 24 74 6f | yleng,.$yylineno,.$yystate,.&$to |
7f0e0 | 6b 65 6e 73 29 20 7b 0a 0a 20 24 6c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 74 6f 6b 65 6e 73 29 20 | kens).{...$len.=.count($tokens). |
7f100 | 2d 20 31 3b 0a 73 77 69 74 63 68 20 28 24 79 79 73 74 61 74 65 29 20 7b 0a 63 61 73 65 20 31 3a | -.1;.switch.($yystate).{.case.1: |
7f120 | 0a 24 79 79 74 65 78 74 20 3d 70 72 65 67 5f 72 65 70 6c 61 63 65 5f 63 61 6c 6c 62 61 63 6b 28 | .$yytext.=preg_replace_callback( |
7f140 | 27 7b 28 3f 3a 5c 5c 5c 5c 5b 22 62 66 6e 72 74 2f 5c 5c 5c 5c 5d 7c 5c 5c 5c 5c 75 5b 61 2d 66 | '{(?:\\\\["bfnrt/\\\\]|\\\\u[a-f |
7f160 | 41 2d 46 30 2d 39 5d 7b 34 7d 29 7d 27 2c 20 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 73 74 72 | A-F0-9]{4})}',.array($this,.'str |
7f180 | 69 6e 67 49 6e 74 65 72 70 6f 6c 61 74 69 6f 6e 27 29 2c 20 24 79 79 74 65 78 74 29 3b 0a 24 79 | ingInterpolation'),.$yytext);.$y |
7f1a0 | 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 79 79 74 65 78 74 3b 0a 62 72 65 61 6b 3b 0a 63 61 | yval->token.=.$yytext;.break;.ca |
7f1c0 | 73 65 20 32 3a 0a 69 66 20 28 73 74 72 70 6f 73 28 24 79 79 74 65 78 74 2c 20 27 65 27 29 20 21 | se.2:.if.(strpos($yytext,.'e').! |
7f1e0 | 3d 3d 20 66 61 6c 73 65 20 7c 7c 20 73 74 72 70 6f 73 28 24 79 79 74 65 78 74 2c 20 27 45 27 29 | ==.false.||.strpos($yytext,.'E') |
7f200 | 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 66 6c | .!==.false).{.$yyval->token.=.fl |
7f220 | 6f 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 79 79 76 61 6c | oatval($yytext);.}.else.{.$yyval |
7f240 | 2d 3e 74 6f 6b 65 6e 20 3d 20 73 74 72 70 6f 73 28 24 79 79 74 65 78 74 2c 20 27 2e 27 29 20 3d | ->token.=.strpos($yytext,.'.').= |
7f260 | 3d 3d 20 66 61 6c 73 65 20 3f 20 69 6e 74 76 61 6c 28 24 79 79 74 65 78 74 29 20 3a 20 66 6c 6f | ==.false.?.intval($yytext).:.flo |
7f280 | 61 74 76 61 6c 28 24 79 79 74 65 78 74 29 3b 0a 7d 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 33 3a | atval($yytext);.}.break;.case.3: |
7f2a0 | 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 3b 0a 62 72 65 61 6b 3b 0a 63 61 | .$yyval->token.=.null;.break;.ca |
7f2c0 | 73 65 20 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 | se.4:.$yyval->token.=.true;.brea |
7f2e0 | 6b 3b 0a 63 61 73 65 20 35 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 66 61 6c 73 65 | k;.case.5:.$yyval->token.=.false |
7f300 | 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 36 3a 0a 72 65 74 75 72 6e 20 24 79 79 76 61 6c 2d 3e | ;.break;.case.6:.return.$yyval-> |
7f320 | 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a 63 61 73 65 20 31 33 | token.=.$tokens[$len-1];.case.13 |
7f340 | 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 65 77 20 73 74 64 43 6c 61 73 73 3b 0a | :.$yyval->token.=.new.stdClass;. |
7f360 | 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 34 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 | break;.case.14:.$yyval->token.=. |
7f380 | 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 35 3a | $tokens[$len-1];.break;.case.15: |
7f3a0 | 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 24 74 6f 6b 65 6e 73 5b 24 | .$yyval->token.=.array($tokens[$ |
7f3c0 | 6c 65 6e 2d 32 5d 2c 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 29 3b 0a 62 72 65 61 6b 3b 0a 63 | len-2],.$tokens[$len]);.break;.c |
7f3e0 | 61 73 65 20 31 36 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 6e 65 77 20 73 74 64 43 | ase.16:.$yyval->token.=.new.stdC |
7f400 | 6c 61 73 73 3b 0a 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b | lass;.$property.=.$tokens[$len][ |
7f420 | 30 5d 20 3d 3d 3d 20 27 27 20 3f 20 27 5f 65 6d 70 74 79 5f 27 20 3a 20 24 74 6f 6b 65 6e 73 5b | 0].===.''.?.'_empty_'.:.$tokens[ |
7f440 | 24 6c 65 6e 5d 5b 30 5d 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 2d 3e 24 70 72 6f 70 65 72 | $len][0];.$yyval->token->$proper |
7f460 | 74 79 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a 62 72 65 61 6b 3b 0a 63 61 | ty.=.$tokens[$len][1];.break;.ca |
7f480 | 73 65 20 31 37 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 | se.17:.$yyval->token.=.$tokens[$ |
7f4a0 | 6c 65 6e 2d 32 5d 3b 0a 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 2d 3e 7b 24 74 6f 6b 65 6e | len-2];.$tokens[$len-2]->{$token |
7f4c0 | 73 5b 24 6c 65 6e 5d 5b 30 5d 7d 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 5b 31 5d 3b 0a | s[$len][0]}.=.$tokens[$len][1];. |
7f4e0 | 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 38 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 | break;.case.18:.$yyval->token.=. |
7f500 | 61 72 72 61 79 28 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 31 39 3a 0a 24 79 79 76 61 6c 2d | array();.break;.case.19:.$yyval- |
7f520 | 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 31 5d 3b 0a 62 72 65 61 6b 3b | >token.=.$tokens[$len-1];.break; |
7f540 | 0a 63 61 73 65 20 32 30 3a 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 61 72 72 61 79 28 | .case.20:.$yyval->token.=.array( |
7f560 | 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 5d 29 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 31 3a 0a | $tokens[$len]);.break;.case.21:. |
7f580 | 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d 32 5d 5b 5d 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e | $tokens[$len-2][].=.$tokens[$len |
7f5a0 | 5d 3b 0a 24 79 79 76 61 6c 2d 3e 74 6f 6b 65 6e 20 3d 20 24 74 6f 6b 65 6e 73 5b 24 6c 65 6e 2d | ];.$yyval->token.=.$tokens[$len- |
7f5c0 | 32 5d 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 6e | 2];.break;.}..return.new.Undefin |
7f5e0 | 65 64 28 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 6e 67 | ed();.}..private.function.string |
7f600 | 49 6e 74 65 72 70 6f 6c 61 74 69 6f 6e 28 24 6d 61 74 63 68 29 0a 7b 0a 73 77 69 74 63 68 20 28 | Interpolation($match).{.switch.( |
7f620 | 24 6d 61 74 63 68 5b 30 5d 29 20 7b 0a 63 61 73 65 20 27 5c 5c 5c 5c 27 3a 0a 72 65 74 75 72 6e | $match[0]).{.case.'\\\\':.return |
7f640 | 20 27 5c 5c 27 3b 0a 63 61 73 65 20 27 5c 22 27 3a 0a 72 65 74 75 72 6e 20 27 22 27 3b 0a 63 61 | .'\\';.case.'\"':.return.'"';.ca |
7f660 | 73 65 20 27 5c 62 27 3a 0a 72 65 74 75 72 6e 20 63 68 72 28 38 29 3b 0a 63 61 73 65 20 27 5c 66 | se.'\b':.return.chr(8);.case.'\f |
7f680 | 27 3a 0a 72 65 74 75 72 6e 20 63 68 72 28 31 32 29 3b 0a 63 61 73 65 20 27 5c 6e 27 3a 0a 72 65 | ':.return.chr(12);.case.'\n':.re |
7f6a0 | 74 75 72 6e 20 22 5c 6e 22 3b 0a 63 61 73 65 20 27 5c 72 27 3a 0a 72 65 74 75 72 6e 20 22 5c 72 | turn."\n";.case.'\r':.return."\r |
7f6c0 | 22 3b 0a 63 61 73 65 20 27 5c 74 27 3a 0a 72 65 74 75 72 6e 20 22 5c 74 22 3b 0a 63 61 73 65 20 | ";.case.'\t':.return."\t";.case. |
7f6e0 | 27 5c 2f 27 3a 0a 72 65 74 75 72 6e 20 22 2f 22 3b 0a 64 65 66 61 75 6c 74 3a 0a 72 65 74 75 72 | '\/':.return."/";.default:.retur |
7f700 | 6e 20 68 74 6d 6c 5f 65 6e 74 69 74 79 5f 64 65 63 6f 64 65 28 27 26 23 78 27 2e 6c 74 72 69 6d | n.html_entity_decode('&#x'.ltrim |
7f720 | 28 73 75 62 73 74 72 28 24 6d 61 74 63 68 5b 30 5d 2c 20 32 29 2c 20 27 30 27 29 2e 27 3b 27 2c | (substr($match[0],.2),.'0').';', |
7f740 | 20 30 2c 20 27 55 54 46 2d 38 27 29 3b 0a 7d 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 | .0,.'UTF-8');.}.}..private.funct |
7f760 | 69 6f 6e 20 70 6f 70 53 74 61 63 6b 28 24 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e 73 74 61 63 6b 20 | ion.popStack($n).{.$this->stack. |
7f780 | 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 73 74 61 63 6b 2c 20 30 2c 20 2d | =.array_slice($this->stack,.0,.- |
7f7a0 | 20 28 32 20 2a 20 24 6e 29 29 3b 0a 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 20 3d 20 61 72 72 61 | .(2.*.$n));.$this->vstack.=.arra |
7f7c0 | 79 5f 73 6c 69 63 65 28 24 74 68 69 73 2d 3e 76 73 74 61 63 6b 2c 20 30 2c 20 2d 20 24 6e 29 3b | y_slice($this->vstack,.0,.-.$n); |
7f7e0 | 0a 24 74 68 69 73 2d 3e 6c 73 74 61 63 6b 20 3d 20 61 72 72 61 79 5f 73 6c 69 63 65 28 24 74 68 | .$this->lstack.=.array_slice($th |
7f800 | 69 73 2d 3e 6c 73 74 61 63 6b 2c 20 30 2c 20 2d 20 24 6e 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 | is->lstack,.0,.-.$n);.}..private |
7f820 | 20 66 75 6e 63 74 69 6f 6e 20 6c 65 78 28 29 0a 7b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 | .function.lex().{.$token.=.$this |
7f840 | 2d 3e 6c 65 78 65 72 2d 3e 6c 65 78 28 29 20 3f 3a 20 31 3b 20 0a 20 0a 20 69 66 20 28 21 69 73 | ->lexer->lex().?:.1;.....if.(!is |
7f860 | 5f 6e 75 6d 65 72 69 63 28 24 74 6f 6b 65 6e 29 29 20 7b 0a 24 74 6f 6b 65 6e 20 3d 20 69 73 73 | _numeric($token)).{.$token.=.iss |
7f880 | 65 74 28 24 74 68 69 73 2d 3e 73 79 6d 62 6f 6c 73 5b 24 74 6f 6b 65 6e 5d 29 20 3f 20 24 74 68 | et($this->symbols[$token]).?.$th |
7f8a0 | 69 73 2d 3e 73 79 6d 62 6f 6c 73 5b 24 74 6f 6b 65 6e 5d 20 3a 20 24 74 6f 6b 65 6e 3b 0a 7d 0a | is->symbols[$token].:.$token;.}. |
7f8c0 | 72 65 74 75 72 6e 20 24 74 6f 6b 65 6e 3b 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a | return.$token;.}.}.<?php........ |
7f8e0 | 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 0a 0a 0a | ...namespace.Seld\JsonLint;..... |
7f900 | 0a 0a 63 6c 61 73 73 20 4c 65 78 65 72 0a 7b 0a 70 72 69 76 61 74 65 20 24 45 4f 46 20 3d 20 31 | ..class.Lexer.{.private.$EOF.=.1 |
7f920 | 3b 0a 70 72 69 76 61 74 65 20 24 72 75 6c 65 73 20 3d 20 61 72 72 61 79 28 0a 30 20 3d 3e 20 27 | ;.private.$rules.=.array(.0.=>.' |
7f940 | 2f 5e 5c 73 2b 2f 27 2c 0a 31 20 3d 3e 20 27 2f 5e 2d 3f 28 5b 30 2d 39 5d 7c 5b 31 2d 39 5d 5b | /^\s+/',.1.=>.'/^-?([0-9]|[1-9][ |
7f960 | 30 2d 39 5d 2b 29 28 5c 2e 5b 30 2d 39 5d 2b 29 3f 28 5b 65 45 5d 5b 2b 2d 5d 3f 5b 30 2d 39 5d | 0-9]+)(\.[0-9]+)?([eE][+-]?[0-9] |
7f980 | 2b 29 3f 5c 62 2f 27 2c 0a 32 20 3d 3e 20 27 7b 5e 22 28 5c 5c 5c 5c 5b 22 62 66 6e 72 74 2f 5c | +)?\b/',.2.=>.'{^"(\\\\["bfnrt/\ |
7f9a0 | 5c 5c 5c 5d 7c 5c 5c 5c 5c 75 5b 61 2d 66 41 2d 46 30 2d 39 5d 7b 34 7d 7c 5b 5e 5c 30 2d 5c 78 | \\\]|\\\\u[a-fA-F0-9]{4}|[^\0-\x |
7f9c0 | 30 39 5c 78 30 61 2d 5c 78 31 66 5c 5c 5c 5c 22 5d 29 2a 22 7d 27 2c 0a 33 20 3d 3e 20 27 2f 5e | 09\x0a-\x1f\\\\"])*"}',.3.=>.'/^ |
7f9e0 | 5c 7b 2f 27 2c 0a 34 20 3d 3e 20 27 2f 5e 5c 7d 2f 27 2c 0a 35 20 3d 3e 20 27 2f 5e 5c 5b 2f 27 | \{/',.4.=>.'/^\}/',.5.=>.'/^\[/' |
7fa00 | 2c 0a 36 20 3d 3e 20 27 2f 5e 5c 5d 2f 27 2c 0a 37 20 3d 3e 20 27 2f 5e 2c 2f 27 2c 0a 38 20 3d | ,.6.=>.'/^\]/',.7.=>.'/^,/',.8.= |
7fa20 | 3e 20 27 2f 5e 3a 2f 27 2c 0a 39 20 3d 3e 20 27 2f 5e 74 72 75 65 5c 62 2f 27 2c 0a 31 30 20 3d | >.'/^:/',.9.=>.'/^true\b/',.10.= |
7fa40 | 3e 20 27 2f 5e 66 61 6c 73 65 5c 62 2f 27 2c 0a 31 31 20 3d 3e 20 27 2f 5e 6e 75 6c 6c 5c 62 2f | >.'/^false\b/',.11.=>.'/^null\b/ |
7fa60 | 27 2c 0a 31 32 20 3d 3e 20 27 2f 5e 24 2f 27 2c 0a 31 33 20 3d 3e 20 27 2f 5e 2e 2f 27 2c 0a 29 | ',.12.=>.'/^$/',.13.=>.'/^./',.) |
7fa80 | 3b 0a 0a 70 72 69 76 61 74 65 20 24 63 6f 6e 64 69 74 69 6f 6e 73 20 3d 20 61 72 72 61 79 28 0a | ;..private.$conditions.=.array(. |
7faa0 | 22 49 4e 49 54 49 41 4c 22 20 3d 3e 20 61 72 72 61 79 28 0a 22 72 75 6c 65 73 22 20 3d 3e 20 61 | "INITIAL".=>.array(."rules".=>.a |
7fac0 | 72 72 61 79 28 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 31 30 2c 31 31 2c 31 | rray(0,1,2,3,4,5,6,7,8,9,10,11,1 |
7fae0 | 32 2c 31 33 29 2c 0a 22 69 6e 63 6c 75 73 69 76 65 22 20 3d 3e 20 74 72 75 65 2c 0a 29 2c 0a 29 | 2,13),."inclusive".=>.true,.),.) |
7fb00 | 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 6c 65 78 28 29 0a 7b 0a 24 72 20 3d 20 | ;..public.function.lex().{.$r.=. |
7fb20 | 24 74 68 69 73 2d 3e 6e 65 78 74 28 29 3b 0a 69 66 20 28 21 24 72 20 69 6e 73 74 61 6e 63 65 6f | $this->next();.if.(!$r.instanceo |
7fb40 | 66 20 55 6e 64 65 66 69 6e 65 64 29 20 7b 0a 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 72 65 74 75 | f.Undefined).{.return.$r;.}.retu |
7fb60 | 72 6e 20 24 74 68 69 73 2d 3e 6c 65 78 28 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | rn.$this->lex();.}..public.funct |
7fb80 | 69 6f 6e 20 73 65 74 49 6e 70 75 74 28 24 69 6e 70 75 74 29 0a 7b 0a 24 74 68 69 73 2d 3e 5f 69 | ion.setInput($input).{.$this->_i |
7fba0 | 6e 70 75 74 20 3d 20 24 69 6e 70 75 74 3b 0a 24 74 68 69 73 2d 3e 5f 6d 6f 72 65 20 3d 20 24 74 | nput.=.$input;.$this->_more.=.$t |
7fbc0 | 68 69 73 2d 3e 5f 6c 65 73 73 20 3d 20 24 74 68 69 73 2d 3e 64 6f 6e 65 20 3d 20 66 61 6c 73 65 | his->_less.=.$this->done.=.false |
7fbe0 | 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 20 3d 20 24 74 68 69 73 2d 3e 79 79 6c 65 6e | ;.$this->yylineno.=.$this->yylen |
7fc00 | 67 20 3d 20 30 3b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 3d 20 24 74 68 69 73 2d 3e 6d 61 | g.=.0;.$this->yytext.=.$this->ma |
7fc20 | 74 63 68 65 64 20 3d 20 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 3d 20 27 27 3b 0a 24 74 68 69 73 | tched.=.$this->match.=.'';.$this |
7fc40 | 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 20 3d 20 61 72 72 61 79 28 27 49 4e 49 54 49 41 | ->conditionStack.=.array('INITIA |
7fc60 | 4c 27 29 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 20 3d 20 61 72 72 61 79 28 27 66 69 72 73 | L');.$this->yylloc.=.array('firs |
7fc80 | 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 2c 20 27 66 69 72 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 | t_line'.=>.1,.'first_column'.=>. |
7fca0 | 30 2c 20 27 6c 61 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 31 2c 20 27 6c 61 73 74 5f 63 6f 6c 75 6d | 0,.'last_line'.=>.1,.'last_colum |
7fcc0 | 6e 27 20 3d 3e 20 30 29 3b 0a 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b 0a 7d 0a 0a 70 75 62 6c | n'.=>.0);..return.$this;.}..publ |
7fce0 | 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 77 50 6f 73 69 74 69 6f 6e 28 29 0a 7b 0a 24 70 72 | ic.function.showPosition().{.$pr |
7fd00 | 65 20 3d 20 24 74 68 69 73 2d 3e 70 61 73 74 49 6e 70 75 74 28 29 3b 0a 24 63 20 3d 20 73 74 72 | e.=.$this->pastInput();.$c.=.str |
7fd20 | 5f 72 65 70 65 61 74 28 27 2d 27 2c 20 73 74 72 6c 65 6e 28 24 70 72 65 29 29 3b 20 0a 20 72 65 | _repeat('-',.strlen($pre));...re |
7fd40 | 74 75 72 6e 20 24 70 72 65 20 2e 20 24 74 68 69 73 2d 3e 75 70 63 6f 6d 69 6e 67 49 6e 70 75 74 | turn.$pre...$this->upcomingInput |
7fd60 | 28 29 20 2e 20 22 5c 6e 22 20 2e 20 24 63 20 2e 20 22 5e 22 3b 0a 7d 0a 0a 70 72 6f 74 65 63 74 | ()..."\n"...$c..."^";.}..protect |
7fd80 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 45 72 72 6f 72 28 24 73 74 72 2c 20 24 68 61 | ed.function.parseError($str,.$ha |
7fda0 | 73 68 29 0a 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 45 78 63 65 70 74 69 6f 6e 28 24 73 74 72 29 | sh).{.throw.new.\Exception($str) |
7fdc0 | 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 69 6e 70 75 74 28 29 0a 7b 0a | ;.}..private.function.input().{. |
7fde0 | 24 63 68 20 3d 20 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 5b 30 5d 3b 0a 24 74 68 69 73 2d 3e 79 | $ch.=.$this->_input[0];.$this->y |
7fe00 | 79 74 65 78 74 20 2b 3d 20 24 63 68 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 2b 2b 3b 0a 24 | ytext.+=.$ch;.$this->yyleng++;.$ |
7fe20 | 74 68 69 73 2d 3e 6d 61 74 63 68 20 2b 3d 20 24 63 68 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 | this->match.+=.$ch;.$this->match |
7fe40 | 65 64 20 2b 3d 20 24 63 68 3b 0a 69 66 20 28 73 74 72 70 6f 73 28 24 63 68 2c 20 22 5c 6e 22 29 | ed.+=.$ch;.if.(strpos($ch,."\n") |
7fe60 | 20 21 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 2b 3b | .!==.false).{.$this->yylineno++; |
7fe80 | 0a 7d 0a 61 72 72 61 79 5f 73 68 69 66 74 28 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 29 3b 20 0a | .}.array_shift($this->_input);.. |
7fea0 | 20 72 65 74 75 72 6e 20 24 63 68 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e | .return.$ch;.}..private.function |
7fec0 | 20 75 6e 70 75 74 28 24 63 68 29 0a 7b 0a 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 20 3d 20 24 63 | .unput($ch).{.$this->_input.=.$c |
7fee0 | 68 20 2e 20 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 3b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b | h...$this->_input;.return.$this; |
7ff00 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 6d 6f 72 65 28 29 0a 7b 0a 24 74 | .}..private.function.more().{.$t |
7ff20 | 68 69 73 2d 3e 5f 6d 6f 72 65 20 3d 20 74 72 75 65 3b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 3b | his->_more.=.true;.return.$this; |
7ff40 | 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 61 73 74 49 6e 70 75 74 28 29 | .}..private.function.pastInput() |
7ff60 | 0a 7b 0a 24 70 61 73 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 | .{.$past.=.substr($this->matched |
7ff80 | 2c 20 30 2c 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 29 20 2d 20 73 74 | ,.0,.strlen($this->matched).-.st |
7ffa0 | 72 6c 65 6e 28 24 74 68 69 73 2d 3e 6d 61 74 63 68 29 29 3b 0a 72 65 74 75 72 6e 20 28 73 74 72 | rlen($this->match));.return.(str |
7ffc0 | 6c 65 6e 28 24 70 61 73 74 29 20 3e 20 32 30 20 3f 20 27 2e 2e 2e 27 20 3a 20 27 27 29 20 2e 20 | len($past).>.20.?.'...'.:.'')... |
7ffe0 | 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c 20 73 75 62 73 74 72 28 24 70 61 | str_replace("\n",.'',.substr($pa |
80000 | 73 74 2c 20 2d 32 30 29 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 75 | st,.-20));.}..private.function.u |
80020 | 70 63 6f 6d 69 6e 67 49 6e 70 75 74 28 29 0a 7b 0a 24 6e 65 78 74 20 3d 20 24 74 68 69 73 2d 3e | pcomingInput().{.$next.=.$this-> |
80040 | 6d 61 74 63 68 3b 0a 69 66 20 28 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 20 3c 20 32 30 29 20 7b | match;.if.(strlen($next).<.20).{ |
80060 | 0a 24 6e 65 78 74 20 2b 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 2c 20 | .$next.+=.substr($this->_input,. |
80080 | 30 2c 20 32 30 20 2d 20 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 29 3b 0a 7d 0a 72 65 74 75 72 6e | 0,.20.-.strlen($next));.}.return |
800a0 | 20 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 27 27 2c 20 73 75 62 73 74 72 28 24 6e | .str_replace("\n",.'',.substr($n |
800c0 | 65 78 74 2c 20 30 2c 20 32 30 29 20 2e 20 28 73 74 72 6c 65 6e 28 24 6e 65 78 74 29 20 3e 20 32 | ext,.0,.20)...(strlen($next).>.2 |
800e0 | 30 20 3f 20 27 2e 2e 2e 27 20 3a 20 27 27 29 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e | 0.?.'...'.:.''));.}..private.fun |
80100 | 63 74 69 6f 6e 20 6e 65 78 74 28 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 64 6f 6e 65 29 20 | ction.next().{.if.($this->done). |
80120 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 69 66 20 28 21 24 74 68 69 | {.return.$this->EOF;.}.if.(!$thi |
80140 | 73 2d 3e 5f 69 6e 70 75 74 29 20 7b 0a 24 74 68 69 73 2d 3e 64 6f 6e 65 20 3d 20 74 72 75 65 3b | s->_input).{.$this->done.=.true; |
80160 | 0a 7d 0a 0a 24 74 6f 6b 65 6e 20 3d 20 6e 75 6c 6c 3b 0a 24 6d 61 74 63 68 20 3d 20 6e 75 6c 6c | .}..$token.=.null;.$match.=.null |
80180 | 3b 0a 24 63 6f 6c 20 3d 20 6e 75 6c 6c 3b 0a 24 6c 69 6e 65 73 20 3d 20 6e 75 6c 6c 3b 0a 0a 69 | ;.$col.=.null;.$lines.=.null;..i |
801a0 | 66 20 28 21 24 74 68 69 73 2d 3e 5f 6d 6f 72 65 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 | f.(!$this->_more).{.$this->yytex |
801c0 | 74 20 3d 20 27 27 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 20 3d 20 27 27 3b 0a 7d 0a 0a 24 72 | t.=.'';.$this->match.=.'';.}..$r |
801e0 | 75 6c 65 73 20 3d 20 24 74 68 69 73 2d 3e 5f 63 75 72 72 65 6e 74 52 75 6c 65 73 28 29 3b 0a 24 | ules.=.$this->_currentRules();.$ |
80200 | 72 75 6c 65 73 4c 65 6e 20 3d 20 63 6f 75 6e 74 28 24 72 75 6c 65 73 29 3b 0a 0a 66 6f 72 20 28 | rulesLen.=.count($rules);..for.( |
80220 | 24 69 3d 30 3b 20 24 69 20 3c 20 24 72 75 6c 65 73 4c 65 6e 3b 20 24 69 2b 2b 29 20 7b 0a 69 66 | $i=0;.$i.<.$rulesLen;.$i++).{.if |
80240 | 20 28 70 72 65 67 5f 6d 61 74 63 68 28 24 74 68 69 73 2d 3e 72 75 6c 65 73 5b 24 72 75 6c 65 73 | .(preg_match($this->rules[$rules |
80260 | 5b 24 69 5d 5d 2c 20 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 2c 20 24 6d 61 74 63 68 29 29 20 7b | [$i]],.$this->_input,.$match)).{ |
80280 | 0a 70 72 65 67 5f 6d 61 74 63 68 5f 61 6c 6c 28 27 2f 5c 6e 2e 2a 2f 27 2c 20 24 6d 61 74 63 68 | .preg_match_all('/\n.*/',.$match |
802a0 | 5b 30 5d 2c 20 24 6c 69 6e 65 73 29 3b 0a 24 6c 69 6e 65 73 20 3d 20 24 6c 69 6e 65 73 5b 30 5d | [0],.$lines);.$lines.=.$lines[0] |
802c0 | 3b 0a 69 66 20 28 24 6c 69 6e 65 73 29 20 7b 0a 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 20 | ;.if.($lines).{.$this->yylineno. |
802e0 | 2b 3d 20 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 79 79 6c 6c | +=.count($lines);.}..$this->yyll |
80300 | 6f 63 20 3d 20 61 72 72 61 79 28 0a 27 66 69 72 73 74 5f 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 | oc.=.array(.'first_line'.=>.$thi |
80320 | 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f 6c 69 6e 65 27 5d 2c 0a 27 6c 61 73 74 5f 6c 69 | s->yylloc['last_line'],.'last_li |
80340 | 6e 65 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 2c 0a 27 66 69 72 73 74 | ne'.=>.$this->yylineno+1,.'first |
80360 | 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f | _column'.=>.$this->yylloc['last_ |
80380 | 63 6f 6c 75 6d 6e 27 5d 2c 0a 27 6c 61 73 74 5f 63 6f 6c 75 6d 6e 27 20 3d 3e 20 24 6c 69 6e 65 | column'],.'last_column'.=>.$line |
803a0 | 73 20 3f 20 73 74 72 6c 65 6e 28 24 6c 69 6e 65 73 5b 63 6f 75 6e 74 28 24 6c 69 6e 65 73 29 20 | s.?.strlen($lines[count($lines). |
803c0 | 2d 20 31 5d 29 20 2d 20 31 20 3a 20 24 74 68 69 73 2d 3e 79 79 6c 6c 6f 63 5b 27 6c 61 73 74 5f | -.1]).-.1.:.$this->yylloc['last_ |
803e0 | 63 6f 6c 75 6d 6e 27 5d 20 2b 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 68 5b 30 5d 29 2c 0a 29 3b | column'].+.strlen($match[0]),.); |
80400 | 0a 24 74 68 69 73 2d 3e 79 79 74 65 78 74 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 68 | .$this->yytext..=.$match[0];.$th |
80420 | 69 73 2d 3e 6d 61 74 63 68 20 2e 3d 20 24 6d 61 74 63 68 5b 30 5d 3b 0a 24 74 68 69 73 2d 3e 6d | is->match..=.$match[0];.$this->m |
80440 | 61 74 63 68 65 73 20 3d 20 24 6d 61 74 63 68 3b 0a 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 20 3d | atches.=.$match;.$this->yyleng.= |
80460 | 20 73 74 72 6c 65 6e 28 24 74 68 69 73 2d 3e 79 79 74 65 78 74 29 3b 0a 24 74 68 69 73 2d 3e 5f | .strlen($this->yytext);.$this->_ |
80480 | 6d 6f 72 65 20 3d 20 66 61 6c 73 65 3b 0a 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 20 3d 20 73 75 | more.=.false;.$this->_input.=.su |
804a0 | 62 73 74 72 28 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 2c 20 73 74 72 6c 65 6e 28 24 6d 61 74 63 | bstr($this->_input,.strlen($matc |
804c0 | 68 5b 30 5d 29 29 3b 0a 24 74 68 69 73 2d 3e 6d 61 74 63 68 65 64 20 2e 3d 20 24 6d 61 74 63 68 | h[0]));.$this->matched..=.$match |
804e0 | 5b 30 5d 3b 0a 24 74 6f 6b 65 6e 20 3d 20 24 74 68 69 73 2d 3e 70 65 72 66 6f 72 6d 41 63 74 69 | [0];.$token.=.$this->performActi |
80500 | 6f 6e 28 24 72 75 6c 65 73 5b 24 69 5d 2c 20 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 | on($rules[$i],.$this->conditionS |
80520 | 74 61 63 6b 5b 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b | tack[count($this->conditionStack |
80540 | 29 2d 31 5d 29 3b 0a 69 66 20 28 24 74 6f 6b 65 6e 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 6f 6b | )-1]);.if.($token).{.return.$tok |
80560 | 65 6e 3b 0a 7d 0a 72 65 74 75 72 6e 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 29 3b 0a 7d 0a | en;.}.return.new.Undefined();.}. |
80580 | 7d 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 5f 69 6e 70 75 74 20 3d 3d 3d 20 22 22 29 20 7b 0a 72 | }..if.($this->_input.===."").{.r |
805a0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 45 4f 46 3b 0a 7d 0a 0a 24 74 68 69 73 2d 3e 70 61 72 73 | eturn.$this->EOF;.}..$this->pars |
805c0 | 65 45 72 72 6f 72 28 0a 27 4c 65 78 69 63 61 6c 20 65 72 72 6f 72 20 6f 6e 20 6c 69 6e 65 20 27 | eError(.'Lexical.error.on.line.' |
805e0 | 20 2e 20 28 24 74 68 69 73 2d 3e 79 79 6c 69 6e 65 6e 6f 2b 31 29 20 2e 20 22 2e 20 55 6e 72 65 | ...($this->yylineno+1)..."..Unre |
80600 | 63 6f 67 6e 69 7a 65 64 20 74 65 78 74 2e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 73 68 6f 77 50 | cognized.text.\n"...$this->showP |
80620 | 6f 73 69 74 69 6f 6e 28 29 2c 0a 61 72 72 61 79 28 0a 27 74 65 78 74 27 20 3d 3e 20 22 22 2c 0a | osition(),.array(.'text'.=>."",. |
80640 | 27 74 6f 6b 65 6e 27 20 3d 3e 20 6e 75 6c 6c 2c 0a 27 6c 69 6e 65 27 20 3d 3e 20 24 74 68 69 73 | 'token'.=>.null,.'line'.=>.$this |
80660 | 2d 3e 79 79 6c 69 6e 65 6e 6f 2c 0a 29 0a 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 | ->yylineno,.).);.}..private.func |
80680 | 74 69 6f 6e 20 62 65 67 69 6e 28 24 63 6f 6e 64 69 74 69 6f 6e 29 0a 7b 0a 24 74 68 69 73 2d 3e | tion.begin($condition).{.$this-> |
806a0 | 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 5b 5d 20 3d 20 24 63 6f 6e 64 69 74 69 6f 6e 3b 0a 7d | conditionStack[].=.$condition;.} |
806c0 | 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 53 74 61 74 65 28 29 0a 7b 0a | ..private.function.popState().{. |
806e0 | 72 65 74 75 72 6e 20 61 72 72 61 79 5f 70 6f 70 28 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f | return.array_pop($this->conditio |
80700 | 6e 53 74 61 63 6b 29 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 5f 63 75 | nStack);.}..private.function._cu |
80720 | 72 72 65 6e 74 52 75 6c 65 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6f 6e | rrentRules().{.return.$this->con |
80740 | 64 69 74 69 6f 6e 73 5b 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 5b 63 6f | ditions[$this->conditionStack[co |
80760 | 75 6e 74 28 24 74 68 69 73 2d 3e 63 6f 6e 64 69 74 69 6f 6e 53 74 61 63 6b 29 2d 31 5d 5d 5b 27 | unt($this->conditionStack)-1]][' |
80780 | 72 75 6c 65 73 27 5d 3b 0a 7d 0a 0a 70 72 69 76 61 74 65 20 66 75 6e 63 74 69 6f 6e 20 70 65 72 | rules'];.}..private.function.per |
807a0 | 66 6f 72 6d 41 63 74 69 6f 6e 28 24 61 76 6f 69 64 69 6e 67 5f 6e 61 6d 65 5f 63 6f 6c 6c 69 73 | formAction($avoiding_name_collis |
807c0 | 69 6f 6e 73 2c 20 24 59 59 5f 53 54 41 52 54 29 0a 7b 0a 24 59 59 53 54 41 54 45 20 3d 20 24 59 | ions,.$YY_START).{.$YYSTATE.=.$Y |
807e0 | 59 5f 53 54 41 52 54 3b 0a 73 77 69 74 63 68 20 28 24 61 76 6f 69 64 69 6e 67 5f 6e 61 6d 65 5f | Y_START;.switch.($avoiding_name_ |
80800 | 63 6f 6c 6c 69 73 69 6f 6e 73 29 20 7b 0a 63 61 73 65 20 30 3a 0a 62 72 65 61 6b 3b 0a 63 61 73 | collisions).{.case.0:.break;.cas |
80820 | 65 20 31 3a 0a 72 65 74 75 72 6e 20 36 3b 0a 62 72 65 61 6b 3b 0a 63 61 73 65 20 32 3a 0a 24 74 | e.1:.return.6;.break;.case.2:.$t |
80840 | 68 69 73 2d 3e 79 79 74 65 78 74 20 3d 20 73 75 62 73 74 72 28 24 74 68 69 73 2d 3e 79 79 74 65 | his->yytext.=.substr($this->yyte |
80860 | 78 74 2c 20 31 2c 20 24 74 68 69 73 2d 3e 79 79 6c 65 6e 67 2d 32 29 3b 0a 72 65 74 75 72 6e 20 | xt,.1,.$this->yyleng-2);.return. |
80880 | 34 3b 0a 63 61 73 65 20 33 3a 0a 72 65 74 75 72 6e 20 31 37 3b 0a 63 61 73 65 20 34 3a 0a 72 65 | 4;.case.3:.return.17;.case.4:.re |
808a0 | 74 75 72 6e 20 31 38 3b 0a 63 61 73 65 20 35 3a 0a 72 65 74 75 72 6e 20 32 33 3b 0a 63 61 73 65 | turn.18;.case.5:.return.23;.case |
808c0 | 20 36 3a 0a 72 65 74 75 72 6e 20 32 34 3b 0a 63 61 73 65 20 37 3a 0a 72 65 74 75 72 6e 20 32 32 | .6:.return.24;.case.7:.return.22 |
808e0 | 3b 0a 63 61 73 65 20 38 3a 0a 72 65 74 75 72 6e 20 32 31 3b 0a 63 61 73 65 20 39 3a 0a 72 65 74 | ;.case.8:.return.21;.case.9:.ret |
80900 | 75 72 6e 20 31 30 3b 0a 63 61 73 65 20 31 30 3a 0a 72 65 74 75 72 6e 20 31 31 3b 0a 63 61 73 65 | urn.10;.case.10:.return.11;.case |
80920 | 20 31 31 3a 0a 72 65 74 75 72 6e 20 38 3b 0a 63 61 73 65 20 31 32 3a 0a 72 65 74 75 72 6e 20 31 | .11:.return.8;.case.12:.return.1 |
80940 | 34 3b 0a 63 61 73 65 20 31 33 3a 0a 72 65 74 75 72 6e 20 27 49 4e 56 41 4c 49 44 27 3b 0a 7d 0a | 4;.case.13:.return.'INVALID';.}. |
80960 | 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 53 65 | }.}.<?php...........namespace.Se |
80980 | 6c 64 5c 4a 73 6f 6e 4c 69 6e 74 3b 0a 0a 63 6c 61 73 73 20 50 61 72 73 69 6e 67 45 78 63 65 70 | ld\JsonLint;..class.ParsingExcep |
809a0 | 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 5c 45 78 63 65 70 74 69 6f 6e 0a 7b 0a 70 72 6f 74 65 63 | tion.extends.\Exception.{.protec |
809c0 | 74 65 64 20 24 64 65 74 61 69 6c 73 3b 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 5f | ted.$details;..public.function._ |
809e0 | 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 67 65 2c 20 24 64 65 74 61 69 6c 73 20 3d 20 | _construct($message,.$details.=. |
80a00 | 61 72 72 61 79 28 29 29 0a 7b 0a 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 20 3d 20 24 64 65 74 | array()).{.$this->details.=.$det |
80a20 | 61 69 6c 73 3b 0a 70 61 72 65 6e 74 3a 3a 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 6d 65 73 73 61 | ails;.parent::__construct($messa |
80a40 | 67 65 29 3b 0a 7d 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 44 65 74 61 69 | ge);.}..public.function.getDetai |
80a60 | 6c 73 28 29 0a 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 64 65 74 61 69 6c 73 3b 0a 7d 0a | ls().{.return.$this->details;.}. |
80a80 | 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e | }<?php..namespace.JsonSchema\Con |
80aa0 | 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 55 6e 64 65 66 69 6e 65 64 | straints;........class.Undefined |
80ac0 | 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 66 75 6e 63 74 69 6f | .extends.Constraint.{....functio |
80ae0 | 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 | n.check($value,.$schema.=.null,. |
80b00 | 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 | $path.=.null,.$i.=.null).{.if.(! |
80b20 | 69 73 5f 6f 62 6a 65 63 74 28 24 73 63 68 65 6d 61 29 29 20 7b 0a 72 65 74 75 72 6e 3b 0a 7d 0a | is_object($schema)).{.return;.}. |
80b40 | 0a 24 70 61 74 68 20 3d 20 24 74 68 69 73 2d 3e 69 6e 63 72 65 6d 65 6e 74 50 61 74 68 28 24 70 | .$path.=.$this->incrementPath($p |
80b60 | 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 43 6f 6d 6d | ath,.$i);....$this->validateComm |
80b80 | 6f 6e 50 72 6f 70 65 72 74 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 | onProperties($value,.$schema,.$p |
80ba0 | 61 74 68 29 3b 0a 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 79 70 65 73 28 24 76 | ath);....$this->validateTypes($v |
80bc0 | 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 0a 7d 0a 0a | alue,.$schema,.$path,.$i);...}.. |
80be0 | 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 | ........public.function.validate |
80c00 | 54 79 70 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 | Types($value,.$schema.=.null,.$p |
80c20 | 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 69 | ath.=.null,.$i.=.null).{...if.(i |
80c40 | 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 41 | s_array($value)).{.$this->checkA |
80c60 | 72 72 61 79 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 | rray($value,.$schema,.$path,.$i) |
80c80 | 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 20 26 26 20 | ;.}....if.(is_object($value).&&. |
80ca0 | 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 70 72 6f 70 65 72 74 69 65 73 29 29 20 7b 0a 24 74 | isset($schema->properties)).{.$t |
80cc0 | 68 69 73 2d 3e 63 68 65 63 6b 4f 62 6a 65 63 74 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 | his->checkObject($value,.$schema |
80ce0 | 2d 3e 70 72 6f 70 65 72 74 69 65 73 2c 20 24 70 61 74 68 2c 20 69 73 73 65 74 28 24 73 63 68 65 | ->properties,.$path,.isset($sche |
80d00 | 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 29 20 3f 20 24 73 63 68 | ma->additionalProperties).?.$sch |
80d20 | 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 65 72 74 69 65 73 20 3a 20 6e 75 6c 6c | ema->additionalProperties.:.null |
80d40 | 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 73 74 72 69 6e 67 28 24 76 61 6c 75 65 29 29 20 7b | );.}....if.(is_string($value)).{ |
80d60 | 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 53 74 72 69 6e 67 28 24 76 61 6c 75 65 2c 20 24 73 63 68 | .$this->checkString($value,.$sch |
80d80 | 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 5f 6e 75 6d | ema,.$path,.$i);.}....if.(is_num |
80da0 | 65 72 69 63 28 24 76 61 6c 75 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 4e 75 6d 62 | eric($value)).{.$this->checkNumb |
80dc0 | 65 72 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a | er($value,.$schema,.$path,.$i);. |
80de0 | 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 29 29 20 7b | }....if.(isset($schema->enum)).{ |
80e00 | 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d | .$this->checkEnum($value,.$schem |
80e20 | 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 | a,.$path,.$i);.}.}..........prot |
80e40 | 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 43 6f 6d 6d 6f 6e 50 72 6f | ected.function.validateCommonPro |
80e60 | 70 65 72 74 69 65 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 | perties($value,.$schema.=.null,. |
80e80 | 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 | $path.=.null,.$i.=.null).{...if. |
80ea0 | 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 65 78 74 65 6e 64 73 29 29 20 7b 0a 24 74 68 69 | (isset($schema->extends)).{.$thi |
80ec0 | 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d | s->checkUndefined($value,.$schem |
80ee0 | 61 2d 3e 65 78 74 65 6e 64 73 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a 20 69 66 20 | a->extends,.$path,.$i);.}....if. |
80f00 | 28 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 20 26 26 20 24 76 61 6c 75 65 20 69 6e 73 | (is_object($value).&&.$value.ins |
80f20 | 74 61 6e 63 65 4f 66 20 55 6e 64 65 66 69 6e 65 64 29 20 7b 0a 69 66 20 28 69 73 73 65 74 28 24 | tanceOf.Undefined).{.if.(isset($ |
80f40 | 73 63 68 65 6d 61 2d 3e 72 65 71 75 69 72 65 64 29 20 26 26 20 24 73 63 68 65 6d 61 2d 3e 72 65 | schema->required).&&.$schema->re |
80f60 | 71 75 69 72 65 64 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c | quired).{.$this->addError($path, |
80f80 | 20 22 69 73 20 6d 69 73 73 69 6e 67 20 61 6e 64 20 69 74 20 69 73 20 72 65 71 75 69 72 65 64 22 | ."is.missing.and.it.is.required" |
80fa0 | 29 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 54 79 70 65 28 24 | );.}.}.else.{.$this->checkType($ |
80fc0 | 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 0a 20 69 66 20 | value,.$schema,.$path);.}....if. |
80fe0 | 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 69 73 61 6c 6c 6f 77 29 29 20 7b 0a 24 69 6e | (isset($schema->disallow)).{.$in |
81000 | 69 74 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a | itErrors.=.$this->getErrors();.. |
81020 | 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 73 | $this->checkUndefined($value,.$s |
81040 | 63 68 65 6d 61 2d 3e 64 69 73 61 6c 6c 6f 77 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 69 66 20 28 | chema->disallow,.$path);....if.( |
81060 | 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 3d 3d 20 63 6f 75 | count($this->getErrors()).==.cou |
81080 | 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 | nt($initErrors)).{.$this->addErr |
810a0 | 6f 72 28 24 70 61 74 68 2c 20 22 20 64 69 73 61 6c 6c 6f 77 65 64 20 76 61 6c 75 65 20 77 61 73 | or($path,.".disallowed.value.was |
810c0 | 20 6d 61 74 63 68 65 64 22 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f | .matched");.}.else.{.$this->erro |
810e0 | 72 73 20 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a | rs.=.$initErrors;.}.}.}.}<?php.. |
81100 | 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 | namespace.JsonSchema\Constraints |
81120 | 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 54 79 70 65 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 | ;........class.Type.extends.Cons |
81140 | 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 | traint.{....function.check($valu |
81160 | 65 20 3d 20 6e 75 6c 6c 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 | e.=.null,.$schema.=.null,.$path. |
81180 | 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 74 79 70 65 20 3d 20 69 73 73 | =.null,.$i.=.null).{.$type.=.iss |
811a0 | 65 74 28 24 73 63 68 65 6d 61 2d 3e 74 79 70 65 29 20 3f 20 24 73 63 68 65 6d 61 2d 3e 74 79 70 | et($schema->type).?.$schema->typ |
811c0 | 65 20 3a 20 6e 75 6c 6c 3b 0a 24 69 73 56 61 6c 69 64 20 3d 20 74 72 75 65 3b 0a 0a 69 66 20 28 | e.:.null;.$isValid.=.true;..if.( |
811e0 | 69 73 5f 61 72 72 61 79 28 24 74 79 70 65 29 29 20 7b 0a 0a 20 24 76 61 6c 69 64 61 74 65 64 4f | is_array($type)).{...$validatedO |
81200 | 6e 65 54 79 70 65 20 3d 20 66 61 6c 73 65 3b 0a 24 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 28 | neType.=.false;.$errors.=.array( |
81220 | 29 3b 0a 66 6f 72 65 61 63 68 20 28 24 74 79 70 65 20 61 73 20 24 74 70 29 20 7b 0a 24 76 61 6c | );.foreach.($type.as.$tp).{.$val |
81240 | 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 54 79 70 65 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f | idator.=.new.Type($this->checkMo |
81260 | 64 65 29 3b 0a 24 73 75 62 53 63 68 65 6d 61 20 3d 20 6e 65 77 20 5c 73 74 64 43 6c 61 73 73 28 | de);.$subSchema.=.new.\stdClass( |
81280 | 29 3b 0a 24 73 75 62 53 63 68 65 6d 61 2d 3e 74 79 70 65 20 3d 20 24 74 70 3b 0a 24 76 61 6c 69 | );.$subSchema->type.=.$tp;.$vali |
812a0 | 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 75 62 53 63 68 65 6d 61 2c | dator->check($value,.$subSchema, |
812c0 | 20 24 70 61 74 68 2c 20 6e 75 6c 6c 29 3b 0a 24 65 72 72 6f 72 20 3d 20 24 76 61 6c 69 64 61 74 | .$path,.null);.$error.=.$validat |
812e0 | 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a 69 66 20 28 21 63 6f 75 6e 74 28 24 65 72 | or->getErrors();..if.(!count($er |
81300 | 72 6f 72 29 29 20 7b 0a 24 76 61 6c 69 64 61 74 65 64 4f 6e 65 54 79 70 65 20 3d 20 74 72 75 65 | ror)).{.$validatedOneType.=.true |
81320 | 3b 0a 62 72 65 61 6b 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 65 72 72 6f 72 73 20 3d 20 24 65 72 72 | ;.break;.}.else.{.$errors.=.$err |
81340 | 6f 72 3b 0a 7d 0a 7d 0a 69 66 20 28 21 24 76 61 6c 69 64 61 74 65 64 4f 6e 65 54 79 70 65 29 20 | or;.}.}.if.(!$validatedOneType). |
81360 | 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 65 72 72 6f 72 | {.return.$this->addErrors($error |
81380 | 73 29 3b 0a 7d 0a 7d 20 65 6c 73 65 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 74 79 70 65 29 | s);.}.}.elseif.(is_object($type) |
813a0 | 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 | ).{.$this->checkUndefined($value |
813c0 | 2c 20 24 74 79 70 65 2c 20 24 70 61 74 68 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 69 73 56 61 6c | ,.$type,.$path);.}.else.{.$isVal |
813e0 | 69 64 20 3d 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 54 79 70 65 28 24 76 61 6c 75 65 2c | id.=.$this->validateType($value, |
81400 | 20 24 74 79 70 65 29 3b 0a 7d 0a 0a 69 66 20 28 24 69 73 56 61 6c 69 64 20 3d 3d 3d 20 66 61 6c | .$type);.}..if.($isValid.===.fal |
81420 | 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 67 65 74 | se).{.$this->addError($path,.get |
81440 | 74 79 70 65 28 24 76 61 6c 75 65 29 20 2e 20 22 20 76 61 6c 75 65 20 66 6f 75 6e 64 2c 20 62 75 | type($value)...".value.found,.bu |
81460 | 74 20 61 20 22 20 2e 20 24 74 79 70 65 20 2e 20 22 20 69 73 20 72 65 71 75 69 72 65 64 22 29 3b | t.a."...$type...".is.required"); |
81480 | 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e | .}.}..........protected.function |
814a0 | 20 76 61 6c 69 64 61 74 65 54 79 70 65 28 24 76 61 6c 75 65 2c 20 24 74 79 70 65 29 0a 7b 0a 0a | .validateType($value,.$type).{.. |
814c0 | 20 69 66 20 28 21 24 74 79 70 65 29 20 7b 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 0a 73 | .if.(!$type).{.return.true;.}..s |
814e0 | 77 69 74 63 68 20 28 24 74 79 70 65 29 20 7b 0a 63 61 73 65 20 27 69 6e 74 65 67 65 72 27 20 3a | witch.($type).{.case.'integer'.: |
81500 | 0a 72 65 74 75 72 6e 20 28 69 6e 74 65 67 65 72 29 24 76 61 6c 75 65 20 3d 3d 20 24 76 61 6c 75 | .return.(integer)$value.==.$valu |
81520 | 65 20 3f 20 74 72 75 65 20 3a 20 69 73 5f 69 6e 74 28 24 76 61 6c 75 65 29 3b 0a 63 61 73 65 20 | e.?.true.:.is_int($value);.case. |
81540 | 27 6e 75 6d 62 65 72 27 20 3a 0a 72 65 74 75 72 6e 20 69 73 5f 6e 75 6d 65 72 69 63 28 24 76 61 | 'number'.:.return.is_numeric($va |
81560 | 6c 75 65 29 3b 0a 63 61 73 65 20 27 62 6f 6f 6c 65 61 6e 27 20 3a 0a 72 65 74 75 72 6e 20 69 73 | lue);.case.'boolean'.:.return.is |
81580 | 5f 62 6f 6f 6c 28 24 76 61 6c 75 65 29 3b 0a 63 61 73 65 20 27 6f 62 6a 65 63 74 27 20 3a 0a 72 | _bool($value);.case.'object'.:.r |
815a0 | 65 74 75 72 6e 20 69 73 5f 6f 62 6a 65 63 74 28 24 76 61 6c 75 65 29 3b 0a 0a 20 63 61 73 65 20 | eturn.is_object($value);...case. |
815c0 | 27 61 72 72 61 79 27 20 3a 0a 72 65 74 75 72 6e 20 69 73 5f 61 72 72 61 79 28 24 76 61 6c 75 65 | 'array'.:.return.is_array($value |
815e0 | 29 3b 0a 63 61 73 65 20 27 73 74 72 69 6e 67 27 20 3a 0a 72 65 74 75 72 6e 20 69 73 5f 73 74 72 | );.case.'string'.:.return.is_str |
81600 | 69 6e 67 28 24 76 61 6c 75 65 29 3b 0a 63 61 73 65 20 27 6e 75 6c 6c 27 20 3a 0a 72 65 74 75 72 | ing($value);.case.'null'.:.retur |
81620 | 6e 20 69 73 5f 6e 75 6c 6c 28 24 76 61 6c 75 65 29 3b 0a 63 61 73 65 20 27 61 6e 79 27 20 3a 0a | n.is_null($value);.case.'any'.:. |
81640 | 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 64 65 66 61 75 6c 74 3a 0a 74 68 72 6f 77 20 6e 65 77 20 | return.true;.default:.throw.new. |
81660 | 5c 49 6e 76 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 28 69 73 5f 6f 62 | \InvalidArgumentException((is_ob |
81680 | 6a 65 63 74 28 24 76 61 6c 75 65 29 20 3f 20 27 6f 62 6a 65 63 74 27 20 3a 20 24 76 61 6c 75 65 | ject($value).?.'object'.:.$value |
816a0 | 29 20 2e 20 27 20 69 73 20 61 20 69 6e 76 61 6c 69 64 20 74 79 70 65 20 66 6f 72 20 27 20 2e 20 | )...'.is.a.invalid.type.for.'... |
816c0 | 24 74 79 70 65 29 3b 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 | $type);.}.}.}<?php..namespace.Js |
816e0 | 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 | onSchema\Constraints;........cla |
81700 | 73 73 20 53 63 68 65 6d 61 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a | ss.Schema.extends.Constraint.{.. |
81720 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 | ..public.function.check($element |
81740 | 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 | ,.$schema.=.null,.$path.=.null,. |
81760 | 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 24 73 63 68 65 6d 61 20 21 3d 3d 20 6e 75 6c | $i.=.null).{.if.($schema.!==.nul |
81780 | 6c 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 65 6c | l).{...$this->checkUndefined($el |
817a0 | 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 2c 20 27 27 2c 20 27 27 29 3b 0a 7d 20 65 6c 73 65 69 | ement,.$schema,.'',.'');.}.elsei |
817c0 | 66 20 28 69 73 73 65 74 28 24 65 6c 65 6d 65 6e 74 2d 3e 7b 24 74 68 69 73 2d 3e 69 6e 6c 69 6e | f.(isset($element->{$this->inlin |
817e0 | 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 7d 29 29 20 7b 0a 0a 20 24 74 68 69 73 2d 3e 63 68 | eSchemaProperty})).{...$this->ch |
81800 | 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 65 6c 65 6d 65 6e 74 2c 20 24 65 6c 65 6d 65 6e 74 2d | eckUndefined($element,.$element- |
81820 | 3e 7b 24 74 68 69 73 2d 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 7d 2c 20 | >{$this->inlineSchemaProperty},. |
81840 | 27 27 2c 20 27 27 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 74 68 72 6f 77 20 6e 65 77 20 5c 49 6e 76 | '',.'');.}.else.{.throw.new.\Inv |
81860 | 61 6c 69 64 41 72 67 75 6d 65 6e 74 45 78 63 65 70 74 69 6f 6e 28 27 6e 6f 20 73 63 68 65 6d 61 | alidArgumentException('no.schema |
81880 | 20 66 6f 75 6e 64 20 74 6f 20 76 65 72 69 66 79 20 61 67 61 69 6e 73 74 27 29 3b 0a 7d 0a 7d 0a | .found.to.verify.against');.}.}. |
818a0 | 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e | }<?php..namespace.JsonSchema\Con |
818c0 | 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4e 75 6d 62 65 72 20 65 78 | straints;........class.Number.ex |
818e0 | 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | tends.Constraint.{....public.fun |
81900 | 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 | ction.check($element,.$schema.=. |
81920 | 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b | null,.$path.=.null,.$i.=.null).{ |
81940 | 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 20 26 | ...if.(isset($schema->minimum).& |
81960 | 26 20 24 65 6c 65 6d 65 6e 74 20 3c 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 69 6d 75 6d 29 20 7b | &.$element.<.$schema->minimum).{ |
81980 | 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 6d 75 73 74 20 68 61 | .$this->addError($path,."must.ha |
819a0 | 76 65 20 61 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d | ve.a.minimum.value.of."...$schem |
819c0 | 61 2d 3e 6d 69 6e 69 6d 75 6d 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 | a->minimum);.}....if.(isset($sch |
819e0 | 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 3e 20 24 73 63 68 | ema->maximum).&&.$element.>.$sch |
81a00 | 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 | ema->maximum).{.$this->addError( |
81a20 | 24 70 61 74 68 2c 20 22 6d 75 73 74 20 68 61 76 65 20 61 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 | $path,."must.have.a.maximum.valu |
81a40 | 65 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 69 6d 75 6d 29 3b 0a 7d 0a 0a 0a | e.of."...$schema->maximum);.}... |
81a60 | 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 29 | .if.(isset($schema->divisibleBy) |
81a80 | 20 26 26 20 24 65 6c 65 6d 65 6e 74 20 25 20 24 73 63 68 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c | .&&.$element.%.$schema->divisibl |
81aa0 | 65 42 79 20 21 3d 20 30 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 | eBy.!=.0).{.$this->addError($pat |
81ac0 | 68 2c 20 22 69 73 20 6e 6f 74 20 64 69 76 69 73 69 62 6c 65 20 62 79 20 22 20 2e 20 24 73 63 68 | h,."is.not.divisible.by."...$sch |
81ae0 | 65 6d 61 2d 3e 64 69 76 69 73 69 62 6c 65 42 79 29 3b 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 6e | ema->divisibleBy);.}.}.}<?php..n |
81b00 | 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b | amespace.JsonSchema\Constraints; |
81b20 | 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 4f 62 6a 65 63 74 20 65 78 74 65 6e 64 73 20 43 6f 6e | ........class.Object.extends.Con |
81b40 | 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 | straint.{....function.check($ele |
81b60 | 6d 65 6e 74 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 | ment,.$definition.=.null,.$path. |
81b80 | 3d 20 6e 75 6c 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 20 6e 75 6c 6c 29 0a | =.null,.$additionalProp.=.null). |
81ba0 | 7b 0a 0a 20 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 44 65 66 69 6e 69 74 69 6f 6e 28 24 65 | {...$this->validateDefinition($e |
81bc0 | 6c 65 6d 65 6e 74 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 74 68 29 3b 0a 0a 0a 20 | lement,.$definition,.$path);.... |
81be0 | 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 45 6c 65 6d 65 6e 74 28 24 65 6c 65 6d 65 6e 74 2c | $this->validateElement($element, |
81c00 | 20 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 74 68 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c | .$definition,.$path,.$additional |
81c20 | 50 72 6f 70 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f | Prop);.}..........public.functio |
81c40 | 6e 20 76 61 6c 69 64 61 74 65 45 6c 65 6d 65 6e 74 28 24 65 6c 65 6d 65 6e 74 2c 20 24 6f 62 6a | n.validateElement($element,.$obj |
81c60 | 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 | ectDefinition.=.null,.$path.=.nu |
81c80 | 6c 6c 2c 20 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f | ll,.$additionalProp.=.null).{.fo |
81ca0 | 72 65 61 63 68 20 28 24 65 6c 65 6d 65 6e 74 20 61 73 20 24 69 20 3d 3e 20 24 76 61 6c 75 65 29 | reach.($element.as.$i.=>.$value) |
81cc0 | 20 7b 0a 0a 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 | .{..$property.=.$this->getProper |
81ce0 | 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 69 2c 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 29 | ty($element,.$i,.new.Undefined() |
81d00 | 29 3b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 | );.$definition.=.$this->getPrope |
81d20 | 72 74 79 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b 0a 0a 0a 20 69 | rty($objectDefinition,.$i);....i |
81d40 | 66 20 28 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 64 65 66 69 6e 69 74 69 6f | f.($this->getProperty($definitio |
81d60 | 6e 2c 20 27 72 65 71 75 69 72 65 64 27 29 20 26 26 20 21 24 70 72 6f 70 65 72 74 79 29 20 7b 0a | n,.'required').&&.!$property).{. |
81d80 | 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 74 68 65 20 70 72 6f 70 | $this->addError($path,."the.prop |
81da0 | 65 72 74 79 20 22 20 2e 20 24 69 20 2e 20 22 20 69 73 20 72 65 71 75 69 72 65 64 22 29 3b 0a 7d | erty."...$i...".is.required");.} |
81dc0 | 0a 0a 0a 20 69 66 20 28 24 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 3d 3d 3d 20 66 61 6c 73 | ....if.($additionalProp.===.fals |
81de0 | 65 20 26 26 20 24 74 68 69 73 2d 3e 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 72 6f 70 65 72 74 79 | e.&&.$this->inlineSchemaProperty |
81e00 | 20 21 3d 3d 20 24 69 20 26 26 20 21 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b 0a 24 74 68 69 73 | .!==.$i.&&.!$definition).{.$this |
81e20 | 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 20 70 72 6f 70 65 72 74 79 20 | ->addError($path,."The.property. |
81e40 | 22 20 2e 20 24 69 20 2e 20 22 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 20 61 6e 64 20 74 68 | "...$i...".is.not.defined.and.th |
81e60 | 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 61 64 64 69 | e.definition.does.not.allow.addi |
81e80 | 74 69 6f 6e 61 6c 20 70 72 6f 70 65 72 74 69 65 73 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 24 61 | tional.properties");.}....if.($a |
81ea0 | 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 20 26 26 20 21 24 64 65 66 69 6e 69 74 69 6f 6e 29 20 7b | dditionalProp.&&.!$definition).{ |
81ec0 | 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 61 6c 75 65 2c 20 24 | .$this->checkUndefined($value,.$ |
81ee0 | 61 64 64 69 74 69 6f 6e 61 6c 50 72 6f 70 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 0a 0a | additionalProp,.$path,.$i);.}... |
81f00 | 20 24 72 65 71 75 69 72 65 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 | .$require.=.$this->getProperty($ |
81f20 | 64 65 66 69 6e 69 74 69 6f 6e 2c 20 27 72 65 71 75 69 72 65 73 27 29 3b 0a 69 66 20 28 24 72 65 | definition,.'requires');.if.($re |
81f40 | 71 75 69 72 65 20 26 26 20 21 24 74 68 69 73 2d 3e 67 65 74 50 72 6f 70 65 72 74 79 28 24 65 6c | quire.&&.!$this->getProperty($el |
81f60 | 65 6d 65 6e 74 2c 20 24 72 65 71 75 69 72 65 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 | ement,.$require)).{.$this->addEr |
81f80 | 72 6f 72 28 24 70 61 74 68 2c 20 22 74 68 65 20 70 72 65 73 65 6e 63 65 20 6f 66 20 74 68 65 20 | ror($path,."the.presence.of.the. |
81fa0 | 70 72 6f 70 65 72 74 79 20 22 20 2e 20 24 69 20 2e 20 22 20 72 65 71 75 69 72 65 73 20 74 68 61 | property."...$i...".requires.tha |
81fc0 | 74 20 22 20 2e 20 24 72 65 71 75 69 72 65 20 2e 20 22 20 61 6c 73 6f 20 62 65 20 70 72 65 73 65 | t."...$require...".also.be.prese |
81fe0 | 6e 74 22 29 3b 0a 7d 0a 0a 0a 20 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 | nt");.}....$this->checkUndefined |
82000 | 28 24 76 61 6c 75 65 2c 20 24 64 65 66 69 6e 69 74 69 6f 6e 20 3f 20 3a 20 6e 65 77 20 5c 73 74 | ($value,.$definition.?.:.new.\st |
82020 | 64 43 6c 61 73 73 28 29 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a | dClass(),.$path,.$i);.}.}....... |
82040 | 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 44 65 66 69 6e 69 | ..public.function.validateDefini |
82060 | 74 69 6f 6e 28 24 65 6c 65 6d 65 6e 74 2c 20 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e | tion($element,.$objectDefinition |
82080 | 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 | .=.null,.$path.=.null).{.foreach |
820a0 | 20 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 20 61 73 20 24 69 20 3d 3e 20 24 76 61 | .($objectDefinition.as.$i.=>.$va |
820c0 | 6c 75 65 29 20 7b 0a 24 70 72 6f 70 65 72 74 79 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 6f | lue).{.$property.=.$this->getPro |
820e0 | 70 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 69 2c 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 | perty($element,.$i,.new.Undefine |
82100 | 64 28 29 29 3b 0a 24 64 65 66 69 6e 69 74 69 6f 6e 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 50 72 | d());.$definition.=.$this->getPr |
82120 | 6f 70 65 72 74 79 28 24 6f 62 6a 65 63 74 44 65 66 69 6e 69 74 69 6f 6e 2c 20 24 69 29 3b 0a 24 | operty($objectDefinition,.$i);.$ |
82140 | 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 70 72 6f 70 65 72 74 79 2c 20 | this->checkUndefined($property,. |
82160 | 24 64 65 66 69 6e 69 74 69 6f 6e 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a | $definition,.$path,.$i);.}.}.... |
82180 | 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 6f 70 | ......protected.function.getProp |
821a0 | 65 72 74 79 28 24 65 6c 65 6d 65 6e 74 2c 20 24 70 72 6f 70 65 72 74 79 2c 20 24 66 61 6c 6c 62 | erty($element,.$property,.$fallb |
821c0 | 61 63 6b 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 65 6c 65 6d | ack.=.null).{.if.(is_array($elem |
821e0 | 65 6e 74 29 20 29 20 7b 0a 72 65 74 75 72 6e 20 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 | ent).).{.return.array_key_exists |
82200 | 28 24 70 72 6f 70 65 72 74 79 2c 20 24 65 6c 65 6d 65 6e 74 29 20 3f 20 24 65 6c 65 6d 65 6e 74 | ($property,.$element).?.$element |
82220 | 5b 24 70 72 6f 70 65 72 74 79 5d 20 3a 20 24 66 61 6c 6c 62 61 63 6b 3b 0a 7d 20 65 6c 73 65 20 | [$property].:.$fallback;.}.else. |
82240 | 7b 0a 72 65 74 75 72 6e 20 69 73 73 65 74 28 24 65 6c 65 6d 65 6e 74 2d 3e 24 70 72 6f 70 65 72 | {.return.isset($element->$proper |
82260 | 74 79 29 20 3f 20 24 65 6c 65 6d 65 6e 74 2d 3e 24 70 72 6f 70 65 72 74 79 20 3a 20 24 66 61 6c | ty).?.$element->$property.:.$fal |
82280 | 6c 62 61 63 6b 3b 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f | lback;.}.}.}<?php..namespace.Jso |
822a0 | 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 69 6e 74 65 72 | nSchema\Constraints;.......inter |
822c0 | 66 61 63 65 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 0a 0a 0a 0a 0a | face.ConstraintInterface.{...... |
822e0 | 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 | function.getErrors();.......func |
82300 | 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 73 28 61 72 72 61 79 20 24 65 72 72 6f 72 73 29 3b 0a 0a | tion.addErrors(array.$errors);.. |
82320 | 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 24 | ......function.addError($path,.$ |
82340 | 6d 65 73 73 61 67 65 29 3b 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 64 | message);.......function.isValid |
82360 | 28 29 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 | ();...........function.check($va |
82380 | 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c | lue,.$schema.=.null,.$path.=.nul |
823a0 | 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 3b 0a 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 | l,.$i.=.null);.}<?php..namespace |
823c0 | 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a | .JsonSchema\Constraints;........ |
823e0 | 61 62 73 74 72 61 63 74 20 63 6c 61 73 73 20 43 6f 6e 73 74 72 61 69 6e 74 20 69 6d 70 6c 65 6d | abstract.class.Constraint.implem |
82400 | 65 6e 74 73 20 43 6f 6e 73 74 72 61 69 6e 74 49 6e 74 65 72 66 61 63 65 0a 7b 0a 70 72 6f 74 65 | ents.ConstraintInterface.{.prote |
82420 | 63 74 65 64 20 24 63 68 65 63 6b 4d 6f 64 65 20 3d 20 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 4d 4f | cted.$checkMode.=.self::CHECK_MO |
82440 | 44 45 5f 4e 4f 52 4d 41 4c 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 65 72 72 6f 72 73 20 3d 20 61 | DE_NORMAL;.protected.$errors.=.a |
82460 | 72 72 61 79 28 29 3b 0a 70 72 6f 74 65 63 74 65 64 20 24 69 6e 6c 69 6e 65 53 63 68 65 6d 61 50 | rray();.protected.$inlineSchemaP |
82480 | 72 6f 70 65 72 74 79 20 3d 20 27 24 73 63 68 65 6d 61 27 3b 0a 0a 63 6f 6e 73 74 20 43 48 45 43 | roperty.=.'$schema';..const.CHEC |
824a0 | 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 20 3d 20 31 3b 0a 63 6f 6e 73 74 20 43 48 45 43 4b 5f 4d | K_MODE_NORMAL.=.1;.const.CHECK_M |
824c0 | 4f 44 45 5f 54 59 50 45 5f 43 41 53 54 20 3d 20 32 3b 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 | ODE_TYPE_CAST.=.2;.....public.fu |
824e0 | 6e 63 74 69 6f 6e 20 5f 5f 63 6f 6e 73 74 72 75 63 74 28 24 63 68 65 63 6b 4d 6f 64 65 20 3d 20 | nction.__construct($checkMode.=. |
82500 | 73 65 6c 66 3a 3a 43 48 45 43 4b 5f 4d 4f 44 45 5f 4e 4f 52 4d 41 4c 29 0a 7b 0a 24 74 68 69 73 | self::CHECK_MODE_NORMAL).{.$this |
82520 | 2d 3e 63 68 65 63 6b 4d 6f 64 65 20 3d 20 24 63 68 65 63 6b 4d 6f 64 65 3b 0a 7d 0a 0a 0a 0a 0a | ->checkMode.=.$checkMode;.}..... |
82540 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 | public.function.addError($path,. |
82560 | 24 6d 65 73 73 61 67 65 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 5b 5d 20 3d 20 61 72 | $message).{.$this->errors[].=.ar |
82580 | 72 61 79 28 0a 27 70 72 6f 70 65 72 74 79 27 20 3d 3e 20 24 70 61 74 68 2c 0a 27 6d 65 73 73 61 | ray(.'property'.=>.$path,.'messa |
825a0 | 67 65 27 20 3d 3e 20 24 6d 65 73 73 61 67 65 0a 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 | ge'.=>.$message.);.}.....public. |
825c0 | 66 75 6e 63 74 69 6f 6e 20 61 64 64 45 72 72 6f 72 73 28 61 72 72 61 79 20 24 65 72 72 6f 72 73 | function.addErrors(array.$errors |
825e0 | 29 0a 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 | ).{.$this->errors.=.array_merge( |
82600 | 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 2c 20 24 65 72 72 6f 72 73 29 3b 0a 7d 0a 0a 0a 0a 0a 70 | $this->errors,.$errors);.}.....p |
82620 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 45 72 72 6f 72 73 28 29 0a 7b 0a 72 65 74 | ublic.function.getErrors().{.ret |
82640 | 75 72 6e 20 61 72 72 61 79 5f 75 6e 69 71 75 65 28 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 2c 20 | urn.array_unique($this->errors,. |
82660 | 53 4f 52 54 5f 52 45 47 55 4c 41 52 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | SORT_REGULAR);.}.........protect |
82680 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 69 6e 63 72 65 6d 65 6e 74 50 61 74 68 28 24 70 61 74 68 2c | ed.function.incrementPath($path, |
826a0 | 20 24 69 29 0a 7b 0a 69 66 20 28 24 70 61 74 68 20 21 3d 3d 20 27 27 29 20 7b 0a 69 66 20 28 69 | .$i).{.if.($path.!==.'').{.if.(i |
826c0 | 73 5f 69 6e 74 28 24 69 29 29 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 5b 27 20 2e 20 24 69 20 2e | s_int($i)).{.$path..=.'['...$i.. |
826e0 | 20 27 5d 27 3b 0a 7d 20 65 6c 73 65 20 69 66 20 28 24 69 20 3d 3d 20 27 27 29 20 7b 0a 24 70 61 | .']';.}.else.if.($i.==.'').{.$pa |
82700 | 74 68 20 2e 3d 20 27 27 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 2e 3d 20 27 2e 27 20 | th..=.'';.}.else.{.$path..=.'.'. |
82720 | 2e 20 24 69 3b 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 24 70 61 74 68 20 3d 20 24 69 3b 0a 7d 0a 0a | ..$i;.}.}.else.{.$path.=.$i;.}.. |
82740 | 72 65 74 75 72 6e 20 24 70 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 | return.$path;.}..........protect |
82760 | 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 41 72 72 61 79 28 24 76 61 6c 75 65 2c 20 24 | ed.function.checkArray($value,.$ |
82780 | 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 | schema.=.null,.$path.=.null,.$i. |
827a0 | 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 43 6f 6c 6c 65 | =.null).{.$validator.=.new.Colle |
827c0 | 63 74 69 6f 6e 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 3b 0a 24 76 61 6c 69 64 61 | ction($this->checkMode);.$valida |
827e0 | 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 | tor->check($value,.$schema,.$pat |
82800 | 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 | h,.$i);..$this->addErrors($valid |
82820 | 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 | ator->getErrors());.}..........p |
82840 | 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4f 62 6a 65 63 74 28 24 76 | rotected.function.checkObject($v |
82860 | 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 | alue,.$schema.=.null,.$path.=.nu |
82880 | 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 | ll,.$i.=.null).{.$validator.=.ne |
828a0 | 77 20 4f 62 6a 65 63 74 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 3b 0a 24 76 61 6c | w.Object($this->checkMode);.$val |
828c0 | 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 | idator->check($value,.$schema,.$ |
828e0 | 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 | path,.$i);..$this->addErrors($va |
82900 | 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a | lidator->getErrors());.}........ |
82920 | 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 54 79 70 65 28 24 | ..protected.function.checkType($ |
82940 | 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e | value,.$schema.=.null,.$path.=.n |
82960 | 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e | ull,.$i.=.null).{.$validator.=.n |
82980 | 65 77 20 54 79 70 65 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 3b 0a 24 76 61 6c 69 | ew.Type($this->checkMode);.$vali |
829a0 | 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 | dator->check($value,.$schema,.$p |
829c0 | 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c | ath,.$i);..$this->addErrors($val |
829e0 | 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a | idator->getErrors());.}......... |
82a00 | 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 55 6e 64 65 66 69 6e | .protected.function.checkUndefin |
82a20 | 65 64 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 | ed($value,.$schema.=.null,.$path |
82a40 | 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f 72 | .=.null,.$i.=.null).{.$validator |
82a60 | 20 3d 20 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 | .=.new.Undefined($this->checkMod |
82a80 | 65 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 | e);.$validator->check($value,.$s |
82aa0 | 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 | chema,.$path,.$i);..$this->addEr |
82ac0 | 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d | rors($validator->getErrors());.} |
82ae0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 | ..........protected.function.che |
82b00 | 63 6b 53 74 72 69 6e 67 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c | ckString($value,.$schema.=.null, |
82b20 | 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c | .$path.=.null,.$i.=.null).{.$val |
82b40 | 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 53 74 72 69 6e 67 28 24 74 68 69 73 2d 3e 63 68 65 63 6b | idator.=.new.String($this->check |
82b60 | 4d 6f 64 65 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c | Mode);.$validator->check($value, |
82b80 | 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e 61 64 | .$schema,.$path,.$i);..$this->ad |
82ba0 | 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 | dErrors($validator->getErrors()) |
82bc0 | 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 | ;.}..........protected.function. |
82be0 | 63 68 65 63 6b 4e 75 6d 62 65 72 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 | checkNumber($value,.$schema.=.nu |
82c00 | 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 | ll,.$path.=.null,.$i.=.null).{.$ |
82c20 | 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 4e 75 6d 62 65 72 28 24 74 68 69 73 2d 3e 63 68 | validator.=.new.Number($this->ch |
82c40 | 65 63 6b 4d 6f 64 65 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c | eckMode);.$validator->check($val |
82c60 | 75 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d | ue,.$schema,.$path,.$i);..$this- |
82c80 | 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 | >addErrors($validator->getErrors |
82ca0 | 28 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 | ());.}..........protected.functi |
82cc0 | 6f 6e 20 63 68 65 63 6b 45 6e 75 6d 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e | on.checkEnum($value,.$schema.=.n |
82ce0 | 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a | ull,.$path.=.null,.$i.=.null).{. |
82d00 | 24 76 61 6c 69 64 61 74 6f 72 20 3d 20 6e 65 77 20 45 6e 75 6d 28 24 74 68 69 73 2d 3e 63 68 65 | $validator.=.new.Enum($this->che |
82d20 | 63 6b 4d 6f 64 65 29 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 | ckMode);.$validator->check($valu |
82d40 | 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 0a 24 74 68 69 73 2d 3e | e,.$schema,.$path,.$i);..$this-> |
82d60 | 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 | addErrors($validator->getErrors( |
82d80 | 29 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 69 73 56 61 6c 69 | ));.}.....public.function.isVali |
82da0 | 64 28 29 0a 7b 0a 72 65 74 75 72 6e 20 21 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 | d().{.return.!$this->getErrors() |
82dc0 | 3b 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 | ;.}.}<?php..namespace.JsonSchema |
82de0 | 5c 43 6f 6e 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6f 6c 6c 65 | \Constraints;........class.Colle |
82e00 | 63 74 69 6f 6e 20 65 78 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 | ction.extends.Constraint.{....pu |
82e20 | 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 | blic.function.check($value,.$sch |
82e40 | 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e | ema.=.null,.$path.=.null,.$i.=.n |
82e60 | 75 6c 6c 29 0a 7b 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 | ull).{...if.(isset($schema->minI |
82e80 | 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3c 20 24 73 63 68 65 6d 61 | tems).&&.count($value).<.$schema |
82ea0 | 2d 3e 6d 69 6e 49 74 65 6d 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 | ->minItems).{.$this->addError($p |
82ec0 | 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 61 20 6d 69 6e 69 6d 75 6d 20 6f 66 | ath,."There.must.be.a.minimum.of |
82ee0 | 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 49 74 65 6d 73 20 2e 20 22 20 69 6e 20 74 68 | ."...$schema->minItems...".in.th |
82f00 | 65 20 61 72 72 61 79 22 29 3b 0a 7d 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 | e.array");.}...if.(isset($schema |
82f20 | 2d 3e 6d 61 78 49 74 65 6d 73 29 20 26 26 20 63 6f 75 6e 74 28 24 76 61 6c 75 65 29 20 3e 20 24 | ->maxItems).&&.count($value).>.$ |
82f40 | 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 | schema->maxItems).{.$this->addEr |
82f60 | 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 61 20 6d 61 78 69 | ror($path,."There.must.be.a.maxi |
82f80 | 6d 75 6d 20 6f 66 20 22 20 2e 20 24 73 63 68 65 6d 61 2d 3e 6d 61 78 49 74 65 6d 73 20 2e 20 22 | mum.of."...$schema->maxItems..." |
82fa0 | 20 69 6e 20 74 68 65 20 61 72 72 61 79 22 29 3b 0a 7d 0a 0a 20 0a 20 69 66 20 28 69 73 73 65 74 | .in.the.array");.}.....if.(isset |
82fc0 | 28 24 73 63 68 65 6d 61 2d 3e 75 6e 69 71 75 65 49 74 65 6d 73 29 20 26 26 20 61 72 72 61 79 5f | ($schema->uniqueItems).&&.array_ |
82fe0 | 75 6e 69 71 75 65 28 24 76 61 6c 75 65 29 20 21 3d 20 24 76 61 6c 75 65 29 20 7b 0a 24 74 68 69 | unique($value).!=.$value).{.$thi |
83000 | 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 54 68 65 72 65 20 61 72 65 20 6e 6f | s->addError($path,."There.are.no |
83020 | 20 64 75 70 6c 69 63 61 74 65 73 20 61 6c 6c 6f 77 65 64 20 69 6e 20 74 68 65 20 61 72 72 61 79 | .duplicates.allowed.in.the.array |
83040 | 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d | ");.}....if.(isset($schema->item |
83060 | 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 76 61 6c 69 64 61 74 65 49 74 65 6d 73 28 24 76 61 6c 75 | s)).{.$this->validateItems($valu |
83080 | 65 2c 20 24 73 63 68 65 6d 61 2c 20 24 70 61 74 68 2c 20 24 69 29 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a | e,.$schema,.$path,.$i);.}.}..... |
830a0 | 0a 0a 0a 0a 0a 70 72 6f 74 65 63 74 65 64 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 69 64 61 74 65 | .....protected.function.validate |
830c0 | 49 74 65 6d 73 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 | Items($value,.$schema.=.null,.$p |
830e0 | 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 69 66 20 28 21 69 73 | ath.=.null,.$i.=.null).{.if.(!is |
83100 | 5f 61 72 72 61 79 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 29 29 20 7b 0a 0a 20 66 6f 72 65 | _array($schema->items)).{...fore |
83120 | 61 63 68 20 28 24 76 61 6c 75 65 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 24 69 6e 69 74 | ach.($value.as.$k.=>.$v).{.$init |
83140 | 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 0a 0a 20 | Errors.=.$this->getErrors();.... |
83160 | 69 66 20 28 21 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 | if.(!isset($schema->additionalIt |
83180 | 65 6d 73 29 20 7c 7c 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 | ems).||.$schema->additionalItems |
831a0 | 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 | .===.false).{.$this->checkUndefi |
831c0 | 6e 65 64 28 24 76 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 2c 20 24 70 61 74 68 2c 20 24 | ned($v,.$schema->items,.$path,.$ |
831e0 | 6b 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 63 6f 75 6e 74 28 24 69 6e 69 74 45 72 72 6f 72 73 29 20 | k);.}....if.(count($initErrors). |
83200 | 3c 20 63 6f 75 6e 74 28 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 26 26 20 28 | <.count($this->getErrors()).&&.( |
83220 | 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 29 20 | isset($schema->additionalItems). |
83240 | 26 26 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 20 21 3d 3d 20 | &&.$schema->additionalItems.!==. |
83260 | 66 61 6c 73 65 29 29 20 7b 0a 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 20 3d 20 24 74 68 69 73 2d | false)).{.$secondErrors.=.$this- |
83280 | 3e 67 65 74 45 72 72 6f 72 73 28 29 3b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 | >getErrors();.$this->checkUndefi |
832a0 | 6e 65 64 28 24 76 2c 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 | ned($v,.$schema->additionalItems |
832c0 | 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 65 | ,.$path,.$k);.}....if.(isset($se |
832e0 | 63 6f 6e 64 45 72 72 6f 72 73 29 20 26 26 20 63 6f 75 6e 74 28 24 73 65 63 6f 6e 64 45 72 72 6f | condErrors).&&.count($secondErro |
83300 | 72 73 29 20 3c 20 24 74 68 69 73 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 20 7b 0a 24 74 68 69 | rs).<.$this->getErrors()).{.$thi |
83320 | 73 2d 3e 65 72 72 6f 72 73 20 3d 20 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 3b 0a 7d 20 65 6c 73 | s->errors.=.$secondErrors;.}.els |
83340 | 65 69 66 20 28 69 73 73 65 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 26 26 20 63 6f 75 | eif.(isset($secondErrors).&&.cou |
83360 | 6e 74 28 24 73 65 63 6f 6e 64 45 72 72 6f 72 73 29 20 3d 3d 20 63 6f 75 6e 74 28 24 74 68 69 73 | nt($secondErrors).==.count($this |
83380 | 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 29 20 7b 0a 24 74 68 69 73 2d 3e 65 72 72 6f 72 73 20 | ->getErrors())).{.$this->errors. |
833a0 | 3d 20 24 69 6e 69 74 45 72 72 6f 72 73 3b 0a 7d 0a 7d 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 66 6f | =.$initErrors;.}.}.}.else.{...fo |
833c0 | 72 65 61 63 68 20 28 24 76 61 6c 75 65 20 61 73 20 24 6b 20 3d 3e 20 24 76 29 20 7b 0a 69 66 20 | reach.($value.as.$k.=>.$v).{.if. |
833e0 | 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 74 73 28 24 6b 2c 20 24 73 63 68 65 6d 61 2d 3e 69 | (array_key_exists($k,.$schema->i |
83400 | 74 65 6d 73 29 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 | tems)).{.$this->checkUndefined($ |
83420 | 76 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 6d 73 5b 24 6b 5d 2c 20 24 70 61 74 68 2c 20 24 6b | v,.$schema->items[$k],.$path,.$k |
83440 | 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 69 66 20 28 61 72 72 61 79 5f 6b 65 79 5f 65 78 69 73 | );.}.else.{...if.(array_key_exis |
83460 | 74 73 28 27 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 27 2c 20 24 73 63 68 65 6d 61 29 20 26 | ts('additionalItems',.$schema).& |
83480 | 26 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 20 21 3d 3d 20 66 | &.$schema->additionalItems.!==.f |
834a0 | 61 6c 73 65 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e 65 64 28 24 76 | alse).{.$this->checkUndefined($v |
834c0 | 2c 20 24 73 63 68 65 6d 61 2d 3e 61 64 64 69 74 69 6f 6e 61 6c 49 74 65 6d 73 2c 20 24 70 61 74 | ,.$schema->additionalItems,.$pat |
834e0 | 68 2c 20 24 6b 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 | h,.$k);.}.else.{.$this->addError |
83500 | 28 0a 24 70 61 74 68 2c 0a 27 54 68 65 20 69 74 65 6d 20 27 20 2e 20 24 69 20 2e 20 27 5b 27 20 | (.$path,.'The.item.'...$i...'['. |
83520 | 2e 20 24 6b 20 2e 20 27 5d 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 20 69 6e 20 74 68 65 20 | ..$k...'].is.not.defined.in.the. |
83540 | 6f 62 6a 54 79 70 65 44 65 66 20 61 6e 64 20 74 68 65 20 6f 62 6a 54 79 70 65 44 65 66 20 64 6f | objTypeDef.and.the.objTypeDef.do |
83560 | 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 70 72 6f 70 65 72 74 69 | es.not.allow.additional.properti |
83580 | 65 73 27 0a 29 3b 0a 7d 0a 7d 0a 7d 0a 0a 0a 20 66 6f 72 20 28 24 6b 20 3d 20 63 6f 75 6e 74 28 | es'.);.}.}.}....for.($k.=.count( |
835a0 | 24 76 61 6c 75 65 29 3b 20 24 6b 20 3c 20 63 6f 75 6e 74 28 24 73 63 68 65 6d 61 2d 3e 69 74 65 | $value);.$k.<.count($schema->ite |
835c0 | 6d 73 29 3b 20 24 6b 2b 2b 29 20 7b 0a 24 74 68 69 73 2d 3e 63 68 65 63 6b 55 6e 64 65 66 69 6e | ms);.$k++).{.$this->checkUndefin |
835e0 | 65 64 28 6e 65 77 20 55 6e 64 65 66 69 6e 65 64 28 29 2c 20 24 73 63 68 65 6d 61 2d 3e 69 74 65 | ed(new.Undefined(),.$schema->ite |
83600 | 6d 73 5b 24 6b 5d 2c 20 24 70 61 74 68 2c 20 24 6b 29 3b 0a 7d 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 | ms[$k],.$path,.$k);.}.}.}.}<?php |
83620 | 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e | ..namespace.JsonSchema\Constrain |
83640 | 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 45 6e 75 6d 20 65 78 74 65 6e 64 73 20 43 6f | ts;........class.Enum.extends.Co |
83660 | 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 63 68 | nstraint.{....public.function.ch |
83680 | 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 | eck($element,.$schema.=.null,.$p |
836a0 | 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 66 6f 72 65 61 63 68 | ath.=.null,.$i.=.null).{.foreach |
836c0 | 20 28 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 20 61 73 20 24 70 6f 73 73 69 62 6c 65 56 61 6c 75 | .($schema->enum.as.$possibleValu |
836e0 | 65 29 20 7b 0a 69 66 20 28 24 70 6f 73 73 69 62 6c 65 56 61 6c 75 65 20 3d 3d 20 24 65 6c 65 6d | e).{.if.($possibleValue.==.$elem |
83700 | 65 6e 74 29 20 7b 0a 24 66 6f 75 6e 64 20 3d 20 74 72 75 65 3b 0a 62 72 65 61 6b 3b 0a 7d 0a 7d | ent).{.$found.=.true;.break;.}.} |
83720 | 0a 0a 69 66 20 28 21 69 73 73 65 74 28 24 66 6f 75 6e 64 29 29 20 7b 0a 24 74 68 69 73 2d 3e 61 | ..if.(!isset($found)).{.$this->a |
83740 | 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 61 20 | ddError($path,."does.not.have.a. |
83760 | 76 61 6c 75 65 20 69 6e 20 74 68 65 20 65 6e 75 6d 65 72 61 74 69 6f 6e 20 22 20 2e 20 69 6d 70 | value.in.the.enumeration."...imp |
83780 | 6c 6f 64 65 28 27 2c 20 27 2c 20 24 73 63 68 65 6d 61 2d 3e 65 6e 75 6d 29 29 3b 0a 7d 0a 7d 0a | lode(',.',.$schema->enum));.}.}. |
837a0 | 7d 3c 3f 70 68 70 0a 0a 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e | }<?php..namespace.JsonSchema\Con |
837c0 | 73 74 72 61 69 6e 74 73 3b 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 53 74 72 69 6e 67 20 65 78 | straints;........class.String.ex |
837e0 | 74 65 6e 64 73 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e | tends.Constraint.{....public.fun |
83800 | 63 74 69 6f 6e 20 63 68 65 63 6b 28 24 65 6c 65 6d 65 6e 74 2c 20 24 73 63 68 65 6d 61 20 3d 20 | ction.check($element,.$schema.=. |
83820 | 6e 75 6c 6c 2c 20 24 70 61 74 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b | null,.$path.=.null,.$i.=.null).{ |
83840 | 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 61 78 4c 65 6e 67 74 68 29 | ...if.(isset($schema->maxLength) |
83860 | 20 26 26 20 73 74 72 6c 65 6e 28 24 65 6c 65 6d 65 6e 74 29 20 3e 20 24 73 63 68 65 6d 61 2d 3e | .&&.strlen($element).>.$schema-> |
83880 | 6d 61 78 4c 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 | maxLength).{.$this->addError($pa |
838a0 | 74 68 2c 20 22 6d 75 73 74 20 62 65 20 61 74 20 6d 6f 73 74 20 22 20 2e 20 24 73 63 68 65 6d 61 | th,."must.be.at.most."...$schema |
838c0 | 2d 3e 6d 61 78 4c 65 6e 67 74 68 20 2e 20 22 20 63 68 61 72 61 63 74 65 72 73 20 6c 6f 6e 67 22 | ->maxLength...".characters.long" |
838e0 | 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 | );.}....if.(isset($schema->minLe |
83900 | 6e 67 74 68 29 20 26 26 20 73 74 72 6c 65 6e 28 24 65 6c 65 6d 65 6e 74 29 20 3c 20 24 73 63 68 | ngth).&&.strlen($element).<.$sch |
83920 | 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f | ema->minLength).{.$this->addErro |
83940 | 72 28 24 70 61 74 68 2c 20 22 6d 75 73 74 20 62 65 20 61 74 20 6c 65 61 73 74 20 22 20 2e 20 24 | r($path,."must.be.at.least."...$ |
83960 | 73 63 68 65 6d 61 2d 3e 6d 69 6e 4c 65 6e 67 74 68 20 2e 20 22 20 63 68 61 72 61 63 74 65 72 73 | schema->minLength...".characters |
83980 | 20 6c 6f 6e 67 22 29 3b 0a 7d 0a 0a 0a 20 69 66 20 28 69 73 73 65 74 28 24 73 63 68 65 6d 61 2d | .long");.}....if.(isset($schema- |
839a0 | 3e 70 61 74 74 65 72 6e 29 20 26 26 20 21 70 72 65 67 5f 6d 61 74 63 68 28 27 2f 27 20 2e 20 24 | >pattern).&&.!preg_match('/'...$ |
839c0 | 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 20 2e 20 27 2f 27 2c 20 24 65 6c 65 6d 65 6e 74 29 | schema->pattern...'/',.$element) |
839e0 | 29 20 7b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 28 24 70 61 74 68 2c 20 22 64 6f 65 73 | ).{.$this->addError($path,."does |
83a00 | 20 6e 6f 74 20 6d 61 74 63 68 20 74 68 65 20 72 65 67 65 78 20 70 61 74 74 65 72 6e 20 22 20 2e | .not.match.the.regex.pattern.".. |
83a20 | 20 24 73 63 68 65 6d 61 2d 3e 70 61 74 74 65 72 6e 29 3b 0a 7d 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a | .$schema->pattern);.}.}.}<?php.. |
83a40 | 6e 61 6d 65 73 70 61 63 65 20 4a 73 6f 6e 53 63 68 65 6d 61 3b 0a 0a 75 73 65 20 4a 73 6f 6e 53 | namespace.JsonSchema;..use.JsonS |
83a60 | 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 5c 53 63 68 65 6d 61 3b 0a 75 73 65 20 4a 73 | chema\Constraints\Schema;.use.Js |
83a80 | 6f 6e 53 63 68 65 6d 61 5c 43 6f 6e 73 74 72 61 69 6e 74 73 5c 43 6f 6e 73 74 72 61 69 6e 74 3b | onSchema\Constraints\Constraint; |
83aa0 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 56 61 6c 69 64 61 74 6f 72 20 65 78 74 65 6e 64 73 | .........class.Validator.extends |
83ac0 | 20 43 6f 6e 73 74 72 61 69 6e 74 0a 7b 0a 0a 0a 0a 0a 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 | .Constraint.{........function.ch |
83ae0 | 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 65 6d 61 20 3d 20 6e 75 6c 6c 2c 20 24 70 61 74 | eck($value,.$schema.=.null,.$pat |
83b00 | 68 20 3d 20 6e 75 6c 6c 2c 20 24 69 20 3d 20 6e 75 6c 6c 29 0a 7b 0a 24 76 61 6c 69 64 61 74 6f | h.=.null,.$i.=.null).{.$validato |
83b20 | 72 20 3d 20 6e 65 77 20 53 63 68 65 6d 61 28 24 74 68 69 73 2d 3e 63 68 65 63 6b 4d 6f 64 65 29 | r.=.new.Schema($this->checkMode) |
83b40 | 3b 0a 24 76 61 6c 69 64 61 74 6f 72 2d 3e 63 68 65 63 6b 28 24 76 61 6c 75 65 2c 20 24 73 63 68 | ;.$validator->check($value,.$sch |
83b60 | 65 6d 61 29 3b 0a 24 74 68 69 73 2d 3e 61 64 64 45 72 72 6f 72 73 28 24 76 61 6c 69 64 61 74 6f | ema);.$this->addErrors($validato |
83b80 | 72 2d 3e 67 65 74 45 72 72 6f 72 73 28 29 29 3b 0a 7d 0a 7d 3c 3f 70 68 70 0a 0a 0a 69 66 20 28 | r->getErrors());.}.}<?php...if.( |
83ba0 | 21 63 6c 61 73 73 5f 65 78 69 73 74 73 28 27 43 6f 6d 70 6f 73 65 72 5c 5c 41 75 74 6f 6c 6f 61 | !class_exists('Composer\\Autoloa |
83bc0 | 64 5c 5c 43 6c 61 73 73 4c 6f 61 64 65 72 27 2c 20 66 61 6c 73 65 29 29 20 7b 0a 72 65 71 75 69 | d\\ClassLoader',.false)).{.requi |
83be0 | 72 65 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f 63 6f 6d 70 6f 73 65 72 27 20 2e 20 27 2f 43 6c 61 | re.__DIR__...'/composer'...'/Cla |
83c00 | 73 73 4c 6f 61 64 65 72 2e 70 68 70 27 3b 0a 7d 0a 0a 72 65 74 75 72 6e 20 63 61 6c 6c 5f 75 73 | ssLoader.php';.}..return.call_us |
83c20 | 65 72 5f 66 75 6e 63 28 66 75 6e 63 74 69 6f 6e 28 29 20 7b 0a 24 6c 6f 61 64 65 72 20 3d 20 6e | er_func(function().{.$loader.=.n |
83c40 | 65 77 20 5c 43 6f 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 5c 43 6c 61 73 73 4c 6f 61 64 65 | ew.\Composer\Autoload\ClassLoade |
83c60 | 72 28 29 3b 0a 24 63 6f 6d 70 6f 73 65 72 44 69 72 20 3d 20 5f 5f 44 49 52 5f 5f 20 2e 20 27 2f | r();.$composerDir.=.__DIR__...'/ |
83c80 | 63 6f 6d 70 6f 73 65 72 27 3b 0a 0a 24 6d 61 70 20 3d 20 72 65 71 75 69 72 65 20 24 63 6f 6d 70 | composer';..$map.=.require.$comp |
83ca0 | 6f 73 65 72 44 69 72 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f 6e 61 6d 65 73 70 61 63 65 73 2e | oserDir...'/autoload_namespaces. |
83cc0 | 70 68 70 27 3b 0a 66 6f 72 65 61 63 68 20 28 24 6d 61 70 20 61 73 20 24 6e 61 6d 65 73 70 61 63 | php';.foreach.($map.as.$namespac |
83ce0 | 65 20 3d 3e 20 24 70 61 74 68 29 20 7b 0a 24 6c 6f 61 64 65 72 2d 3e 61 64 64 28 24 6e 61 6d 65 | e.=>.$path).{.$loader->add($name |
83d00 | 73 70 61 63 65 2c 20 24 70 61 74 68 29 3b 0a 7d 0a 0a 24 63 6c 61 73 73 4d 61 70 20 3d 20 72 65 | space,.$path);.}..$classMap.=.re |
83d20 | 71 75 69 72 65 20 24 63 6f 6d 70 6f 73 65 72 44 69 72 20 2e 20 27 2f 61 75 74 6f 6c 6f 61 64 5f | quire.$composerDir...'/autoload_ |
83d40 | 63 6c 61 73 73 6d 61 70 2e 70 68 70 27 3b 0a 69 66 20 28 24 63 6c 61 73 73 4d 61 70 29 20 7b 0a | classmap.php';.if.($classMap).{. |
83d60 | 24 6c 6f 61 64 65 72 2d 3e 61 64 64 43 6c 61 73 73 4d 61 70 28 24 63 6c 61 73 73 4d 61 70 29 3b | $loader->addClassMap($classMap); |
83d80 | 0a 7d 0a 0a 24 6c 6f 61 64 65 72 2d 3e 72 65 67 69 73 74 65 72 28 29 3b 0a 0a 72 65 74 75 72 6e | .}..$loader->register();..return |
83da0 | 20 24 6c 6f 61 64 65 72 3b 0a 7d 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 24 76 65 6e 64 6f 72 44 69 | .$loader;.});.<?php....$vendorDi |
83dc0 | 72 20 3d 20 64 69 72 6e 61 6d 65 28 5f 5f 44 49 52 5f 5f 29 3b 0a 24 62 61 73 65 44 69 72 20 3d | r.=.dirname(__DIR__);.$baseDir.= |
83de0 | 20 64 69 72 6e 61 6d 65 28 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 | .dirname($vendorDir);..return.ar |
83e00 | 72 61 79 28 0a 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 50 72 6f 63 65 73 | ray(.'Symfony\\Component\\Proces |
83e20 | 73 27 20 3d 3e 20 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 70 72 6f | s'.=>.$vendorDir...'/symfony/pro |
83e40 | 63 65 73 73 2f 27 2c 0a 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 46 69 6e | cess/',.'Symfony\\Component\\Fin |
83e60 | 64 65 72 27 20 3d 3e 20 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 2f 66 | der'.=>.$vendorDir...'/symfony/f |
83e80 | 69 6e 64 65 72 2f 27 2c 0a 27 53 79 6d 66 6f 6e 79 5c 5c 43 6f 6d 70 6f 6e 65 6e 74 5c 5c 43 6f | inder/',.'Symfony\\Component\\Co |
83ea0 | 6e 73 6f 6c 65 27 20 3d 3e 20 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 79 6d 66 6f 6e 79 | nsole'.=>.$vendorDir...'/symfony |
83ec0 | 2f 63 6f 6e 73 6f 6c 65 2f 27 2c 0a 27 53 65 6c 64 5c 5c 4a 73 6f 6e 4c 69 6e 74 27 20 3d 3e 20 | /console/',.'Seld\\JsonLint'.=>. |
83ee0 | 24 76 65 6e 64 6f 72 44 69 72 20 2e 20 27 2f 73 65 6c 64 2f 6a 73 6f 6e 6c 69 6e 74 2f 73 72 63 | $vendorDir...'/seld/jsonlint/src |
83f00 | 2f 27 2c 0a 27 4a 73 6f 6e 53 63 68 65 6d 61 27 20 3d 3e 20 24 76 65 6e 64 6f 72 44 69 72 20 2e | /',.'JsonSchema'.=>.$vendorDir.. |
83f20 | 20 27 2f 6a 75 73 74 69 6e 72 61 69 6e 62 6f 77 2f 6a 73 6f 6e 2d 73 63 68 65 6d 61 2f 73 72 63 | .'/justinrainbow/json-schema/src |
83f40 | 2f 27 2c 0a 27 43 6f 6d 70 6f 73 65 72 27 20 3d 3e 20 24 62 61 73 65 44 69 72 20 2e 20 27 2f 73 | /',.'Composer'.=>.$baseDir...'/s |
83f60 | 72 63 2f 27 2c 0a 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 24 76 65 6e 64 6f 72 44 69 72 20 3d 20 64 | rc/',.);.<?php....$vendorDir.=.d |
83f80 | 69 72 6e 61 6d 65 28 5f 5f 44 49 52 5f 5f 29 3b 0a 24 62 61 73 65 44 69 72 20 3d 20 64 69 72 6e | irname(__DIR__);.$baseDir.=.dirn |
83fa0 | 61 6d 65 28 24 76 65 6e 64 6f 72 44 69 72 29 3b 0a 0a 72 65 74 75 72 6e 20 61 72 72 61 79 28 0a | ame($vendorDir);..return.array(. |
83fc0 | 29 3b 0a 3c 3f 70 68 70 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 6e 61 6d 65 73 70 61 63 65 20 43 6f | );.<?php............namespace.Co |
83fe0 | 6d 70 6f 73 65 72 5c 41 75 74 6f 6c 6f 61 64 3b 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a | mposer\Autoload;................ |
84000 | 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 0a 63 6c 61 73 73 20 43 6c 61 73 73 4c 6f 61 64 65 72 0a | ..............class.ClassLoader. |
84020 | 7b 0a 70 72 69 76 61 74 65 20 24 70 72 65 66 69 78 65 73 20 3d 20 61 72 72 61 79 28 29 3b 0a 70 | {.private.$prefixes.=.array();.p |
84040 | 72 69 76 61 74 65 20 24 66 61 6c 6c 62 61 63 6b 44 69 72 73 20 3d 20 61 72 72 61 79 28 29 3b 0a | rivate.$fallbackDirs.=.array();. |
84060 | 70 72 69 76 61 74 65 20 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 66 61 6c 73 65 3b | private.$useIncludePath.=.false; |
84080 | 0a 70 72 69 76 61 74 65 20 24 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 70 | .private.$classMap.=.array();..p |
840a0 | 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 72 65 66 69 78 65 73 28 29 0a 7b 0a 72 | ublic.function.getPrefixes().{.r |
840c0 | 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 3b 0a 7d 0a 0a 70 75 62 6c 69 63 | eturn.$this->prefixes;.}..public |
840e0 | 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 46 61 6c 6c 62 61 63 6b 44 69 72 73 28 29 0a 7b 0a 72 65 | .function.getFallbackDirs().{.re |
84100 | 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 3b 0a 7d 0a 0a 70 75 62 | turn.$this->fallbackDirs;.}..pub |
84120 | 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 43 6c 61 73 73 4d 61 70 28 29 0a 7b 0a 72 65 74 | lic.function.getClassMap().{.ret |
84140 | 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 | urn.$this->classMap;.}.....publi |
84160 | 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 43 6c 61 73 73 4d 61 70 28 61 72 72 61 79 20 24 63 6c | c.function.addClassMap(array.$cl |
84180 | 61 73 73 4d 61 70 29 0a 7b 0a 69 66 20 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 29 20 7b | assMap).{.if.($this->classMap).{ |
841a0 | 0a 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 65 28 24 | .$this->classMap.=.array_merge($ |
841c0 | 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 2c 20 24 63 6c 61 73 73 4d 61 70 29 3b 0a 7d 20 65 6c | this->classMap,.$classMap);.}.el |
841e0 | 73 65 20 7b 0a 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 70 20 3d 20 24 63 6c 61 73 73 4d 61 70 | se.{.$this->classMap.=.$classMap |
84200 | 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 61 64 64 | ;.}.}........public.function.add |
84220 | 28 24 70 72 65 66 69 78 2c 20 24 70 61 74 68 73 29 0a 7b 0a 69 66 20 28 21 24 70 72 65 66 69 78 | ($prefix,.$paths).{.if.(!$prefix |
84240 | 29 20 7b 0a 66 6f 72 65 61 63 68 20 28 28 61 72 72 61 79 29 20 24 70 61 74 68 73 20 61 73 20 24 | ).{.foreach.((array).$paths.as.$ |
84260 | 70 61 74 68 29 20 7b 0a 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 6b 44 69 72 73 5b 5d 20 3d 20 | path).{.$this->fallbackDirs[].=. |
84280 | 24 70 61 74 68 3b 0a 7d 0a 0a 72 65 74 75 72 6e 3b 0a 7d 0a 69 66 20 28 69 73 73 65 74 28 24 74 | $path;.}..return;.}.if.(isset($t |
842a0 | 68 69 73 2d 3e 70 72 65 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 29 29 20 7b 0a 24 74 68 69 73 | his->prefixes[$prefix])).{.$this |
842c0 | 2d 3e 70 72 65 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 20 3d 20 61 72 72 61 79 5f 6d 65 72 67 | ->prefixes[$prefix].=.array_merg |
842e0 | 65 28 0a 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 2c 0a 28 61 72 | e(.$this->prefixes[$prefix],.(ar |
84300 | 72 61 79 29 20 24 70 61 74 68 73 0a 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 24 74 68 69 73 2d 3e 70 | ray).$paths.);.}.else.{.$this->p |
84320 | 72 65 66 69 78 65 73 5b 24 70 72 65 66 69 78 5d 20 3d 20 28 61 72 72 61 79 29 20 24 70 61 74 68 | refixes[$prefix].=.(array).$path |
84340 | 73 3b 0a 7d 0a 7d 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 | s;.}.}.......public.function.set |
84360 | 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 24 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 29 0a | UseIncludePath($useIncludePath). |
84380 | 7b 0a 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 3d 20 24 75 73 65 49 6e | {.$this->useIncludePath.=.$useIn |
843a0 | 63 6c 75 64 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 | cludePath;.}........public.funct |
843c0 | 69 6f 6e 20 67 65 74 55 73 65 49 6e 63 6c 75 64 65 50 61 74 68 28 29 0a 7b 0a 72 65 74 75 72 6e | ion.getUseIncludePath().{.return |
843e0 | 20 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a | .$this->useIncludePath;.}....... |
84400 | 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 72 65 67 69 73 74 65 72 28 24 70 72 65 70 65 6e | public.function.register($prepen |
84420 | 64 20 3d 20 66 61 6c 73 65 29 0a 7b 0a 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 5f 72 65 67 69 73 74 | d.=.false).{.spl_autoload_regist |
84440 | 65 72 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c 61 73 73 27 29 2c 20 74 72 | er(array($this,.'loadClass'),.tr |
84460 | 75 65 2c 20 24 70 72 65 70 65 6e 64 29 3b 0a 7d 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 | ue,.$prepend);.}.....public.func |
84480 | 74 69 6f 6e 20 75 6e 72 65 67 69 73 74 65 72 28 29 0a 7b 0a 73 70 6c 5f 61 75 74 6f 6c 6f 61 64 | tion.unregister().{.spl_autoload |
844a0 | 5f 75 6e 72 65 67 69 73 74 65 72 28 61 72 72 61 79 28 24 74 68 69 73 2c 20 27 6c 6f 61 64 43 6c | _unregister(array($this,.'loadCl |
844c0 | 61 73 73 27 29 29 3b 0a 7d 0a 0a 0a 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e | ass'));.}........public.function |
844e0 | 20 6c 6f 61 64 43 6c 61 73 73 28 24 63 6c 61 73 73 29 0a 7b 0a 69 66 20 28 24 66 69 6c 65 20 3d | .loadClass($class).{.if.($file.= |
84500 | 20 24 74 68 69 73 2d 3e 66 69 6e 64 46 69 6c 65 28 24 63 6c 61 73 73 29 29 20 7b 0a 69 6e 63 6c | .$this->findFile($class)).{.incl |
84520 | 75 64 65 20 24 66 69 6c 65 3b 0a 0a 72 65 74 75 72 6e 20 74 72 75 65 3b 0a 7d 0a 7d 0a 0a 0a 0a | ude.$file;..return.true;.}.}.... |
84540 | 0a 0a 0a 0a 0a 70 75 62 6c 69 63 20 66 75 6e 63 74 69 6f 6e 20 66 69 6e 64 46 69 6c 65 28 24 63 | .....public.function.findFile($c |
84560 | 6c 61 73 73 29 0a 7b 0a 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 63 6c 61 73 73 4d 61 | lass).{.if.(isset($this->classMa |
84580 | 70 5b 24 63 6c 61 73 73 5d 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 63 6c 61 73 | p[$class])).{.return.$this->clas |
845a0 | 73 4d 61 70 5b 24 63 6c 61 73 73 5d 3b 0a 7d 0a 0a 69 66 20 28 27 5c 5c 27 20 3d 3d 20 24 63 6c | sMap[$class];.}..if.('\\'.==.$cl |
845c0 | 61 73 73 5b 30 5d 29 20 7b 0a 24 63 6c 61 73 73 20 3d 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 | ass[0]).{.$class.=.substr($class |
845e0 | 2c 20 31 29 3b 0a 7d 0a 0a 69 66 20 28 66 61 6c 73 65 20 21 3d 3d 20 24 70 6f 73 20 3d 20 73 74 | ,.1);.}..if.(false.!==.$pos.=.st |
84600 | 72 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 27 5c 5c 27 29 29 20 7b 0a 0a 20 24 63 6c 61 73 73 50 | rrpos($class,.'\\')).{...$classP |
84620 | 61 74 68 20 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5c 5c 27 2c 20 44 49 52 45 43 54 4f 52 | ath.=.str_replace('\\',.DIRECTOR |
84640 | 59 5f 53 45 50 41 52 41 54 4f 52 2c 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 30 2c 20 24 | Y_SEPARATOR,.substr($class,.0,.$ |
84660 | 70 6f 73 29 29 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 3b 0a 24 63 6c | pos))...DIRECTORY_SEPARATOR;.$cl |
84680 | 61 73 73 4e 61 6d 65 20 3d 20 73 75 62 73 74 72 28 24 63 6c 61 73 73 2c 20 24 70 6f 73 20 2b 20 | assName.=.substr($class,.$pos.+. |
846a0 | 31 29 3b 0a 7d 20 65 6c 73 65 20 7b 0a 0a 20 24 63 6c 61 73 73 50 61 74 68 20 3d 20 6e 75 6c 6c | 1);.}.else.{...$classPath.=.null |
846c0 | 3b 0a 24 63 6c 61 73 73 4e 61 6d 65 20 3d 20 24 63 6c 61 73 73 3b 0a 7d 0a 0a 24 63 6c 61 73 73 | ;.$className.=.$class;.}..$class |
846e0 | 50 61 74 68 20 2e 3d 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 5f 27 2c 20 44 49 52 45 43 54 4f | Path..=.str_replace('_',.DIRECTO |
84700 | 52 59 5f 53 45 50 41 52 41 54 4f 52 2c 20 24 63 6c 61 73 73 4e 61 6d 65 29 20 2e 20 27 2e 70 68 | RY_SEPARATOR,.$className)...'.ph |
84720 | 70 27 3b 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 70 72 65 66 69 78 65 73 20 61 73 | p';..foreach.($this->prefixes.as |
84740 | 20 24 70 72 65 66 69 78 20 3d 3e 20 24 64 69 72 73 29 20 7b 0a 69 66 20 28 30 20 3d 3d 3d 20 73 | .$prefix.=>.$dirs).{.if.(0.===.s |
84760 | 74 72 70 6f 73 28 24 63 6c 61 73 73 2c 20 24 70 72 65 66 69 78 29 29 20 7b 0a 66 6f 72 65 61 63 | trpos($class,.$prefix)).{.foreac |
84780 | 68 20 28 24 64 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 | h.($dirs.as.$dir).{.if.(file_exi |
847a0 | 73 74 73 28 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e | sts($dir...DIRECTORY_SEPARATOR.. |
847c0 | 20 24 63 6c 61 73 73 50 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 69 72 20 2e 20 44 49 | .$classPath)).{.return.$dir...DI |
847e0 | 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 3b 0a | RECTORY_SEPARATOR...$classPath;. |
84800 | 7d 0a 7d 0a 7d 0a 7d 0a 0a 66 6f 72 65 61 63 68 20 28 24 74 68 69 73 2d 3e 66 61 6c 6c 62 61 63 | }.}.}.}..foreach.($this->fallbac |
84820 | 6b 44 69 72 73 20 61 73 20 24 64 69 72 29 20 7b 0a 69 66 20 28 66 69 6c 65 5f 65 78 69 73 74 73 | kDirs.as.$dir).{.if.(file_exists |
84840 | 28 24 64 69 72 20 2e 20 44 49 52 45 43 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 | ($dir...DIRECTORY_SEPARATOR...$c |
84860 | 6c 61 73 73 50 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 64 69 72 20 2e 20 44 49 52 45 43 | lassPath)).{.return.$dir...DIREC |
84880 | 54 4f 52 59 5f 53 45 50 41 52 41 54 4f 52 20 2e 20 24 63 6c 61 73 73 50 61 74 68 3b 0a 7d 0a 7d | TORY_SEPARATOR...$classPath;.}.} |
848a0 | 0a 0a 69 66 20 28 24 74 68 69 73 2d 3e 75 73 65 49 6e 63 6c 75 64 65 50 61 74 68 20 26 26 20 24 | ..if.($this->useIncludePath.&&.$ |
848c0 | 66 69 6c 65 20 3d 20 73 74 72 65 61 6d 5f 72 65 73 6f 6c 76 65 5f 69 6e 63 6c 75 64 65 5f 70 61 | file.=.stream_resolve_include_pa |
848e0 | 74 68 28 24 63 6c 61 73 73 50 61 74 68 29 29 20 7b 0a 72 65 74 75 72 6e 20 24 66 69 6c 65 3b 0a | th($classPath)).{.return.$file;. |
84900 | 7d 0a 7d 0a 7d 0a 3c 3f 70 68 70 0a 0a 72 65 71 75 69 72 65 20 5f 5f 44 49 52 5f 5f 2e 27 2f 2e | }.}.}.<?php..require.__DIR__.'/. |
84920 | 2e 2f 73 72 63 2f 62 6f 6f 74 73 74 72 61 70 2e 70 68 70 27 3b 0a 0a 75 73 65 20 43 6f 6d 70 6f | ./src/bootstrap.php';..use.Compo |
84940 | 73 65 72 5c 43 6f 6e 73 6f 6c 65 5c 41 70 70 6c 69 63 61 74 69 6f 6e 3b 0a 0a 65 72 72 6f 72 5f | ser\Console\Application;..error_ |
84960 | 72 65 70 6f 72 74 69 6e 67 28 2d 31 29 3b 0a 40 69 6e 69 5f 73 65 74 28 27 64 69 73 70 6c 61 79 | reporting(-1);.@ini_set('display |
84980 | 5f 65 72 72 6f 72 73 27 2c 20 31 29 3b 0a 40 69 6e 69 5f 73 65 74 28 27 6d 65 6d 6f 72 79 5f 6c | _errors',.1);.@ini_set('memory_l |
849a0 | 69 6d 69 74 27 2c 20 27 35 31 32 4d 27 29 3b 0a 0a 2f 2f 20 72 75 6e 20 74 68 65 20 63 6f 6d 6d | imit',.'512M');..//.run.the.comm |
849c0 | 61 6e 64 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 20 3d 20 6e | and.application.$application.=.n |
849e0 | 65 77 20 41 70 70 6c 69 63 61 74 69 6f 6e 28 29 3b 0a 24 61 70 70 6c 69 63 61 74 69 6f 6e 2d 3e | ew.Application();.$application-> |
84a00 | 72 75 6e 28 29 3b 0a 0a 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 31 20 4e 69 6c 73 20 | run();..Copyright.(c).2011.Nils. |
84a20 | 41 64 65 72 6d 61 6e 6e 2c 20 4a 6f 72 64 69 20 42 6f 67 67 69 61 6e 6f 0a 0a 50 65 72 6d 69 73 | Adermann,.Jordi.Boggiano..Permis |
84a40 | 73 69 6f 6e 20 69 73 20 68 65 72 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 | sion.is.hereby.granted,.free.of. |
84a60 | 63 68 61 72 67 65 2c 20 74 6f 20 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 | charge,.to.any.person.obtaining. |
84a80 | 61 20 63 6f 70 79 0a 6f 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f | a.copy.of.this.software.and.asso |
84aa0 | 63 69 61 74 65 64 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 | ciated.documentation.files.(the. |
84ac0 | 22 53 6f 66 74 77 61 72 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 69 6e 20 74 68 65 20 53 6f 66 74 | "Software"),.to.deal.in.the.Soft |
84ae0 | 77 61 72 65 20 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 | ware.without.restriction,.includ |
84b00 | 69 6e 67 20 77 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 | ing.without.limitation.the.right |
84b20 | 73 0a 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 | s.to.use,.copy,.modify,.merge,.p |
84b40 | 75 62 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 | ublish,.distribute,.sublicense,. |
84b60 | 61 6e 64 2f 6f 72 20 73 65 6c 6c 0a 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 | and/or.sell.copies.of.the.Softwa |
84b80 | 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 6f | re,.and.to.permit.persons.to.who |
84ba0 | 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 20 66 75 72 6e 69 73 68 65 64 0a 74 6f 20 64 | m.the.Software.is.furnished.to.d |
84bc0 | 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 | o.so,.subject.to.the.following.c |
84be0 | 6f 6e 64 69 74 69 6f 6e 73 3a 0a 0a 54 68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 20 | onditions:..The.above.copyright. |
84c00 | 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 69 6f 6e 20 6e 6f 74 69 63 | notice.and.this.permission.notic |
84c20 | 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 61 6c 6c 0a 63 6f 70 69 65 | e.shall.be.included.in.all.copie |
84c40 | 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 | s.or.substantial.portions.of.the |
84c60 | 20 53 6f 66 74 77 61 72 65 2e 0a 0a 54 48 45 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 | .Software...THE.SOFTWARE.IS.PROV |
84c80 | 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f | IDED."AS.IS",.WITHOUT.WARRANTY.O |
84ca0 | 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 52 45 53 53 20 4f 52 0a 49 4d 50 4c 49 45 44 2c 20 | F.ANY.KIND,.EXPRESS.OR.IMPLIED,. |
84cc0 | 49 4e 43 4c 55 44 49 4e 47 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 | INCLUDING.BUT.NOT.LIMITED.TO.THE |
84ce0 | 20 57 41 52 52 41 4e 54 49 45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a | .WARRANTIES.OF.MERCHANTABILITY,. |
84d00 | 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 | FITNESS.FOR.A.PARTICULAR.PURPOSE |
84d20 | 20 41 4e 44 20 4e 4f 4e 49 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e | .AND.NONINFRINGEMENT..IN.NO.EVEN |
84d40 | 54 20 53 48 41 4c 4c 20 54 48 45 0a 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 | T.SHALL.THE.AUTHORS.OR.COPYRIGHT |
84d60 | 20 48 4f 4c 44 45 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d | .HOLDERS.BE.LIABLE.FOR.ANY.CLAIM |
84d80 | 2c 20 44 41 4d 41 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 | ,.DAMAGES.OR.OTHER.LIABILITY,.WH |
84da0 | 45 54 48 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 | ETHER.IN.AN.ACTION.OF.CONTRACT,. |
84dc0 | 54 4f 52 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c | TORT.OR.OTHERWISE,.ARISING.FROM, |
84de0 | 0a 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 | .OUT.OF.OR.IN.CONNECTION.WITH.TH |
84e00 | 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 | E.SOFTWARE.OR.THE.USE.OR.OTHER.D |
84e20 | 45 41 4c 49 4e 47 53 20 49 4e 0a 54 48 45 20 53 4f 46 54 57 41 52 45 2e 0a 0a f1 03 41 35 be fb | EALINGS.IN.THE.SOFTWARE.....A5.. |
84e40 | 2b 20 9e 2d 93 35 b0 b1 96 6f 4d f0 03 9c 02 00 00 00 47 42 4d 42 | +..-.5...oM.......GBMB |