1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842
|
2010-01-06 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs : enum value identifiers should be
escaped with '@'. Fixed bug #566370.
2009-03-13 Atsushi Enomoto <atsushi@ximian.com>
* XmlRootAttribute.cs : it is also expected to have
internal property for SL2.
2009-03-13 Atsushi Enomoto <atsushi@ximian.com>
* XmlArrayItemAttribute.cs, XmlElementAttribute.cs,
XmlAnyElementAttribute.cs : added more 2.1 obstacles.
2009-03-13 Atsushi Enomoto <atsushi@ximian.com>
* XmlChoiceIdentifierAttribute.cs : added internal MemberInfo
property for SL2.
2009-03-13 Atsushi Enomoto <atsushi@ximian.com>
* SerializationSource.cs, KeyHelper.cs : split out KeyHelper from
SerializationSource as the class is going to be used in 2.1 too.
* XmlRootAttribute.cs : use KeyHelper above to add internal Key
property that is used in SL2 System.Xml.Serialization.dll.
2009-02-19 Geoff Norton <gnorton@novell.com>
* SerializationSource.cs: KeyHelper is needed by
the 2.1 profile now.
2009-01-22 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : hack ImportSchemaType().
2008-12-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
* XmlSerializer.cs: updated to work with shadowcopy fixes.
2008-11-05 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : do not reject ICollection<T> for not implementing
Item[T]. Fixed bug #430759.
2008-09-19 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializer.cs : revert previous change and fix sys.data tests.
2008-09-17 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializer.cs : in 2.0 profile it seems to create XmlReader
for stream and textreader, that skips whitespaces.
2008-09-02 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs
XmlSerializationWriterInterpreter.cs : fixed bug #419973.
Sometimes implicit operators could involve and it affects on
typecasting. It's simple for code generator, but very bad for
reflection.
2008-08-19 Jb Evain <jbevain@novell.com>
* XmlRootAttribute.cs: ifdef out parts to compile on net_2_1.
2008-07-10 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : more helpful error message.
2008-07-09 Atsushi Enomoto <atsushi@ximian.com>
* MapCodeGenerator.cs : use explicit element name for explicitly added
XmlElementAttribute. (exposed by some product from some company.)
2008-06-05 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationReaderInterpreter.cs, MapCodeGenerator.cs,
SerializationCodeGenerator.cs : fixed bug #378696.
Default value should not be filled during deserialization, and
default values for DateTime/TimeSpan/DateTimeOffset should not be
output as raw string in generated code.
2008-06-04 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationReader.cs : in ReadXmlDocument(), MoveToContent()
is required after ReadStartElement(). Fixed bug #393406 (without
unit test; no simple way to do that :( ).
2008-04-11 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapping.cs : .NET 2.0 has a weird behavior that swallows
exception from IXmlSerializable.GetSchema().
2008-04-01 Lluis Sanchez Gual <lluis@novell.com>
* TypeData.cs: Prefix with a '@' type names that are equal to keywords.
* XmlSerializationReaderInterpreter.cs,
XmlSerializationWriterInterpreter.cs: Properly handle nullable enum
values.
* SerializationCodeGenerator.cs: Properly handle nullable enum values.
Don't generate read flags for text collectors (avoid var not used
warning).
* XmlReflectionImporter.cs: Assign the MappedType to text collector
members. It is needed when the member is an enum.
2008-03-30 Gert Driesen <drieseng@users.sourceforge.net>
* MapCodeGenerator.cs: Ensure fields that back properties are unique.
2008-03-26 Lluis Sanchez Gual <lluis@novell.com>
* MapCodeGenerator.cs, XmlTypeMapMember.cs, XmlTypeMapMemberElement.cs:
If a value type field has the IsNullable property set to true,
generate it as System.Nullable<T>.
2008-03-26 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: Fix problem with primitive types with a forced
base class. It happens for example when a web service declares a
soap header of type bool. The schema exporter needs to generate a
subclass of SoapHeader for that header type. But if bool is used in
the parameters, it must use System.Boolean, not the SoapHeader
subclass. The solution is to store primitive types with a forced
base class in a different table. In this way it is possible to have
two maps for primitive types: one with the forced base class
(returned by ImportDerivedTypeMapping) and one with the regular
primitive map. Fixes bug #336739.
2008-03-21 Atsushi Enomoto <atsushi@ximian.com>
* XmlReflectionImporter.cs : set key for imported type mapping so
that generated serializer does not result in duplicate key error.
Fixed bug #372780.
2008-02-03 Arina Itkes <arinai@mainsoft.com>
* XmlSchemaExporter.cs : Generated typed DataTable and typed DataSet
have an identical schema and an identical TargetNamespace.
This fix is a workaround for this specific case.
2008-01-24 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : fixed setter which did not actually see the argument.
* XmlTypeMapElementInfo.cs : some cosmetic fixes for gendarme-
reported issues.
2007-11-09 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapping.cs : to get schema provider method, check base
types as well (i.e. FlattenHierarchy). Otherwise typed DataSet
cannot be reflected in 2.0.
2007-11-02 Atsushi Enomoto <atsushi@ximian.com>
* TypeTranslator.cs : for duration, rather use primitiveTypes than
nameCache, and hence TimeSpan could be serialized just as custom
type. Fixed bug #338705.
2007-11-01 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : simpleType is allowed to be imported.
(Part of #336739 fix.)
2007-10-30 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs : use RoundtripKind when converting to and
from DateTime.
2007-10-30 Atsushi Enomoto <atsushi@ximian.com>
* MapCodeGenerator.cs : found the true culprit for the previous
attempt to the fix.
2007-10-30 Atsushi Enomoto <atsushi@ximian.com>
* MapCodeGenerator.cs, XmlSchemaImporter.cs: revert the previous
change; the type is included in the output, but it should not be
the base type.
2007-10-30 Atsushi Enomoto <atsushi@ximian.com>
* MapCodeGenerator.cs, XmlSchemaImporter.cs: when a complexType has
simple content extension/restriction and the simple base type is
schema-defined, it must be written in exported code. Fixed (part
of?) bug #336739.
2007-10-26 Atsushi Enomoto <atsushi@ximian.com>
* TypeTranslator.cs, XmlCustomFormatter.cs : looks like duration is
serialized to System.String, not TimeSpan. Fixed bug #336625.
2007-09-27 Atsushi Enomoto <atsushi@ximian.com>
* XmlMapping.cs : added XsdElementName.
* XmlSerializationWriter.cs : some more implementation.
2007-09-25 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapping.cs : Namespace and XmlTypeNamespace could be
different when an explicit namespace is specified (e.g. at
XmlReflectionImporter.ctor).
* SerializationCodeGenerator.cs,
XmlSerializationWriterInterpreter.cs :
revert XmlTypeMapping.XmlTypeNamsepace usage. Now with the fix
above, original code should work fine.
2007-09-25 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapping.cs, XmlSerializationWriterInterpreter.cs,
SerializationCodeGenerator.cs :
More XmlSchemaProviderAttribute method check. Use QName returned
by the method for the output root name.
2007-08-21 Atsushi Enomoto <atsushi@ximian.com>
* XmlReflectionImporter.cs : do not reject XmlArrayAttribute on
byte[] (processed as primitive SchemaType). Fixed bug #81880.
2007-08-21 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaProviderAttribute.cs : added IsAny.
2007-08-21 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationReader.cs :
implemented ReaderCount and CheckReaderCount().
2007-08-21 Atsushi Enomoto <atsushi@ximian.com>
* MapCodeGenerator.cs : avoid possible duplicates in generated field
names. Fixed bug #82078.
2007-08-10 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializer.cs : use WhitespaceHandling.Significant when creating
XmlTextReader. Fixed bug #82372. No tests should be added for it.
2007-07-29 Konstantin Triger <kostat@mainsoft.com>
* XmlSerializationWriter.cs: do not output xml declaration while
serializing XmlDocument.
2007-07-26 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriterInterpreter.cs : looks like XmlNode[]
serialization is a complicated mess. bug #81539.
2007-07-23 Vladimir Krasnov <vladimirk@mainsoft.com>
* XmlTypeMapping.cs: fixed XmlSerializableMapping ctor, corrected when
qualified name is empty
* XmlSchemaExporter.cs: fixed SetSchemaXmlSerializableType when schema
provider method returns null schema
2007-06-30 Gert Driesen <drieseng@users.sourceforge.net>
* CodeIdentifier.cs: Default ctor is public on 1.0 profile too.
* CodeIdentifiers.cs: Ctor taking bool is 2.0 only.
2007-06-27 Konstantin Triger <kostat@mainsoft.com>
* XmlTypeMapping.cs, XmlSchemaExporter.cs: add partial support for
XmlSchemaProviderAttribute.
2007-05-27 Konstantin Triger <kostat@mainsoft.com>
* TypeTranslator.cs:
1. Fix the construction of TypeData for nullable types: it should not
be primitive since the primitive were loaded in static ctor.
2. Rename primitiveNullableTypes -> nullableTypes to reflect
correctly the field purpose.
3. Unify synchronization with synchronized hashtable.
2007-05-24 Konstantin Triger <kostat@mainsoft.com>
* TypeTranslator.cs: fix typo: set IsNullable flag for primitiveNullableTypes.
2007-05-14 Adar Wesley <adarw@mainsoft.com>
* XmlSchemaExporter.cs: added missing overload for method ExportAnyType.
* XmlSchemas.cs: added missing methods Add, AddReference, Contains,
GetSchemas.
* XmlSerializationReader.cs: added missing method AddReaderCount.
* XmlSerializationWriter.cs: added missing overload WriteStartElement.
* XmlSerializer.cs: added missing overload Serialize.
2007-04-25 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs : fix GenerateToXmlString() as well.
2007-04-25 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs :
in 2.0, use F instead of f for dateTime formatting.
2007-04-25 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemas.cs : 1.1-only duplicate check does not seem to be
required. This is also a workaround for 1.x ws proxy generation.
2007-04-24 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs : ditto for reader method generation.
* SerializationCodeGenerator.cs : for generic nullable values it
needs to store ReadNullableString() result to a temporary variable.
2007-04-23 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs, XmlCustomFormatter.cs : generic nullable values did
not fit with non-nullable formatting. Fixed #80759 regression.
2007-04-20 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapping.cs, ReflectionHelper.cs,
XmlSerializationReaderInterpreter.cs, SerializationCodeGenerator.cs:
support instantiation by private constructor.
2007-04-19 Konstantin Triger <kostat@mainsoft.com>
* XmlSchemaExporter.cs: do not export twice simple types.
2007-04-10 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : forgot NET_2_0.
2007-04-10 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : in get_ListItemTypeData(), check generic ICollection
as well as non-generic one. Fixed bug #81341. Though the type check
looks like an aggregation of bugfix hacks and there should be some
kind of sane refactoring, to throw best-suited errors.
2007-02-28 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs : fix wrong name comparison:
Name->LocalName. Add hacky TARGET_JVM support (hope it is harmless).
2007-02-20 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
XmlSerializationReaderInterpreter.cs :
Handle attributes on non-empty elements as well. Fixed bug #80131.
2007-02-20 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
XmlSerializationReaderInterpreter.cs :
Handle empty root element.
Read out attribute parameters. To do that, split attribute
reader part from ReadMembers(), as it isn't invoked when the
element is empty.
2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapElementInfo.cs : set nullable if the type is Nullable<T>.
2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
* XmlReflectionImporter.cs : CanBeNull() should return true when the
argument is generic nullable value type.
2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs, MapCodeGenerator.cs, XmlMemberMapping.cs,
TypeTranslator.cs : removed IsGenericNullable and added
set_IsNullable so that it could be simpler.
2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs, XmlMappingAccess.cs,
SerializationCodeGeneratorConfiguration.cs : replaced HookDir with
XmlMappingAccess.
2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs : hooks won't work unless they are
set. For WriteStartElement() it could simply embed the names.
2007-02-14 Atsushi Enomoto <atsushi@ximian.com>
* XmlTypeMapMember.cs : don't use readonly [Foo]Specified property
as nil-condition member. Fixed bug #80759.
2007-02-07 Atsushi Enomoto <atsushi@ximian.com>
* SoapReflectionImporter.cs : for primitive types, set predefined
namespaces, regardless of the actual specification.
2007-02-07 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : WriteTypedPrimitive() does not support
XmlNode arrays.
* XmlSerializationWriterInterpreter.cs,
SerializationCodeGenerator.cs : so they have to be handled here.
2007-02-07 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : WriteTypedPrimitive() infers the type
when the name is null (almost no need to do this, but it is easier
to remove NotWorking from extraneous tests and let them hush than
removing them).
2007-02-07 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : callbacks could be kept null.
2007-01-19 Atsushi Enomoto <atsushi@ximian.com>
* XmlMemberMapping.cs : uhoh, there is a nasty trick to output
Nullable info.
2007-01-18 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : added get_IsGenericNullable.
* MapCodeGenerator.cs : in GetDomType(), return Nullable<T> when
the TypeData.IsGenericNullable.
Use GetDomType() instead of CodeTypeReference.ctor() to not lose
Nullable<T> info.
* XmlSchemaImporter.cs : added isNullable argument to GetTypeData()
so that it won't XmlSchemaElement.IsNillable.
* TypeTranslator.cs :
Fixed wrong TypeData modification against non-nullable stuff.
Added another GetTypeData() that takes isNullableRuntimeType so
that it won't miss XmlSchemaElement.IsNillable.
Added another GetPrimitiveTypeData() that takes nullable.
2007-01-15 Atsushi Enomoto <atsushi@ximian.com>
* TypeData.cs : reject generic type definitions.
* TypeTranslator.cs : Make generic type names in XML compatible with
.net: foo_x0060_1 -> fooOfString.
2006-12-04 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs, XmlCustomFormatter.cs :
GenerateToXmlString() needed hexBinary support as well. Since
XmlConvert.[To|From]BinHexString() are internal, use reflection.
Really fixed bug #79989 and #79990 for generated serializers.
2006-12-03 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaExporter.cs: Emit xml name of enum-based default values.
Set XmlSchemaAttribute.Use to Required if no default value is defined,
and member is not an optional value type. Element should have minOccurs
1 if value type member has default value. Output flag enum type as
xsd list with restriction.
* XmlReflectionImporter.cs: Removed special casing of enums. Instead
of passing namespace of XmlAttribute to ImportTypeMapping, use the
default namespace for importing the member type.
2006-12-02 Gert Driesen <drieseng@users.sourceforge.net>
* SerializationCodeGenerator.cs: Initialize out parameters if they
are value types. Fixed bug #79988.
* XmlSerializationReaderInterpreter.cs: Same.
2006-12-01 Atsushi Enomoto <atsushi@ximian.com>
* XmlReflectionImporter.cs : implemented several missing check and
support for XmlArrayAttribute. Fixed bug #78042.
2006-11-22 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs : handle hexBinary type. Fixed bug #79989
and #79990.
2006-11-22 Atsushi Enomoto <atsushi@ximian.com>
Fixed bug #78611.
* TypeData.cs, TypeTranslator.cs: improved TypeData to actually store
"nullable" information. Introduced new primitiveNullableTypes pool
whose TypeData has 'true' for new IsNullable property. This
property is also used for non-primitive types.
* XmlReflectionImporter.cs : there, use TypeData.IsNullable instead
of IsValueType, to handle nullable types.
2006-11-20 Atsushi Enomoto <atsushi@ximian.com>
* TypeTranslator.cs : Hari knew better way to do it.
2006-11-20 Atsushi Enomoto <atsushi@ximian.com>
* TypeTranslator.cs : #if NET_2_0 for generic thingy.
2006-11-20 Atsushi Enomoto <atsushi@ximian.com>
* TypeTranslator.cs : (GetTypeData) when the argument type is
Nullable<T>, use T instead. At run time (on both interpreter and
generated code) it is converted to T. Fixed bug #79803.
2006-11-17 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs, TypeData.cs :
Now we differentiate TypeName, FullTypeName C# type names. It is
to create valid C# sources especially for generic types.
Fixed bug #79657.
2006-11-17 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationReader.cs : (ReadReferencedElement)
Sometimes there are array types in WSDL, which are not reflected
in client proxies. In SOAP messages, they are marked
soap-env:arrayType, so use it (this could coexist with xsi:type,
which indicates the type in WSDL). Fixed bug #79057.
2006-11-15 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationReader.cs : implement ToByteArray[Base64|Hex]().
removed extra ReadSerializable().
* XmlTypeMapping.cs : added XsdTypeName and XsdTypeNamespace.
2006-11-14 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
SerializationCodeGeneratorConfiguration.cs :
make "XmlSerializerContract" and "BaseXmlSerializer" customizible.
(or it is impossible to use genxs more than twice in an assembly.)
2006-11-10 Atsushi Enomoto <atsushi@ximian.com>
Fixed bug #77117.
* XmlReflectionImporter.cs : Compute nullable correctly. Elements are
nillable when its type is a reference type.
* XmlSchemaExporter.cs :
Set XmlTypeMapElementInfo.IsNullable from XmlTypeMapping.
Set XmlSchemaElement.IsNillable from XmlTypeMapElementInfo.
2006-11-09 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : top-level element might also have no type
name specification, so just compare ElementType with anyType.
2006-11-09 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : attributes might overlap by extending
base content models. Since invalid content models are rejected by
Compile(), simply ignore duplicating attributes. Note that it is
basically hack, which should not skip derived ones but use them (but
it is mostly harmless since the result is very unlikely to differ).
2006-11-08 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : when top-level element is xs:anyType, all
complexTypes must be also imported.
2006-11-08 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : ImportTypeMapping() raises exception when
the argument name is not bound to any elements.
2006-11-07 Atsushi Enomoto <atsushi@ximian.com>
* XmlCustomFormatter.cs : consider null base64 byte array value.
Fixed bug #79805.
2006-11-02 Atsushi Enomoto <atsushi@ximian.com>
* CodeIdentifier.cs : in 2.0 profile, .ctor() is exposed to
explicitly say Obsolete instantiation.
* CodeIdentifiers.cs : implemented case-insensitive mode.
* XmlSerializerAssemblyAttribute.cs : added missing .ctor().
* SoapIncludeAttribute.cs, XmlIncludeAttribute.cs :
in 2.0 profile it could also be applied to an interface.
* SoapReflectionImporter.cs,
XmlReflectionImporter.cs,
XmlMappingAccess.cs :
added missing ImportMembersMapping overload and moved actual
implementation to most lengthy-arglist one. To make it possible,
XmlMappingAccess is included in 1.x as internal enum.
2006-11-02 Atsushi Enomoto <atsushi@ximian.com>
* XmlSchemaImporter.cs : initialize extensions from configuration.
2006-11-01 Atsushi Enomoto <atsushi@ximian.com>
* SchemaImporterExtension.cs,
SchemaImporterExtensionCollection.cs : moved to S.X.S.Advanced.
2006-11-01 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationGeneratedCode.cs : removed InternalSyncObject.
* SerializationCodeGenerator.cs : since IXmlSerializerImplementation
became a class, it needs explicit "override".
Since InternalSyncObject is gone, it needs another lock target.
* IXmlSerializerImplementation.cs : removed.
* XmlSerializerImplementation.cs : added.
* XmlSerializer.cs : removed extra GenerateSerializer() overloads.
IXmlSerializerImplementation -> XmlSerializerImplementation.
* XmlSchemas.cs : removed Schemas. hacked Compile().
Now it implements IEnumerable<XmlSchema>.
* XmlSchemaEnumerator.cs : added missing type.
2006-11-01 Atsushi Enomoto <atsushi@ximian.com>
* XmlAttributeEventArgs.cs : added ExpectedAttributes. Note that it
is not considered in XmlSerializationReader yet.
* XmlElementEventArgs.cs : added ExpectedElements. Note that it
is not considered in XmlSerializationReader yet.
* XmlSerializationReader.cs : added some overloads for
UnknownElement()/-Attribute()/-Node().
2006-11-01 Atsushi Enomoto <atsushi@ximian.com>
* CodeGenerationOptions.cs : [XmlEnum], [XmlIgnore] and
[Serializable].
* XmlSerializationCollectionFixupCallback.cs,
XmlNodeEventHandler.cs,
XmlSerializationReadCallback.cs,
UnreferencedObjectEventHandler.cs,
XmlSerializationWriteCallback.cs,
XmlAttributeEventHandler.cs,
XmlElementEventHandler.cs,
XmlSerializationFixupCallback.cs :
exclude [Serializable] in NET_2_0.
* XmlSerializerNamespaces.cs : removed beta-only AddInternal().
* XmlSerializerVersionAttribute.cs : removed [Obsolete].
* XmlMappingAccess.cs : it is [Flags].
* SchemaImporter.cs : implement Extensions.
* XmlAnyElementAttribute.cs,
XmlArrayAttribute.cs : added Order.
Note that it is not considered in XmlSerializer yet.
2006-10-25 Ankit Jain <jankit@novell.com>
* SerializationCodeGenerator.cs (GenerateContract): Handle
'generateAsInternal' config option.
2006-10-10 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSerializer.cs: Output namespace declarations in same order as
MS.
2006-10-08 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSerializer.cs: Corrected exception message when deserialization
fails.
* SerializationCodeGenerator.cs: Added support for flag enums.
* XmlReflectionImporter.cs: Use InvalidOperationException wrapper for
all exceptions that occur while reflecting member. Validate default
values to match MS.
* SoapReflectionImporter.cs: Revert small part of previous patch as
XmlSerializer expects enum value.
2006-10-01 Gert Driesen <drieseng@users.sourceforge.net>
* SoapReflectionImporter.cs: To match MS.NET, let exceptions that are
thrown during creation of map member bubble up. Only allow
SoapAttribute on primitive types and enums. Obtain default value for
attribute members.
2006-09-20 Vladimir Krasnov <vladimirk@mainsoft.com>
* XmlTypeAttribute.cs: added property AnonymousType for 2.0
2006-09-12 Lluis Sanchez Gual <lluis@novell.com>
* System.Xml.Serialization/XmlSchemaImporter.cs: Added null check.
2006-09-11 Andrew Skiba <andrews@mainsoft.com>
* XmlSchemaImporter.cs,XmlMemberMapping.cs,SchemaImporter.cs: ifdef
TARGET_JVM
2006-09-05 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: In MS.NET 2.0, simple type arrays are mapped
to strings. Make sure maps returned by ImportClassSimpleType are always
simple type maps. All this fixes bug #77585.
2006-09-05 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: Always import simple type unions
as string (like MS.NET does). Fixes bug #79234.
2006-08-25 Kornél Pál <kornelpal@gmail.com>
* MapCodeGenerator.cs: Use assembly file version constants.
2006-07-24 Atsushi Enomoto <atsushi@ximian.com>
* XmlMappingAccess.cs : new type in 2.0 RTM.
* XmlCodeExporter.cs, SoapCodeExporter.cs,
MapCodeGenerator.cs,
XmlSchemaImporter.cs, SoapSchemaImporter.cs, SchemaImporter.cs,
SchemaImporterExtension.cs, SchemaImporterExtensionCollection.cs,
XmlMemberMapping.cs, XmlSerializationReader.cs :
several 2.0 API fixes from betas to RTM.
2006-06-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapMember.cs: Added GlobalIndex property.
* XmlTypeMapping.cs: When adding a member, initialize its GlobalIndex
property.
* SerializationCodeGenerator.cs:
* XmlSerializationWriterInterpreter.cs:
* XmlSerializationReaderInterpreter.cs: Use GlobalIndex instead of
Index to get/set the values from the input array, since some Index
values are shared between attribute and element members. Fixes
bug #78562.
2006-05-30 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
XmlSerializerReaderInterpreter.cs : handle CDATA section as text
node. Fixed bug #78536.
2006-05-15 Gert Driesen <drieseng@users.sourceforge.net>
* XmlCodeExporter.cs: Added bool argument to GenerateClass and
GenerateEnum methods that specifies whether we're dealing with a type
for a top-level element. In GenerateClass, do not always add Namespace
argument for XmlRootAttribute if isTopLevel is false, and do not
emit XmlRootAttribute if isTopLevel is false and no arguments have been
added.
* SoapCodeExporter.cs: Added bool argument to GenerateClass and
GenerateEnum methods.
* MapCodeGenerator.cs: Added bool argument to GenerateClass and
GenerateEnum methods.
2006-05-03 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: Allow generating serializer for
reading an XmlElement or XmlDocument as root element.
Properly generate jagged array creation.
2006-04-28 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : fix cosmetic typo (bug #78228).
2006-04-26 Gert Driesen <drieseng@users.sourceforge.net>
* SerializationCodeGenerator.cs: For flag enums, we should split on all
whitespace chars instead of only on blanks.
* XmlTypeMapping.cs: Same. Added ToEnum method for converting from
constant name(s) to integral enum value.
2006-04-26 Gert Driesen <drieseng@users.sourceforge.net>
* SoapAttributes.cs: The DefaultValueAttribute.Value should be returned
as SoapDefaultValue instead of the attribute itself. Fixes bug #78205.
2006-04-24 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaExporter.cs: Introduce XmlSchemaObjectContainer class to
allow XML Schema items to be added to its parent in the same order
as MS.NET (schema elements before complex types, ...).
2006-04-20 Gert Driesen <drieseng@users.sourceforge.net>
* XmlCodeExporter.cs: On 2.0 profile, CodeGenerationOptions defaults to
GenerateProperties. Use full type name for XML serialization attributes
instead of shortcut (without Attribute suffix). Always add Namespace
argument for XmlRootAttribute on classes. Added IsNullable argument for
XmlRootRootAttribute on classes. For attribute members, only output
Form argument for XmlSchemaForm.Qualified. Use MapCodeGenerator base
ctor that takes CodeGenerationOptions.
* SoapCodeExporter.cs: Use MapCodeGenerator base ctor that takes
CodeGenerationOptions.
* MapCodeGenerator.cs: Added CodeGenerationOptions to ctor. On 2.0
profile, emit GeneratedCodeAttribute, SerializableAttribute,
DebuggerStepThroughAttribute and DesignerCategoryAttribute for classes.
To match MS.NET, emit attribute members before element members.
* XmlReflectionImporter.cs: Enums are never nullable.
* XmlSchemaImporter.cs: Set IsNullable on map using value of
XmlSchemaElement.IsNillable. Added LocateElement overload that takes
XmlSchemaElement.
2006-04-15 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaImporter.cs: Make sure we pass TypeData for primitive types
to XmlReflectionImporter and SoapReflectionImporter to keep from
always ending up with the XSD type that directly maps to the CLR type.
* XmlReflectionImporter.cs: Added overloads taking TypeData instead of
Type. This improves performance by avoiding the use of
TypeTranslator.GetTypeData for types imported from a schema and fixes
bug #77907.
* SoapReflectionImporter.cs: Same.
2006-04-11 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemas.cs: In 1.1, don't allow adding two schemas
with the same namespaces. This is allowed in 2.0. Fixed
the Find() method to cope with this case. Based on a patch
by David Jung.
2006-03-22 Gert Driesen <drieseng@users.sourceforge.net>
* XmlReflectionImporter.cs: Throw NotSupportException instead of
InvalidOperationException (IOE) if void is specified as type in
ImportTypeMapping. To match MS.NET, surround importing of type in
try/catch block, and wrap any IOE in another IOE adding information
on the type that was being reflected. In CreateTypeMapping, surround
creating of map member in try/catch block, and wrap any IOE in another
IOE adding information on the member that was being reflected.
Modified exception message for missing enumeration value to match
MS.NET. In ImportTextElementInfo, throw IOE if Type is set in
XmlTextAttribute, and it differs from type of reflected member when
schema type of member is primitive or enum. Fixed bug #77591.
2006-03-10 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaExporter.cs: Import namespace of schema generated for
non-xsd primitive. Do not set zero-length TargetNamespace to avoid
emitting empty targetNamespace attribute in generated schema.
* XmlReflectionImporter.cs: Use WSDL types namespace for non-xsd
primitives.
2006-03-10 Gert Driesen <drieseng@users.sourceforge.net>
* XmlTypeMapping.cs: EnumMapMember now also stores value for enums.
Modified EnumMapping.GetXmlName to use XmlCustomFormatter to support
serialization of integral value to enum constant name, and made sure
the exceptions we throw match those of MSFT. In EnumMapping.GetEnumName
throw InvalidOperationException if no matching enum constant exists.
In EnumMap ctor, initialize arrays holding XML names, enum names and
enum values.
* XmlSerializationReaderInterpreter.cs: Pass full type name to
EnumMapping.GetEnumName for construction of exception message.
* XmlSerializer.cs: In Deserialize, wrap InvalidOperationException
and InvalidCastException in another InvalidOperationException to match
MSFT. In Serialize, wrap InvalidOperationException, InvalidCastException
and the inner exception for a TargetInvocationException in an
InvalidOperationException to match MSFT.
* SerializationCodeGenerator.cs: In GenerateGetXmlEnumValue, use
XmlCustomFormatter.FromEnum in order to also support serialization
integral value to enum constant name. In 2.0 profile, throw
InvalidOperationException if numeric value cannot be serialized into
an enum constant value. In GenerateSingleEnumValue, no longer attempt
to parse unknown constant value but instead report it as
InvalidOperationException. Use string.Length instead of "" comparison
to check whether a string is empty. Fixed compiler warnings in
generated code (possible empty statement).
* XmlSerializationWriterInterpreter.cs: Pass full type name to
EnumMap.GetXmlName.
* XmlSchemaImporter.cs: Pass full type name to EnumMap.GetEnumName
to allow it to be used in exception messages.
* XmlReflectionImporter.cs: Use FieldInfo instead of MemberInfo for
enum fields. Use IsDefined instead of GetCustomAttributes for checking
if a certain attribute is defined. Use integral value of enum constant
in EnumMapMember ctor.
* SoapReflectionImporter.cs: Use FieldInfo instead of MemberInfo for
enum fields. Use IsDefined instead of GetCustomAttributes for checking
if a certain attribute is defined. Use integral value of enum constant
in EnumMapMember ctor.
2006-03-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs: Ignore the element namespace if
the schema form is set to Unqualified. Fixes bug #75019.
2006-02-22 Gert Driesen <drieseng@users.sourceforge.net>
* SerializationCodeGenerator.cs: Omit return statement in ReadObject
method if GenerateReadListElement returns null. Fixes bug #77588.
2006-02-21 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializer.cs: Fix the previous fix.
2006-02-21 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializer.cs: Added option to avoid falling back to the
interpreted serializer if the code generator fails. To be used
in the test suite.
2006-02-16 Gert Driesen <drieseng@users.sourceforge.net>
* TypeData.cs: Fixed the following issues when dealing with Array
SchemaType:
- if a type implements IDictionary, throw a NotSupportedException
- if a type implements ICollection, then an Add method must exist
which takes a single argument of a type to which the listitem type
is assignable (meaning a base type or an interface that it
implements). If such a method does not exist, then throw an
InvalidOperationException.
- if a type implements IEnumerable, then the listitem type is
determined by the type of the Current property of the (IEnumerator)
type returned by the GetEnumerator() method or the private
implementation of IEnumerable.GetEnumerator(). If there's no
public Current property on the IEnumerator, then System.Object
is assumed as listitem type. Similar as for types implementing
ICollection, an Add method must exist which takes a single argument
of a type to which the listitem type is assignable (meaning a base
type or an interface that it implements). If such a method does not
exist, then throw an InvalidOperationException.
2006-02-16 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: Support importing complex types with
simple content based on enums. Fixes bug #76848.
2006-02-11 Gert Driesen <drieseng@users.sourceforge.net>
* SoapAttributeAttribute.cs: Set eol-style to CRLF.
* SoapElementAttribute.cs: Same.
* SoapEnumAttribute.cs: Same.
* SoapIncludeAttribute.cs: Same.
* SoapSchemaMember.cs: Same.
* SoapTypeAttribute.cs: Same.
* XmlArrayAttribute.cs: Same.
* XmlAttributeAttribute.cs: Same.
* XmlChoiceIdentifierAttribute.cs: Same.
* XmlElementAttribute.cs: Same.
* XmlEnumAttribute.cs: Same.
* XmlRootAttribute.cs: Same.
* XmlSchemaImporter.cs: Same.
* XmlTextAttribute.cs: Same.
* XmlTypeAttribute.cs: Same.
* XmlTypeMapping.cs: Same.
* SoapAttributeOverrides.cs: Fixed line endings. Set eol-style to CRLF.
* CodeIdentifiers.cs: Same.
* SoapCodeExporter.cs: Same.
* SoapAttributes.cs: Same.
* SoapIgnoreAttribute.cs: Same.
* SoapSchemaImporter.cs: Same.
* TypeMember.cs: Same.
* UnreferencedObjectEventArgs.cs: Same.
* XmlAnyAttributeAttribute.cs: Same.
* XmlAnyElementAttributes.cs: Same.
* XmlArrayItemAttributes.cs: Same.
* XmlAttributeEventArgs.cs: Same.
* XmlCodeExporter.cs: Same.
* XmlElementAttributes.cs: Same.
* XmlElementEventArgs.cs: Same.
* XmlIgnoreAttribute.cs: Same.
* XmlNamespaceDeclarationsAttribute.cs: Same.
* XmlNodeEventArgs.cs: Same.
* XmlReflectionMember.cs: Same.
* XmlSchemas.cs: Same.
* XmlSerializerNamespaces.cs: Same.
* XmlTypeMapMemberElement.cs: Set eol-style to native.
2006-02-10 Gert Driesen <drieseng@users.sourceforge.net>
* CodeExporter.cs: Set eol-style to native.
* CodeGenerationOptions.cs: Same.
* CodeIdentifier.cs: Same.
* ImportContext.cs: Same.
* IXmlSerializable.cs: Same.
* IXmlSerializerImplementation.cs: Same.
* IXmlTextParser.cs: Same.
* MapCodeGenerator.cs: Same.
* ReflectionHelper.cs: Same. Fixed line endings.
* SchemaImporter.cs: Same.
* SchemaImporterExtensionCollection.cs: Same.
* SchemaImporterExtension.cs: Same.
* SchemaTypes.cs: Same.
* SerializationCodeGeneratorConfiguration.cs: Same.
* SerializationCodeGenerator.cs: Same.
* SerializationSource.cs: Same.
* SoapReflectionImporter.cs: Same.
* SoapSchemaExporter.cs: Same.
* TypeData.cs: Same.
* TypeTranslator.cs: Same.
* UnreferencedObjectEventHandler.cs: Same.
* XmlAnyElementAttribute.cs: Same.
* XmlArrayItemAttribute.cs: Same.
* XmlAttributeEventHandler.cs: Same.
* XmlAttributeOverrides.cs: Same.
* XmlAttributes.cs: Same.
* XmlDeserializationEvents.cs: Same.
* XmlElementEventHandler.cs: Same.
* XmlIncludeAttribute.cs: Same.
* XmlMapping.cs: Same.
* XmlMemberMapping.cs: Same.
* XmlMembersMapping.cs: Same.
* XmlNodeEventHandler.cs: Same.
* XmlReflectionImporter.cs: Same.
* XmlSchemaExporter.cs: Same.
* XmlSchemaProviderAttribute.cs: Same.
* XmlSerializationCollectionFixupCallback.cs: Same.
* XmlSerialiationFixupCallback.cs: Same.
* XmlSerializationGeneratedCode.cs: Same.
* XmlSerializationReadCallback.cs: Same.
* XmlSerializationReader.cs: Same.
* XmlSerializationReaderInterpreter.cs: Same.
* XmlSerializationWriteCallback.cs: Same.
* XmlSerializationWriterInterpreter.cs: Same.
* XmlSerializerAssemblyAttribute.cs: Same.
* XmlSerializer.cs: Same.
* XmlSerializerFactory.cs: Same.
* XmlSerializerVersionAttribute.cs: Same.
* XmlTypeMapElementInfo.cs: Same.
* XmlTypeMapMemberAttribute.cs: Same.
* XmlTypeMapMember.cs: Same.
* XmlTypeMapMemberNamespaces.cs: Same.
2006-02-09 Gert Driesen <drieseng@users.sourceforge.net>
* XmlTypeMapping.cs: Modified GetRealTypeMap to return current map
if map represents enum. Fixes bug #77501.
2006-02-09 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSerializationWriter.cs: Implemented 2.0 version of FromEnum, and
CreateInvalidEnumValueException. Set eol-style to native.
* XmlCustomerFormatter.cs: Added FromEnum overload that takes name of
enum for which string value must be created. Set eol-style to native.
Modified FromEnum to behave more like MSFT's implementation:
- treat value as bit field.
- no longer return empty string if the value matches an id for which there's no corresponding
name.
- if one of the ids has value 0 and there's a match for the enum value
(with a zero length XML name) or the enum value is 0, then return the
corresponding XML for the id with value 0.
- in 2.0 profile, throw InvalidOperationException if no match is found
for (part of) the enum value.
Modifies ToEnum to match the MSFT implementation (as described in
.NET 2.0 SDK):
- Expect hashtable containing enum names as key, and corresponding
integral numbers as value.
- Do not report exception for whitespace-only value.
- Support space (MS docs are not clear about this) delimited list
of names.
- typeName is only used to construct exception message.
2006-02-09 Lluis Sanchez Gual <lluis@novell.com>
* System.Xml.Serialization/XmlTypeMapMemberElement.cs: When
looking for the correct element definition for a member,
based on the value type, take into account subypes of the
declared types. Fixes bug #77447.
2006-02-07 Konstantin Triger <kostat@mainsoft.com>
* XmlReflectionImporter.cs: remove local name encoding for enums.
2006-01-08 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSchemaImporter.cs: Fixed line endings (to CRLF).
2006-01-07 Gert Driesen <drieseng@users.sourceforge.net>
* XmlTypeMapping.cs: Fixed line endings.
* TypeTranslator.cs: Fixed line endings.
2005-12-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationReaderInterpreter.cs: When deserializing a "flat"
collection, don't create a new collection if the property already has a
collection instance.
* SerializationCodeGenerator.cs: same as above. Also return an empty
string for flag enum default values.
2005-12-06 Konstantin Triger <kostat@mainsoft.com>
* TypeTranslator.cs: TARGET_JVM: save additional types per AppDomain.
2005-12-05 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationReaderInterpreter.cs:
* SerializationCodeGenerator.cs: When deserializing a collection,
don't create a new collection if the property already has a
collection instance. This does not apply to arrays. Changed how nullabe
array properties are set. Setting IsNullable=false to the property means
that it won't be set if the read array is null (so, if the property
already has a value, it will be kept).
Another change is that can't never be null (only arrays can).
2005-12-01 Lluis Sanchez Gual <lluis@novell.com>
* TypeTranslator.cs: In GetTypeData, if an xmlType is specified for
a cli array type, consider it refering to the type of array elements.
This fixes bug #76860. Also added some locking.
2005-11-27 Konstantin Triger <kostat@mainsoft.com>
* TypeData.cs, XmlSchemaExporter.cs, TypeTranslator.cs: correctly
export non-xsd primitive types.
2005-11-24 Vladimir Krasnov <vladimirk@mainsoft.com>
* XmlTypeMapping.cs: fixed GetXmlName method, added difference
of value serialization of flags and non-flags enums
2005-11-23 Konstantin Triger <kostat@mainsoft.com>
* XmlSchemaExporter.cs: do not import empty namespaces.
2005-11-17 Vladimir Krasnov <vladimirk@mainsoft.com>
* XmlSerializationReaderInterpreter.cs: fixed ReadEnumElement
method, ReadEndElement should check XmlNodeType.
* XmlTypeMapping.cs: fixed GetXmlName method, it should not
write zero as default enum value.
2005-11-16 Vladimir Krasnov <vladimirk@mainsoft.com>
* XmlReflectionImporter.cs: fixed field order returned by
reflection in method GetReflectionMembers. TARGET_JVM only.
2005-11-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: Added support for restrictions with
embedded simple type definitions.
2005-11-04 Atsushi Enomoto <atsushi@ximian.com>
* XmlElementAttribute.cs : gimme Order; it fixes 100 or more
sys.xml.schema corcompare diffs.
2005-10-17 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs:
* XmlSerializationWriterInterpreter.cs: Arrays of XmlNode don't
need to be all XmlElments. Fix by Atsushi for bug #76288.
2005-09-26 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapping.cs: Added ChoiceMember to ListMap.
In ListMap.FindElement, take into account the ChoiceMember
if set.
* SerializationCodeGenerator.cs:
* XmlSerializationReaderInterpreter.cs: For lists with a choice
member, fill the member with the corresponding enum values.
* XmlReflectionImporter.cs: Properly reflect the choice member
when applied to a list.
* XmlSerializationWriterInterpreter.cs: Track class changes.
* XmlTypeMapMemberElement.cs: Added ChoiceTypeData property.
All this fixes bug #76203.
2005-09-21 Lluis Sanchez Gual <lluis@novell.com>
* SoapReflectionImporter.cs: Check the correct defaults
for attributes.
2005-09-21 Lluis Sanchez Gual <lluis@novell.com>
* SerializationSource.cs: Fix nullref.
* XmlReflectionImporter.cs: When registering a type using
IncludeType(), make sure it is added as a subtype and the
map for typeof(object) if it has already been imported.
Fixes bug #76049.
2005-09-21 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationWriter.cs: Also internally serialize
arrays of object (see previous change).
2005-09-21 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationWriter.cs: Properly serialize arrays
of primitive types when not explicitely specified in
a container class. Based on a patch by Konstantin Triger.
Fixes bug #75986.
2005-08-24 Lluis Sanchez Gual <lluis@novell.com>
* TypeData.cs: Reset the hasPublicConstructor flag when the
type is an interface.
* XmlSerializationWriterInterpreter.cs: Get the Count property
from the object type instead of the property type (it didn't
work for IList).
* ReflectionHelper.cs: In CheckSerializableType, don't trow
if the type is a collection interface. All this fixes
bug #75855.
2005-08-06 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapping.cs: Added null check.
2005-08-05 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapping.cs: Added ListMembers property that returns
members which are collections.
* SerializationCodeGenerator.cs:
* XmlSerializationReaderInterpreter.cs: Initialize collection
members to an empty collection by default. Fixes bug #75662.
2005-08-01 Gert Driesen <drieseng@users.sourceforge.net>
* XmlMapping.cs: API compatibility fixes. Ctor is not protected
in .NET 1.1. SetKey is not obsolete in .NET 2.0 Beta 2.
2005-07-31 Gert Driesen <drieseng@users.sourceforge.net>
* SoapAttributeAttribute.cs: Return zero-length string if
AttributeName or DataType are null.
* SoapEnumAttribute.cs: Return zero-length string if Name is null.
* SoapIncludeAttribute.cs: Avoid using property in ctor.
* SoapSchemaMember.cs: Return zero-length string if MemberName is
null. MemberType should be XmlQualifiedName.Empty by default.
* SoapTypeAttribute.cs: Return zero-length string if TypeName is
null. Avoid using property in ctor.
* XmlArrayAttribute.cs: Return zero-length string if ElementName is
null. Avoid using property in ctor.
* XmlArrayItemAttribute.cs: IsNullable must be false by default.
Return zero-length string if DataType or ElementName are null. Avoid
using property in ctor.
* SoapElementAttribute.cs: Return zero-length string when DataType
or ElementName are null. Avoid using property in ctor.
* XmlAnyElementAttribute.cs: Return zero-length string when Name is
null. Avoid using property in ctor.
* XmlAttributeAttribute.cs: Avoid using property in ctor. Return
zero-length string if AttributeName or DataType are null.
* XmlChoiceIdentifierAttribute.cs: Return zero-length string when
MemberName is null.
* XmlElementAttribute.cs: Return zero-length string when DataType or
ElementName are null. Avoid using property in ctor.
* XmlEnumAttribute.cs: Avoid using property in ctor.
* XmlIncludeAttribute.cs: Avoid using property in ctor.
* XmlReflectionImporter.cs: AttributeName, ElementName and DataType
can no longer be null. Use check for zero-length string to determine
whether they are set. Corrected exception message when DataType is
set for complex type.
* XmlRootAttribute.cs: Return zero-length string if DataType or
ElementName are null. Avoid using property in ctor.
* XmlTextAttribute.cs: Return zero-length string if DataType is null.
* XmlTypeAttribute.cs: Return zero-length string if TypeName is null.
2005-07-14 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: In the generated serializer always
use the Object equality operator when comparing objects to serialize
to null, since those objects may have the equality operator
overloaded. This fixes bug #75543.
2005-07-01 Lluis Sanchez Gual <lluis@novell.com>
* XmlCustomFormatter.cs: Properly read/write duration values.
2005-06-28 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializer.cs: Fix race between XmlSerializer and the
serializer generator.
2005-06-14 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapElementInfo.cs: Added new DataTypeName property for
getting the real xml type name of a member.
* XmlSerializationWriterInterpreter.cs: Use that new property
to get the type name of primitive types. This should fix bug #75180.
2005-06-07 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: When reading members by order,
call a MoveToContext after each member read. In the fixup method
don't cast returned values if it is reading an object array.
* XmlSchemaImporter.cs: In ImportDerivedTypeMapping, if the type
being imported is a primitive type, create a wrapper class that
inherits from the provided one. This fixes bug #68809.
* XmlSerializationReader.cs: Properly report unreferenced objects.
Created an overload of ReadTypedPrimitive that reports elements of
unknown type. Implemented Referenced().
2005-05-30 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs: Don't ignore type namespaces explicitely
set to the default namespace. This fixes bug #73035.
2005-05-12 Lluis Sanchez Gual <lluis@novell.com>
* SoapReflectionImporter.cs: In ImportTypeMap, make sure that all
types indirectly imported by this method use the same namespace.
2005-05-09 Atsushi Enomoto <atsushi@ximian.com>
* TypeTableEntry.cs : removed obsolete code.
2005-04-26 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs, SoapReflectionImporter.cs: ignore array
properties which are read only. Fixes bug #74723.
2005-04-14 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs:
* SoapReflectionImporter.cs:
* TypeTranslator.cs: Encode local names withXmlConvert.EncodeLocalName
where needed. Based on a patch by Konstantin Triger.
2005-04-12 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapping.cs: Added new XmlSerializableMapping class.
* XmlSchemaExporter.cs: When exporting an IXmlSerializable type,
export the schema that it defines. In ImportNamespace, removed
check for default namespace, since it may be included from a non
default namespace.
* XmlReflectionImporter.cs: Create a special map for IXmlSerializable
types. All this based on a patch by Konstantin Triger.
* SerializationCodeGenerator.cs:
* XmlMapping.cs:
* XmlSerializationReaderInterpreter.cs:
* SoapCodeExporter.cs:
* XmlTypeMapMemberAttribute.cs:
* XmlSerializationReader.cs:
* XmlCodeExporter.cs: Fixed some warnings.
2005-04-10 Andrew Skiba <andrews@mainsoft.com>
* XmlSerializer.cs: fixed a typo - wrong TARGET_JVM condition.
2005-04-03 Andrew Skiba <andrews@mainsoft.com>
* XmlSerializer.cs: added TARGET_JVM that does not support on-the-fly
code generation.
2005-03-30 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs:
* XmlSerializationReaderInterpreter.cs: If the element being read is
bound to a choice member, set the corresponding value.
* XmlTypeMapMember.cs: Added helper SetValue method.
* XmlTypeMapElementInfo.cs: Changed the type of ChoiceValue to Object,
since now stores the enum value.
* XmlReflectionImporter.cs: Properly import choice values.
* XmlTypeMapMemberElement.cs: Added setter for the choice.
2005-03-29 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs: Added support for subclasses of XmlNode.
This fixes bug #73901 and should fix #70384.
* XmlSerializationReader.cs: When reading an object element, return
an Object instance if the element has no children. This fixes bug #73974.
* XmlSerializationWriter.cs: Support writing XmlNode[] as a primitive
type (it is written as an element with those nodes as children).
2005-03-08 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: Support importing schemas that define
extra types in the standard xml schema namespace. When using encoded
format, support the primitive types defined by the SOAP encoding
namespace.
2005-03-04 Lluis Sanchez Gual <lluis@novell.com>
* ReflectionHelper.cs: Avoid endless loop.
* XmlSchemas.cs: Added null check. Patches from MainSoft.
2005-02-07 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializationReader.cs: After reading an href element, skip the
whole element (it may not be an empty element). This fixes bug #72265.
2005-01-25 Lluis Sanchez Gual <lluis@novell.com>
* XmlSchemaImporter.cs: When importing a default value of type enum,
translate it from the schema value to the clr value.
2005-01-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* XmlSerializer.cs: only print the results if there's an error
compiling.
2005-01-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* SerializationCodeGenerator.cs: don't use _config if it has not been
assigned.
2005-01-18 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionImporter.cs: Don't check the property type if it has
an [XmlIgnore] attribute. This fixes bug #71332.
2005-01-14 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
XmlSerializationWriterInterpreter.cs : exchanged attribute
serialization orders (XmlAnyAttribute <-> XmlNamespaceDeclarations).
xmlns attributes in XmlAnyAttribute are not written.
2005-01-12 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGeneratorConfiguration.cs,
SerializationCodeGenerator.cs : Added some generation configuration:
<generateAsInternal>
write custom reader/writer as internal classes.
<noreader>, <nowriter>
They make generation of reader and/or writer optional.
* XmlSerializerNamespaces.cs :
Now it uses ListDictionary instead of Hashtable.
* XmlSerializationWriter.cs : entries in XmlSerializerNamespaces are
written unless there is already the same prefix-ns mapping.
2005-01-12 Lluis Sanchez Gual <lluis@novell.com>
* XmlTypeMapElementInfo.cs: Added new IndexOfElement method.
* XmlSchemaImporter.cs: When importing a base type of a complex type,
make sure that the base class is always imported as a class and not
as an array. If it has been imported as array, import it again.
This fixes bug #70839. Other minor fixes as well.
* XmlSerializationWriter.cs: Fixed warning.
2004-12-09 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: Yet another generation fix.
2004-12-09 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: Fixed generation of enum literals.
2004-12-09 Lluis Sanchez Gual <lluis@novell.com>
* XmlReflectionMember.cs: Added DeclaringType member.
* XmlReflectionImporter.cs: When importing fields that belong to a
base class, use the xml namespace of the base map for the member.
This fixes bug #70309.
2004-11-30 Lluis Sanchez Gual <lluis@novell.com>
* XmlCodeExporter.cs, XmlSerializer.cs, XmlSchemaImporter.cs: Fixed some
compilation warnings.
2004-11-24 Lluis Sanchez Gual <lluis@novell.com>
* SerializationSource.cs: Made SerializationSource abstract, and
renamed Equals to BaseEquals to avoid missing GetHashCode warning
(it does not really make sense in this case).
* XmlSchemaExporter.cs, SerializationCodeGenerator.cs,
XmlReflectionImporter.cs, XmlSerializationWriterInterpreter.cs,
XmlSerializationReader.cs: Fixed warnings.
2004-10-19 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : When namespace is an empty string,
XmlTextWriter.LookupPrefix() will raise an error. Just skip it in
such case.
2004-10-01 Lluis Sanchez Gual <lluis@novell.com>
* MapCodeGenerator.cs: When the Object type is exported, export all
derived maps. This was done in IncludeMetadata, but this method is
not called by the xsd tool.
* XmlCodeExporter.cs: In AddMappingMetadata, only generate the root
attribute for primitive types and arrays.
* XmlSchemaImporter.cs: Only export all object-derived maps if the
Object type is explicitly referenced by an element.
* XmlSerializationWriter.cs: Minor fix.
2004-09-28 Lluis Sanchez Gual <lluis@novell.com>
* CodeIdentifier.cs: MakeValid now returns "Item" for an empty string.
This fixes bug #66877.
2004-09-21 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
when reading a primitive value in encoded format using
ReadReferencingElement, provide the type name and namespace
since the xsi type may not be present in the xml element. This
fixes bug #65929.
2004-09-15 Lluis Sanchez Gual <lluis@novell.com>
* MapCodeGenerator.cs: Moved generation of XmlInclude attributes from
ExportDerivedTypes to the new ExportDerivedTypeAttributes method.
* XmlReflectionImporter.cs: In ImportClassMapping, moved the call to
ImportIncludedTypes to the end, to make sure that the current map has all
needed data before derived maps are constructed.
* XmlSchemaExporter.cs: Generate the base class of simple types that are
not primitive types. Set the correct value for IsMixed in extended types.
* XmlSchemaImporter.cs: In ImportSimpleContent, take into account that
the base class of a simple type doesn't need to be a xsd type.
All those patches fix bug #65654.
2004-09-03 Lluis Sanchez Gual <lluis@novell.com>
* XmlSerializer.cs: When the XmlReader is created by XmlSerializer, use
Normalization==true by default.
2004-09-02 Lluis Sanchez Gual <lluis@novell.com>
* ReflectionHelper.cs, SoapReflectionImporter.cs, XmlReflectionImporter.cs:
In CheckSerializableType, add the option of ignoring types with private
constructors. Some kind of lists can be deserialized
even if the constructor is private. See bug #61464.
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
Before creating a list, check that it has a public constructor.
* TypeData.cs: Added HasPublicConstructor property.
2004-09-01 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs: Generate correct "HasValue" check for
value list serialization.
* XmlSchemaImporter.cs: Added some null checks.
2004-08-25 Lluis Sanchez Gual <lluis@novell.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
When deserializing an encoded method response, assign to the return value
the first element of the message, whatever it is. The return type doesn't
need to be Object, it seems to be true for all return types.
2004-07-26 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: CreateFieldMember now adds the field to the class,
no need to add it after the call.
* SoapSchemaImporter.cs: Implemented 2.0 constructors.
2004-07-23 Lluis Sanchez Gual <lluis@novell.com>
* CodeGenerationOptions.cs: Made the class internal for the 1.1 profile.
* ImportContext.cs: Implemented.
* MapCodeGenerator.cs, SoapCodeExporter.cs, XmlCodeExporter.cs: Added new
options for 2.0. Implemented support for generating properties instead of
fields.
* XmlSchemaImporter.cs: Added support for sharing types.
2004-07-15 Lluis Sanchez Gual <lluis@novell.com>
* TypeTranslator.cs, XmlCustomFormatter.cs: Added support for base64. This
xsd type is not part of the last schema specification, but the google api
uses it and ms.net accepts it.
2004-07-12 Lluis Sanchez Gual <lluis@ximian.com>
* ReflectionHelper.cs: Fixed bug when registering a map as exported.
Thanks to Juan C. Olivares.
2004-07-10 Lluis Sanchez Gual <lluis@ximian.com>
* CodeExporter.cs: Added private constructor.
* CodeGenerationOptions.cs: Set the correct enum values.
* CodeIdentifier.cs: Added private constructor.
* SchemaImporter.cs: Added internal constructor.
* XmlMapping.cs, XmlSerializer.cs: 2.0 api fix.
* XmlMemberMapping.cs, XmlSchemaImporter.cs, XmlSerializationWriter.cs: Added 2.0 stubs.
* XmlSchemaProviderAttribute.cs, XmlSerializerAssemblyAttribute.cs,
XmlSerializerVersionAttribute.cs: Set correct attribute usage.
* XmlSerializationReader.cs: Added missing setter for DecodeName.
2004-07-08 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializer.cs: Fix fix.
2004-07-08 Lluis Sanchez Gual <lluis@ximian.com>
* IXmlSerializerImplementation.cs: Compile as internal in NET_1_1.
* ReflectionHelper.cs: New method for generating map keys.
* SerializationCodeGenerator.cs: Added support for generating the serializer
contract class, needed for 2.0.
* SerializationSource.cs: Use Type[] instead of ArrayList for storing
extra types.
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: Assign extra types
as Type[]. Added check that makes sure that enums being serialized are
public.
* XmlMapping.cs: Added internal GetKey method.
* XmlSerializer.cs: Added support for IXmlSerializerImplementation.
Added first bits to support loading of serializers from pre-generated
assemblies.
* XmlSerializerFactory.cs: Mostly implemeted.
2004-07-02 Lluis Sanchez Gual <lluis@ximian.com>
* CodeIdentifier.cs: Removed constructor for NET_2_0.
* SoapCodeExporter.cs, SoapSchemaImporter.cs, XmlCodeExporter.cs,
XmlMapping.cs, XmlMemberMapping.cs, XmlReflectionImporter.cs,
XmlSchemaExporter.cs, XmlSchemaImporter.cs, XmlSchemas.cs,
XmlSerializationReader.cs, XmlSerializationWriter.cs, XmlSerializer.cs,
XmlSerializerNamespaces.cs: Added 2.0 stubs.
* XmlMembersMapping.cs, XmlTypeMapping.cs: 2.0 fixage.
* IXmlTextParser.cs, CodeExporter.cs, CodeGenerationOptions.cs,
ImportContext.cs, SchemaImporter.cs, SchemaImporterExtension.cs,
SchemaImporterExtensionCollection.cs, XmlDeserializationEvents.cs,
XmlSchemaProviderAttribute.cs, XmlSerializationGeneratedCode.cs,
XmlSerializerAssemblyAttribute.cs, XmlSerializerFactory.cs,
XmlSerializerVersionAttribute.cs: New files. More 2.0 stubs.
2004-07-02 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs: Generate check that the object being
serialized has a known type. Little cast fix.
* XmlCustomFormatter.cs: Little fix in Single conversion.
2004-07-01 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs: In the constructor, set the correct xml type name if the
type is an array (for example, instead of StringCollection, use
ArrayOfString).
2004-06-22 Lluis Sanchez Gual <lluis@ximian.com>
* ReflectionHelper.cs: Correctly detect private types.
* XmlCodeExporter.cs: Implemented missing method.
* XmlSchemaImporter.cs: Allow import of root primitive types.
2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
* CodeIdentifier.cs, CodeIdentifiers.cs, MapCodeGenerator.cs,
SerializationCodeGenerator.cs, SerializationSource.cs,
TypeTranslator.cs, XmlAttributeOverrides.cs, XmlCustomFormatter.cs,
XmlSerializationReader.cs, XmlSerializationWriter.cs,
XmlSerializer.cs, XmlTypeMapMemberElement.cs, XmlTypeMapping.cs
: Globalization fixes.
In XmlCustomFormatter.GenerateToXmlString() time was not
generated correctly.
Replaced all CRLF XmlAttributeOverrides.cs into LF.
2004-06-13 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSerializationWriter.cs: changed signature of protected method
FromByteArrayBase64 to match MS.NET
2004-06-10 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs, SoapCodeExporter.cs: Generate the same XmlInclude
attributes that MS.NET generates.
* SerializationCodeGenerator.cs: Avoid duplicate generation of maps in the
same reader/writer.
* XmlCodeExporter.cs: Added support for ignore flag in maps and members.
* XmlReflectionImporter.cs: Changed GetReflectionMembers to match
MS.NET member ordering. Patch by David Taylor.
* XmlSchemaImporter.cs: When generating a choice member, set the ignore
flag. The generated enum must also not be included in the schema.
* XmlTypeMapMember.cs: Added ignore flag.
* XmlTypeMapping.cs: The AttributeMembers property now returns the
attributes in the correct order.
2004-06-03 Gert Driesen <drieseng@users.sourceforge.net>
* XmlSerializationReader.cs: added missing protected members
to fix API compatibility with MS.NET
* XmlSerializationWriter.cs: added missing protected members
to fix API compatibility with MS.NET
2004-06-02 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Support schamea instance namespaces other than
the 2001 one when reading the xsi type.
* MapCodeGenerator.cs: Take into account that the root namespace and element
name may have changed from one export to another of the same type. In
this case the class attributes need to be regenerated.
* SoapCodeExporter.cs, XmlCodeExporter.cs: Take the enum name from XmlType,
not ElementName. Idem for namespace.
* XmlReflectionImporter.cs: Set nullable property of XmlTypeMapping.
* XmlRootAttribute.cs: Default value for nullable is true.
* XmlSchemaImporter.cs: The root name for a class may change in some
scenarios (for example, when the type is initially exported as part of
another type and later exported as a root type).
* XmlSerializationReader.cs: In GetXsiType(), if the type attribute is not
found using the standard namespace, try getting the type using
the 2000/10 and 1999 namespaces.
* XmlTypeMapping.cs: Added IsNullable property. Updated SetRoot method ;-)
2004-05-26 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
In encoded format, primitive types can be null. Read them using
ReadReferencingElement, that already checks for the null tag.
2004-05-25 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Check for empty element when reading an array
element. This fixes bug #59003. Thanks Atsushi!
2004-05-07 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationWriter.cs: Implemented some missing methods.
In .NET 1.0, encoded null elements use the attribute null="1", while in
1.1 the attribute is nil="true".
* XmlTypeMapping.cs: Little fix for nested classes.
2004-05-07 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Don't reset the internal tables at every
ImportMembersMapping call. This fixes bug #58112. The problem is that
it imported two different arrays (only different in the array item
namespace) with the same name. Not sure what was this Reset needed for,
everyting seems to work without it.
2004-05-05 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
When deserializing an encoded method response, if the return type of the
method is Object, assign to it the first element of the message, whatever
it is.
* XmlSerializationReader.cs:
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: Set IsReturnValue of
the imported member.
* TypeTranslator.cs: Added method to safely get a primitive TypeData.
* XmlSerializationReader.cs: Don't throw an exception when the CLR type for
a given xsi type is not found. Just read it as primitive type.
* XmlTypeMapMember.cs: Added IsReturnValue property.
* XmlTypeMapping.cs: Added ReturnMember property.
* XmlSerializer.cs: Reference System.Data when compiling the serializer.
2004-05-05 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
When reading an object using the typeof(object) map, an emty xsi:type
means that it has to read the contents into an XmlNode[].
* TypeData.cs: Return the correct full name for inner classes.
* XmlSchemaImporter.cs: Improved detection of types that represent
"anyType", and must be mapped to XmlElement, XmlNode or Object.
* XmlSerializationReader.cs: In GetXsiType(), find the type attribute using
the correct namespace.
In ReadTypedPrimitive(), read the element as XmlNode[] if the type is
not known.
2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
* XmlSerializationWriter.cs : It do not have to handle schema
namespace as special one.
2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReaderInterpreter.cs: Removed the check for null
AttributeMembers collection. Even if there are no attribute members,
attributes need to be read.
2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: In ReadSerializable(), take into account that
the IXmlSerializable object may not read all the EndElement it read.
This fixes bug #57413.
2004-05-03 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializer.cs: Enable serializer generation by default.
2004-04-20 Lluis Sanchez Gual <lluis@ximian.com>
* TypeTranslator.cs: Mapped again anyUri, but now it is mapped to String.
* XmlSchemaImporter.cs: If a map was initially imported as a class, but it
turns out that it is an array, import it again as array. This fixes
bug #57133.
2004-04-15 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaExporter.cs: When checking if a map has been exported or not,
don't use type name for array types, since we can have different classes
that represent the same array type (for example StringCollection and
string[]).
2004-04-14 Lluis Sanchez Gual <lluis@ximian.com>
* TypeTranslator.cs, XmlCustomFormatter.cs: Removed map from Uri to anyUri,
not present in MS.NET.
* XmlSerializationWriter.cs: Improved error message.
2004-03-30 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlReflectionImporter.cs,
XmlSerializationReader.cs, XmlSerializationReaderInterpreter.cs:
Support deserialization of members of type XmlDocument. This fixes #56169.
2004-03-25 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs: Generate an integer for unknown enum values.
Use a special method to generate default values, since default enum values
will come as integers, so a special cast is needed.
* XmlSerializationReaderInterpreter.cs,
* SerializationSource.cs, SoapAttributeAttribute.cs, SoapAttributeOverrides.cs,
SoapAttributes.cs, SoapElementAttribute.cs, SoapEnumAttribute.cs,
SoapTypeAttribute.cs, XmlAnyElementAttribute.cs, XmlAnyElementAttributes.cs,
XmlArrayAttribute.cs, XmlArrayItemAttribute.cs, XmlArrayItemAttributes.cs,
XmlAttributeAttribute.cs, XmlAttributeOverrides.cs, XmlAttributes.cs,
XmlChoiceIdentifierAttribute.cs, XmlElementAttribute.cs, XmlElementAttributes.cs,
XmlEnumAttribute.cs, XmlReflectionMember.cs, XmlRootAttribute.cs,
XmlTextAttribute.cs, XmlTypeAttribute.cs: Had to change the implementation
of SerializationSource. It can't keep and use the XmlAttributeOverride
instances as key values, since those instances can be modified after the
xml map has been generated. Now, SerializationSource generates a unique
string hash from XmlAttributeOverride and uses it for comparisons.
2004-03-24 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs: Several fixes: generate valid names for
WriteRoot_ and ReadRoot_ methods. Cast result of ReadTypedPrimitive to
the adequate type. Set the default value of members that do have a default
value. Other minor fixes.
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: All maps must derive
from typeof(object) map, even those that have another base class.
* XmlCustomFormatter.cs: Fixed generation of conversion from char to string.
It must serialize the char as number, not as character.
* XmlSerializationReaderInterpreter.cs: Set the default value of members
that do have a default value.
* XmlTypeMapping.cs: Added property MembersWithDefault, which returns a list
of members that have a default value.
2004-03-15 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaImporter.cs: Import IXmlSerializable types as DataSet, like in MS.NET.
This fixes bug #55547.
2004-03-13 David Sheldon <dave-mono@earth.li>
* XmlSerializationWriter.cs: Implement WriteElementStringRaw with a
byte [].
2004-03-13 David Sheldon <dave-mono@earth.li>
* XmlTextAttribute.cs: Initialise dataType with zero-length string.
fixes test case that tests for this directly.
* TypeTranslator.cs: Check for new zero-length dataType so we don't reject
it. Treat it as null.
2004-03-12 Lluis Sanchez Gual <lluis@ximian.com>
* CodeIdentifier.cs: Limit the length of identifiers.
* MapCodeGenerator.cs: Do not generate base class if it is an XmlNode.
Generate types using GetDomType, so if the type is an array, it creates
the correct combination of types.
* SerializationCodeGenerator.cs, XmlTypeMapping.cs: When trying to parse
an enum, if the string is empty and the enum has [Flags], then return 0
as value. This fixes bug #55509.
* XmlSchemaImporter.cs: Added check for redefines of attribute groups. They
are not supported. Another check: a simple type cannot be enum if it does
not have any enum facet.
And another fix: use string as default type for attribtues.
* XmlSchemas.cs: Fixed search for schema elements. An schema may import
other schemas. An imported schema would not be in the table, but its
elements (although from another namespace) would be in the schema that
imported it. So, we need know to check for every schema in the table.
* XmlSerializer.cs: Added environment variable to help debugging code
generator output.
2004-02-27 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Added IncludeMetadata property, which returns a list
of XmlInclude attributes needed for the service class.
IsMapExported: Removed check for object type, since it can now be exported.
SetMapExported: Use the type name as key, since different importers may
be used to create a map for the same type.
GenerateClassInclude: Updated signature.
* SoapCodeExporter.cs: Moved management of IncludeMetadata to MapCodeGenerator.
GenerateClassInclude(): Updated signature.
* SoapReflectionImporter.cs: Support SoapIncludeAttribute in array members.
Implemented IncludeTypes.
* XmlCodeExporter.cs: Moved management of IncludeMetadata to MapCodeGenerator.
GenerateClassInclude(): Updated signature.
* XmlMemberMapping.cs: Added missing property.
* XmlReflectionImporter.cs: GetReflectionMembers must be private.
Implemented IncludeTypes().
* XmlSchemaExporter.cs: Added support for exporting typeof(object).
* XmlSchemaImporter.cs: Changed the implementation of ImportDerivedTypeMapping.
Now, it does a regular import and then assign the required base class to
the imported map. In this way it is possible to assign a base type for a
map that was previously imported without a base type.
* XmlTypeMapping.cs: Added internal method SetRoot().
2004-02-24 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs: Added support for generation of readers
and writers for several maps in a single class. Added support for
XmlMemberMapping. Fixed generation of serializers that use encoded format.
* SoapAttributeAttribute.cs, SoapAttributeOverrides.cs, SoapAttributes.cs,
SoapElementAttribute.cs, SoapEnumAttribute.cs, SoapTypeAttribute.cs,
XmlAnyElementAttribute.cs, XmlAnyElementAttributes.cs, XmlArrayAttribute.cs,
XmlArrayItemAttribute.cs, XmlArrayItemAttributes.cs, XmlAttributeAttribute.cs,
XmlAttributeOverrides.cs, XmlChoiceIdentifierAttribute.cs, XmlRootAttribute.cs,
XmlElementAttribute.cs, XmlElementAttributes.cs, XmlEnumAttribute.cs,
XmlReflectionMember.cs, XmlTextAttribute.cs, XmlTypeAttribute.cs:
Added InternalEquals method.
* XmlAttributes.cs: Removed a lot of unused code. Added InternalEquals method.
* SoapReflectionImporter.cs: Set SerializationSource to generated maps.
* XmlCustomFormatter.cs: Fixed little bug.
* XmlMapping.cs: Added Source property. This a global identifier of the map.
* XmlReflectionImporter.cs: Set SerializationSource to generated maps.
* XmlSchemaImporter.cs: Set the correct value for IsNillable when importing
mapping members.
* XmlSerializationReaderInterpreter.cs, XmlSerializationWriter.cs: Minor fixes.
* XmlSerializationWriterInterpreter.cs: WriteObject and WriteEnum were not
correctly used.
* XmlSerializer.cs: Added support for generation of serializers.
2004-02-18 Atsushi Enomoto <atsushi@ximian.com>
* SerializationCodeGenerator.cs,
SerializationCodeGeneratorConfiguration.cs:
Added <namespaceImports> feature ("using XXX;" generation) support.
2004-02-17 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationWriter.cs: When writing the root element, use a prefix
if the namespace of the element is defined in the list of namespaces
provided to the XmlSerializer. This fixes bug #54427.
2004-02-16 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Modified some methods to make them easier to reuse.
Those are basically methods to add custom attributes to element and
attribute members.
* SoapCodeExporter.cs: Track changes in MapCodeGenerator.
* XmlCodeExporter.cs: Better support for custom attribute generation for
method parameters.
* XmlCustomFormatter.cs: Added null check.
* XmlSchemaImporter.cs: do not set IsOptionalValueType property to
attributes that are required.
* XmlSerializationReaderInterpreter.cs: Method parameters may be serialized
as attributes.
2004-02-11 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Changed some methods to make them easier to reuse.
* TypeTranslator.cs: NMTOKENS, ENTITIES and IDREFS must be mapped to
string, not string[].
* XmlCodeExporter.cs: AddMappingMetadata(): improved attribute generation
for array parameters. In general, improved generation of schema Form
property.
* XmlMemberMapping.cs: Added Form property.
* XmlReflectionImporter.cs: Types that inherit from other types cannot be
simple types. Added a check for this.
* XmlSchemaExporter.cs: several fixes: better generation of IsMixed and
Form. The key used to determine if a map has been already generated must
include the XmlType, since there can be two xml types with the same CLR
type and namespace (for example, they may differ in the Form property).
* XmlSchemaImporter.cs: When getting the TypeData for a schema element,
also return the corresponding map. There can be two maps that have the
same TypeData, so given a TypeData is not always possible to get the
correct corresponding map (for example two arrays that only differ in the
Form of the item).
* XmlTypeMapping.cs: Added method to set if a map can represent a simple
type or not.
2004-02-04 Lluis Sanchez Gual <lluis@ximian.com>
* TypeTranslator.cs, XmlCustomFormatter.cs: Added support for the
normalizedString schema type.
2004-02-04 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Get the class members using the right order.
* XmlSerializationWriterInterpreter.cs: Removed unneeded code.
A member with the Any attribute can also contain text. Support this.
* XmlTypeMapMemberElement.cs: Added CanBeText property.
2004-01-27 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaImporter.cs: Redefinition of types are not supported. Added a
check.
2004-01-27 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Added helper method for generating an attribute
parameter of type enum.
* XmlAttributeAttribute.cs: little fix.
* XmlCodeExporter.cs: Support XmlAnyAttribute when generating attributes
for method parameters.
* XmlMemberMapping.cs: Improved support for members of type "any".
* XmlReflectionImporter.cs: Improved assignment of the attribute form.
If the namespace is explicitly specified, then the form should be
qualified. Also fixed issues with the namespace assigned to attributes.
This should fix bug #53384.
* XmlSchemaExporter.cs: ExportMembersMapping(): improved support for
methods that return values of type "any". Changed the methods
AddSchemaArrayElement and AddSchemaElement, so instead of adding the
element, return it, and the caller must add it to the collection.
Other fixes in attribute generation.
* XmlSchemaImporter.cs: ImportAnyType(): if a type name is provided,
generate the AnyType mapping from the type described in the schema.
Small fixes regarding IsMixed property of complex types (it means that
the type can contain text, so the XmlTextAttribute must be generated).
* XmlSerializationReaderInterpreter.cs: Reading of members by-order must
be only used in the bare+encoded format.
2004-01-24 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Types included with SoapInclude don't need
to be derived types of the one that has the attribute.
* XmlReflectionImporter.cs: Recursively register the derived maps of a given
map to the parent map. This fixes #53246.
* XmlSerializationWriter.cs: Some fixes regarding empty namespaces.
2004-01-22 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReaderInterpreter.cs: When deserializing an XmlElement,
do not check the root element name, since it can be any name. This fixes
bug #53201.
2004-01-20 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Throw exception if a value type member has the
IsNullable=true flag. This fixes bug #52906.
2004-01-20 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs, XmlSchemaImporter.cs: Attributes are allways optional,
so a 'specified' member has always to be generated.
* TypeData.cs: Fixed check for value type.
2004-01-20 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReaderInterpreter.cs, XmlSerializationWriterInterpreter.cs,
XmlTypeMapMember.cs, MapCodeGenerator.cs, SoapCodeExporter.cs, TypeData.cs,
XmlCodeExporter.cs, XmlReflectionImporter.cs, XmlSchemaExporter.cs,
XmlSchemaImporter.cs, XmlSerializationReaderInterpreter.cs,
XmlSerializationWriterInterpreter.cs, XmlTypeMapMember.cs:
Added support for value specifiers members. This fixes bug #53024.
2004-01-20 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaExporter.cs: Don't create referenced element if it has already
been created (two types could be referencing the same schema element).
2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Read IsNullable flag from XmlArrayAttribute.
* XmlSerializationWriterInterpreter.cs: Interpret IsNullable flag for
arrays. This fixes bug #53018.
2004-01-14 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Use type namespace instead of root namespace as
default namespace for members.
* XmlCodeExporter.cs: Fixed generation of XmlRootAttribute.
* XmlReflectionImporter.cs: Fixed the assignment of root and type
namespaces.
* XmlSchemaExporter.cs: Use type namespace instead of root namespace as
default namespace for members. In AddSchemaElement, if the element is
a root element never use a "ref" attribute.
* XmlSchemaImporter.cs: Fixed issue when importing root elements.
2004-01-13 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs, XmlSerializationWriterInterpreter.cs
XmlTypeMapping.cs: more namespace fixes.
2004-01-13 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: type namespace must never be used as root
namespace. This fixes bug #52772.
2004-01-08 Nick Drochak <ndrochak@ieee.org>
* XmlSchemaImporter.cs: Removed unused variable.
2004-01-07 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Ignore Namespace property when applying
the [XmlType] attribute to an enum. This fixes bug #52607.
2003-12-19 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlReflectionImporter.cs: Added internal
option that allow serialization of private types.
2003-12-18 Eran Domb <erand@mainsoft.com>
* TypeTranslator.cs : Change primtive types map.
2003-12-18 Eran Domb <erand@mainsoft.com>
* XmlReflectionImporter.cs (ImportListMapping): Adding the included types of the list as a derived
classes of object.
2003-12-15 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaExporter.cs: AddSchemaElement, use XmlTypeMapElementInfo.IsPrimitive
to check if a type is primitive, instead of Type.IsPrimitive, since CLR
primitive types are not the same as XML primitive types. Patch proposed
by Mordechai Taitelman. This fixes bug #52228.
* XmlSerializationWriter.cs: Fixes in WriteNullTagEncoded and WriteNullTagLiteral.
2003-12-15 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Little fix.
2003-12-15 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Type specified with XmlIncludeAttribute don't
need to be derived types of the includer. This fixes bug #52152.
Added null check for Name property of XmlEnumAttribute. This fixes
bug #52155.
* XmlSerializationReader.cs: Fixed some error messages.
* XmlSerializationReaderInterpreter.cs: Check that the root element has
the correct local name and namespace. This fixes bug #52038.
Throw exception if enum value can't be parsed.
* XmlTypeMapping.cs: Don't try to parse numeric enum values. This fixes
bug #52041.
2003-12-12 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Added support for [Flags] enum.
* XmlCodeExporter.cs: Do not add XmlElement attributes if the member is Any.
* XmlSchemaImporter.cs: Implemented ImportAnyType(). Improved import of
encoded array type. Added support for enums with [Flags].
In encoded format, unqualified types are schema types by default.
2003-12-11 Lluis Sanchez Gual <lluis@ximian.com>
* XmlCodeExporter.cs: Little fix.
* XmlSchemaExporter.cs: In rpc format, make sure that parameters with the
same name have the same type.
* XmlSchemaImporter.cs: Support xml:lang.
* XmlSerializationReader.cs, XmlSerializationWriterInterpreter.cs:
fixed wrong namespace for the arrayType attribute.
2003-12-08 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlMembersMapping.cs, XmlReflectionImporter.cs,
XmlSchemaImporter.cs, XmlTypeMapElementInfo.cs, XmlTypeMapping.cs:
When using rpc format on a web service, members don't need to have any
specific namespace. Added a flag for turning namespace check on/off.
2003-11-27 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Generate identifiers for arrays user a counter.
delayedListFixups.Count cannot be used because elementes from
delayedListFixups are deleted sometimes.
2003-11-27 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Indexer properties must not be serialized.
This fixes bug #51060.
2003-11-24 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationWriterInterpreter.cs: Applied patch by Eran Domb:
If type is Enum the code use type.GetElememtType() instead of
Enum.GetUnderlyingType().
2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs, XmlSerializationWriter.cs, XmlSerializer.cs:
Removed several TODOs already done.
2003-11-03 Lluis Sanchez Gual <lluis@ximian.com>
* XmlCustomFormatter.cs: Added support for anyUri type. This fixes
bug #50041.
2003-10-20 Lluis Sanchez Gual <lluis@ximian.com>
* ReflectionHelper.cs: In CheckSerializableType() check that the type
is public.
* XmlSerializationWriter.cs: Added check for circular references.
This fixes bug #49879.
2003-10-20 Lluis Sanchez Gual <lluis@ximian.com>
* ReflectionHelper.cs: Added check in CheckSerializableType(). Interfaces
can't be serialized. This fixes bug #49878.
* TypeData.cs: In ListItemType check that the collection has a valid
Add method and report an error if not.
* XmlReflectionImporter.cs: Added CheckSerializableType check call when
reflecting a collection.
2003-10-18 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Support element references for enum values in
encoding format. This fixes bug #49568.
* XmlSerializationReaderInterpreter.cs: In encoded format, do not check
the name and namespace of the wrapper element. MS.NET doesn't do it.
This fixes bug #49729.
2003-10-15 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: Made MapCodeGenerator internal.
2003-10-15 Lluis Sanchez Gual <lluis@ximian.com>
* MapCodeGenerator.cs: New file. Moved here all code that is common
between XmlCodeExporter and SoapCodeExporter.
* SoapCodeExporter.cs: Implemented.
* XmlCodeExporter.cs: Moved common code to MapCodeGenerator.
* XmlSerializationReaderInterpreter.cs: Fixed problem when reading
encoded bare parameter list.
* XmlTypeMapping.cs: Added method for getting member element by index.
2003-10-14 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSchemas.cs : Implemented IsDataSet().
2003-10-13 Lluis Sanchez Gual <lluis@ximian.com>
* SoapCodeExporter.cs: Initial implementation of AddMappingMetadata().
* SoapReflectionImporter.cs, XmlReflectionImporter.cs, XmlSchemaImporter.cs:
in ImportMembersMapping, set pass the namespace to each XmlMemberMapping.
* SoapSchemaExporter.cs: Some fixes in ExportMembersMapping.
* XmlMemberMapping.cs: Fixed constructor. Now it takes the default namespace
and whether it uses encoded or literal format.
* XmlSchemaExporter.cs: Little fixes.
2003-10-10 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs. Fixed bug #49510. An array element doesn't
need to be of type SOAP-ENC:Array, it can be a restriction of it.
2003-10-10 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: Fixed bug #49476.
Read only properties are only serialized if the type is an array.
2003-10-09 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs,
SoapReflectionImporter.cs: Fixed bug #94694. Check for public constructor
is not needed for value types.
2003-10-08 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializer.cs, XmlSerializationWriter.cs: Fixed bug #49353
(XmlSerializer.Serialize() handles namespace parameter incorrectly)
2003-10-05 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs, SoapReflectionImporter.cs: Fixed bug #49349
2003-10-04 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaExporter.cs: Keep track of elements being exported.
* XmlSchemas.cs: Removed unneeded catch.
2003-10-01 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs, XmlSerializationReaderInterpreter.cs:
Fixed handling of members with XmlTextAttribute that are arrays.
* TypeData.cs: IsComplexType now returns true for XmlNode.
* XmlSerializer.cs: Added check for null mapping in FromMappings.
* XmlTypeMapping.cs: Added helper method FindTextElement.
2003-09-28 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs, XmlSchemaExporter.cs:
Added support for IncludeInSchema flag.
* SoapSchemaImporter.cs: Implemented ImportDerivedTypeMapping method.
* XmlCodeExporter.cs: Implemented AddMappingMetadata and AddMappingMetadata
methods. Added support for IncludeInSchema flag.
* XmlSchemaImporter.cs: Implemented ImportDerivedTypeMapping method.
Added support for IncludeInSchema flag.
* XmlTypeAttribute.cs: Set includeInSchema to true by default.
* XmlTypeMapping.cs: Added IncludeInSchema property.
2003-09-25 Lluis Sanchez Gual <lluis@ximian.com>
* SoapIncludeAttribute.cs: Added AllowMultiple option. This fixes bug #48877.
2003-09-14 Lluis Sanchez Gual <lluis@ximian.com>
* XmlCustomFormatter.cs: added support for additional string types in
GenerateToXmlString().
* XmlSchemaExporter.cs: Fixed generation of XmlMembersMapping using
encoded format.
2003-09-11 Lluis Sanchez Gual <lluis@ximian.com>
* SoapSchemaImporter.cs: implemented.
* XmlReflectionImporter.cs: Changed nullable default for array items to true.
* XmlSchemaExporter.cs: Some fixes in the generation of encoded format schema.
* XmlSchemaImporter.cs: more support for encoded format.
2003-09-04 Lluis Sanchez Gual <lluis@ximian.com>
* SerializationCodeGenerator.cs: Minor fixes.
* SoapReflectionImporter.cs: More fixes.
* SoapSchemaExporter.cs: implemented.
* SoapSchemaImporter.cs: Initial implementation.
* TypeTranslator.cs: new methods for dealing with encoded arrays: GetArrayName
and ParseArrayType
* XmlCodeExporter.cs: Fix. When exporting a map, export all derived maps.
* XmlMemberMapping.cs: Minor fixes.
* XmlMembersMapping.cs: added some convenient constructors.
* XmlSchemaExporter.cs: Added support for encoded format.
* XmlSchemaImporter.cs: Added support for encoded format.
* XmlSerializationReader.cs: changed some string literals by constants.
Implemented ParseWsdlArrayType.
* XmlSerializationReaderInterpreter.cs: Read typeArray attribute when serializing
custom attributes.
* XmlSerializationWriter.cs: Implemented WriteXmlAttribute.
* XmlSerializationWriterInterpreter.cs: Use WriteXmlAttribute instead of
WriteAttribute to write custom attributes.
* XmlSerializer.cs: added some namespace constants.
* XmlTypeMapping.cs: added GetSchemaArrayName method.
2003-09-01 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaImporter.cs: Implemented ImportMembersMapping.
* XmlTypeMapMemberElement.cs: Little fix.
* XmlTypeMapping.cs: Added AllElementInfos property in ClassMap.
* XmlCustomFormatter.cs: Added GenerateToXmlString and GenerateFromXmlString
methods.
* SerializationCodeGenerator.cs, SerializationCodeGeneratorConfiguration.cs:
Added.
2003-08-29 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Fixed construcion of XmlMemberMapping.
* XmlMemberMapping.cs: Changed constructor.
* XmlReflectionImporter.cs: Fixed construcion of XmlMemberMapping.
* XmlSchemaImporter.cs: Implemented ImportMembersMapping().
* XmlSerializationReaderInterpreter.cs: Added some helper methods. Changed visibility.
* XmlSerializationWriterInterpreter.cs: Changed visibility.
2003-08-28 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializer.cs: Fix in Deserialize() method.
2003-08-28 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Fill RelatedMaps property of the generated map.
* XmlSchemas.cs: Find method: make sure the returned object belongs to
the requested type.
* XmlSerializationReader.cs: Removed unneded virtual ReadObject method.
Add null checks for eventSource.
* XmlSerializationReaderInterpreter.cs: ReadObject is not virtual any more.
* XmlSerializationWriter.cs: In Initialize method, initialize the provided
namespece declarations. Virtual method WriteObject not needed any more.
In WriteStartElement, write the provided namespaces.
* XmlSerializationWriterInterpreter.cs: Write object is not virtual any more.
Added GetTypeMap method, that returns the map for a given type. Added some
virtual methods, so writer behavior can be extended at several places by
derived classes.
* XmlSerializer.cs: Changed behavior to match what MS.NET does. The virtual
methods CreateReader and CreateWriter are not called unless no type or
type mapping was provided in the constructor.
2003-08-12 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaImporter.cs: ImportTypeMapping doesn't need to check if the
schema type it is importing is a class or an array. It will always
be a class.
2003-08-12 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationWriterInterpreter.cs: any element members can be serialized
as text nodes. Support it.
2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
* CodeIdentifier.cs: Fixed MakeValid method.
* TypeTranslator.cs: Added support for more primitive types. Added
GetDefaultPrimitiveTypeData, which returns the type data to which a clr type
maps by default.
* XmlCodeExporter.cs: Generate XmlRoot attribute only if root element name and ns
are different from the type ns and name.
Generate class and field comments.
Fixed default attribute generation. In elements with ref attribute, it has to be
generated in the referred attribute.
* XmlReflectionImporter.cs: Added check: simple type extensions can't add new elements.
Added suport for text nodes in members of type "any".
* XmlSchemaExporter.cs: Several fixes. Fixed generation of complex types with simple
content.
* XmlSchemaImporter.cs: Several fixes. The importer now collects documentation info.
* XmlSerializationWriter.cs: WriteNamespaceDeclarations(): do not declare namespaces
that have already been declared.
WriteStartElement(): elements from schema namespace are always written with ns prefix.
* XmlTypeMapMember.cs: Added documentation property.
* XmlTypeMapping.cs: Added documentation property. Added property to check if a class map
represents a simple type.
2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSchemaImporter.cs: Implemented ImportTypeMapping and all needed parsing
stuff.
* SoapReflectionImporter.cs: Set the type namespace parameter when creating a map.
* TypeData.cs: Added property that returns a TypeData that represents an array of
the given TypeData.
* TypeTranslator.cs: Added GetArrayName() method.
Added TypeDatas for missing primitive types.
* XmlCodeExporter.cs: Implemented ExportMembersMapping. Fixed generation of
XmlRootAttribute. Added the namespace to all attributes being generated.
Other fixes in the generation of code.
* XmlReflectionImporter: store the namespace of the type in the maps.
* XmlSchemaExporter.cs: Several fixes. Only set the "mixed" attribute if the
class can generate text. Do not export inherited attributes of a class.
Use the new root namespace stored in the map when generating the root element.
* XmlSerializationWriter: Always write a prefix when writing a qname, even if the
namespace is the default namespace.
* XmlSerializationWriterInterpreter.cs: fixed missing "else".
* XmlTypeMapElementInfo.cs: In DataTypeNamespace property, return the type
namespace instead of the map namespace (which can be different if the type
has a XmlRoot element).
* XmlTypeMapMember.cs: Set the default value of the DefaultValue property
to System.DBNull.Value.
* XmlTypeMapMemberElement.cs: ElementInfo property: In the getter Create
the collection if it has not yet been created.
* XmlTypeMapping.cs: Added property XmlTypeNamespace which stores the namespace
of the type. It may be different from the namespace of the map if the type
has a XmlRoot element. Also added IsSimpleType property.
In ClassMap, added AllMembers property.
2003-07-30 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs: Added new constructor and variables to allow the creation of
a TypeData without a Type. Added ListItemTypeData property.
* XmlTypeMapping.cs: Added property for checking if a ListMap represents an
array of arrays. Added also a property to get the nested array map.
* XmlCodeExporter.cs: First implementation of code exporter.
2003-07-22 Lluis Sanchez Gual <lluis@ximian.com>
* TypeTranslator.cs: Added new primitive types: NMTOKEN and NCName.
* XmlSerializationWriterInterpreter.cs: Write XmlAttributes with the prefix
they have.
2003-07-15 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: Avoid generating two
maps with the same name and namespace. To avoid this, maps must be registered
using the real map namespace, not the default namespace (the namespace can
change if the type has a XmlType or SoapType attribute).
* XmlArrayItemAttribute.cs: Set IsNullable to true by default.
* XmlSchemaExporter.cs: Implemented method ExportMembersMapping.
Other small fixes.
* XmlSerializationWriterInterpreter.cs: GetStringValue: return null if the value
is null.
2003-07-14 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Set the BaseMap property of map. Small fix.
* TypeData.cs: IsComplexType now returns true for IXmlSerializable types.
* XmlAttributes.cs: Fixed bug when reading the value of DefaultValueAttribute.
* XmlReflectionImporter.cs: Set the BaseMap property of map. Several small fixes.
* XmlSchemaExporter.cs: Implemented.
* XmlSchemas.cs: Support schemas with TargetNamespace set to null.
* XmlSerializationWriter.cs: FromXmlQualifiedName (): return null if the qname is null.
GetNamespacePrefix (): no need to add xmlns attribute if namespace is null.
* XmlSerializationWriterInterpreter.cs: Fixed management of default values.
GetStringValue() returns null if the value is null, instead of empty string.
(attributes with null values are not written).
* XmlTypeMapElementInfo.cs: added IsTextElement and IsUnnamedAnyElement properties.
* XmlTypeMapMemberAttribute.cs: added DataTypeNamespace and removed DataType.
DataType value can is now in TypeData.
* XmlTypeMapMemberElement.cs: Small fix.
* XmlTypeMapping.cs: Added FindMember method and BaseMap property.
2003-07-14 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
* AssemblyInfo.cs: Removed
2003-07-9 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationWriter.cs: WriteStartElement(): Do not write xsd and xsi
namespace declarations if they have already been defined.
2003-07-2 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReaderInterpreter.cs: Use the parameter type when getting the Add method
for adding elements to a list.
2003-06-31 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs: Fixed so XmlIncludeAttribute and
SoapIncludeAttribute are now transitive (if class A includes class B, and B includes C, then
A includes C).
2003-06-30 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs, XmlReflectionImporter.cs, XmlTypeMapping.cs:
Added support for serialization of enums with the Flags attribute.
2003-06-30 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Fix support for DataType in class members.
* TypeData.cs: Don't use "Index" name to get indexer property. Indexer properties
can have other names.
* TypeTranslator.cs, XmlCustomFormatter.cs: Added support for "time" and "data" xml types.
* XmlReflectionImporter.cs, XmlTypeMapElementInfo.cs, XmlSerializationReader.cs,
XmlSerializationWriter.cs, XmlTypeMapElementInfo.cs, XmlTypeMapping.cs:
Fix support for DataType in class members.
* XmlSerializationReaderInterpreter.cs, XmlSerializationWriterInterpreter.cs:
Added support for array of primitive types in attributes.
2003-06-28 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs: Type of item of ICollections is now taken from the Item(int) property. Add() can
be overlodaded, so it is not good for this.
* XmlSerializationWriterInterpreter.cs: Fix ambiguity bug when getting Item property of a collection.
2003-06-24 Lluis Sanchez Gual <lluis@ximian.com>
* XmlTypeMapElementInfo.cs: no need to compare nesting level in Equals.
* XmlReflectionImporter.cs: Changed nullable default. Assign member's namespace to an
array if the namespace is not specified in XmlArrayItemAttribute.
2003-06-17 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Reset internal tables for each ImportMembersMapping call.
* XmlSerializationReader.cs: GetXsiType(): use current reader.namespaceUri if namespace
is not specified in the xsi attribute.
* XmlSerializationReaderInterpreter.cs: Fixed bug when reading an empty array from an empty element.
* XmlSerializationWriterInterpreter.cs: Added null value check when writting an array.
2003-06-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializationReader.cs : Synchronous fix with
XmlElement.GetAttribute(name, ns) fix for GetNullAttr().
* added XmlTypeMapMemberNamespace.cs.
* XmlReflectionImporter,
XmlSerializationReaderInterpreter.cs,
XmlSerializationWriterInterpreter.cs,
XmlTypeMapping.cs : support for XmlNamespaceDeclarationAttribute.
2003-06-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializationWriter.cs : some QName handling fix.
2003-06-13 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Fixed error message.
* XmlSerializationReaderInterpreter.cs: Fixed bug when reading XmlQualifiedNames as attributes
Thanks to Atsushi!
* XmlSerializationWriter.cs: Null check in FromXmlQualifiedName.
2003-06-13 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Fixed implementation of ReadElementQualifiedName() and ReadTypedPrimitive().
* XmlSerializationReaderInterpreter.cs: Improved serialization of XmlQualifiedNames.
* XmlSerializationWriter.cs: implemented methods for reading XmlQualifiedNames.
* XmlSerializationWriterInterpreter.cs: Improved deserialization of XmlQualifiedNames.
2003-06-13 Lluis Sanchez Gual <lluis@ximian.com>
* SchemaTypes.cs: Changed DataSet type for a more generic XmlSerializable.
* SoapReflectionImporter.cs: tiny fix.
* XmlReflectionImporter.cs, TypeData.cs, XmlSerializationWriterInterpreter.cs,
XmlSerializationReaderInterpreter.cs: Added support for IXmlSerializable.
* XmlSerializationReader.cs: Fixed implementation of ReadSerializable().
* XmlSerializationWriter.cs: implemented WriteSerializable ().
2003-06-12 Lluis Sanchez Gual <lluis@ximian.com>
* XmlAnyElementAttribute.cs, XmlArrayItemAttribute.cs: Added AllowMultiple flag.
* XmlReflectionImporter.cs, XmlSerializationWriterInterpreter.cs,
XmlSerializationReaderInterpreter.cs, XmlTypeMapElementInfo.cs,
XmlTypeMapMemberElement.cs, XmlTypeMapping.cs: Added support for XmlTextAttribute.
* XmlSerializationWriter.cs: small fix.
2003-06-11 Lluis Sanchez Gual <lluis@ximian.com>
* XmlReflectionImporter.cs: Added support for XmlIgnoreAttribute in enum members.
Added support for DefaultValueAttribute.
* XmlSerializationWriterInterpreter.cs: Added support for DefaultValueAttribute. Fixed bug when writting
the value of an enum.
* XmlTypeMapMember.cs: Added DefaultValue attribute.
* XmlTypeMapping.cs: EnumMap.GetXmlName and GetXmlValue, so they can now deal with
integer values.
2003-06-11 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs: Minor fix.
2003-06-11 Lluis Sanchez Gual <lluis@ximian.com>
* XmlSerializationReader.cs, XmlSerializationReaderInterpreter.cs: Minor fixes.
2003-06-10 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: Added check: some overrides cannot be applied to primitive types.
* XmlAttributes.cs: Default value of XmlDefaultValue changed to System.DBNull.Value
* XmlCustomFormatter.cs: small fixes.
* XmlReflectionImporter.cs: Added check: some overrides cannot be applied to primitive types.
* XmlSerializationWriter.cs: Implemented TopLevelElement().
WriteNamespaceDeclarations(): Fixed (the hashtable contains XmlQualifiedNames, not strings).
WriteXsiType(): It is not necessary to add the namespace declaration, this will now be done by XmlWriter.
* XmlSerializationWriterInterpreter.cs: Call TopLevelElement() when writing classes or arrays as
root elements.
2003-06-05 Lluis Sanchez Gual <lluis@ximian.com>
* SoapReflectionImporter.cs: implemented.
* TypeTranslator.cs: added IsPrimitive() method
* TypeMapping.cs: Added RelatedMaps property that returns all maps directly or indirectly
used by that one. Also added Format property, that can be literal or encoded.
* XmlReflectionImporter.cs: little fixes. Moved some methods to ReflectionHelper.
* XmlReflectionMember.cs: added constructor that accepts SoapAttributes
* XmlSerializationReader.cs: implemented many methods needed to support encoded format.
* XmlSerializationReaderInterpreter.cs: added support for encoded format.
* XmlSerializationWriter.cs: added support for encoded format.
* XmlSerializationWriterInterpreter.cs: added support for encoded format.
* XmlTypeMapElementInfo.cs: added some properties needed to support encoded format
* XmlTypeMapMemberAttribute.cs: added MappedType property (enum values can be attributes,
and a map is needed for them).
* XmlTypeMapMemberElement.cs: small fixes.
* XmlTypeMapping.cs: added some properties and methods needed to support encoded format
* ReflectionHelper.cs: added. Has some methods shared by the reflection importers.
2003-06-01 Miguel de Icaza <miguel@ximian.com>
* XmlSerializationReader.cs (UnknownAttribute, UnknownNode,
UnknownElement): Add line number information.
2003-05-29 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs, TypeTranslator.cs: Renamed some properties.
* XmlCustomFormatter.cs: Fixed bug in serialization of chars. Support for byte[].
* XmlMapping.cs: Added internal property.
* XmlMemberMapping.cs, XmlMembersMapping.cs: Implemented.
* XmlReflectionImporter.cs: Implemented importing of XmlMembersMapping. Several fixes.
* XmlReflectionMember.cs: XmlAttributes are now created by default
* XmlSerializationReader.cs, XmlSerializationWriter.cs: Several fixes.
* XmlSerializationReaderInterpreter.cs, XmlSerializationWriterInterpreter.cs, XmlSerializer.cs:
Implemented support for XmlMembersMapping.
* XmlTypeMapping.cs: Property ObjectMap moved to XmlMapping.
2003-05-28 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs, TypeTranslator.cs: Added support for enums. Added method for translating
from xml type to clr type.
* XmlCustomFormatter.cs: Fixed bug in serialization of chars. Support for byte[].
* XmlReflectionMember.cs: Added default constructor.
* XmlSerializationReader.cs: Implemented ReadTypedPrimitive(), ToByteArrayBase64().
* XmlSerializationWriter.cs: Several fixes.
* XmlSerializationReaderInterpreter.cs, XmlReflectionImporter.cs, XmlSerializationWriterInterpreter.cs
XmlTypeMapMember.cs, XmlTypeMapMemberElement.cs, XmlTypeMapping.cs:
Added support for enums. Added support for XmlElement and XmlNode.
Support for XmlAnyAttributeAttribute and XmlAnyElementAttribute. Many fixes.
2003-05-26 Lluis Sanchez Gual <lluis@ximian.com>
* TypeData.cs, TypeTranslator.cs: Implemented some methods.
* XmlCustomFormatter.cs: Added formatting methods.
* XmlReflectionImporter.cs, XmlSerializer.cs: New implementation.
* XmlReflectionMember.cs: Added new constructor.
* XmlSerializationReader.cs, XmlSerializationWriter.cs: Implemented some methods.
* XmlSerializationWriterInterpreter.cs, XmlSerializationReaderInterpreter.cs
XmlTypeMapElementInfo.cs, XmlTypeMapMember.cs, XmlTypeMapMemberAttribute.cs
XmlTypeMapMemberElement.cs, XmlTypeMapping.cs: Added
2003-05-10 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* Added TypeTableEntry.cs.
* TypeTranslator.cs : changed for non-static use.
* XmlAttributes.cs : XmlType attribute support for GetAttributeName()
and GetElementName(). Bugfix so that if any XmlElementAttribute
exists after non-typed XmlElementAttribute then it might be ignored.
Added GetElementIsNullable().
* XmlSerializer.cs :
Introduced TypeTablePool and TypeTableEntry and erased ambiguous
Object memberObj[4].
Deserialize() now uses XmlReader.Depth to check its depth.
Serialize() for non-XmlReader arguments now always write xmldecl.
SerializeBuiltin() now explicitly requires Type to support xsi:nil,
and handles XmlQualifiedName.
Separated SerializeType () from Serialize().
Separated WriteCollectionElementMember(), IsFieldTypeSerializable(),
IsPropertyTypeSerializable() from SerializeMembers().
SerializeMembers() is now capable of null value and actual type,
which should be included by XmlIncludeAttribute and so on.
Renamed SerializeArray() to SerializeArrayContent(), and added
SerializeCollectionContent().
SerializeMembers() now requries XmlSerializerNamespaces (not used yet).
FillTypeTable() is now aware of XmlInclude attributes.
FillEnum() should not have different type table content from others.
2003-05-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializer.cs : this time, only replaced spaces with tabs.
2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* ChangeLog : Added missing ChangeLog of 2003-04-25.
* XmlCustomFormatter.cs : Fixed FromXmlNmTokens() to contain
separators. Added experimental method ToEnum().
* XmlSerializationReader.cs : unconfirmed implementation of
ReadSerializable() and ToEnum().
* XmlSerializationWriter.cs : fixed WriteAttribute() so that if value
is null then no output will be written.
Fixed WriteStartElement(), WriteElement*() and WriteEmptyTag()
to use custom formatted name.
2003-05-02 Miguel de Icaza <miguel@ximian.com>
* XmlReflectionImporter.cs: one of theImportTypeMapping mappings
had a void return value.
2003-04-26 Miguel de Icaza <miguel@ximian.com>
* XmlIncludeAttribute.cs: Make XmlIncludeAttribute have the
`AllowMultiple' flags.
2003-04-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* TypeTranslator.cs : patch by Erik LeBel. Array consideration.
* XmlReflectionImporter.cs : patch by Erik LeBel.
Now uses XmlRootAttribute to determine element name.
2003-03-17 Miguel de Icaza <miguel@ximian.com>
* XmlSerializer.cs: Do not use Bubblesort, use ArrayList.Sort.
Kill Bublesort.
2003-03-22 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializer.cs : patch by Sean Cier. Serialize() other than
XmlWriter argument should call WriteEndDocument.
2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializer.cs : Serialize() don't write xmldecl when WriteState is
not WriteState.Start, and never call WriteEndDocument().
2003-03-12 Elan Feingold <efeingold@mn.rr.com>
* XmlCustomFormatter.cs: Correct signature, Implement
ToByteArrayBase64
* XmlSerializationWriter.cs: Fix prototype.
* XmlSerializer.cs: Implements Deserialize().
2003-02-16 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializer.cs : serializing now works for interface member.
2003-01-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
* XmlSerializer.cs : some fix handling xml node object more correct.
2003-01-16 Ajay kumar Dwivedi <adwiv@yahoo.com>
* XmlSerializer.cs: Array serialization for 1D arrays works
* TypeTranslator: Added for translations`
2002-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* XmlCustomFormatter.cs: finished.
* XmlSerializationReader.cs: implemented some more methods.
2002-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* XmlSerializationReader.cs: implemented a few methods.
* XmlAnyElementAttribute.cs:
* XmlArrayAttribute.cs:
* XmlChoiceIdentifierAttribute.cs:
* XmlElementAttribute.cs:
* XmlMemberMapping.cs:
* XmlMembersMapping.cs: class status based fixes.
2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* CodeIdentifiers.cs:
* XmlSchemaExporter.cs:
* XmlSchemaImporter.cs:
* XmlSchemas.cs:
* XmlSerializationWriteCallback.cs:
* XmlSerializationWriter.cs:
* XmlSerializer.cs:
* XmlSerializerNamespaces.cs: some class status based fixed and
implemented a couple of methods.
* SoapSchemaExporter.cs: stubbed out.
2002-08-24 Tim Coleman <tim@timcoleman.com>
* SoapCodeExporter.cs:
Fix return value of ExportTypeMapping.
* XmlCustomFormatter.cs:
Change methods to be internal instead of public.
* XmlSerializationWriter.cs:
Modify GetPrimitiveTypeName to build on linux.
Modify GetQualifiedName to return an incrementing prefix
instead of the same one all the time (still need to manage
conflicts)
Modify WriteElementString to only do special stuff is XsiType
is not defined.
Modify WriteTypedPrimitive to use FromXmlQualifiedName if it's
an XmlQualifiedName.
2002-08-22 Tim Coleman <tim@timcoleman.com>
* XmlSerializationReader.cs:
Some implementation
* XmlSerializationWriter.cs:
More implementation
* XmlCustomFormatter.cs:
Implemented this class.
2002-08-20 Tim Coleman <tim@timcoleman.com>
* XmlSerializationWriter.cs:
Some implementation.
2002-08-19 Tim Coleman <tim@timcoleman.com>
* XmlSerializer.cs:
New stubs added.
* XmlSerializationWriter.cs:
New stubs added.
2002-08-14 Tim Coleman <tim@timcoleman.com>
* XmlSerializer.cs:
More reformatting of source code so I can
better understand what it does.
2002-08-06 Tim Coleman <tim@timcoleman.com>
* XmlSerializer.cs:
Some reformatting of code for readability.
Modify to correctly serialize ICollection objects
such as the BindingCollection of a ServiceDescription
for example.
2002-08-03 Tim Coleman <tim@timcoleman.com>
* XmlSerializer.cs:
Changed Implements() to check based on name rather
than FullName. FullName was never working correctly.
2002-07-26 Tim Coleman <tim@timcoleman.com>
* XmlSerializer.cs:
The constructor now looks for an XmlRootAttribute attribute
if one is not passed in. Various changes to make it emit
proper XML, such as handling an element without a namespace
prefix, and using WriteEndDocument where it should be.
2002-07-24 Tim Coleman <tim@timcoleman.com>
* CodeIdentifier.cs:
* IXmlSerializable.cs:
* XmlSerializationCollectionFixupCallback.cs:
* XmlSerializationFixupCallback.cs:
* XmlSerializationReadCallback.cs:
* XmlSerializationReader.cs:
* XmlSerializationWriteCallback.cs:
Add new classes.
* XmlSchemas.cs
* CodeIdentifiers.cs:
Implement some of these classes
* XmlCodeExporter.cs:
Fix return type of a function
2002-07-24 Tim Coleman <tim@timcoleman.com>
* SoapReflectionImporter.cs:
New class added to build
System.Web.Services.Description.ServiceDescription.cs
2002-07-22 Tim Coleman <tim@timcoleman.com>
* CodeIdentifiers.cs:
* SoapCodeExporter.cs:
* SoapSchemaExporter.cs:
* XmlCodeExporter.cs:
* XmlMemberMapping.cs:
* XmlMembersMapping.cs:
* XmlReflectionImporter.cs:
* XmlReflectionMember.cs:
* XmlSchemaExporter.cs:
* XmlSchemaImporter.cs:
* XmlSchemas.cs:
New stubbs added to aid in the linux build of
System.Web.Services.
2002-07-05 Ajay kumar Dwivedi <adwiv@yahoo.com>
* XmlSeriailizer: Serialize method can serialize XmlSchema perfectly.
* XmlSerializerNamespaces: Reverted to use of a single Hashtable.
2002-07-02 Ajay kumar Dwivedi <adwiv@yahoo.com>
* XmlSeriailizer: Updated Serialize() method.
2002-06-27 Ajay kumar Dwivedi <adwiv@yahoo.com>
* XmlSerializer: Serialize() method Partially Implemented.
2002-06-20 Ajay kumar Dwivedi <adwiv@yahoo.com>
* Soap & XmlOverrides: Implemented using TypeMember as key with
suggestions from Rafael.
|