[sip-comm-dev] Problems with persistent data


#1

Hi !

In order to save some interesting data about contacts in my RSS protocol for SC, I try to store and read these datas into the file "contactlists.xml".
I have two methods, like in the ICQ protocol, implemented for this:

    String getPersistentData()
    void SetPersistentData(String).

But I'm unable to do something with them. In a same way, I try to save nicknames for these contacts in the "display-name" field into the same file.
Somebody can explain me how and when SC proceeds with these read/write operations on the .xml file mentioned ?

Thanks.

Jean-Albert Vescovo.

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#2

Hi,

the only thing you must do is fill the two methods getPersistentData() and setPersistentData the metacontactlist is responsible for writing the values. You can have a look at icq impl - ContactIcqImpl. This field is used for storing nicknames. Also check on the console for any exception. Mind that you must store valid xml data cause this field is Not a CDATA field.

damencho

Jean-Albert Vescovo wrote:

···

Hi !

In order to save some interesting data about contacts in my RSS protocol for SC, I try to store and read these datas into the file "contactlists.xml".
I have two methods, like in the ICQ protocol, implemented for this:

   String getPersistentData()
   void SetPersistentData(String).

But I'm unable to do something with them. In a same way, I try to save nicknames for these contacts in the "display-name" field into the same file.
Somebody can explain me how and when SC proceeds with these read/write operations on the .xml file mentioned ?

Thanks.

Jean-Albert Vescovo.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#3

Hello,

I've just tested again to write persistent-data with the method getPersistentData(), but I can read in the Netbeans console the messages:

15:49:18.508 PLUS FIN: impl.contactlist.MclStorageManager.storeContactList0().347 storing contact list. because is started ==false
15:49:18.508 PLUS FIN: impl.contactlist.MclStorageManager.storeContactList0().349 storing contact list. because is modified ==false

Does it means that I have to fire someone that I have modified things on a contact so that the metacontactlist makes the writing operation ?

Thanks.

Jean-Albert.

···

Hi,

the only thing you must do is fill the two methods getPersistentData() and setPersistentData the metacontactlist is responsible for writing the values. You can have a look at icq impl - ContactIcqImpl. This field is used for storing nicknames. Also check on the console for any exception. Mind that you must store valid xml data cause this field is Not a CDATA field.

damencho

Jean-Albert Vescovo wrote:

Hi !

In order to save some interesting data about contacts in my RSS protocol for SC, I try to store and read these datas into the file "contactlists.xml".
I have two methods, like in the ICQ protocol, implemented for this:

   String getPersistentData()
   void SetPersistentData(String).

But I'm unable to do something with them. In a same way, I try to save nicknames for these contacts in the "display-name" field into the same file.
Somebody can explain me how and when SC proceeds with these read/write operations on the .xml file mentioned ?

Thanks.

Jean-Albert Vescovo.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#4

Jean-Albert Vescovo wrote:

Hello,

I've just tested again to write persistent-data with the method getPersistentData(), but I can read in the Netbeans console the messages:

15:49:18.508 PLUS FIN: impl.contactlist.MclStorageManager.storeContactList0().347 storing contact list. because is started ==false
15:49:18.508 PLUS FIN: impl.contactlist.MclStorageManager.storeContactList0().349 storing contact list. because is modified ==false

Does it means that I have to fire someone that I have modified things on a contact so that the metacontactlist makes the writing operation ?

Just setting the persistent data does not affect the xml. In the icq implementation when a nickname is set a ContactPropertyChangeEvent is fired and then I think its stored in the xml.
Take a look at line 1389 in net.java.sip.communicator.impl.protocol.icq.ServerStoredContactListIcqImpl. Try this approach with the nickname you want to store.

damencho

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net