Issue in subscribed-unsubscribed presence on accept-decline request using asmack android

In my chat Application I send and receive request successfully,but on request accept or decline presence not subscribed or unsubscribed and RosterEntry type set from/to instead of both.

How can I set RosterEntry type “both” in sender-receiver rosterlist? Here is my code for accept and decline request,

//Accept Request code

Roster roster = Utils.manager.getconnection().getRoster();

Collection entries = roster.getEntries();

for (RosterEntry entry : entries) {

//example: get presence, type, mode, status

if(entry.getUser().equals(String.valueOf(from_user)) && entry.getType().equals(ItemType.from))

{

Presence accept = new Presence(Presence.Type.subscribed);

accept.setFrom(loginuser);

accept.setTo(entry.getUser() + “/” + entry.getUser().split("@")[0]);

accept.setPriority(24);

accept.setMode(Presence.Mode.available);

Utils.manager.getconnection().sendPacket(accept);

break;

}

System.out.println(“roster entry after accept request” + " " + entry.getUser() + " " + entry.getType());

}

//Decline Request code

Roster roster = Utils.manager.getconnection().getRoster();

Collection entries = roster.getEntries();

Log.d(“TRACE”, “entries.size()=” + entries.size());

for (RosterEntry e : entries) {

if(e.getUser().equals(String.valueOf(from_user)) && e.getType().equals(ItemType.from))

{

try {

roster.removeEntry(e);

//Presence subscribep = new Presence(Presence.Type.unsubscribed);

//subscribep.setTo(e.getUser());

//subscribep.setFrom(loginuser);

//Utils.manager.getconnection().sendPacket(subscribep);

} catch (XMPPException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

break;

}

}