Code and related files for the dependency injection demos.
|
@ -27,4 +27,3 @@ target/
|
||||||
|
|
||||||
spring-openid/src/main/resources/application.properties
|
spring-openid/src/main/resources/application.properties
|
||||||
.recommenders/
|
.recommenders/
|
||||||
|
|
||||||
|
|
Before Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 23 KiB |
|
@ -1 +0,0 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>7Vjvb+I4EP1rkO4+7KkhhW0/8qt3J3V1Velq7z5VbmKIb50M55hS9q/fGXtMEgLXrprthwqEEH6ZOJ5573nAvXiSP/1uxCr7BKnUvf5Z+tSLp71+/6If4ycBWw8MBpceWBqVeiiqgLn6Jhk8Y3StUlk2Ai2AtmrVBBMoCpnYBiaMgU0zbAG6+dSVWIYnVsA8EbqNflGpzUJawwr/Q6plFp4cDTm/B5F8XRpYF/y8Xj9euJe/nIswFydaZiKFTQ2KZ1hWA4Az07f8aSI1lTaUzd93deTqbt1GFry2Z24I67DbkLtMsRQ8BGMzWEIh9KxCxy4/STOc4SizucavEX7Fh5rt34y7wT80+G3ghumImKFZV7K4y1Th0SuFK/K3/Cut3bIaxNoCQtUKrgFW/By/Zlro0bQZKmFtEo7CsROSMEvJUR93JUclS8glLhlDjNTCqsfm7II1tdzF8a2YlqC7QsAKVGHL2sw3BGAAuyO6HPgZ2Rz9yC0jcIRf/IxhVFtaBTkeD3PKeT4KveYMrpTU6QgLulFGplOZQ4v1cqNyLQqit0boAgobtEBjodUSaZsmWGdpEHiUxir0zYgvWOJonGRKp9diC2uqc2nRFGE0zsCobzitCM/Ay8Yy6WiwesSc7mRtGFlizE2gmO700LUoCaCYBLQWq1I97BacI9mqGIO1kHNQyJR0NwENmAYWINg0iIsSk4GwI/JqC4dvCO5mgmNmZFNtJfGAQ7LaNnJ5cVxpNXX8L/m88dbI/0AbIAlgKtF3qSwSXNYIwZF5UNYIs61d2JcF1sCRVkmitAa+ylC4ApxkFrVaMhSkouWCZjgslHIlElUsr13M9LxCbrkqBG0yZeUccVrTBvsNbQs430K73SRTKa7dbUtWWOG5J6LZh5jHYIxvLPiEtqIB5jXBMVIYxvimcGMnUGB+guwaTyUKayNJXC/ThGO5rYngcu4dz4kgxL1GBOctEbSI1Wrf657Y0O6c+3+Y1Ry5cC2CabxzW/YHN32D6rhNNUH7FGrxIPUNlMoqoPmNj92j9g3YG7zQwh04mJtDgzxMYd/D958+z+/ux7P70ee7v778eTub3k/AGPw1pNnfj4BTngz9syQxZPrfwtA8RU0TL9m8Tz29w54+PG829egje73GfxQ00ejqjL2Gf/8Dcb+ru93Re31uDZrs5PZXuN157Efa90G2u3A7C+vUvjtj70D7PsheB+2bDwJa7duC9+gvv54c+yacH+jPP82xEa+uxvqt/G+N/7bdOcAzDLued7SOVCo6DKG+uNeyX0I1e5h47aALRhfNLrj7q1ur8sEid9AEo/bBRjjleSfVHfJJ0O43xiWPa9UNley8uu2Tg3dW3eiCBRSqG/Nfre6ri8PqDNcf4VXn5PHsOw==</diagram></mxfile>
|
|
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 19 KiB |
|
@ -1 +0,0 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>7Vhdb9s4EPw1fuwhtqK0eYw/ctdDeijqHO7uyWAkWmJLcX0UFcf99d2llpZkKUiKOHkobBiGOVx+zcxybY2iWfHwuxWb/BOkUo8mZ+nDKJqPJpMPkwg/CdjVQBxf1kBmVVpD4wZYqu+SwTNGK5XKshPoALRTmy6YgDEycR1MWAvbbtgadHfVjcjCig2wTITuo/+o1OXhWBcN/odUWR5WHl/w+e5E8i2zUBlebzSJ1v5VdxcizMUHLXORwrYFRQuk1QLgzPSteJhJTdQG2upx14/07vdtpeG9PTEg7MPtwtllilRwE6zLIQMj9KJBp/58kmY4w1buCo1fx/gVF7W7fxn3jf+o8Vvsm+kVKUOzbqS5zZWp0WuFO6qHfJXO7dgNonKAULODG4ANr1PvmTb66LEZKqGyCUdh2xtJ2Exy1Ps95ehkCYXELWOIlVo4dd+dXbCnsn1cwyt+YWqHaeal74WueNJrJXX60XxF985lAT0Vyq0qtDBEd4vgNRgXtKG20CpDGucJnltaBO6ldQp9fMUdjjibJrnS6Y3YQUXnLh2aNLSmOVj1HacVYQ3sto5FQMO3I5Y0krWyssSYz4FyGllDN6IkgGIS0FpsSnW333CB5CszBeeg4KBwUvLBDDTgMZCAkDZBbDqY5OvlMbn7QoYB7HK+jUJz26R2FDOWt9P6gsGXSM83YUv6d9TrlR/PJaZCKk2CO7tC+MreKWeF3bU6Dp2BNHjdGleUzsI3Gbgz4F2zbtHJUHCLlmuaYdgr5UYkymQ3PmZ+3iBfmBiCtrlycok47WmLJYAyFedba5/guUpx7/6mcMKJWn7SegPKOE9mPMU30juj2yHGc82wjSqGNr4p3LoZGDyfwHE4TKK3tpL89Txb+Lzr24J9EK7zp3wQ4l5ig/OeDXrCanWY7rWwoQL5C+CnVS1QC39rs4y3/hZ956fvSB31pSboUEIt7qT+DKVyCmh+W8ceSPsG6sXM4FPqfXi5ePGAeHiEszVd4k2qrj79vbxdTRerj3/9uZjdLuarZZUksizXldac4feAk55S+rVMEW7st0hpnqLliudc36fCfsTCHr/vVvaIk70l/76It+W/PEJh978de4XdX491qi+dxRw7JfsLkt2n2M/U70G1j5HsbKxT/T6aegP1e1C9I9Rv/nPeq98OOEdP+foWig8U51fL1zHvrqX5F/l/pbCUPUNhX/Ae5ZGooscTVBQP6vVzpOYMJl2PUALPw88bJvmS/3C2SB7k+AgVcNx/rBEeu/wi5EYHvy8u+hUnEHl0cvsPDn4xcuMD58avRi42m0eqvq/12Dpa/AA=</diagram></mxfile>
|
|
Before Width: | Height: | Size: 23 KiB |
|
@ -1 +0,0 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>7VhZbxs3EP41AtqHFDqydvOoy20KJwgiF2meDHp3pGXC5ahcyrLy6zPkDrWnYQVe5yGQIAjit8Njvm8OiYPJPHv4y4ht+g4TUIPxMHkYTBaD8fjP8YQ+HXAogCh6UwAbI5MCGpXASn4DBoeM7mQCec3QIiort3UwRq0htjVMGIP7utkaVX3XrdiEHUtgFQvVRj/JxKbBrYsS/xvkJg07jy7YvzsRf90Y3GnebzCerP2reJyJsBY7mqciwX0FmiyJVoNIK7tv2cMclKM20FbMu3rk6fHcBjSf7YkJ4Rz2EHyHhKjgIRqb4ga1UMsSnXn/wK0wpFFqM0VfR/SVNjWH/xj3g89u8Efkh8nUKeNW3YK+SaUu0CtJJyqmfAFrDxwNYmeRoPIE14hb3qc4szvoo24zlOPOxGxFYx9IwmyArS6PlFMkA2ZARyYTA0pYeV9fXXBMbY52Ja/0hantppm3vhdqx4teSVDJ7PBeZPBWf6EYXkCGLS3yvcyU0I70Cs1r1DYo5MZCyQ2RuYjJezAE3IOxkqJ5yg+sY24Wp1Il1+KAO+d9bilUw2iWopHfaFkR9qDHxrIUFPZVi5WbyYoZyMnmQyDezSyga5E7wNnEqJTY5vLueOCMJJB6htZixkbBUxcNc1RIbhABIXmC5M4x4CLzmOhtOUNVKiZwSQqRvy/ze3LJOqWV3H7Dds+Rn6thRf5XNNSkfbIASoYEdEzHmhI4NXfSGmEOlQfNqCAKvGZlROTW4FcIvGn0EbOuUMlQiBQFa7dCd5zkWxFLvbn2NovXJfKRWXHQPpUWVoS7M+2pCbhcpfXWyqd4KhM6u68VVlhRSO903qLU1lMZzehN5M5dfYjIrzmNScEwprczN3aOmvwTNI+mAcXVHlxsnRYSXtF2SHAQhIL+VBAEu+cEwetWELSEVbKZ6oWwoQf55P9hVTPSwtdtlvHG19FXfvma1JO21A5qSqjEHagPmEsr0a1vCtuGtD9BvYgZfEo9TvzniBd1iEcuNHP49t2/q5vb2fL27ft/lvOb5eJ2jsZQdVec3itriN1zRr9YTFycWNb7yGheohIUn8FONdoUzCl1/Nzde+zuUWjUob+P2rX9+LO71uC5Oz8nEvzvyFaD94XynPc95b2X80c6eafafeQ995NzJ+9NvY5O3qleD52c/6i3OrnFIkd/+/2csT9F845O/WIZO+LTVVT/CP/vJHWzExT2Pe9RHh1V7rLC9cVGyz5Fas5hp2sPXXDU7IIRp0yF5UB8jeQe/uWO2rcc4RbmF2E3umywe9FRt16K3fYlwi/G7njYYHfY0dP7YZeG5R2rf1a5x54svwM=</diagram></mxfile>
|
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 43 KiB |
|
@ -1 +1 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>7Vptb+I4EP41le4+bEUIUPZjeenenrqn3tLT3X6qTGIS7zox5zil7K/fcTLTvHbhFOAkBEKAx87EM88zL7G4cqfRywfN1uEn5XN51e/5L1fu7KrfH/dd+LSCbS4Y9VAQaOHnIqcQLMR3jsIeSlPh86Sy0CgljVhXhZ6KY+6ZioxprTbVZSslq3dds4DuWAgWHpNN6d/CNyGZNSrkv3ERhHRnZ/Q+n1ky71ugVRrj/a767ip75dMRI11oaBIyX21KIncObtVKgWb7K3qZcmldS27Lr7t7Y/Z135rHuLcdF9A+zJZs5z64AodKm1AFKmZyXkgnmX3caujBKDSRhJ8O/ISb6u0/KM8GX+zgepgN/VuLjNW65vFjKOJceidgR/klX7kxW2QDS40CUbGDe6XWeJ+mlWh4olLtoR0wznjDdMBx1U0ushaWLkPPfOAq4rBlWKC5ZEY8V8nAkFPB67rCr/ADXdvuZtzLM5MpKr0TXPp/pkyKleD6Y/wVaDzjkWrAkWxEJFls/V7y9ErFhkCyY9ATgD9nHniEaxA8c20EEPoWJ4x13sQLhfTv2Val1iOJAbbSaBIqLb6DWkb3gGltEA1gfnnFwl6JoGmewJoHAsNemYvuWWIFdo2npGTrRCxfNxwBLCKeKGNUhIvIUkuIqZIKzAAHUPz8BHVrK8fU8waiNIt0x7REw00R4+4NysJKfKOwCwcwA5Y48M5mSL5iqQToISZ8Hnuws1sQ3+qlMJrpbWmiP5IWJ188w8/A/gQFIxZZYONlkn2xiPs1XdUVP1EMBpR0N4gILs5oUpAwMVp94wRVrDKSrkrooYjIKfnKaminZrJmnoiD+2zNbFBIPiMOVrQJheELkNs9baD02AwB+lYySyyh8MGiLEMZZljONkuttRKxybAbTuANaE5tVhqCXVMYA2loDG+7XJupisE+BtfBZRyovOGWzi0spODezUKkHZWRXbQbDLqzDlWUWNcAVop6dsmBpcqX5Zv/jGoEWGTVAmF8zLL3u0x9BWq3CbUV1SGUbMnlg0qEEcrq1/naGrQnQI+Q2oXeuDt4DhLlDKvzsFmdHYTi9OUZN1MJEjCjB6VZltLp06e/Fo9Pk/nTxz9+n08f57OnRep5PElWqZTbX37NU/ezArWX5Lln+HUt4WPs6XZFo4vltwtNMBpLNGmtppcG7ngN3IgenKiDQ1hL8DujFvjfH6CBQ6bVGrisLuWRvzAaQu4S+/vGPsVTl8apFW1a1wVtLN+Xxulg6A3Rg7vQO0DjhKcxjYJuVB6jVKsvEXtkzAnfU0Ssg23cobvl6xuoMqWO2bnuuWMSPHAtYKe2ZGNf/dpIL6WyNfaYXbRDh6OlNhq5f/oumjZT7o9iZUKuL23Siduk4bjaJrmDZhz2e20nXSTsRITmceelU+r2lLQ/A95ulVoBP0jibR5tXnqljvi1NEut+B3ilKntjPDSLf0fUdvSLh0vapvPs5/5v6mAorYHxFnpe9OR1le2ubHlsVa598Eaw9gCe4BiOKgXw2Zotbakh6iEzafIM/XxsObj8Qmd3Hzao1b5TLzr0vEVpYnmoSc58tDOJR3n69xhzbkt6eFozm0+MZ0bc2u516FgPYV3m48h50ZdSqlE3eHRvAvD4l9J2Vzpn1/u/Ac=</diagram></mxfile>
|
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" version="5.5.2.3" editor="www.draw.io" type="device"><diagram>7VptbyI3EP41SO2Hi1iWl+RjAuSuUpqml6jX+xQZ1uz6zrumXhPC/fqb8Y7ZV0IaXqpGICTWw3hsz/N4Zmxo+cP4+aNm8+h3FXDZ6rSD55Y/anU6XrvvwwdKVpmk3yZBqEVASrngXvzgridJFyLgaUnRKCWNmJeFU5UkfGpKMqa1WpbVZkqWR52z0I2YC+6nTNalX0Rgokx63unn8k9chJEb2etfZN9M2PR7qNUiofFaHX9mX9nXMXO2aKFpxAK1LIj8MfhVKwWW8Sl+HnKJvnVuy/pdb/h2PW/NE5rblg5uHmbl1s4DcAU1lTaRClXC5DiXXtn1cbTQhlZkYgmPHjzCoHr1N8lt4ys2znq2GVwiMmh1zpOHSCSZ9FrAjLIu37gxK2IDWxgFonwGN0rNaZz6KmnhqVroKa0D2pY3TIectAaZCFdY6Eae+chVzGHKoKC5ZEY8lcnAiFPhWi/3KzyQa5vdTHN5YnJBRq8Fl8GfCybFTHD9W/INaDzisarBkS5FLFmCfi94eqYS40DCNtgJwZ+jKXiEaxA8cW0EEPqSvjDovKtpJGRww1ZqgR5JDbDVta4ipcUPMMvcGPC1NoQGML+ocY89CTTNU9C5c2Bgz0x0w1IUoM5UScnmqZisJxwDLCK5UsaomJTcSpEQQyUVLAMc4PbPC6jjWrmLPc2IUhwaEAOW+abuuq0YFTd0h+LVLqCTiQLoH1qdPosRiGSS4ge0Jfo+nbMEnkN8Bj7IYMRhjwQ8ma5gQZkODFdUa/mXYPxST4TRTK/yDk4/EE9O9y3jwtQ3j1u29sIkoHNhHjVyA2yWejmxU6PVd+7gT5Ql/qzACBI5wks+QwvNdId5T0US3lidUTeXfCaoUbSMhOH3IMc5LSGfYdQBezNpg1UkAliRjXqGGZYxGOk6VyIxlh69K3gDi4YY6XqwriG0ATfXhjeqazNUCayPQT/oxmF7LDlukQZmu4Dxama71LSN2d3u7sQmEwVi14CVohqxMmBdNrUx7F+jGgMWNgMRjA82I3yw5ktQ+3WoUVSFULIJl3cqFUYotK8z3Qq0R0BvQEhtQ+98d/B6DeA1xoMQEmByCVl4KTTPU9UfiU1djw+fxrePo/Hd+HY0vh1+9R7/AoVgU9BosP/Lry9GtieVWyuFkD1MtvOmyQJjqhPb0PMU9Y4U9Qa0IbZGvT2kc48i7P+rVObPwthhzroX1MSBvLP2gJp3XAtwBlaN1vKrimuKIsXi2iP09lddU9c7pByoOEacE8Au8/nUdiayeVKvHF9wKcPhnRoxeeM4nXZlnHY21fVRaot+t505KadXNoOcbGufvIp/RL9C4G6su07HhwMcH+jbfq8MsTs9F8KP128IPxcVhr4l/NDJpXyaaNsKJstL90ZDjD8lm9cmG7efdimxG9F2erugTXntVGLvDb0eeXAbensosekusFpiwxVmtkehmDzt2GNg7vA9xo71qCTad3l4NvBwX61LRKjc/HMnqNZuhcpxIhXm2EPesHruar5QBRL3j3/F6iZTrI8SZSKuT2XSscskVxfRNvT79cy5rpZL165OuBMR6pftp0ppp7i73lq7lEqNgO8l8Nbv2U+10o74NRRLjfjtoVjymm6TT9XSf7FrG8qlw+3a+nn2M/9nAbe39kpmC8Q29W10JPoKixtMj5XM/RqsaRsjsHtIht3KdZVf31qNJek+MmH9FPlOfVy5l/HPj+jk+mnPlcrvxLveBR1tXkoOh3Gus/F+ndt3t9euciI6HcO59RPTO3Nu/Qq/KcMdyLv1Y8g7827PXWu7qDs4GHehmf8nLvvtJP/joT/+CQ==</diagram></mxfile>
|
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 17 KiB |
|
@ -1 +0,0 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>7Vhtb+I4EP41SHcftgICtP1YoN1bqXtalZ7u7lPlJiZx1/HkHANlf/3OOGOSEPpyonfaOxUhFD8ejz3zzItDL5rljx+tKLLPkEjdG/aTx1407w2HZ8MIfwnYVsB4fF4BqVVJBQ1qYKG+SQb7jK5UIsuWoAPQThVtMAZjZOxamLAWNm2xJej2roVIw441sIiF7qK/q8RlwaxJjf8iVZqFnQcTtu9exF9TCyvD+/WG0dJ/qulcBF1saJmJBDYNKLpEt1oA1ExP+eNManJtcFu17uqJ2d25rTR8tucX4BQtWAu9YtN7w4nGpdMCH1J6uFJSJzeyhJWN5SfzgP5WYOYyhyCK6nfSbJbbBleWG5VrYXA0zVyuERzg4xKMW7AQjYVWqcHnGM8tLQJraZ1CQi54wkGBaJwpnVyLLazIutKht8NomoFV31CtCHvgtHUcW6PzlsSCViLcR9TKEmW+BJfRygq6FiUBJBOD1qIo1f3uwLmwqTJTcA5yFgqWXimtZ6ABzUAHBP6Da5rcMF1kq+TU8RBz9VFCLp3dokiY5bDhtBpxmm3qGI1GLJI14/OUBQXnRbrTXMcGPnB4HA4VVtEIlQ+U4XIpVtqhzQheIPAg1uJEwYlH9oMBzfRU1YFQOgtfZXCXAR8oy4YHGQoBouWSNBwOj7IQsTLptZeZj2rkhn1B0CZTTi4QpzNtsHwhBqhvqX0iZipJJKqcWnDCiYpxorcAZZz333iKX3TzrH8y7o3RrhmOkbgwxi+JWzcDg/YJXIfLJIbTRlJIHYiEkIcvR0KgngvOS9RHXLKOYX50oEjsEavVfoZXxIbq6XP+b7OaIxe0Q6Dxllief/DqW1RHXaoJ2qdQi3upv0CpqIIhZivZPWr/BfbOxq9j7+x48ninFnloQr/QaFko6xfGkKvQK3eff1vc3l19+nV+N69T+6efq+ReA6p9T+p/KizOX1nPx4wdExennbh4tnL/GG0cL2A/SBvvkHqgsz/Zxk/77T4+CNfBBvGDyaF6wCF1DPHcON6reTNtX6DTJ8uTaRteC15ib8SN9KhbGJ+uwZZM8N2Fh2hoBikYoS9rFD2HLySSNJDfGrSigXb7B+N+8CcNsOLRMLmgVynSWkhzmykqoIhSYvCSB+nclnNTrBxQ1d2d4Bo8wbRPdWY66PMZg3b5ftS6cWL+p/J5IqzU2L3Wbe1Hubn7YnQj/1opLCmv6H++8DzZZSgiyVlUnPbq5msaIacNdb03KEXjvVeKwaQbzIdiOVSso5zcfaXoRvd/2rtR6NTh3te9tQdHvrlzu7f2/5lzJ6fszRC6I1bx9t7FYf2fjJ9r/O8VXX4H</diagram></mxfile>
|
|
Before Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 19 KiB |
|
@ -1 +0,0 @@
|
||||||
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36" version="5.5.1.6" editor="www.draw.io" type="device"><diagram>3Vhbb+I6EP41SN0HECGQbh8boNuutkerltXZ84QMcRL3OHFqHAr99R0749y4qCpdqV0eQvx5PJ755mJDxx0nm2+SZPGtCCjvDPrBpuNOOoPB14ELTw1sC2A0uiiASLKggJwKuGfPFME+ojkL6KohqITgimVNcCnSlC5VAyNSiqemWCh4c9eMRHbHCrhfEr6L/ssCFVu3vAq/piyK7c6Oh/4tyPL/SIo8xf06Azc0n2I6IVYXOrqKSSCeapA7BVqlEKBZvyWbMeWaWktbse7qwGxpt6Qp2nZ8ATq0UlvrOg2ACRwKqWIRiZTwaYX6xj2qFfRhFKuEw6sDr7Cn3P5G3Az+04PeyAyDSx0YrTWj6SxmaYFeMTCoWPJAldpiMpBcCYAqC34IkeE+hc3a0INeI7QSuVyiFKakIjKiKDUqGYdEpiKhYDKISMqJYuumdoIpFZVyFa3wgsweCAtGe014jlrv6GPOJOR4m39FN2BdnVaQYs9kYQQ0TZlgqTLWjPzOaAII4SwCOidL8J9KANZUKgbpfIkTCQsCEztOFpT7ZZKOBRcgD/vaNLXsag0Uy7lZbGhJlcN13k0+7TKKivo9DAK2he6wGL6acNT8UzNQqe2CeE2r01IgwnAFEW/HqzTvVSFEw2sR7Aw8riOVNeLnPea6dv0E0kyn+CXM9rMNPA210AE03lU6mfXcsDanQ9/FWOo5DGepE94i/DY7LyxwS6FKgjtapPtN+gBhYiKd0ERYWfCvFC/Xa90NBKTAnSYWg1QfMrDpH3B8yKw3EcJpCFIlI23dXX2Y0JDkXEHDAM1a8oGsSY+JnkHe2QMLaIwkECw/Xaz0l5VZZSTd6yhnKe3GeDpoM52ezpXWVjVn5re/7mdzfzq/+ef7dDybTuZjISWEkEPOl14V+zXtPNGGsy/F5FpAlh/faR+tO8CJ5hwh+6j/BQYlPqk4PavnxlvdbHXmdlM1NVz23iKBfQFSITfnXGhONj8UqcJDzYEOZsZXJGEQXXdyTfmaaq3Nln+wB++ccQd7rWPbM3ZFF4dP1X3G7SNmQ2PWnSN4yoFnDtaP2i0PtI2d9vhhm+En7N+vNflTl5xna8xeRIa7Ned4e2ru4h1K7nyn5Owd+MS7JVzEMXv0ghb3+wMErXXJ0mhmbuxwyXsXdodavsbuBTaZGrm25dW5tdgp3OKPu7+XW8/emW3men+MXBhWP2+Li3j1F4I7fQE=</diagram></mxfile>
|
|
|
@ -65,7 +65,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs
|
||||||
<artifactId>maven-surefire-plugin</artifactId>
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
<includes>
|
<includes>
|
||||||
<include>**/*Demo.java</include>
|
<include>**/*Test.java</include>
|
||||||
</includes>
|
</includes>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -8,20 +8,24 @@ import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestAutowiredName;
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Autowired-Name.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class FieldAutowiredNameDemo {
|
classes=ApplicationContextTestAutowiredName.class)
|
||||||
|
public class FieldAutowiredNameTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ArbitraryDependency autowiredFieldDependency;
|
private ArbitraryDependency autowiredFieldDependency;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void autowiredFieldDependency_MUST_BE_AUTOWIRED_Correctly() {
|
public void givenAutowiredAnnotation_WhenOnField_ThenDependencyValid(){
|
||||||
assertNotNull(autowiredFieldDependency);
|
assertNotNull(autowiredFieldDependency);
|
||||||
assertEquals("Arbitrary Dependency", autowiredFieldDependency.toString());
|
assertEquals("Arbitrary Dependency",
|
||||||
|
autowiredFieldDependency.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -8,19 +8,22 @@ import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestAutowiredType;
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Autowired-Type.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class FieldAutowiredDemo {
|
classes=ApplicationContextTestAutowiredType.class)
|
||||||
|
public class FieldAutowiredTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ArbitraryDependency fieldDependency;
|
private ArbitraryDependency fieldDependency;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void fieldDependency_MUST_BE_AUTOWIRED_Correctly() {
|
public void givenAutowired_WhenSetOnField_ThenDependencyResolved() {
|
||||||
assertNotNull(fieldDependency);
|
assertNotNull(fieldDependency);
|
||||||
assertEquals("Arbitrary Dependency", fieldDependency.toString());
|
assertEquals("Arbitrary Dependency", fieldDependency.toString());
|
||||||
}
|
}
|
|
@ -9,13 +9,16 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestAutowiredQualifier;
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Autowired-Qualifier.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class FieldQualifierAutowiredDemo {
|
classes=ApplicationContextTestAutowiredQualifier.class)
|
||||||
|
public class FieldQualifierAutowiredTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
@Qualifier("autowiredFieldDependency")
|
@Qualifier("autowiredFieldDependency")
|
||||||
|
@ -26,14 +29,15 @@ public class FieldQualifierAutowiredDemo {
|
||||||
private ArbitraryDependency fieldDependency2;
|
private ArbitraryDependency fieldDependency2;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void fieldDependency1_MUST_BE_AUTOWIRED_Correctly() {
|
public void givenAutowiredQualifier_WhenOnField_ThenDep1Valid(){
|
||||||
assertNotNull(fieldDependency1);
|
assertNotNull(fieldDependency1);
|
||||||
assertEquals("Arbitrary Dependency", fieldDependency1.toString());
|
assertEquals("Arbitrary Dependency", fieldDependency1.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void fieldDependency2_MUST_BE_AUTOWIRED_Correctly() {
|
public void givenAutowiredQualifier_WhenOnField_ThenDep2Valid(){
|
||||||
assertNotNull(fieldDependency2);
|
assertNotNull(fieldDependency2);
|
||||||
assertEquals("Another Arbitrary Dependency", fieldDependency2.toString());
|
assertEquals("Another Arbitrary Dependency",
|
||||||
|
fieldDependency2.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.ComponentScan;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
@ComponentScan(basePackages={"com.baeldung.dependency"})
|
||||||
|
public class ApplicationContextTestAutowiredName {
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.dependency.AnotherArbitraryDependency;
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestAutowiredQualifier {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency autowiredFieldDependency() {
|
||||||
|
ArbitraryDependency autowiredFieldDependency = new ArbitraryDependency();
|
||||||
|
|
||||||
|
return autowiredFieldDependency;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency anotherAutowiredFieldDependency() {
|
||||||
|
ArbitraryDependency anotherAutowiredFieldDependency = new AnotherArbitraryDependency();
|
||||||
|
|
||||||
|
return anotherAutowiredFieldDependency;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestAutowiredType {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency autowiredFieldDependency() {
|
||||||
|
ArbitraryDependency autowiredFieldDependency = new ArbitraryDependency();
|
||||||
|
return autowiredFieldDependency;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
import com.baeldung.dependency.YetAnotherArbitraryDependency;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestInjectName {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency yetAnotherFieldInjectDependency() {
|
||||||
|
ArbitraryDependency yetAnotherFieldInjectDependency = new YetAnotherArbitraryDependency();
|
||||||
|
return yetAnotherFieldInjectDependency;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.dependency.AnotherArbitraryDependency;
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestInjectQualifier {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency defaultFile() {
|
||||||
|
ArbitraryDependency defaultFile = new ArbitraryDependency();
|
||||||
|
return defaultFile;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency namedFile() {
|
||||||
|
ArbitraryDependency namedFile = new AnotherArbitraryDependency();
|
||||||
|
return namedFile;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestInjectType {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public ArbitraryDependency injectDependency() {
|
||||||
|
ArbitraryDependency injectDependency = new ArbitraryDependency();
|
||||||
|
return injectDependency;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestResourceNameType {
|
||||||
|
|
||||||
|
@Bean(name="namedFile")
|
||||||
|
public File namedFile() {
|
||||||
|
File namedFile = new File("namedFile.txt");
|
||||||
|
return namedFile;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package com.baeldung.configuration;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
public class ApplicationContextTestResourceQualifier {
|
||||||
|
|
||||||
|
@Bean(name="defaultFile")
|
||||||
|
public File defaultFile() {
|
||||||
|
File defaultFile = new File("defaultFile.txt");
|
||||||
|
return defaultFile;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean(name="namedFile")
|
||||||
|
public File namedFile() {
|
||||||
|
File namedFile = new File("namedFile.txt");
|
||||||
|
return namedFile;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,5 +1,8 @@
|
||||||
package com.baeldung.dependency;
|
package com.baeldung.dependency;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
public class AnotherArbitraryDependency extends ArbitraryDependency {
|
public class AnotherArbitraryDependency extends ArbitraryDependency {
|
||||||
|
|
||||||
private final String label = "Another Arbitrary Dependency";
|
private final String label = "Another Arbitrary Dependency";
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package com.baeldung.dependency;
|
package com.baeldung.dependency;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component(value="autowiredFieldDependency")
|
||||||
public class ArbitraryDependency {
|
public class ArbitraryDependency {
|
||||||
|
|
||||||
private final String label = "Arbitrary Dependency";
|
private final String label = "Arbitrary Dependency";
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package com.baeldung.dependency;
|
package com.baeldung.dependency;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
public class YetAnotherArbitraryDependency extends ArbitraryDependency {
|
public class YetAnotherArbitraryDependency extends ArbitraryDependency {
|
||||||
|
|
||||||
private final String label = "Yet Another Arbitrary Dependency";
|
private final String label = "Yet Another Arbitrary Dependency";
|
||||||
|
|
|
@ -10,21 +10,25 @@ import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestInjectName;
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Inject-Name.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class FieldByNameInjectDemo {
|
classes=ApplicationContextTestInjectName.class)
|
||||||
|
public class FieldByNameInjectTest {
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
@Named("yetAnotherFieldInjectDependency")
|
@Named("yetAnotherFieldInjectDependency")
|
||||||
private ArbitraryDependency yetAnotherFieldInjectDependency;
|
private ArbitraryDependency yetAnotherFieldInjectDependency;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void yetAnotherFieldInjectDependency_MUST_BE_INJECTED_Correctly() {
|
public void givenInjectQualifier_WhenSetOnField_ThenDependencyValid() {
|
||||||
assertNotNull(yetAnotherFieldInjectDependency);
|
assertNotNull(yetAnotherFieldInjectDependency);
|
||||||
assertEquals("Yet Another Arbitrary Dependency", yetAnotherFieldInjectDependency.toString());
|
assertEquals("Yet Another Arbitrary Dependency",
|
||||||
|
yetAnotherFieldInjectDependency.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,27 +0,0 @@
|
||||||
package com.baeldung.inject;
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
|
|
||||||
import javax.inject.Inject;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
|
||||||
|
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
|
||||||
@ContextConfiguration(locations={
|
|
||||||
"/applicationContextTest-@Inject-Type.xml"})
|
|
||||||
public class FieldInjectDemo {
|
|
||||||
|
|
||||||
@Inject
|
|
||||||
private ArbitraryDependency inject1Dependency;
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void fieldDependency_MUST_BE_INJECTED_Successfully() {
|
|
||||||
assertNotNull(inject1Dependency);
|
|
||||||
assertEquals("Arbitrary Dependency", inject1Dependency.toString());
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
package com.baeldung.inject;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
import javax.inject.Inject;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestInjectType;
|
||||||
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
|
@ContextConfiguration(
|
||||||
|
loader=AnnotationConfigContextLoader.class,
|
||||||
|
classes=ApplicationContextTestInjectType.class)
|
||||||
|
public class FieldInjectTest {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private ArbitraryDependency fieldInjectDependency;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenInjectAnnotation_WhenOnField_ThenValidDependency(){
|
||||||
|
assertNotNull(fieldInjectDependency);
|
||||||
|
assertEquals("Arbitrary Dependency",
|
||||||
|
fieldInjectDependency.toString());
|
||||||
|
}
|
||||||
|
}
|
|
@ -10,13 +10,15 @@ import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestInjectQualifier;
|
||||||
import com.baeldung.dependency.ArbitraryDependency;
|
import com.baeldung.dependency.ArbitraryDependency;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(loader=AnnotationConfigContextLoader.class,
|
||||||
"/applicationContextTest-@Inject-Qualifier.xml"})
|
classes=ApplicationContextTestInjectQualifier.class)
|
||||||
public class FieldQualifierInjectDemo {
|
public class FieldQualifierInjectTest {
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
@Qualifier("defaultFile")
|
@Qualifier("defaultFile")
|
||||||
|
@ -27,14 +29,16 @@ public class FieldQualifierInjectDemo {
|
||||||
private ArbitraryDependency namedDependency;
|
private ArbitraryDependency namedDependency;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultDependency_MUST_BE_INJECTED_Successfully() {
|
public void givenInjectQualifier_WhenOnField_ThenDefaultFileValid(){
|
||||||
assertNotNull(defaultDependency);
|
assertNotNull(defaultDependency);
|
||||||
assertEquals("Arbitrary Dependency", defaultDependency.toString());
|
assertEquals("Arbitrary Dependency",
|
||||||
|
defaultDependency.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void namedDependency_MUST_BE_INJECTED_Correctly() {
|
public void givenInjectQualifier_WhenOnField_ThenNamedFileValid(){
|
||||||
assertNotNull(defaultDependency);
|
assertNotNull(defaultDependency);
|
||||||
assertEquals("Another Arbitrary Dependency", namedDependency.toString());
|
assertEquals("Another Arbitrary Dependency",
|
||||||
|
namedDependency.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,25 +0,0 @@
|
||||||
package com.baeldung.resource;
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
|
||||||
@ContextConfiguration(locations={
|
|
||||||
"/applicationContextTest-@Resource-NameType.xml"})
|
|
||||||
public class FieldResourceInjectionDemo {
|
|
||||||
|
|
||||||
@Resource(name="namedFile")
|
|
||||||
private File defaultFile;
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void plainResourceAnnotation_MUST_FIND_DefaultFile() {
|
|
||||||
assertNotNull(defaultFile);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
package com.baeldung.resource;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceNameType;
|
||||||
|
|
||||||
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
|
@ContextConfiguration(
|
||||||
|
loader=AnnotationConfigContextLoader.class,
|
||||||
|
classes=ApplicationContextTestResourceNameType.class)
|
||||||
|
public class FieldResourceInjectionTest {
|
||||||
|
|
||||||
|
@Resource(name="namedFile")
|
||||||
|
private File defaultFile;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenResourceAnnotation_WhenOnField_ThenDependencyValid(){
|
||||||
|
assertNotNull(defaultFile);
|
||||||
|
assertEquals("namedFile.txt", defaultFile.getName());
|
||||||
|
}
|
||||||
|
}
|
|
@ -12,17 +12,21 @@ import org.junit.runner.RunWith;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceQualifier;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Resource-Qualifier.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class MethodByQualifierResourceDemo {
|
classes=ApplicationContextTestResourceQualifier.class)
|
||||||
|
public class MethodByQualifierResourceTest {
|
||||||
|
|
||||||
private File arbDependency;
|
private File arbDependency;
|
||||||
private File anotherArbDependency;
|
private File anotherArbDependency;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void dependencies_MUST_BE_INJECTED_Correctly() {
|
public void givenResourceQualifier_WhenSetter_ThenValidDependencies(){
|
||||||
assertNotNull(arbDependency);
|
assertNotNull(arbDependency);
|
||||||
assertEquals("namedFile.txt", arbDependency.getName());
|
assertEquals("namedFile.txt", arbDependency.getName());
|
||||||
assertNotNull(anotherArbDependency);
|
assertNotNull(anotherArbDependency);
|
|
@ -1,5 +1,6 @@
|
||||||
package com.baeldung.resource;
|
package com.baeldung.resource;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -10,11 +11,15 @@ import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceNameType;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Resource-NameType.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class MethodByTypeResourceDemo {
|
classes=ApplicationContextTestResourceNameType.class)
|
||||||
|
public class MethodByTypeResourceTest {
|
||||||
|
|
||||||
private File defaultFile;
|
private File defaultFile;
|
||||||
|
|
||||||
|
@ -24,7 +29,8 @@ public class MethodByTypeResourceDemo {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultFile_MUST_BE_INJECTED_Correctly() {
|
public void givenResourceAnnotation_WhenSetter_ThenValidDependency(){
|
||||||
assertNotNull(defaultFile);
|
assertNotNull(defaultFile);
|
||||||
|
assertEquals("namedFile.txt", defaultFile.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,4 +1,6 @@
|
||||||
package com.baeldung.resource;
|
package com.baeldung.resource;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -9,11 +11,15 @@ import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceNameType;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(
|
||||||
"/applicationContextTest-@Resource-NameType.xml"})
|
loader=AnnotationConfigContextLoader.class,
|
||||||
public class MethodResourceInjectionDemo {
|
classes=ApplicationContextTestResourceNameType.class)
|
||||||
|
public class MethodResourceInjectionTest {
|
||||||
|
|
||||||
private File defaultFile;
|
private File defaultFile;
|
||||||
|
|
||||||
|
@ -23,7 +29,8 @@ public class MethodResourceInjectionDemo {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void defaultFile_MUST_BE_INJECTED_Correctly() {
|
public void givenResourceAnnotation_WhenSetter_ThenDependencyValid(){
|
||||||
assertNotNull(defaultFile);
|
assertNotNull(defaultFile);
|
||||||
|
assertEquals("namedFile.txt", defaultFile.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
package com.baeldung.resource;
|
package com.baeldung.resource;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
|
@ -10,18 +10,21 @@ import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceNameType;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(loader=AnnotationConfigContextLoader.class,
|
||||||
"/applicationContextTest-@Resource-NameType.xml"})
|
classes=ApplicationContextTestResourceNameType.class)
|
||||||
public class NamedResourceTest {
|
public class NamedResourceTest {
|
||||||
|
|
||||||
@Resource(name="namedFile")
|
@Resource(name="namedFile")
|
||||||
private File testFile;
|
private File testFile;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void namedResource_MUST_FIND_SPECIFIED_File() {
|
public void givenResourceAnnotation_WhenOnField_THEN_DEPENDENCY_Found() {
|
||||||
assertNotNull(testFile);
|
assertNotNull(testFile);
|
||||||
assertTrue(testFile.getName().equals("namedFile.txt"));
|
assertEquals("namedFile.txt", testFile.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,35 +0,0 @@
|
||||||
package com.baeldung.resource;
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
|
||||||
@ContextConfiguration(locations={
|
|
||||||
"/applicationContextTest-@Resource-Qualifier.xml"})
|
|
||||||
public class QualifierResourceInjectionDemo {
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private File defaultFile;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
@Qualifier("namedFile")
|
|
||||||
private File namedFile;
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void defaultFile_MUST_BE_Valid() {
|
|
||||||
assertNotNull(defaultFile);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void namedFile_MUST_BE_Valid() {
|
|
||||||
assertNotNull(namedFile);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
package com.baeldung.resource;
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceQualifier;
|
||||||
|
|
||||||
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
|
@ContextConfiguration(
|
||||||
|
loader=AnnotationConfigContextLoader.class,
|
||||||
|
classes=ApplicationContextTestResourceQualifier.class)
|
||||||
|
public class QualifierResourceInjectionTest {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
@Qualifier("defaultFile")
|
||||||
|
private File dependency1;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
@Qualifier("namedFile")
|
||||||
|
private File dependency2;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenResourceAnnotation_WhenField_ThenDependency1Valid(){
|
||||||
|
assertNotNull(dependency1);
|
||||||
|
assertEquals("defaultFile.txt", dependency1.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void givenResourceQualifier_WhenField_ThenDependency2Valid(){
|
||||||
|
assertNotNull(dependency2);
|
||||||
|
assertEquals("namedFile.txt", dependency2.getName());
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,6 @@
|
||||||
package com.baeldung.resource;
|
package com.baeldung.resource;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -9,11 +11,14 @@ import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
import com.baeldung.configuration.ApplicationContextTestResourceNameType;
|
||||||
|
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@ContextConfiguration(locations={
|
@ContextConfiguration(loader=AnnotationConfigContextLoader.class,
|
||||||
"/applicationContextTest-@Resource-NameType.xml"})
|
classes=ApplicationContextTestResourceNameType.class)
|
||||||
public class SetterResourceInjectionDemo {
|
public class SetterResourceInjectionTest {
|
||||||
|
|
||||||
private File defaultFile;
|
private File defaultFile;
|
||||||
|
|
||||||
|
@ -23,7 +28,8 @@ public class SetterResourceInjectionDemo {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void setter_MUST_INJECT_Resource() {
|
public void givenResourceAnnotation_WhenOnSetter_THEN_MUST_INJECT_Dependency() {
|
||||||
assertNotNull(defaultFile);
|
assertNotNull(defaultFile);
|
||||||
|
assertEquals("namedFile.txt", defaultFile.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|