1010
1111public class Brein {
1212 private BreinConfig config ;
13- private BreinEngine engine ;
1413
1514 /**
1615 * Sets the configuration
1716 *
1817 * @param breinConfig config object
1918 */
2019 public Brein setConfig (final BreinConfig breinConfig ) {
21- if (this .engine != null ) {
22- shutdown ();
23- }
24-
2520 this .config = breinConfig ;
2621 return this ;
2722 }
@@ -33,7 +28,7 @@ public Brein setConfig(final BreinConfig breinConfig) {
3328 * This request is asynchronous.
3429 */
3530 public void activity (final BreinActivity data , final Consumer <BreinResult > callback ) {
36- getEngine ().invokeAsync (this .config , data , callback );
31+ BreinEngine . instance ().invokeAsync (this .config , data , callback );
3732 }
3833
3934 /**
@@ -46,7 +41,7 @@ public void activity(final BreinActivity data, final Consumer<BreinResult> callb
4641 * @return response from request wrapped in an object called BreinResponse
4742 */
4843 public BreinResult lookup (final BreinLookup data ) {
49- return getEngine ().invoke (this .config , data );
44+ return BreinEngine . instance ().invoke (this .config , data );
5045 }
5146
5247 /**
@@ -58,7 +53,7 @@ public BreinResult lookup(final BreinLookup data) {
5853 * @return result from the Breinify engine
5954 */
6055 public BreinTemporalDataResult temporalData (final BreinTemporalData data ) {
61- final BreinResult result = getEngine ().invoke (this .config , data );
56+ final BreinResult result = BreinEngine . instance ().invoke (this .config , data );
6257 return new BreinTemporalDataResult (result .getMap ());
6358 }
6459
@@ -73,25 +68,14 @@ public BreinTemporalDataResult temporalData(final BreinTemporalData data) {
7368 * @return the recommended items
7469 */
7570 public BreinRecommendationResult recommendation (final BreinRecommendation data ) {
76- final BreinResult result = getEngine ().invoke (this .config , data );
71+ final BreinResult result = BreinEngine . instance ().invoke (this .config , data );
7772 return new BreinRecommendationResult (result .getMap ());
7873 }
7974
8075 /**
8176 * Shutdown Breinify services
8277 */
8378 public void shutdown () {
84- if (this .engine != null ) {
85- this .engine .terminate ();
86- this .engine = null ;
87- }
88- }
89-
90- public BreinEngine getEngine () {
91- if (this .engine == null ) {
92- this .engine = new BreinEngine ();
93- }
94-
95- return engine ;
79+ BreinEngine .instance ().terminate ();
9680 }
9781}
0 commit comments