I managed to get smssrv working with oracle.
Here goes the diff of smslib-v3.3.3 Database.java
I also have created an "oracle" value for the db1.type.
The good news is that this also works for PostgreSQL.
my db interface definition:
interface.0=db1, Database
db1.url=jdbc:postgresql:sms
db1.driver=org.postgresql.Driver
db1.username=lalo
db1.password=xxxxxx
db1.type=oracle
db1.tables.sms_in=smsserver_in
db1.tables.sms_out=smsserver_out
db1.tables.calls=smssvr_calls
db1.batch_size=50
db1.retries=2
db1.update_outbound_on_statusreport=no
Database.java.diff
---------------------------------------------------------------------------------------
98c98,99
< rs = cmd.executeQuery("select * from " + getProperty
("tables.calls", "smsserver_calls") + " where id = -1");
---
> if (getProperty("type").equalsIgnoreCase("oracle")) rs =
> cmd.executeQuery("select t.* from " + getProperty("tables.calls",
> "smsserver_calls") + " t where id = -1");
> else rs = cmd.executeQuery("select * from " +
> getProperty("tables.calls", "smsserver_calls") + " where id = -1");
118c119,120
< rs = cmd.executeQuery("select * from " + getProperty
("tables.sms_in", "smsserver_in") + " where id = -1");
---
> if (getProperty("type").equalsIgnoreCase("oracle")) rs =
> cmd.executeQuery("select t.* from " + getProperty("tables.sms_in",
> "smsserver_in") + " t where id = -1");
> else rs = cmd.executeQuery("select * from " +
> getProperty("tables.sms_in", "smsserver_in") + " where id = -1");
221c223,225
< rs = cmd.executeQuery("select * from " +
getProperty("tables.sms_out", "smsserver_out") + " where status = 'U'
order by priority desc");
---
> if (getProperty("type").equalsIgnoreCase("mysql")) rs =
> cmd.executeQuery("select * from " + getProperty("tables.sms_out",
> "smsserver_out") + " where status = 'U' order by priority, id");
> else if
> (getProperty("type").equalsIgnoreCase("oracle")) rs =
> cmd.executeQuery("select t.* from " + getProperty("tables.sms_out",
> "smsserver_out") + " t where status = 'U' order by priority desc, id");
> else rs = cmd.executeQuery("select * from " +
> getProperty("tables.sms_out", "smsserver_out") + " where status = 'U' order
> by priority desc, id");
262,263c266,267
< if ((rs.getString
("originator") != null) && (rs.getString("originator").length() > 0))
msg.setFrom(rs.getString("originator").trim());
< msg.setGatewayId(rs.getString
("gateway_id").trim());
---
> if (rs.getString("originator") != null)
> msg.setFrom(rs.getString("originator"));
>
> msg.setGatewayId(rs.getString("gateway_id"));
287c291,292
< rs = cmd.executeQuery("select * from " + getProperty
("tables.sms_out", "smsserver_out") + " where id = " + getMessageCache
().get(msg.getMessageId()));
---
> if (getProperty("type").equalsIgnoreCase("oracle")) rs =
> cmd.executeQuery("select t.* from " + getProperty("tables.sms_out",
> "smsserver_out") + " t where id = " +
> getMessageCache().get(msg.getMessageId()));
> else rs = cmd.executeQuery("select * from " +
> getProperty("tables.sms_out", "smsserver_out") + " where id = " +
> getMessageCache().get(msg.getMessageId()));
---------------------------------------------------------------------------
This is the first time I submit a patch, so please tell me if it needs
to be done diferent.
Lalo
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"SMSLib User Group" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/SMSLib?hl=en
-~----------~----~----~----~------~----~------~--~---