at_network: add network module skeleton
authorCaiwen Zhang <caiwen.zhang@intel.com>
Fri, 14 Dec 2012 16:06:33 +0000 (00:06 +0800)
committerwootak.jung <wootak.jung@samsung.com>
Sun, 24 Mar 2013 06:48:55 +0000 (15:48 +0900)
Change-Id: Icff41bd766e7d5fd021cb75186477b947eff7eb3

include/at_network.h
src/at_network.c

index e69de29..2848b4a 100644 (file)
@@ -0,0 +1,25 @@
+/*
+ * 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.
+ */
+
+#ifndef __AT_NETWORK_H__
+#define __AT_NETWORK_H__
+
+gboolean at_network_init(TcorePlugin *p);
+void at_network_exit(TcorePlugin *p);
+
+#endif
index e69de29..5f76aca 100644 (file)
@@ -0,0 +1,101 @@
+/*
+ * 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 <hal.h>
+#include <core_object.h>
+#include <plugin.h>
+#include <queue.h>
+#include <co_network.h>
+#include <server.h>
+
+#include "at.h"
+#include "user_request.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 *plugin)
+{
+       CoreObject *co;
+
+       co = tcore_network_new(plugin, "umts_network", &network_ops, NULL);
+       if (NULL == co)
+               return FALSE;
+
+       return TRUE;
+}
+
+void at_network_exit(TcorePlugin *plugin)
+{
+       CoreObject *co;
+
+       if (NULL == plugin)
+               return;
+
+       co = tcore_plugin_ref_core_object(plugin, "umts_network");
+       if (NULL == co)
+               return;
+
+       tcore_network_free(co);
+}