├── .gitignore ├── LICENSE ├── src └── main │ ├── resources │ └── knight.xml │ └── java │ └── me │ └── sumithpuri │ └── github │ └── meghalaya │ ├── spring │ ├── di │ │ └── sample │ │ │ ├── GrailNotFoundException.java │ │ │ ├── QuestFailedException.java │ │ │ ├── HolyGrail.java │ │ │ ├── Quest.java │ │ │ ├── Knight.java │ │ │ ├── HolyGrailQuest.java │ │ │ ├── KnightApp.java │ │ │ └── KnightOfTheRoundTable.java │ └── aop │ │ └── sample │ │ └── Minstrel.java │ └── app │ └── Meghalaya.java ├── pom.xml └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | /target/ 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Sumith Kumar Puri 4 | 5 | [Refer Each Code File for the Actual Licence Statement] 6 | -------------------------------------------------------------------------------- /src/main/resources/knight.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/GrailNotFoundException.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public class GrailNotFoundException extends Exception { 32 | 33 | } 34 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/QuestFailedException.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public class QuestFailedException extends Exception { 32 | 33 | } 34 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/HolyGrail.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public class HolyGrail { 32 | 33 | public boolean isHoly() { 34 | return true; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/Quest.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public interface Quest { 32 | 33 | public abstract HolyGrail embark() throws QuestFailedException; 34 | 35 | } -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/Knight.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public interface Knight { 32 | 33 | public abstract Object embarkOnQuest() throws QuestFailedException; 34 | 35 | public abstract String getName(); 36 | } -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/HolyGrailQuest.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public class HolyGrailQuest implements Quest { 32 | 33 | public HolyGrailQuest() { 34 | 35 | } 36 | 37 | /* (non-Javadoc) 38 | * @see me.sumithpuri.github.meghalaya.spring.di.sample.Quest#embark() 39 | */ 40 | public HolyGrail embark() throws QuestFailedException { 41 | return new HolyGrail(); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/aop/sample/Minstrel.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.aop.sample; 2 | 3 | import me.sumithpuri.github.meghalaya.spring.di.sample.Knight; 4 | 5 | /** 6 | * MIT License 7 | * 8 | * Copyright (c) 2018-19, Sumith Kumar Puri 9 | 10 | * GitHub URL https://github.com/sumithpuri 11 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 12 | * Sample Topic Core Spring (AOP) 13 | * Certificate URL https://goo.gl/X321kd 14 | * Package Prefix me.sumithpuri.github.meghalaya 15 | * Project Codename meghalaya 16 | * Contact E-Mail code@sumithpuri.me 17 | * Contact WhatsApp +91 9591497974 18 | * 19 | * 20 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 21 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 22 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 23 | * persons to whom the Software is furnished to do so, subject to the following conditions: 24 | * 25 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 26 | * Software. 27 | * 28 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 29 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 30 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 31 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 32 | */ 33 | public class Minstrel { 34 | 35 | public Minstrel() { 36 | System.out.println("Minstrel: I was Initalized."); 37 | } 38 | 39 | public void singBefore(Knight knight) { 40 | 41 | System.out.println("Minstrel: [Faa La La La]; Sir " + knight.getName() +" is so Brave!"); 42 | } 43 | 44 | public void singAfter(Knight knight) { 45 | 46 | System.out.println("Minstrel: [Sha La La La]; Sir " + knight.getName() +" did Embark on a Quest!"); 47 | } 48 | } -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- 1 | 4 | 4.0.0 5 | 6 | me.sumithpuri.github 7 | skp-mini-marathon-meghalaya 8 | 0.0.1-SNAPSHOT 9 | jar 10 | 11 | Meghalaya : Brainbench Spring 2.5 Certification 12 | http://maven.apache.org 13 | 14 | 15 | UTF-8 16 | 9 17 | 9 18 | false 19 | 20 | 21 | 22 | 23 | junit 24 | junit 25 | 3.8.1 26 | test 27 | 28 | 29 | 30 | org.springframework 31 | spring 32 | 2.5.5 33 | 34 | 35 | org.springframework 36 | spring-aspects 37 | 2.5.5 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | org.apache.maven.plugins 47 | maven-compiler-plugin 48 | 3.6.1 49 | 50 | 51 | org.codehaus.mojo 52 | exec-maven-plugin 53 | 1.6.0 54 | 55 | 56 | test 57 | 58 | java 59 | 60 | 61 | me.sumithpuri.github.meghalaya.app.Meghalaya 62 | true 63 | 64 | 65 | 66 | 67 | 68 | 69 | Brainbench Spring 2.5 Certification (+ Spring In Action Samples) 70 | 71 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/KnightApp.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | import org.springframework.context.ApplicationContext; 4 | import org.springframework.context.support.ClassPathXmlApplicationContext; 5 | 6 | /** 7 | * MIT License 8 | * 9 | * Copyright (c) 2018-19, Sumith Kumar Puri 10 | 11 | * GitHub URL https://github.com/sumithpuri 12 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 13 | * Sample Topic Core Spring (AOP) 14 | * Certificate URL https://goo.gl/X321kd 15 | * Package Prefix me.sumithpuri.github.meghalaya 16 | * Project Codename meghalaya 17 | * Contact E-Mail code@sumithpuri.me 18 | * Contact WhatsApp +91 9591497974 19 | * 20 | * 21 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 22 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 23 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 24 | * persons to whom the Software is furnished to do so, subject to the following conditions: 25 | * 26 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 27 | * Software. 28 | * 29 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 30 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 31 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 32 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 33 | */ 34 | public class KnightApp { 35 | 36 | public static void main(String[] args) throws Exception { 37 | 38 | demoCoreSpringBasicDI(); 39 | } 40 | 41 | public static void demoCoreSpringBasicDI() throws Exception { 42 | 43 | // BeanFactory factory = new XmlBeanFactory(new FileSystemResource("knight.xml")); 44 | // Knight knight = (Knight) factory.getBean("knight"); 45 | // Object object = knight.embarkOnQuest(); 46 | // System.out.println(object.getClass().getName()); 47 | 48 | ApplicationContext ctx = new ClassPathXmlApplicationContext("knight.xml"); 49 | Knight knight = (Knight) ctx.getBean("knight"); 50 | knight.embarkOnQuest(); 51 | } 52 | } -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/spring/di/sample/KnightOfTheRoundTable.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.spring.di.sample; 2 | 3 | /** 4 | * MIT License 5 | * 6 | * Copyright (c) 2018-19, Sumith Kumar Puri 7 | 8 | * GitHub URL https://github.com/sumithpuri 9 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 10 | * Sample Topic Core Spring (AOP) 11 | * Certificate URL https://goo.gl/X321kd 12 | * Package Prefix me.sumithpuri.github.meghalaya 13 | * Project Codename meghalaya 14 | * Contact E-Mail code@sumithpuri.me 15 | * Contact WhatsApp +91 9591497974 16 | * 17 | * 18 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 19 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 20 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 21 | * persons to whom the Software is furnished to do so, subject to the following conditions: 22 | * 23 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 24 | * Software. 25 | * 26 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 27 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 28 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 29 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 30 | */ 31 | public class KnightOfTheRoundTable implements Knight { 32 | 33 | private String name; 34 | private Quest quest; 35 | 36 | public KnightOfTheRoundTable(String name) { 37 | this.name = name; 38 | } 39 | 40 | /* (non-Javadoc) 41 | * @see me.sumithpuri.github.meghalaya.spring.di.sample.Knight#embarkOnQuest() 42 | */ 43 | public Object embarkOnQuest() throws QuestFailedException { 44 | 45 | System.out.println("Knight: " + this.name + " >> Embarked On: " + this.quest.getClass().getSimpleName()); 46 | HolyGrail holyGrail = quest.embark(); 47 | 48 | // debug/test print statements 49 | System.out.println("Knight: " + this.name + " >> Found: " + holyGrail.getClass().getSimpleName()); 50 | 51 | return holyGrail; 52 | } 53 | 54 | public void setQuest(Quest quest) { 55 | this.quest=quest; 56 | } 57 | 58 | public String getName() { 59 | return this.name; 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /src/main/java/me/sumithpuri/github/meghalaya/app/Meghalaya.java: -------------------------------------------------------------------------------- 1 | package me.sumithpuri.github.meghalaya.app; 2 | 3 | import me.sumithpuri.github.meghalaya.spring.di.sample.KnightApp; 4 | 5 | /** 6 | * MIT License 7 | * 8 | * Copyright (c) 2018-19, Sumith Kumar Puri 9 | 10 | * GitHub URL https://github.com/sumithpuri 11 | * Code Sample Brainbench Spring 2.5 Certification [+ Spring In Action Samples] 12 | * Sample Topic Core Spring (AOP) 13 | * Certificate URL https://goo.gl/X321kd 14 | * Package Prefix me.sumithpuri.github.meghalaya 15 | * Project Codename meghalaya 16 | * Contact E-Mail code@sumithpuri.me 17 | * Contact WhatsApp +91 9591497974 18 | * 19 | * 20 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 21 | * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the 22 | * rights to use, copy, modify, merge, publish, distribute, sub-license and/or sell copies of the Software and to permit 23 | * persons to whom the Software is furnished to do so, subject to the following conditions: 24 | * 25 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the 26 | * Software. 27 | * 28 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 29 | * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 30 | * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 31 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 32 | */ 33 | public class Meghalaya { 34 | 35 | // XXX Do Include the [src/main/resources] in the Classpath Before Compiling/Running 36 | public static void main(String[] args) throws Exception { 37 | 38 | System.out.println("Copyright (c) 2018-19, Sumith Kumar Puri"); 39 | System.out.println(); 40 | System.out.println("Project Codename Meghalaya"); 41 | System.out.println("Project Description Core Spring (AOP)"); 42 | System.out.println("Certification Brainbench Spring 2.5 Certification"); 43 | System.out.println("Certificate URL https://goo.gl/X321kd"); 44 | System.out.println("[Developer Notes] [01] Use Java Version 9.0+ Compiler"); 45 | System.out.println(); 46 | 47 | System.out.println(); 48 | System.out.println("Example of Spring AOP using Application Context"); 49 | System.out.println("-----------------------------------------------"); 50 | 51 | KnightApp.demoCoreSpringBasicDI(); 52 | System.out.println(); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Meghalaya (Brainbench Spring 2.5 Certification) 2 | Brainbench Spring 2.5 Certification (+ Spring In Action Samples) 3 |
4 | MIT License, Copyright (c) 2018-19, Sumith Kumar Puri
5 | https://github.com/sumithpuri 6 |
7 | 8 |

9 | 10 |

11 | 12 |
13 | 14 | 15 |
16 | 17 | 18 | |Project Codename|Meghalaya| 19 | |--|--| 20 | |Certification|Brainbench Spring 2.5 Certification| 21 | |Certificate URL|https://goo.gl/X321kd| 22 | |Sample Topic|Core Spring (AOP)| 23 | |Package Prefix|me.sumithpuri.github.meghalaya| 24 | |GitHub URL|https://github.com/sumithpuri/skp-mini-marathon-meghalaya| 25 | |Contact Number|+91 9591497974 (WhatsApp, Viber, Telegram)| 26 | |Historical|✅ Started this Movement of 1000s of Lines of Java/EE* Code to GitHub
✅ Was a Senior Software Architect (Java/EE) in Manila*, 2018 (At Start) 
✅ Named this Initial Code Journey as [ Manila Code Marathon - 2018 ]
✅ Code Is Non-Proprietary / Non-Copyright from my Work Experience.
✅ Was Back to Bangalore, Named as [ Bangalore Code Nights - 2019. ]
✅ Added More Code under [ -20 Days of Code in Benglauru- ] in 2020
✅ Celebration of Java/Java EE Code as Java Turned 25 in the Year 2020! | 27 | 28 | 29 |
30 | 31 |
32 | 33 |
34 | 35 | 36 | 37 | 38 | 40 |

❤️ Ex-Yahoo, Symantec, Huawei, Oracle*, OpenText*, Finastra*, Atos*
🧡 Xth, XIIth (Computer Science) - Naval Public School, Kochi, India
💛 Bachelor of Engineering (Computer Science)* - SRSIT, Bangalore
💜 Executive Program ( Data Mining and Analytics ) - [IIT, Roorkee]
💚 Executive Certificate Program (Entrepreneurship) - IIM, Kashipur


💙 Proficience (Cryptography & Network Security) - IISc, Bangalore
🤎 Proficience (Innovative Product Design & Dev.) - IISc, Bangalore
🖤 Proficience (Artficial Intelligence/Intelli Agents) - IISc, Bangalore


💎 Sun Certified Java Programmer 1.4 (Core Java)
💎 Sun Certified Java Programmer 5.0 (Core Java)
💎 Sun Certified Business Component Developer 1.3 (EJB/J2EE)
💎 Sun Certified Business Component Developer 5.0 (EJB/J2EE)
💎 Brainbench Spring 2.x Certification*, ( J2EE/Spring )
💎 Brainbench Hibernate 3.x Certification* (Hibernate)
💎 Brainbench Java EE 6.x Certification*, ( J2EE )
💎 Quest C Lang. Certification (C Programming)
💎 Quest C++ Certification (C++ Programming)
💎 Quest Data Structures Certification ( C/C++ )


39 | 🏁 Highest IQ (147) ~ Among Entire Secondary School Batch ~ (Xth)
🏁 MVIT Inter-Collegiate C Programming Contest (Finalist, Top 8)
🏁 SJCIT Inter-Collegiate Web Design (Runners-Up)
🏁 Google India Code Jam 2005 (#376/14,000) - India + SE Asia
🏁 Microsoft Bizspark Startup 2011-'12 (Shortlisted/Recognized)
🏁 Societe Generale Brainwaves Hackathon 2015 (Corp Finalist, AI)
🏁 Mphasis Internal Hackathon Challenge, Season-07 (#07/106)*
🏁 Techgig Code Gladiators 2015 (Open, Top 500)
🏁 Accenture in India YouTube Contest 2015 (BigData, Winner)
🏁 Xebia-Microsoft-GitHub Blogathon 2022 (Microservices, Winner)


🏆 Senior Member, ACM (Elevated) and Senior Member, IEEE (Elevated)
🏆 Author/Blogger, Technology Advice (Developer.com and jGuru)
🏆 DZone Most Valuable Blogger and DZone Core (Elevated)**
🏆 Author and Blogger, Friends of Open JDK Community (Foojay.IO)
🏆 Blogger, Java Code Geeks Program (Shortlisted/Recognized)
🏆 Paid Blogger, Developer.com and jGuru; Blogger, HackerNoon;
🎯 19y Across Associate/Engineer (2003) to Java Practice Leader (2024)

41 | 42 |
43 | 44 |
45 |
46 |
🔴 ALL COPYRIGHTS FOR THE ABOVE PUBLICLY AVAILABLE IMAGE OR PARTS OF THE IMAGE ARE WITH THEIR RESPECTIVE OWNERS, SOURCED/USED FROM GOOGLE SEARCH
47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | --------------------------------------------------------------------------------