120c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti/*
220c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * Copyright (C) 2014 The Android Open Source Project
320c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti *
420c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * Licensed under the Apache License, Version 2.0 (the "License");
520c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * you may not use this file except in compliance with the License.
620c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * You may obtain a copy of the License at
720c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti *
820c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti *      http://www.apache.org/licenses/LICENSE-2.0
920c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti *
1020c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * Unless required by applicable law or agreed to in writing, software
1120c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * distributed under the License is distributed on an "AS IS" BASIS,
1220c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1320c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * See the License for the specific language governing permissions and
1420c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti * limitations under the License.
1520c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti */
1620c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
1720c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colittipackage com.android.server.ethernet;
1820c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
1920c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colittiimport android.content.Context;
2020c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colittiimport android.util.Log;
2120c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colittiimport com.android.server.SystemService;
2220c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
2320c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colittipublic final class EthernetService extends SystemService {
2420c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
2520c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    private static final String TAG = "EthernetService";
2620c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    final EthernetServiceImpl mImpl;
2720c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
2820c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    public EthernetService(Context context) {
2920c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        super(context);
3020c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        mImpl = new EthernetServiceImpl(context);
3120c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    }
3220c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
3320c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    @Override
3420c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    public void onStart() {
3520c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        Log.i(TAG, "Registering service " + Context.ETHERNET_SERVICE);
3620c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        publishBinderService(Context.ETHERNET_SERVICE, mImpl);
3720c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    }
3820c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti
3920c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    @Override
4020c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    public void onBootPhase(int phase) {
4120c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        if (phase == SystemService.PHASE_SYSTEM_SERVICES_READY) {
4220c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti            mImpl.start();
4320c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti        }
4420c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti    }
4520c1c99c4351abd8bb3d6e8f966fcf3b6de0e5b0Lorenzo Colitti}
46