Friday, December 16, 2011
Monday, December 12, 2011
Thursday, December 1, 2011
Wednesday, November 30, 2011
Friday, November 25, 2011
Hasil tally nya ga sesuai dengan limit persentase/perbandingan karena sebelum mencapai minAmount ada satu jenis gem yang udah melebihi limit persentase/perbandingan nya.
Kalau minAmount diset 0, sesuai dengan limit persen nya.
===
GemBlitz GB-31 LimitPercentGemProducer GB-62
use normalizedPercentage to calculate limitPerTotal
=> Incompatible types
===
Board position for RecursiveMoveEvaluator test
0 3 0 1 0 1
0 1 2 3 3 2
2 2 2 1 2 2
Move type : 1 (vertical), index : 1
Kalau minAmount diset 0, sesuai dengan limit persen nya.
===
GemBlitz GB-31 LimitPercentGemProducer GB-62
use normalizedPercentage to calculate limitPerTotal
=> Incompatible types
===
Board position for RecursiveMoveEvaluator test
0 3 0 1 0 1
0 1 2 3 3 2
2 2 2 1 2 2
Move type : 1 (vertical), index : 1
Thursday, November 24, 2011
Monday, November 7, 2011
Wednesday, November 2, 2011
1 86801 Paket SMS Anda bisa dipakai s/d 02-NOV-11 jam 24. Pulsa otomatis akan terpotong Rp.18000. Dptkan harga hemat 10% utk perpanjangan paket 2011-11-02 10:05:14.58 N
2 86801 Pulsa telah terpakai Rp 18rb (termasuk diskon 10%) utk perpanjangan Paket SMS UNLIMITED selama 30 hari, berlaku s/d 02-12-11 jam 12 mlm 2011-11-02 10:05:14.852 R
===
Test Plan
1. 2 batch yg startTime nya udah lewat -> NG -> In RestartSender.send() use synchronized -> OK
2. 2 batch yg startTime nya future
3. 2 batch yg startTime nya 1 future 1 udah lewat
2 86801 Pulsa telah terpakai Rp 18rb (termasuk diskon 10%) utk perpanjangan Paket SMS UNLIMITED selama 30 hari, berlaku s/d 02-12-11 jam 12 mlm 2011-11-02 10:05:14.852 R
===
Test Plan
1. 2 batch yg startTime nya udah lewat -> NG -> In RestartSender.send() use synchronized -> OK
2. 2 batch yg startTime nya future
3. 2 batch yg startTime nya 1 future 1 udah lewat
Friday, October 28, 2011
Wednesday, October 26, 2011
Wednesday, October 12, 2011
Jewel Game
- When printing, give background color. Different color for each gem type.
- Test compare boolean and int which one is faster.
- When generating allow adjacent board, so that more efficient, if the previous adjacent is already different, record it to boolean, and use it for the next iteration. Because boolean is faster than compare.
- When printing, give background color. Different color for each gem type.
- Test compare boolean and int which one is faster.
- When generating allow adjacent board, so that more efficient, if the previous adjacent is already different, record it to boolean, and use it for the next iteration. Because boolean is faster than compare.
Thursday, October 6, 2011
Monday, September 26, 2011
Development of SMS Sending Application for Marketing.
The application has the following functions :
- upload phone numbers from ms-excel document
- send an sms to some receivers.
- display list of sent sms (outbox)
- display list of received sms (inbox)
- select one sms from the list then display the detail of selected sms
- reply an sms and etc.
This project using Java Programming language and the following libraries/framework :
- Spring (DI/IOC, JdbcTemplate),
- H2 Database
- Swing,
- SmsLib,
- MigLayout,
- SLF4J, logback,
- JGoodies Binding,
Development of messenger system.
This system is divided into 2 parts, Server part and Client part.
In the client part, user can login by entering username then the list of logged in user will appear in the server side. In the server side, message can be sent to a selected user or broadcasted to all user.
This project using Spring framework, Swing, JMS, ActiveMQ, SLF4J, Logback, MigLayout.
===
Learn about Joomla CMS, Zend Cart, Affiliation programs from Amazon.com and etc.
The application has the following functions :
- upload phone numbers from ms-excel document
- send an sms to some receivers.
- display list of sent sms (outbox)
- display list of received sms (inbox)
- select one sms from the list then display the detail of selected sms
- reply an sms and etc.
This project using Java Programming language and the following libraries/framework :
- Spring (DI/IOC, JdbcTemplate),
- H2 Database
- Swing,
- SmsLib,
- MigLayout,
- SLF4J, logback,
- JGoodies Binding,
Development of messenger system.
This system is divided into 2 parts, Server part and Client part.
In the client part, user can login by entering username then the list of logged in user will appear in the server side. In the server side, message can be sent to a selected user or broadcasted to all user.
This project using Spring framework, Swing, JMS, ActiveMQ, SLF4J, Logback, MigLayout.
===
Learn about Joomla CMS, Zend Cart, Affiliation programs from Amazon.com and etc.
Wednesday, September 21, 2011
Thursday, September 15, 2011
Wednesday, September 14, 2011
Friday, September 9, 2011
Thursday, September 8, 2011
If it turns out that developers must write these tests, then take
care that the developer who writes the test is not the same as the developer who
implements the tested feature.
--
But the real reason these tests aren’t redundant is that their primary function is
not testing. The fact that they are tests is incidental. Unit tests and acceptance
tests are documents first, and tests second. Their primary purpose is to formally
document the design, structure, and behavior of the system. The fact that they
automatically verify the design, structure, and behavior that they specify is
wildly useful, but the specification is their true purpose.
--
Design experts have been telling us
for decades to separate our GUIs from our business rules.
==
Most software is created by teams. Teams are most effective when the team
members collaborate professionally. It is unprofessional to be a loner or a
recluse on a team.
--
We didn’t become programmers because we like working with people. As a rule
we find interpersonal relationships messy and unpredictable. We like the clean
and predictable behavior of the machines that we program. We are happiest
when we are alone in a room for hours deeply focussing on some really
interesting problem.
--
One of the worst symptoms of a dysfunctional team is when each programmer
builds a wall around his code and refuses to let other programmers touch it.
I have been to places where the programmers wouldn’t even let other
programmers see their code. This is a recipe for disaster.
--
Professional developers do not prevent others from working in the code. They
do not build walls of ownership around code. Rather, they work with each other
on as much of the system as they can. They learn from each other by working
with each other on other parts of the system.
---
199
130
care that the developer who writes the test is not the same as the developer who
implements the tested feature.
--
But the real reason these tests aren’t redundant is that their primary function is
not testing. The fact that they are tests is incidental. Unit tests and acceptance
tests are documents first, and tests second. Their primary purpose is to formally
document the design, structure, and behavior of the system. The fact that they
automatically verify the design, structure, and behavior that they specify is
wildly useful, but the specification is their true purpose.
--
Design experts have been telling us
for decades to separate our GUIs from our business rules.
==
Most software is created by teams. Teams are most effective when the team
members collaborate professionally. It is unprofessional to be a loner or a
recluse on a team.
--
We didn’t become programmers because we like working with people. As a rule
we find interpersonal relationships messy and unpredictable. We like the clean
and predictable behavior of the machines that we program. We are happiest
when we are alone in a room for hours deeply focussing on some really
interesting problem.
--
One of the worst symptoms of a dysfunctional team is when each programmer
builds a wall around his code and refuses to let other programmers touch it.
I have been to places where the programmers wouldn’t even let other
programmers see their code. This is a recipe for disaster.
--
Professional developers do not prevent others from working in the code. They
do not build walls of ownership around code. Rather, they work with each other
on as much of the system as they can. They learn from each other by working
with each other on other parts of the system.
---
199
130
Wednesday, September 7, 2011
The professional developer is calm and decisive under pressure. As the pressure
grows he adheres to his training and disciplines, knowing that they are the best
way to meet the deadlines and commitments that are pressing on him.
--
The difference is important. Professionals will always help the business find a
way to achieve its goals. But professionals do not necessarily accept commitments
made for them by the business. In the end, if we can find no way to meet
the promises made by the business, then the people who made the promises
must accept the responsibility.
This is easy to say. But when your business is failing, and your paycheck is
delayed because of missed commitments, it’s hard not to feel the pressure. But if
you have behaved professionally, at least you can hold your head high as you
hunt for a new job.
157
grows he adheres to his training and disciplines, knowing that they are the best
way to meet the deadlines and commitments that are pressing on him.
--
The difference is important. Professionals will always help the business find a
way to achieve its goals. But professionals do not necessarily accept commitments
made for them by the business. In the end, if we can find no way to meet
the promises made by the business, then the people who made the promises
must accept the responsibility.
This is easy to say. But when your business is failing, and your paycheck is
delayed because of missed commitments, it’s hard not to feel the pressure. But if
you have behaved professionally, at least you can hold your head high as you
hunt for a new job.
157
Tuesday, September 6, 2011
Thursday, August 11, 2011
Number: 528
Content:
Nomor XL Anda memasuki masa tenggang pada 14-08-2011. Segera isi ulang utk tetap menikmati tarif murah & layanan terbaik XL Prabayar. Abaikan jika sdh isi ulang
Time: 11/08/2011 14:10:27
---
select g.datetime, 'me', g.content
from smsout o, smsoutgroup g
where o.smsoutgroupid = g.id
union
select datetime, sender, content
from smsin
order by datetime
951
Content:
Nomor XL Anda memasuki masa tenggang pada 14-08-2011. Segera isi ulang utk tetap menikmati tarif murah & layanan terbaik XL Prabayar. Abaikan jika sdh isi ulang
Time: 11/08/2011 14:10:27
---
select g.datetime, 'me', g.content
from smsout o, smsoutgroup g
where o.smsoutgroupid = g.id
union
select datetime, sender, content
from smsin
order by datetime
951
Tuesday, August 9, 2011
SmsManager feedback :
1. Inbox/reply (the UI like instant messenger)
2. Import process still too slow -> make it faster
3. Sending, add option to skip duplicate number or not
4. Support multipart message, when more than 160 show dialog, show how many parts
select distinct max(datetime) dt, sender
from smsin a
group by sender
inner join
select content
order by dt desc
959
1912
1. Inbox/reply (the UI like instant messenger)
2. Import process still too slow -> make it faster
3. Sending, add option to skip duplicate number or not
4. Support multipart message, when more than 160 show dialog, show how many parts
select distinct max(datetime) dt, sender
from smsin a
group by sender
inner join
select content
order by dt desc
959
1912
Monday, August 8, 2011
One of SmsManager issue is the application crashed when starting service of more than one modem.
In this forum post http://smslib.org/forum/topic/number-of-gsm-modems-limit the creator of smslib said,
Make sure that the multiple-modem connectivity is ok. Many of the reported problems were attributed to usb hubs and stuff like that. From my experience, it's better to invest in a good multi-serial "intelligent" expansion board.
957
In this forum post http://smslib.org/forum/topic/number-of-gsm-modems-limit the creator of smslib said,
Make sure that the multiple-modem connectivity is ok. Many of the reported problems were attributed to usb hubs and stuff like that. From my experience, it's better to invest in a good multi-serial "intelligent" expansion board.
957
Thursday, August 4, 2011
todo :
- export -> bug, if user click cancel button, succes dialog showed
- export -> ask overwrite confirmation if the file is already exists
- import -> show/report skipped/already exist numbers
done :
- import -> set wait cursor while importing -> done
- group -> set phone numbers textarea taller
- export -> save previous path
944
- export -> bug, if user click cancel button, succes dialog showed
- export -> ask overwrite confirmation if the file is already exists
- import -> show/report skipped/already exist numbers
done :
- import -> set wait cursor while importing -> done
- group -> set phone numbers textarea taller
- export -> save previous path
944
Wednesday, August 3, 2011
Friday, July 22, 2011
Thursday, July 21, 2011
Wednesday, July 20, 2011
940
todo:
in outbox
add some checkboxes (NEW, INPROGRESS, SENT, UNSENT, DELIVERED)
change resend unsent button to resend button to resend selected status
http://wiki.jetbrains.net/intellij/Developing_applications_for_Android_in_IntelliJ_IDEA
Swing, Second Edition ( 2003 - 193011088X ) page 24 :
the following code shows a typical way to build your own separate
thread to do some time-intensive work while using invokeLater() or invokeAnd-
Wait() in order to safely update the state of any components in the event-dispatching thread:
1910
todo:
in outbox
add some checkboxes (NEW, INPROGRESS, SENT, UNSENT, DELIVERED)
change resend unsent button to resend button to resend selected status
http://wiki.jetbrains.net/intellij/Developing_applications_for_Android_in_IntelliJ_IDEA
Swing, Second Edition ( 2003 - 193011088X ) page 24 :
the following code shows a typical way to build your own separate
thread to do some time-intensive work while using invokeLater() or invokeAnd-
Wait() in order to safely update the state of any components in the event-dispatching thread:
Thread workHard = new Thread() {
public void run() {
doToughWork(); // do some time-intensive work
SwingUtilities.invokeLater( new Runnable () {
public void run() {
updateComponents(); // do some work in event thread
}
});
}
};
workHarder.start();
1910
Tuesday, July 12, 2011
Tuesday, July 5, 2011
Thursday, June 30, 2011
Monday, June 27, 2011
junit-3.8.1.jar is used by
- slf4j-api-1.6.1.jar; and
- commons-pool-1.5.6.jar
- jcl-over-slf4j-1.6.1.jar
junit-4.4.jar is used by
- jgoodies-binding-2.0.6.jar
- miglayout-3.7.4.jar
slf4j-jdk14-1.6.1.jar is used by
jcl-over-slf4j-1.6.1.jar
log4j-over-slf4j-1.6.1.jar
todo :
1.
When sending sms, log it to database.
User can view the sent sms log.
2.
Modem setting such as :
- smsc number and etc.
948
- slf4j-api-1.6.1.jar; and
- commons-pool-1.5.6.jar
- jcl-over-slf4j-1.6.1.jar
junit-4.4.jar is used by
- jgoodies-binding-2.0.6.jar
- miglayout-3.7.4.jar
slf4j-jdk14-1.6.1.jar is used by
jcl-over-slf4j-1.6.1.jar
log4j-over-slf4j-1.6.1.jar
todo :
1.
When sending sms, log it to database.
User can view the sent sms log.
2.
Modem setting such as :
- smsc number and etc.
948
Friday, June 24, 2011
Thursday, June 23, 2011
Wednesday, June 22, 2011
Intellij IDEA Live Templates
iter Iteration according to Java SDK 1.5 style
inst Check object type with instanceof and downcast it
itco Iterate elements of java.util.Collection
itit Iterate elements of java.util.Iterator
itli Iterate elements of java.util.List
itve Iterate elements of java.util.List
iten Iterate elements of java.util.Enumeration
itar Iterate elements of array
ritar Iterate elements of array in reverse order
lst Fetch the last element of an array
toar Store elements of java.util.Collection into an array
mn Set lesser value to a variable
mx Set greater value to a variable
psf public static final
psvm main() method declaration
serr Print a string to System.err
sout Print a string to System.out
soutm Print current class and method names to System.out
soutv Print a value to System.out
thr throw new
iter Iteration according to Java SDK 1.5 style
inst Check object type with instanceof and downcast it
itco Iterate elements of java.util.Collection
itit Iterate elements of java.util.Iterator
itli Iterate elements of java.util.List
itve Iterate elements of java.util.List
iten Iterate elements of java.util.Enumeration
itar Iterate elements of array
ritar Iterate elements of array in reverse order
lst Fetch the last element of an array
toar Store elements of java.util.Collection into an array
mn Set lesser value to a variable
mx Set greater value to a variable
psf public static final
psvm main() method declaration
serr Print a string to System.err
sout Print a string to System.out
soutm Print current class and method names to System.out
soutv Print a value to System.out
thr throw new
Tuesday, June 21, 2011
Monday, June 20, 2011
learn about guava collection
http://scaramoche.blogspot.com/2010/05/googles-guava-library-tutorial-part-2.html
learn about iBatis
http://scaramoche.blogspot.com/2010/05/googles-guava-library-tutorial-part-2.html
learn about iBatis
900
Friday, June 17, 2011
http://www.justingordon.org/2008/10/in-memory-dbs-for-tdd-h2-versus-hsqldb.html
It is relatively simple to switch between them. Mostly, it's a matter of switching the JDBC connection string.
http://www.encorewiki.org/display/encore/Open+Source+Databases+Comparison
http://stackoverflow.com/questions/2746201/which-is-better-h2-or-hsqldb
HSQLDB highly outperforms H2 in DDL operations as well as when starting/shutting down the instance, even for a small database.
http://3rdstage.blogspot.com/2009/03/comparion-of-hsqldb-h2-sqlite.html
http://database-management-systems.findthebest.com/compare/6-15-16/Apache-Derby-vs-HSQLDB-vs-H2
http://www.h2database.com/html/faq.html
running out of memory should be avoided. In older versions, OutOfMemory errors while using the database could corrupt a databases.
try ozeki in berghie's pc
tomorow:
create Common module
move common package to Common module
907
It is relatively simple to switch between them. Mostly, it's a matter of switching the JDBC connection string.
http://www.encorewiki.org/display/encore/Open+Source+Databases+Comparison
http://stackoverflow.com/questions/2746201/which-is-better-h2-or-hsqldb
HSQLDB highly outperforms H2 in DDL operations as well as when starting/shutting down the instance, even for a small database.
http://3rdstage.blogspot.com/2009/03/comparion-of-hsqldb-h2-sqlite.html
http://database-management-systems.findthebest.com/compare/6-15-16/Apache-Derby-vs-HSQLDB-vs-H2
http://www.h2database.com/html/faq.html
running out of memory should be avoided. In older versions, OutOfMemory errors while using the database could corrupt a databases.
try ozeki in berghie's pc
tomorow:
create Common module
move common package to Common module
907
Wednesday, June 15, 2011
ozeki vs now
ozeki have more API support to java. both can send sms from java through http, but there is no java api in nowsms. ozeki has java api to send and receive sms through tcp.
http://www.ozekisms.com/index.php?owpn=584&infoe=java-sms-sdk-sms-over-tcp-ip
http://www.nowsms.com/discus/messages/1/24601.html
learn about jetty
http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
The trial version of NowSMS has a 30 message per minute limitation.
http://www.nowsms.com/discus/messages/1/16578.html
Try enabling "SMS Access" = "GPRS" in the properties for the GSM modem in the "SMSC" list.
P.S. - Keep in mind that you can also add additional modems to improve throughput.
SMSLib
1 sms per 3 seconds
19 sms / minute
947
ozeki have more API support to java. both can send sms from java through http, but there is no java api in nowsms. ozeki has java api to send and receive sms through tcp.
http://www.ozekisms.com/index.php?owpn=584&infoe=java-sms-sdk-sms-over-tcp-ip
http://www.nowsms.com/discus/messages/1/24601.html
learn about jetty
http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
The trial version of NowSMS has a 30 message per minute limitation.
http://www.nowsms.com/discus/messages/1/16578.html
Try enabling "SMS Access" = "GPRS" in the properties for the GSM modem in the "SMSC" list.
P.S. - Keep in mind that you can also add additional modems to improve throughput.
SMSLib
1 sms per 3 seconds
19 sms / minute
947
Tuesday, June 14, 2011
http://www.mkyong.com/spring/spring-jdbctemplate-jdbcdaosupport-examples/
tomorow:
learn and try NowSMS
tomorow:
learn and try NowSMS
Monday, June 13, 2011
Spring JDBC Pagination Tutorial
http://www.codefutures.com/tutorials/spring-pagination/
http://www.zabada.com/tutorials/simplifying-jdbc-with-the-spring-jdbc-abstraction-framework
tomorow:
Load SmsList data from database using Spring JDBC
924
1421 - 1524
http://www.codefutures.com/tutorials/spring-pagination/
http://www.zabada.com/tutorials/simplifying-jdbc-with-the-spring-jdbc-abstraction-framework
tomorow:
Load SmsList data from database using Spring JDBC
924
1421 - 1524
Thursday, June 9, 2011
Tuesday, June 7, 2011
About new sms notification :
if there are more than one sms then show the list of new smses
Tarif SMS
http://anasyusuf.com/tarif-sms-termurah-ke-semua-operator-2011-yang-mana
Spring in Action ( 2007 - 1933988134 )
read about hibernate from 5.4 (183) until (194)
684
158
Spring Recipes ~ A Problem-Solution Approach ( 2010 - 1430224991 )
639
647
654
656
-
541
---
836
if there are more than one sms then show the list of new smses
Tarif SMS
http://anasyusuf.com/tarif-sms-termurah-ke-semua-operator-2011-yang-mana
Spring in Action ( 2007 - 1933988134 )
read about hibernate from 5.4 (183) until (194)
684
158
Spring Recipes ~ A Problem-Solution Approach ( 2010 - 1430224991 )
639
647
654
656
-
541
---
836
Tuesday, May 31, 2011
Development of messenger system.
The messenger system is divided into 2 parts, Server part and Client part.
In the client part, user can login by entering username then the list of logged in user will appear in the server side. In the server side, message can be sent to a selected user or broadcasted to all user. This system utilize Spring framework, Swing, JMS, ActiveMQ, SLF4J, Logback, MigLayout.
The messenger system is divided into 2 parts, Server part and Client part.
In the client part, user can login by entering username then the list of logged in user will appear in the server side. In the server side, message can be sent to a selected user or broadcasted to all user. This system utilize Spring framework, Swing, JMS, ActiveMQ, SLF4J, Logback, MigLayout.
Development of SMS system.
There are 2 parts in this system, Marketing and Customer Service parts.
Marketing part can do the following functions :
- upload phone numbers from ms-excel document
- send an sms to some receivers.
- display list of received sms (inbox)
- select one sms from the list then display the detail of selected sms
- reply an sms.
This project utilize Spring framework, Swing, SLF4J, logback, JGoodies Binding, Ozeki SMS Gateway, MySQL, MigLayout.
http://www.ibm.com/developerworks/java/tutorials/j-springswing/
http://sciencefair.math.iit.edu/about/tortoisesvn_tutorial.html
Marketing part can do the following functions :
- upload phone numbers from ms-excel document
- send an sms to some receivers.
- display list of sent sms (outbox)
Costumer Service part can do the following functions :- display list of received sms (inbox)
- select one sms from the list then display the detail of selected sms
- reply an sms.
This project utilize Spring framework, Swing, SLF4J, logback, JGoodies Binding, Ozeki SMS Gateway, MySQL, MigLayout.
http://www.ibm.com/developerworks/java/tutorials/j-springswing/
http://sciencefair.math.iit.edu/about/tortoisesvn_tutorial.html
Monday, May 30, 2011
Friday, May 27, 2011
Add 'category' field.
---
MigLayout
http://www.devx.com/Java/Article/38017/0/page/3
Griffon
http://java.dzone.com/news/how-griffon-helps-miglayout
Griffon And org.slf4j (Logback)
http://it-bubbles.wikidot.com/blog:3
Ozeki SMS
http://www.ozekisms.com/index.php?owpn=584
http://www.ozekisms.com/index.php?owpn=583
http://www.ozekisms.com/index.php?owpn=372&info=http_sms_api
http://www.ozekisms.com/index.php?owpn=355
http://www.ozekisms.com/index.php?owpn=203
1136-1246=10
---
MigLayout
http://www.devx.com/Java/Article/38017/0/page/3
Griffon
http://java.dzone.com/news/how-griffon-helps-miglayout
Griffon And org.slf4j (Logback)
http://it-bubbles.wikidot.com/blog:3
Ozeki SMS
http://www.ozekisms.com/index.php?owpn=584
http://www.ozekisms.com/index.php?owpn=583
http://www.ozekisms.com/index.php?owpn=372&info=http_sms_api
http://www.ozekisms.com/index.php?owpn=355
http://www.ozekisms.com/index.php?owpn=203
1136-1246=10
Thursday, May 26, 2011
http://smslib.org/doc/
JGoodies Binding
http://jnb.ociweb.com/jnb/jnbJun2005.html
------------------------------------------------------------------------------------------
MigLayout
http://www.devx.com/Java/Article/38017/1954
Although MigLayout comes with a wide variety of keywords, there are certain ones that you will find yourself using most often, namely:
1006
JGoodies Binding
http://jnb.ociweb.com/jnb/jnbJun2005.html
------------------------------------------------------------------------------------------
MigLayout
http://www.devx.com/Java/Article/38017/1954
Although MigLayout comes with a wide variety of keywords, there are certain ones that you will find yourself using most often, namely:
- wrap: Used on a control (e.g., add(new JButton("OK"),"wrap")), it tells the layout to wrap to the next line.
- wrap x: Used as a global layout constraint (e.g., new MigLayout("wrap 3")), it tells the layout to automatically wrap to the next line every x controls that are added.
- span: Used on a control, it tells the control to occupy the remainder of the row.
- span x | span x y: Used on a control, it tells the layout that this control will occupy a cell that spans x columns (or x columns and y rows)
- split | split x: Used on a first control in a cell, it tells the layout manager to split the cell so that multiple controls can be added into it. The next x controls that will be added will automatically be in the same cell (or if the split is used without a value, it will wait until the next wrap keyword is encountered).
- grow: Used at a layout, column, row, or control level, it tells basically the layout to occupy the full available space. For example, if you wanted to define a layout with three columns where the middle one grows as the window expands, you would define it as new MigLayout("","[] [grow] []").
- top, left, bottom, right: These are basic vertical and horizontal alignment indicators that can be used at any level (layout, column, row, or control).
- flowy: It changes the flow from horizontal to vertical.
- sg x: Used on a control, sg stands for size group. It allows you to indicate that multiple controls should have the same size. This is very useful when you want all command buttons to be of the same width.
1006
Wednesday, May 25, 2011
Tuesday, May 24, 2011
Learn about JUnit then use it in NotificationServer project.
http://scaramoche.blogspot.com/2010/05/googles-guava-library-tutorial-part-1.html
Learn MigLayout
http://jnb.ociweb.com/jnb/jnbMay2009.html
http://scaramoche.blogspot.com/2010/05/googles-guava-library-tutorial-part-1.html
Learn MigLayout
http://jnb.ociweb.com/jnb/jnbMay2009.html
Monday, May 23, 2011
Learn about
- SLF4J (and Logback)
- JUnit
------------------------------------------
SLF4J
http://www.catosplace.net/blogs/personal/?p=442
http://blog.springsource.com/2009/12/04/logging-dependencies-in-spring/
http://blog.espenberntsen.net/
In addition to the extra flexibility, the API also contains a nice feature with support for arguments.
The old way with Log4J:
Both examples prints:
The difference is that SLF4J doesn’t merge the dynamic and static data into a new string in the debug method, but sends the dynamic part(s) as argument(s). If the logger is configured to only log messages with info level or higher, the debug message above gets discarded without any string processing and without the need for an extra if sentence for performance reasons.
------------------------------------------
JUnit
http://www.jaredrichardson.net/articles/junit-tutorial.html
http://efreedom.com/Question/1-4183021/Looking-Tutorial-Using-JUnit-Intellij-IDEA-9x
http://tutorials.jenkov.com/java-unit-testing/running-tests-with-idea.html
------------------------------------------
http://code.google.com/intl/id-ID/javadevtools/wbpro/layoutmanagers/swing/miglayout.html
------------------------------------------
Spring Recipes ~ A Problem-Solution Approach ( 2010 - 1430224991 )
until page 130
------------------------------------------
1003
sammy yusuf - asma Allah
- SLF4J (and Logback)
- JUnit
------------------------------------------
SLF4J
http://www.catosplace.net/blogs/personal/?p=442
http://blog.springsource.com/2009/12/04/logging-dependencies-in-spring/
http://blog.espenberntsen.net/
In addition to the extra flexibility, the API also contains a nice feature with support for arguments.
logger.debug("The date is: {}", date); |
if (logger.isDebugEnabled()) { |
logger.debug("The date is: " + date); |
} |
DEBUG [demo.Slf4jDemo] - <The date is: Sun Jun 06 11:34:11 CEST 2010> |
------------------------------------------
JUnit
http://www.jaredrichardson.net/articles/junit-tutorial.html
http://efreedom.com/Question/1-4183021/Looking-Tutorial-Using-JUnit-Intellij-IDEA-9x
http://tutorials.jenkov.com/java-unit-testing/running-tests-with-idea.html
------------------------------------------
http://code.google.com/intl/id-ID/javadevtools/wbpro/layoutmanagers/swing/miglayout.html
------------------------------------------
Spring Recipes ~ A Problem-Solution Approach ( 2010 - 1430224991 )
until page 130
------------------------------------------
1003
sammy yusuf - asma Allah
Friday, May 20, 2011
There are 2 options for broadcast :
1. server send message to a topic then the client must listen to the topic (clients also have to listen to their temp queue).
2. server send message to all temporary queue of connected clients, in this case clients don't have to listen to the topic.
We will chose option #1 as planned before.
Todo:
- make the list of clients taller (learn swing, layout mgr & etc.)
spClients.setBorder(new TitledBorder(BorderFactory.createEmptyBorder(), "Choose Client :"));
spClients.setPreferredSize(new Dimension(100, 200));
spClients.getViewport().add(lstClients);
pnClients.add(spClients);
1011
1. server send message to a topic then the client must listen to the topic (clients also have to listen to their temp queue).
2. server send message to all temporary queue of connected clients, in this case clients don't have to listen to the topic.
We will chose option #1 as planned before.
Todo:
- make the list of clients taller (learn swing, layout mgr & etc.)
spClients.setBorder(new TitledBorder(BorderFactory.createEmptyBorder(), "Choose Client :"));
spClients.setPreferredSize(new Dimension(100, 200));
spClients.getViewport().add(lstClients);
pnClients.add(spClients);
1011
Thursday, May 19, 2011
solution:
When a client connect, server create a temporary queue for the client.
When the client disconnect, the temporary queue will be deleted.
JMS book page 260 :
While any client may send messages on another client’s temporary queue, only the sessions that are associated with the JMS client connection that created the temporary queue may receive messages from it.
1002
When a client connect, server create a temporary queue for the client.
When the client disconnect, the temporary queue will be deleted.
JMS book page 260 :
While any client may send messages on another client’s temporary queue, only the sessions that are associated with the JMS client connection that created the temporary queue may receive messages from it.
1002
Thursday, May 12, 2011
Wednesday, May 11, 2011
Tuesday, May 10, 2011
Monday, May 9, 2011
Read
Swing, Second Edition ( 2003 - 193011088X )
until page 105
Read and try Swing Tutorial
until table
0830 -> 0930
Swing, Second Edition ( 2003 - 193011088X )
until page 105
Read and try Swing Tutorial
until table
0830 -> 0930
Friday, May 6, 2011
Thursday, May 5, 2011
Wednesday, May 4, 2011
Tuesday, May 3, 2011
* Spring
- Read and try Introduction to Spring using Swing tutorial
- Concept of Dependency Injection (Inversion of Control)
- Spring Hello World
* Swing
- Swing JForm
* Java
- Java Annotation
tomorow :
what's new in java 6 & 5
- Read and try Introduction to Spring using Swing tutorial
- Concept of Dependency Injection (Inversion of Control)
- Spring Hello World
* Swing
- Swing JForm
* Java
- Java Annotation
tomorow :
what's new in java 6 & 5
Subscribe to:
Posts (Atom)