[jira] [Updated] (CELIX-210) Remove old Dependency Manager

2015-08-12 Thread Pepijn Noltes (JIRA)

 [ 
https://issues.apache.org/jira/browse/CELIX-210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pepijn Noltes updated CELIX-210:

Fix Version/s: next

 Remove old Dependency Manager
 -

 Key: CELIX-210
 URL: https://issues.apache.org/jira/browse/CELIX-210
 Project: Celix
  Issue Type: Task
  Components: Dependency Manager
Reporter: Alexander Broekhuis
 Fix For: next


 With the new DM implementation, the old one can be removed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CELIX-249) Refactor most char * usage to const char *

2015-08-12 Thread Pepijn Noltes (JIRA)

 [ 
https://issues.apache.org/jira/browse/CELIX-249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pepijn Noltes updated CELIX-249:

Summary: Refactor most char * usage to const char *  (was: Refactor most 
char * useage to const char *)

 Refactor most char * usage to const char *
 --

 Key: CELIX-249
 URL: https://issues.apache.org/jira/browse/CELIX-249
 Project: Celix
  Issue Type: Improvement
Reporter: Pepijn Noltes
Priority: Minor
 Fix For: next


 In most cases when char * is used in a function const char * should be used 
 instead. 
 Example are bundleContext_registerService, properties_set, etc
 As result a lot of cast to char * can be removed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (CELIX-119) Remove apr usage from framework

2015-08-12 Thread Pepijn Noltes (JIRA)

 [ 
https://issues.apache.org/jira/browse/CELIX-119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pepijn Noltes updated CELIX-119:

Fix Version/s: next

 Remove apr usage from framework
 ---

 Key: CELIX-119
 URL: https://issues.apache.org/jira/browse/CELIX-119
 Project: Celix
  Issue Type: New Feature
Reporter: Pepijn Noltes
 Fix For: next


 Remove apr from the Celix framework. 
 The work can be divided in to 6 parts:
 1: wire,resolver,capability,requirement  attribute
 2: utils
 3: bundle, bundle_revision, bundle_archive, bundle_context, module, manifest, 
 miniunz, unzip, iowin32  ioapi
 4: framework, bundle_cache (framework_store)
 5: service_registry, filter, service_reference  service_registratoin
 6: service_tracker, service_tracker_customizer



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (CELIX-209) Remove APR from Remote Services

2015-08-12 Thread Pepijn Noltes (JIRA)

 [ 
https://issues.apache.org/jira/browse/CELIX-209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pepijn Noltes resolved CELIX-209.
-
Resolution: Fixed

Removed in develop/master branch

 Remove APR from Remote Services
 ---

 Key: CELIX-209
 URL: https://issues.apache.org/jira/browse/CELIX-209
 Project: Celix
  Issue Type: Task
  Components: Remote Service Admin
Reporter: Alexander Broekhuis





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


celix git commit: CELIX-237: Added support for argument meta info (output types) and added use of this info in the export_registration

2015-08-12 Thread pnoltes
Repository: celix
Updated Branches:
  refs/heads/feature/CELIX-237_rsa-ffi 4c4a5e9bd - 62ede189c


CELIX-237: Added support for argument meta info (output types) and added use of 
this info in the export_registration


Project: http://git-wip-us.apache.org/repos/asf/celix/repo
Commit: http://git-wip-us.apache.org/repos/asf/celix/commit/62ede189
Tree: http://git-wip-us.apache.org/repos/asf/celix/tree/62ede189
Diff: http://git-wip-us.apache.org/repos/asf/celix/diff/62ede189

Branch: refs/heads/feature/CELIX-237_rsa-ffi
Commit: 62ede189c0e5cbc32b1a29256f3c109e8acef02c
Parents: 4c4a5e9
Author: Pepijn Noltes pepijnnol...@gmail.com
Authored: Wed Aug 12 18:16:08 2015 +0200
Committer: Pepijn Noltes pepijnnol...@gmail.com
Committed: Wed Aug 12 18:16:08 2015 +0200

--
 ...apache.celix.calc.api.Calculator2.descriptor |   6 +-
 .../dynamic_function_interface/dyn_function.c   | 114 +--
 .../dynamic_function_interface/dyn_function.h   |  15 ++-
 .../dynamic_function_interface/dyn_type.c   |  13 ++-
 .../tst/dyn_function_tests.cpp  |  55 -
 .../private/src/export_registration_dfi.c   |  81 -
 6 files changed, 238 insertions(+), 46 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/celix/blob/62ede189/remote_services/examples/calculator_service/public/include/org.apache.celix.calc.api.Calculator2.descriptor
--
diff --git 
a/remote_services/examples/calculator_service/public/include/org.apache.celix.calc.api.Calculator2.descriptor
 
b/remote_services/examples/calculator_service/public/include/org.apache.celix.calc.api.Calculator2.descriptor
index 711df0b..52e3322 100644
--- 
a/remote_services/examples/calculator_service/public/include/org.apache.celix.calc.api.Calculator2.descriptor
+++ 
b/remote_services/examples/calculator_service/public/include/org.apache.celix.calc.api.Calculator2.descriptor
@@ -6,6 +6,6 @@ version=1.0.0
 classname=org.example.Calculator
 :types
 :methods
-add(DD)D=add(PDD*D)N
-sub(DD)D=sub(PDD*D)N
-sqrt(D)D=sqrt(PD*D)N
+add(DD)D=add(#PDD^*D)N
+sub(DD)D=sub(#PDD^*D)N
+sqrt(D)D=sqrt(#PD^*D)N

http://git-wip-us.apache.org/repos/asf/celix/blob/62ede189/remote_services/remote_service_admin_dfi/dynamic_function_interface/dyn_function.c
--
diff --git 
a/remote_services/remote_service_admin_dfi/dynamic_function_interface/dyn_function.c
 
b/remote_services/remote_service_admin_dfi/dynamic_function_interface/dyn_function.c
index 0e12791..8880bc7 100644
--- 
a/remote_services/remote_service_admin_dfi/dynamic_function_interface/dyn_function.c
+++ 
b/remote_services/remote_service_admin_dfi/dynamic_function_interface/dyn_function.c
@@ -27,6 +27,7 @@ typedef struct _dyn_function_argument_type 
dyn_function_argument_type;
 struct _dyn_function_argument_type {
 int index;
 char *name;
+int argumentType;
 dyn_type *type;
 TAILQ_ENTRY(_dyn_function_argument_type) entries;
 };
@@ -40,7 +41,11 @@ DFI_SETUP_LOG(dynFunction)
 
 static int dynFunction_initCif(dyn_function_type *dynFunc);
 static int dynFunction_parseDescriptor(dyn_function_type *dynFunc, FILE 
*descriptor);
-static void dynFunction_ffiBind(ffi_cif *cif, void *ret, void *args[], void 
*userData); 
+static void dynFunction_ffiBind(ffi_cif *cif, void *ret, void *args[], void 
*userData);
+
+static int dynFunction_checkArgument(dyn_function_argument_type *argument);
+
+static void dynFunction_parseArgMeta(FILE *descriptor, int *meta);
 
 int dynFunction_parse(FILE *descriptor, struct types_head *refTypes, 
dyn_function_type **out) {
 int status = OK;
@@ -67,7 +72,12 @@ int dynFunction_parse(FILE *descriptor, struct types_head 
*refTypes, dyn_functio
 
 if (status == 0) {
 *out = dynFunc;
-} 
+}else {
+if (dynFunc != NULL) {
+dynFunction_destroy(dynFunc);
+}
+
+}
 
 return status;
 }
@@ -106,22 +116,50 @@ static int dynFunction_parseDescriptor(dyn_function_type 
*dynFunc, FILE *descrip
 int nextChar = fgetc(descriptor);
 int index = 0;
 dyn_type *type = NULL;
+int argMetaInfo = DYN_FUNCTION_ARG_META_STD_TYPE;
+char argName[32];
 while (nextChar != ')'  status == 0)  {
-type = NULL;
 ungetc(nextChar, descriptor);
-status = dynType_parse(descriptor, NULL, dynFunc-refTypes, type); 
+type = NULL;
+
+dynFunction_parseArgMeta(descriptor, argMetaInfo);
+dyn_function_argument_type *arg = NULL;
+
+status = dynType_parse(descriptor, NULL, dynFunc-refTypes, type);
 if (status == 0) {
-dyn_function_argument_type *arg = calloc(1, sizeof(*arg));
-arg-index = index++;
-arg-type = type;
-arg-name = NULL; //TODO
+