hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jean-Daniel Cryans (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HBASE-765) Adding basic Spring support to IndexConfiguration class.
Date Wed, 23 Jul 2008 16:42:31 GMT

     [ https://issues.apache.org/jira/browse/HBASE-765?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jean-Daniel Cryans updated HBASE-765:
-------------------------------------

    Fix Version/s:     (was: 0.1.4)
                       (was: 0.2.0)

Removed 0.2.0 and 0.1.4 since we have a feature freeze for 0.2.0 and I don't think we'll see
a 0.1.4

> Adding basic Spring support to IndexConfiguration class.
> --------------------------------------------------------
>
>                 Key: HBASE-765
>                 URL: https://issues.apache.org/jira/browse/HBASE-765
>             Project: Hadoop HBase
>          Issue Type: Improvement
>          Components: mapred
>    Affects Versions: 0.16.0, 0.1.0, 0.1.1, 0.1.2, 0.1.3
>         Environment: n/a
>            Reporter: Ryan Smith
>             Fix For: 0.2.1, 0.3.0
>
>   Original Estimate: 0.33h
>  Remaining Estimate: 0.33h
>
> Spring can configure classes/object graphs via xml.  I am pretty much able to configure
the entire MR object graph to launch MR jobs via spring except class IndexConfiguration.java.
So instead of only using addFromXML() to configure IndexConfiguration, it would be nice to
add support so Spring could set all class variables needed for initialization in IndexConfiguration
without invoking addFromXML().  
> Since the class IndexConfiguration already has setters and getters for almost all its
members, it's almost compliant for a spring configuration bean except one issue: no ability
to configure columnMap outside of calling addFromXML().  The easiest way i can figure is to
allow a setter for the column map and put any logic for checking the map integrity there.
 By adding these 2 methods to IndexConfiguration.java , it should solve the issue.
> 	public void setColumnConfs(List<ColumnConf> columnConfList) {
> 		setColumnConfs(columnConfList, true);
> 	}
> 	
> 	public void setColumnConfs(List<ColumnConf> columnConfList, boolean override)
{
> 		for (ColumnConf columnConf: columnConfList) {
> 			if (columnConf.getProperty(HBASE_COLUMN_NAME) != null) {
> 				if (getColumnMap().containsKey(columnConf.getProperty(HBASE_COLUMN_NAME)) ) {
> 					if (override) {
> 						log.info("overwriting an exisitng column name map.");
> 						this.columnMap.put(columnConf.getProperty(HBASE_COLUMN_NAME), columnConf);
> 					}
> 				} else {
> 					log.info("adding columnConf for: " + columnConf.getProperty(HBASE_COLUMN_NAME));
> 		        	this.columnMap.put(columnConf.getProperty(HBASE_COLUMN_NAME), columnConf);
> 				}
> 		    } else {
> 		        log.warn("bad column conf: name not specified");
> 		    }
> 		}
> 	}
> We could possibly also have addFromXML() reference these new methods to add config to
columnMap or refactor out logic into another method so addFromXML and setColumnConfs share
the same logic.
> Ive never submitted a patch via JIRA before so if i need to do something else, please
met me know.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message