Don't manage network interface in PS object
[platform/core/telephony/tel-plugin-at_standard.git] / src / at_network.c
index e69de29..87dd5f2 100644 (file)
@@ -0,0 +1,100 @@
+/*
+ * tel-plugin-at_standard
+ *
+ * Copyright (c) 2012 Intel Corporation. All rights reserved.
+ *
+ * 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.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <glib.h>
+
+#include <tcore.h>
+#include <server.h>
+#include <plugin.h>
+#include <core_object.h>
+#include <co_network.h>
+
+#include "at_network.h"
+
+
+static TReturn search_network(CoreObject *co, UserRequest *ur)
+{
+       return TCORE_RETURN_ENOSYS;
+}
+
+static TReturn set_plmn_selection_mode(CoreObject *co, UserRequest *ur)
+{
+       return TCORE_RETURN_ENOSYS;
+}
+
+static TReturn get_plmn_selection_mode(CoreObject *co, UserRequest *ur)
+{
+       return TCORE_RETURN_ENOSYS;
+}
+
+static TReturn get_serving_network(CoreObject *co, UserRequest *ur)
+{
+       return TCORE_RETURN_ENOSYS;
+}
+
+static struct tcore_network_operations network_ops = {
+       .search = search_network,
+       .set_plmn_selection_mode = set_plmn_selection_mode,
+       .get_plmn_selection_mode = get_plmn_selection_mode,
+       .set_service_domain = NULL,
+       .get_service_domain = NULL,
+       .set_band = NULL,
+       .get_band = NULL,
+       .set_preferred_plmn = NULL,
+       .get_preferred_plmn = NULL,
+       .set_order = NULL,
+       .get_order = NULL,
+       .set_power_on_attach = NULL,
+       .get_power_on_attach = NULL,
+       .set_cancel_manual_search = NULL,
+       .get_serving_network = get_serving_network,
+       .set_mode = NULL,
+       .get_mode = NULL,
+};
+
+gboolean at_network_init(TcorePlugin *cp)
+{
+       CoreObject *co;
+       Server *server;
+
+       co = tcore_network_new(cp, &network_ops, NULL);
+       if (co == NULL)
+               return FALSE;
+
+       server = tcore_plugin_ref_server(cp);
+       tcore_server_add_template_object(server, co);
+
+       return TRUE;
+}
+
+void at_network_exit(TcorePlugin *cp)
+{
+       CoreObject *co;
+
+       if (cp == NULL)
+               return;
+
+       co = tcore_plugin_ref_core_object(cp, CORE_OBJECT_TYPE_NETWORK);
+       if (co == NULL)
+               return;
+
+       tcore_object_free(co);
+}