Remove demo HVAC property in favor of using the emulated VHAL.
am: 6289fffc2a

Change-Id: I8024d60568211f4f59a961dcfb2bb4b6cb73aa39
diff --git a/src/com/android/car/hvac/HvacController.java b/src/com/android/car/hvac/HvacController.java
index 8c4324d..c9ae8a4 100644
--- a/src/com/android/car/hvac/HvacController.java
+++ b/src/com/android/car/hvac/HvacController.java
@@ -39,7 +39,6 @@
 import javax.annotation.concurrent.GuardedBy;
 
 public class HvacController extends Service {
-    private static final String DEMO_MODE_PROPERTY = "android.car.hvac.demo";
     private static final String TAG = "HvacController";
     private static final int DRIVER_ZONE_ID = VehicleAreaSeat.SEAT_ROW_1_LEFT |
             VehicleAreaSeat.SEAT_ROW_2_LEFT | VehicleAreaSeat.SEAT_ROW_2_CENTER;
@@ -120,12 +119,6 @@
     public void onCreate() {
         super.onCreate();
         if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE)) {
-            if (SystemProperties.getBoolean(DEMO_MODE_PROPERTY, false)) {
-                IBinder binder = (new LocalHvacPropertyService()).getCarPropertyService();
-                initHvacManager(new CarHvacManager(binder, this, new Handler()));
-                return;
-            }
-
             mCarApiClient = Car.createCar(this, mCarConnectionCallback);
             mCarApiClient.connect();
         }
