Exemple #1
0
AB_IMEXPORTER_ACCOUNTINFO*
AB_ImExporterAccountInfo_dup(const AB_IMEXPORTER_ACCOUNTINFO *oi) {
  AB_IMEXPORTER_ACCOUNTINFO *iea;

  GWEN_NEW_OBJECT(AB_IMEXPORTER_ACCOUNTINFO, iea);
  GWEN_LIST_INIT(AB_IMEXPORTER_ACCOUNTINFO, iea);

#define COPY_CHAR(NAME) \
  if (oi->NAME) \
    iea->NAME=strdup(oi->NAME);
  COPY_CHAR(bankCode);
  COPY_CHAR(bankName);
  COPY_CHAR(accountNumber);
  COPY_CHAR(accountName);
  COPY_CHAR(iban);
  COPY_CHAR(bic);
  COPY_CHAR(owner);
  COPY_CHAR(currency);
  COPY_CHAR(description);
  iea->accountType=oi->accountType;
#undef COPY_CHAR
  iea->accountId=oi->accountId;

  iea->accStatusList=AB_AccountStatus_List_dup(oi->accStatusList);
  iea->transactions=AB_Transaction_List_dup(oi->transactions);
  iea->standingOrders=AB_Transaction_List_dup(oi->standingOrders);
  iea->transfers=AB_Transaction_List_dup(oi->transfers);
  iea->datedTransfers=AB_Transaction_List_dup(oi->datedTransfers);
  iea->notedTransactions=AB_Transaction_List_dup(oi->notedTransactions);
  return iea;
}
Exemple #2
0
GWEN_DATE_TMPLCHAR *GWEN_DateTmplChar_new(char c) {
  GWEN_DATE_TMPLCHAR *e;

  GWEN_NEW_OBJECT(GWEN_DATE_TMPLCHAR, e);
  GWEN_LIST_INIT(GWEN_DATE_TMPLCHAR, e);
  e->character=c;
  switch(c) {
  case 'Y':
    e->maxCount=4;
    break;
  case 'M':
    e->maxCount=2;
    break;
  case 'D':
    e->maxCount=2;
    break;
  case 'W':
    e->maxCount=1;
    break;
  case 'w':
  default:
    e->maxCount=GWEN_DATE_TMPL_MAX_COUNT;
    break;
  }

  return e;
}
Exemple #3
0
GWEN_PARAM *GWEN_Param_new(void)
{
  GWEN_PARAM *p_struct;

  GWEN_NEW_OBJECT(GWEN_PARAM, p_struct)
  p_struct->_refCount=1;
  GWEN_LIST_INIT(GWEN_PARAM, p_struct)
  GWEN_TREE_INIT(GWEN_PARAM, p_struct)
  /* members */
  p_struct->name=NULL;
  p_struct->flags=0;
  p_struct->type=GWEN_Param_Type_Unknown;
  p_struct->dataType=GWEN_Param_DataType_Unknown;
  p_struct->shortDescription=NULL;
  p_struct->longDescription=NULL;
  p_struct->currentValue=NULL;
  p_struct->defaultValue=NULL;
  p_struct->choices=NULL;
  p_struct->internalIntValue=0;
  p_struct->internalFloatValue=0;
  p_struct->runtimeFlags=0;
  /* virtual functions */

  return p_struct;
}
Exemple #4
0
GWEN_GUI_CPROGRESS *GWEN_Gui_CProgress_new(GWEN_GUI *gui,
                                           uint32_t id,
                                           uint32_t progressFlags,
                                           const char *title,
                                           const char *text,
                                           uint64_t total)
{
  GWEN_GUI_CPROGRESS *cp;

  GWEN_NEW_OBJECT(GWEN_GUI_CPROGRESS, cp);
  GWEN_LIST_INIT(GWEN_GUI_CPROGRESS, cp);
  cp->gui=gui;
  cp->id=id;
  cp->startTime=time(0);
  cp->flags=progressFlags;
  if (title)
    cp->title=strdup(title);
  if (text)
    cp->text=strdup(text);
  cp->total=total;
  cp->logBuf=GWEN_Buffer_new(0, 256, 0, 1);

  if (!(cp->flags & GWEN_GUI_PROGRESS_DELAY)) {
    GWEN_Gui_StdPrintf(gui, stderr, "===== %s =====\n", title);
    cp->shown=1;
  }

  return cp;
}
Exemple #5
0
GWEN_TLV *GWEN_TLV_new(void) {
  GWEN_TLV *tlv;

  GWEN_NEW_OBJECT(GWEN_TLV, tlv);
  GWEN_LIST_INIT(GWEN_TLV, tlv);

  return tlv;
}
Exemple #6
0
AB_VALUE *AB_Value_new(void) {
  AB_VALUE *v;

  GWEN_NEW_OBJECT(AB_VALUE, v);
  GWEN_LIST_INIT(AB_VALUE, v);
  mpq_init(v->value);
  return v;
}
GWEN_TIME_TMPLCHAR *GWEN_TimeTmplChar_new(char c) {
  GWEN_TIME_TMPLCHAR *e;

  GWEN_NEW_OBJECT(GWEN_TIME_TMPLCHAR, e);
  GWEN_LIST_INIT(GWEN_TIME_TMPLCHAR, e);
  e->character=c;
  return e;
}
Exemple #8
0
TYPEMAKER2_INLINE *Typemaker2_Inline_new() {
  TYPEMAKER2_INLINE *th;

  GWEN_NEW_OBJECT(TYPEMAKER2_INLINE, th);
  th->refCount=1;
  GWEN_LIST_INIT(TYPEMAKER2_INLINE, th);

  return th;
}
Exemple #9
0
GWEN_URL *GWEN_Url_new(void) {
  GWEN_URL *st;

  GWEN_NEW_OBJECT(GWEN_URL, st)
  st->_usage=1;
  GWEN_LIST_INIT(GWEN_URL, st)
  st->vars=GWEN_DB_Group_new("vars");
  return st;
}
Exemple #10
0
AB_BANKINFO *AB_BankInfo_new(void) {
  AB_BANKINFO *st;

  GWEN_NEW_OBJECT(AB_BANKINFO, st)
  st->_usage=1;
  GWEN_LIST_INIT(AB_BANKINFO, st)
  st->services=AB_BankInfoService_List_new();
  return st;
}
Exemple #11
0
GWEN_MULTICACHE_TYPE *GWEN_MultiCache_Type_new(GWEN_MULTICACHE *mc) {
  GWEN_MULTICACHE_TYPE *ct;

  GWEN_NEW_OBJECT(GWEN_MULTICACHE_TYPE, ct);
  GWEN_LIST_INIT(GWEN_MULTICACHE_TYPE, ct);
  ct->_refCount=1;
  ct->multiCache=mc;
  ct->entryMap=GWEN_MultiCache_Entry_IdMap_new(GWEN_IdMapAlgo_Hex4);

  return ct;
}
Exemple #12
0
GWEN_MULTICACHE_ENTRY *GWEN_MultiCache_Entry_new(GWEN_MULTICACHE_TYPE *ct, uint32_t id, void *p, uint32_t i) {
  GWEN_MULTICACHE_ENTRY *e;

  GWEN_NEW_OBJECT(GWEN_MULTICACHE_ENTRY, e);
  GWEN_LIST_INIT(GWEN_MULTICACHE_ENTRY, e);

  e->cacheType=ct;
  e->id=id;
  e->dataPtr=p;
  e->dataSize=i;

  return e;
}
Exemple #13
0
AB_IMEXPORTER_ACCOUNTINFO *AB_ImExporterAccountInfo_new(void) {
  AB_IMEXPORTER_ACCOUNTINFO *iea;

  GWEN_NEW_OBJECT(AB_IMEXPORTER_ACCOUNTINFO, iea);
  GWEN_LIST_INIT(AB_IMEXPORTER_ACCOUNTINFO, iea);
  iea->transactions=AB_Transaction_List_new();
  iea->standingOrders=AB_Transaction_List_new();
  iea->accStatusList=AB_AccountStatus_List_new();
  iea->transfers=AB_Transaction_List_new();
  iea->datedTransfers=AB_Transaction_List_new();
  iea->notedTransactions=AB_Transaction_List_new();
  return iea;
}
Exemple #14
0
GWEN_XMLNODE *GWEN_XMLNode_new(GWEN_XMLNODE_TYPE t, const char *data) {
  GWEN_XMLNODE *n;

  GWEN_NEW_OBJECT(GWEN_XMLNODE, n);
  GWEN_LIST_INIT(GWEN_XMLNODE, n);
  n->type=t;
  n->children=GWEN_XMLNode_List_new();
  n->headers=GWEN_XMLNode_List_new();
  if (data)
    n->data=GWEN_Memory_strdup(data);
  n->nameSpaces=GWEN_XMLNode_NameSpace_List_new();
  return n;
}
Exemple #15
0
AB_IMEXPORTER *AB_ImExporter_new(AB_BANKING *ab, const char *name){
  AB_IMEXPORTER *ie;

  assert(ab);
  assert(name);
  GWEN_NEW_OBJECT(AB_IMEXPORTER, ie);
  GWEN_LIST_INIT(AB_IMEXPORTER, ie);
  GWEN_INHERIT_INIT(AB_IMEXPORTER, ie);

  ie->banking=ab;
  ie->name=strdup(name);

  return ie;
}
AB_TRANSACTION_LIMITS *AB_TransactionLimits_new(void) {
  AB_TRANSACTION_LIMITS *st;

  GWEN_NEW_OBJECT(AB_TRANSACTION_LIMITS, st)
  st->_usage=1;
  GWEN_LIST_INIT(AB_TRANSACTION_LIMITS, st)
  st->valuesTextKey=GWEN_StringList_new();
  st->textKeys=AB_TextKeyDescr_List_new();
  st->valuesCycleWeek=GWEN_StringList_new();
  st->valuesCycleMonth=GWEN_StringList_new();
  st->valuesExecutionDayWeek=GWEN_StringList_new();
  st->valuesExecutionDayMonth=GWEN_StringList_new();
  return st;
}
Exemple #17
0
GWEN_XMLNODE_NAMESPACE *GWEN_XMLNode_NameSpace_new(const char *name,
    const char *url) {
  GWEN_XMLNODE_NAMESPACE *ns;

  GWEN_NEW_OBJECT(GWEN_XMLNODE_NAMESPACE, ns);
  GWEN_LIST_INIT(GWEN_XMLNODE_NAMESPACE, ns);

  if (name)
    ns->name=GWEN_Memory_strdup(name);
  if (url)
    ns->url=GWEN_Memory_strdup(url);

  return ns;
}
Exemple #18
0
AB_JOBQUEUE *AB_JobQueue_new(void) {
  AB_JOBQUEUE *p_struct;

  GWEN_NEW_OBJECT(AB_JOBQUEUE, p_struct)
  p_struct->_refCount=1;
  GWEN_INHERIT_INIT(AB_JOBQUEUE, p_struct)
  GWEN_LIST_INIT(AB_JOBQUEUE, p_struct)
  /* members */
  p_struct->jobList=AB_Job_List2_new();
  p_struct->jobType=AB_Job_TypeUnknown;
  /* virtual functions */

  return p_struct;
}
Exemple #19
0
TEST *Test_new()
{
  TEST *p_struct;

  GWEN_NEW_OBJECT(TEST, p_struct)
  GWEN_LIST_INIT(TEST, p_struct)
  /* members */
  p_struct->id=NULL;
  p_struct->prefix=NULL;
  p_struct->type=NULL;



  return p_struct;
}
Exemple #20
0
AH_RESULT *AH_Result_new(int code,
                         const char *text,
                         const char *ref,
                         const char *param,
                         int isMsgResult){
  AH_RESULT *r;

  GWEN_NEW_OBJECT(AH_RESULT, r);
  GWEN_LIST_INIT(AH_RESULT, r);
  r->code=code;
  if (text)
    r->text=strdup(text);
  if (ref)
    r->ref=strdup(ref);
  if (param)
    r->param=strdup(param);
  r->isMsgResult=isMsgResult;

  return r;
}
Exemple #21
0
GWEN_INHERITDATA *GWEN_InheritData_new(const char *t,
                                       uint32_t id,
                                       void *data,
                                       void *baseData,
                                       GWEN_INHERIT_FREEDATAFN freeDataFn) {
  GWEN_INHERITDATA *d;

  assert(t);
  GWEN_NEW_OBJECT(GWEN_INHERITDATA, d);
  GWEN_LIST_INIT(GWEN_INHERITDATA, d);
  d->typeName=strdup(t);
  d->id=id;
  d->data=data;
  d->baseData=baseData;
  d->freeDataFn=freeDataFn;

  DBG_VERBOUS(GWEN_LOGDOMAIN,
              "Created inheritance for type \"%s\" (%08x)", t, id);
  return d;
}
Exemple #22
0
GWEN_FSLOCK *GWEN_FSLock_new(const char *fname, GWEN_FSLOCK_TYPE t) {
  GWEN_FSLOCK *fl;
  GWEN_BUFFER *nbuf;
  const char *s;

  assert(fname);
  GWEN_NEW_OBJECT(GWEN_FSLOCK, fl);
  GWEN_LIST_INIT(GWEN_FSLOCK, fl);
  fl->usage=1;
  fl->entryName=strdup(fname);

  switch(t) {
  case GWEN_FSLock_TypeFile:
    s=".lck";
    break;
  case GWEN_FSLock_TypeDir:
    s="/.dir.lck";
    break;
  default:
    DBG_ERROR(GWEN_LOGDOMAIN, "Unknown log type %d", t);
    abort();
  } /* switch */

  nbuf=GWEN_Buffer_new(0, 256, 0, 1);
  GWEN_Buffer_AppendString(nbuf, fname);
  GWEN_Buffer_AppendString(nbuf, s);
  fl->baseLockFilename=strdup(GWEN_Buffer_GetStart(nbuf));

  if (GWEN_FSLock__UnifyLockFileName(nbuf)) {
    DBG_ERROR(GWEN_LOGDOMAIN, "Could not create unique lockfile name");
    GWEN_Buffer_free(nbuf);
    abort();
  }
  fl->uniqueLockFilename=strdup(GWEN_Buffer_GetStart(nbuf));
  GWEN_Buffer_free(nbuf);

  return fl;
}
Exemple #23
0
AB_PROVIDER *AB_Provider_new(AB_BANKING *ab, const char *name){
  AB_PROVIDER *pro;
  GWEN_BUFFER *nbuf;

  assert(ab);
  assert(name);

  nbuf=GWEN_Buffer_new(0, 256, 0, 1);
  if (GWEN_Text_EscapeToBufferTolerant(name, nbuf)) {
    DBG_ERROR(AQBANKING_LOGDOMAIN,
              "Bad backend name, aborting.");
    GWEN_Buffer_free(nbuf);
    abort();
  }
  else {
    char *s;

    s=GWEN_Buffer_GetStart(nbuf);
    while(*s) {
      *s=tolower(*s);
      s++;
    }
  }

  GWEN_NEW_OBJECT(AB_PROVIDER, pro);
  pro->usage=1;
  GWEN_INHERIT_INIT(AB_PROVIDER, pro);
  GWEN_LIST_INIT(AB_PROVIDER, pro);

  pro->banking=ab;
  pro->name=strdup(name);
  pro->escName=strdup(GWEN_Buffer_GetStart(nbuf));
  GWEN_Buffer_free(nbuf);

  return pro;
}