Authors:
marcusn

LiquiBase EJB Integration

Products: IntelliJ IDEA

Vendor: ESN AB (www.esn.me)

Source code: com.esn.idea.liquibaseejb_3698.zip

LiquiBase EJB Integration Plug-in for IntelliJ IDEA. Compares LiquiBase Database ChangeLog with EJB entity model providing inspections and intentions adding to ChangeLog.

Source available at https://github.com/marcusn/LiquibaseEjb

Examples include:
* Add a new entity -> inspection to add liquibase addTable
* Add a new entity field -> inspection to add liquibase addColumn
* Change type of field -> inspection to add liquibase modifyColumn
* Rename field -> dialog to add liquibase renameColumn.

Other features:
* Liquibase EJB facet to configure and create changelog file.
* Context sensentive completion of table and column names within a changelog file.
* Tool window with schema as would be created by liquibase changelog as well as EJB model.
Downloads: 6912
Rating:
Participated in rating: 0
Version Compatible builds Date
1.03 117.117 08.05.2012 Download
1.02 99.32 29.01.2011 Download
1.01 85.9732 29.04.2009 Download
0.100 75.7941 12.01.2009 Download
0.93 75.7941 28.10.2008 Download
0.91 40.3000 25.10.2008 Download
8 updates are hidden show all updates
Screenshot #2267
Screenshot #2269
Screenshot #2266
Screenshot #2265
Screenshot #2268
Screenshot #2371
Screenshot #2270

Recent change notes

=== 1.03
* IDEA 11 === 1.02
* IDEA 10 === 1.01
* Fix for IDEA hanging on startup
=== 1.0
* IDEA 8.1 Version
=== 0.100
* [LBEJB-72] - Wrong naming of @ManyToMany columns when they start with entity names
* [LBEJB-73] - TIMESTAMP is used wrongly instead of DATETIME

=== 0.99
New Feature

* [LBEJB-2] - @Inheritance support
* [LBEJB-32] - @PrimaryKeyJoinColumn support
* [LBEJB-34] - @DiscriminatorValue,@DiscriminatorColumn support
* [LBEJB-44] - @MapKey support
=== 0.98
New Feature

* [LBEJB-26] - @AssociationOverride support
* [LBEJB-29] - @IdClass support
* [LBEJB-68] - Entity name support
=== 0.97
Bug

* [LBEJB-65] - byte[] suggests null as column type
* [LBEJB-66] - if @Column annotation is used on a field, the plugin recognize it as VARCHAR(255) no matter what other annotations or parameters in @Column says
* [LBEJB-70] - For long Strings CBLOB is used. Should be CLOB.

Improvement

* [LBEJB-58] - Merge handling of join columns for all relationship attributes

New Feature

* [LBEJB-24] - @JoinColumn support
* [LBEJB-25] - @JoinTable support
* [LBEJB-28] - Multicolumn foreign key support
* [LBEJB-69] - columnDefinition support
=== 0.96
Bug

* [LBEJB-18] - Creating table with fields having multiple primary key fields adds one pkconstraint per column
* [LBEJB-45] - Does not recognize column type changes in renameColumn tags in liquibase.xml
* [LBEJB-46] - Stacktrace in checkClass
* [LBEJB-49] - @ManyToOne columns in embedded keys get marked as autoincrement if target fields are
* [LBEJB-50] - AIOOBE when renaming "other side" attribute
* [LBEJB-51] - "Create foreign key" uses invalid column name
* [LBEJB-52] - Foreign key column gets "autoIncrement" attribute set in liquibase.xml
* [LBEJB-53] - *ToOne to fields with id field in superclass does not work
* [LBEJB-57] - Nullpointer in ColumnInspection
* [LBEJB-61] - @Lob gives TEXT type instead of BLOB
* [LBEJB-62] - renameColumn tags are missing columnDataType
* [LBEJB-64] - IndexOutOfBoundsException in AnyToOneModel

Improvement

* [LBEJB-63] - Use liquibase "generic" data types instead of f.i. TEXT


=== 0.95
Bug
* [LBEJB-23] - Refactoring: Extract subclasses of class and member models
* [LBEJB-36] - QuickFix becomes add unique constraint when it should be drop
* [LBEJB-37] - Modify column type does not mention column name
* [LBEJB-38] - renameColumn may cause ArrayIndexOutOfBoundsException
* [LBEJB-39] - Race when applying quickfix, sometimes same fix appears again

Improvement
* [LBEJB-40] - Use addUniqueConstraint instead of using constraints tag when creating columns

New Feature
* [LBEJB-22] - Class rename listener should use new databasemodel
* [LBEJB-27] - @Table support
* [LBEJB-30] - @SecondaryTable support
* [LBEJB-31] - @Version support
* [LBEJB-33] - @TableGenerator support
* [LBEJB-43] - optional support in @Basic
* [LBEJB-42] - @Basic support

=== 0.94
Bug

* [LBEJB-16] - Add index without name causes exception
* [LBEJB-17] - liquibase.xml in output directories are detected as facet
* [LBEJB-19] - Ids generated are sometimes not unique

New Feature

* [LBEJB-3] - Support for @AttributeOverride and @AttributeOverrides
* [LBEJB-4] - @OneToMany without mappedBy
* [LBEJB-5] - @ManyToMany support
* [LBEJB-20] - EJB model view
* [LBEJB-21] - @Column name support

=== 0.93
* Fixed bug with @OneToOne/@OneToMany and mappedBy
=== 0.92
* Null checks

General usage instructions

Works for any module with JPA facet.

To add liquibase support to project: Add Liquibase Facet and click "Create.." in settings to create a new changelog file.

If you have a changelog file in your project, the Liquibase EJB Facet will be autodetected.

Source code is at git://github.com/marcusn/LiquibaseEjb.git