diff --git a/src/com/android/car/hvac/LocalHvacPropertyService.java b/src/com/android/car/hvac/LocalHvacPropertyService.java
deleted file mode 100644
index 8be525c..0000000
--- a/src/com/android/car/hvac/LocalHvacPropertyService.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Copyright (c) 2016, 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.android.car.hvac;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import android.car.VehicleAreaSeat;
-import android.car.VehicleAreaType;
-import android.car.VehicleAreaWindow;
-import android.car.hardware.CarPropertyConfig;
-import android.car.hardware.CarPropertyValue;
-import android.car.hardware.hvac.CarHvacManager;
-import android.car.hardware.property.CarPropertyEvent;
-import android.car.hardware.property.ICarProperty;
-import android.car.hardware.property.ICarPropertyEventListener;
-import android.os.IBinder;
-import android.os.RemoteException;
-import android.util.Pair;
-
-/**
- * A local {@link ICarProperty} that is used to mock up data for HVAC.
- */
-public class LocalHvacPropertyService {
-    private static final int DRIVER_ZONE_ID = VehicleAreaSeat.SEAT_ROW_1_LEFT |
-            VehicleAreaSeat.SEAT_ROW_2_LEFT | VehicleAreaSeat.SEAT_ROW_2_CENTER;
-    private static final int PASSENGER_ZONE_ID = VehicleAreaSeat.SEAT_ROW_1_RIGHT |
-            VehicleAreaSeat.SEAT_ROW_2_RIGHT;
-
-    private static final float MIN_TEMP = 16;
-    private static final float MAX_TEMP = 32;
-
-    private static final int MAX_FAN_SPEED = 7;
-    private static final int MIN_FAN_SPEED = 1;
-
-    private static final int DEFAULT_AREA_ID = 0;
-
-    private static final boolean DEFAULT_POWER_ON = true;
-    private static final boolean DEFAULT_DEFROSTER_ON = true;
-    private static final boolean DEFAULT_AIR_CIRCULATION_ON = true;
-    private static final boolean DEFAULT_AC_ON = true;
-    private static final boolean DEFAULT_AUTO_MODE = false;
-    private static final int DEFAULT_FAN_SPEED = 3;
-    private static final int DEFAULT_FAN_DIRECTION = 2;
-    private static final float DEFAULT_DRIVER_TEMP = 16;
-    private static final float DEFAULT_PASSENGER_TEMP = 25;
-    // Hardware specific value for the front seats
-    public static final int SEAT_ALL = VehicleAreaSeat.SEAT_ROW_1_LEFT |
-            VehicleAreaSeat.SEAT_ROW_1_RIGHT | VehicleAreaSeat.SEAT_ROW_2_LEFT |
-            VehicleAreaSeat.SEAT_ROW_2_CENTER | VehicleAreaSeat.SEAT_ROW_2_RIGHT;
-
-    private final List<CarPropertyConfig> mPropertyList;
-    private final Map<Pair, Object> mProperties = new HashMap<>();
-    private final List<ICarPropertyEventListener> mListeners = new ArrayList<>();
-
-    public LocalHvacPropertyService() {
-        CarPropertyConfig fanSpeedConfig = CarPropertyConfig.newBuilder(Integer.class,
-                CarHvacManager.ID_ZONED_FAN_SPEED_SETPOINT,
-                VehicleAreaType.VEHICLE_AREA_TYPE_SEAT)
-                .addAreaConfig(DEFAULT_AREA_ID, MIN_FAN_SPEED, MAX_FAN_SPEED).build();
-
-        CarPropertyConfig temperatureConfig = CarPropertyConfig.newBuilder(Float.class,
-                CarHvacManager.ID_ZONED_TEMP_SETPOINT,
-                VehicleAreaType.VEHICLE_AREA_TYPE_SEAT)
-                .addAreaConfig(DEFAULT_AREA_ID, MIN_TEMP, MAX_TEMP).build();
-
-        mPropertyList = new ArrayList<>(2);
-        mPropertyList.addAll(Arrays.asList(fanSpeedConfig, temperatureConfig));
-        setupDefaultValues();
-    }
-
-    private final IBinder mCarPropertyService = new ICarProperty.Stub(){
-        @Override
-        public void registerListener(int propId, float rate, ICarPropertyEventListener listener) throws RemoteException {
-            mListeners.add(listener);
-        }
-
-        @Override
-        public void unregisterListener(int propId, ICarPropertyEventListener listener) throws RemoteException {
-            mListeners.remove(listener);
-        }
-
-        @Override
-        public List<CarPropertyConfig> getPropertyList() throws RemoteException {
-            return mPropertyList;
-        }
-
-        @Override
-        public CarPropertyValue getProperty(int prop, int zone) throws RemoteException {
-            return new CarPropertyValue(prop, zone, mProperties.get(new Pair(prop, zone)));
-        }
-
-        @Override
-        public void setProperty(CarPropertyValue prop) throws RemoteException {
-            mProperties.put(new Pair(prop.getPropertyId(), prop.getAreaId()), prop.getValue());
-            for (ICarPropertyEventListener listener : mListeners) {
-                LinkedList<CarPropertyEvent> l = new LinkedList<>();
-                l.add(new CarPropertyEvent(CarPropertyEvent.PROPERTY_EVENT_PROPERTY_CHANGE, prop));
-                listener.onEvent(l);
-            }
-        }
-    };
-
-    public IBinder getCarPropertyService() {
-        return mCarPropertyService;
-    }
-
-    private void setupDefaultValues() {
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_HVAC_POWER_ON,
-                SEAT_ALL), DEFAULT_POWER_ON);
-        mProperties.put(new Pair<>(CarHvacManager.ID_WINDOW_DEFROSTER_ON,
-                VehicleAreaWindow.WINDOW_FRONT_WINDSHIELD), DEFAULT_DEFROSTER_ON);
-        mProperties.put(new Pair<>(CarHvacManager.ID_WINDOW_DEFROSTER_ON,
-                VehicleAreaWindow.WINDOW_REAR_WINDSHIELD), DEFAULT_DEFROSTER_ON);
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_AIR_RECIRCULATION_ON,
-                SEAT_ALL), DEFAULT_AIR_CIRCULATION_ON);
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_AC_ON,
-                SEAT_ALL), DEFAULT_AC_ON);
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_AUTOMATIC_MODE_ON,
-                SEAT_ALL), DEFAULT_AUTO_MODE);
-
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_FAN_SPEED_SETPOINT,
-                SEAT_ALL), DEFAULT_FAN_SPEED);
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_FAN_DIRECTION,
-                SEAT_ALL), DEFAULT_FAN_DIRECTION);
-
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_TEMP_SETPOINT,
-                DRIVER_ZONE_ID), DEFAULT_DRIVER_TEMP);
-        mProperties.put(new Pair<>(CarHvacManager.ID_ZONED_TEMP_SETPOINT,
-                PASSENGER_ZONE_ID), DEFAULT_PASSENGER_TEMP);
-    }
-}