blob: d4ca9d31a2323ed37cd5acd4c145469aec121bec [file] [log] [blame]
/*
* Copyright (C) 2015 The Android Open Source Project
*
* 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.google.services;
import com.android.tools.idea.structure.services.DeveloperServiceCreator;
import com.android.tools.idea.structure.services.DeveloperServiceCreators;
import com.android.tools.idea.structure.services.ServiceContext;
import com.android.tools.idea.ui.properties.core.StringValueProperty;
import com.google.common.collect.ImmutableSet;
import com.google.services.creators.*;
import java.util.Collection;
/**
* Extension for Android Studio which provides helpers that initialize Google developer services.
*/
public final class GoogleServiceCreators implements DeveloperServiceCreators {
public static ServiceContext createGoogleServiceContext() {
ServiceContext serviceContext = new ServiceContext();
// TODO: Get this value from maven?
serviceContext.putValue("google.play.version", new StringValueProperty("7.3.0"));
serviceContext.putValue("google.isLoggedIn", GoogleServiceLoginListener.getInstance().loggedIn());
return serviceContext;
}
@Override
public Collection<? extends DeveloperServiceCreator> getCreators() {
return ImmutableSet.of(
new AdMobServiceCreator(),
new AnalyticsServiceCreator(),
new CloudMessagingServiceCreator(),
new IdentityServiceCreator()
);
}
}