// Path: app/src/main/java/com/ge/protein/util/Preconditions.java
// public static <T> T checkNotNull(T reference, @Nullable Object errorMessage) {
//     if(reference == null) {
//         throw new NullPointerException(String.valueOf(errorMessage));
//     } else {
//         return reference;
//     }
// }


import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.support.annotation.NonNull;
import com.ge.droid.mdlicense.Library;
import com.ge.droid.mdlicense.MDLicenseIntent;
import java.util.ArrayList;
import static com.ge.protein.util.Preconditions.checkNotNull;
/*
 * Copyright 2017 Jiaheng Ge
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.ge.protein.about;





class AboutPresenter implements AboutContract.Presenter {

    private static final String PROTEIN_MARKET_LINK = "market://details?id=com.ge.protein";
    private static final String PROTEIN_WEB_LINK = "http://play.google.com/store/apps/details?id=com.ge.protein";

    @NonNull
    private AboutContract.View view;

    AboutPresenter(@NonNull AboutContract.View view) {
// Path: app/src/main/java/com/ge/protein/util/Preconditions.java
// public static <T> T checkNotNull(T reference, @Nullable Object errorMessage) {
//     if(reference == null) {
//         throw new NullPointerException(String.valueOf(errorMessage));
//     } else {
//         return reference;
//     }
// }


// Path: app/src/main/java/com/ge/protein/about/AboutPresenter.java
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.support.annotation.NonNull;
import com.ge.droid.mdlicense.Library;
import com.ge.droid.mdlicense.MDLicenseIntent;
import java.util.ArrayList;
import static com.ge.protein.util.Preconditions.checkNotNull;

/*
 * Copyright 2017 Jiaheng Ge
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.ge.protein.about;





class AboutPresenter implements AboutContract.Presenter {

    private static final String PROTEIN_MARKET_LINK = "market://details?id=com.ge.protein";
    private static final String PROTEIN_WEB_LINK = "http://play.google.com/store/apps/details?id=com.ge.protein";

    @NonNull
    private AboutContract.View view;

    AboutPresenter(@NonNull AboutContract.View view) {
        this.view = checkNotNull(view, "view cannot be null");