DataSourceProvider.java

1
/*
2
 * Copyright (c) 2015 Maxim Yunusov
3
 *    Licensed under the Apache License, Version 2.0 (the "License");
4
 *    you may not use this file except in compliance with the License.
5
 *    You may obtain a copy of the License at
6
 *
7
 *        http://www.apache.org/licenses/LICENSE-2.0
8
 *
9
 *    Unless required by applicable law or agreed to in writing, software
10
 *    distributed under the License is distributed on an "AS IS" BASIS,
11
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
 *    See the License for the specific language governing permissions and
13
 *    limitations under the License.
14
 */
15
16
package org.maxur.perfmodel.backend;
17
18
import org.glassfish.hk2.api.Factory;
19
import org.glassfish.hk2.api.ServiceLocator;
20
import org.maxur.perfmodel.backend.infrastructure.DataSourceLevelDbImpl;
21
22
import javax.inject.Inject;
23
24
/**
25
 * @author myunusov
26
 * @version 1.0
27
 * @since <pre>12.09.2015</pre>
28
 */
29
public class DataSourceProvider implements Factory<DataSourceLevelDbImpl> {
30
31
    private static DataSourceLevelDbImpl ds;
32
33
    @Inject
34
    private ServiceLocator locator;
35
36
    @Override
37
    public DataSourceLevelDbImpl provide() {
38 1 1. provide : negated conditional → NO_COVERAGE
        if (ds == null) {
39
            ds = new DataSourceLevelDbImpl();
40 1 1. provide : removed call to org/glassfish/hk2/api/ServiceLocator::inject → NO_COVERAGE
            locator.inject(ds);
41 1 1. provide : removed call to org/maxur/perfmodel/backend/infrastructure/DataSourceLevelDbImpl::init → NO_COVERAGE
            ds.init();
42
        }
43 1 1. provide : mutated return of Object value for org/maxur/perfmodel/backend/DataSourceProvider::provide to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
        return ds;
44
    }
45
46
    @Override
47
    public void dispose(final DataSourceLevelDbImpl instance) {
48 1 1. dispose : removed call to org/maxur/perfmodel/backend/infrastructure/DataSourceLevelDbImpl::stop → NO_COVERAGE
        instance.stop();
49
    }
50
}

Mutations

38

1.1
Location : provide
Killed by : none
negated conditional → NO_COVERAGE

40

1.1
Location : provide
Killed by : none
removed call to org/glassfish/hk2/api/ServiceLocator::inject → NO_COVERAGE

41

1.1
Location : provide
Killed by : none
removed call to org/maxur/perfmodel/backend/infrastructure/DataSourceLevelDbImpl::init → NO_COVERAGE

43

1.1
Location : provide
Killed by : none
mutated return of Object value for org/maxur/perfmodel/backend/DataSourceProvider::provide to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

48

1.1
Location : dispose
Killed by : none
removed call to org/maxur/perfmodel/backend/infrastructure/DataSourceLevelDbImpl::stop → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.1.6