f.setPermissions(parseListAuthorizations((Element) securities.item(0)));
@SuppressWarnings("unchecked") private static Feature parseFeatureMap(Map<String, Object> fMap) { Feature f = new Feature((String) fMap.get("uid")); f.setEnable((Boolean) fMap.get("enable")); f.setDescription((String) fMap.get("description")); f.setGroup((String) fMap.get("group")); // permissions List<String> perm = (ArrayList<String>) fMap.get("permissions"); f.setPermissions(new HashSet<String>()); if (perm != null) { f.getPermissions().addAll(perm); } // flipping strategy f.setFlippingStrategy(parseFlipStrategy(f.getUid(), (LinkedHashMap<String, Object>) fMap.get("flippingStrategy"))); // custom properties Map <String, Object > propertyMap = (Map < String, Object >) fMap.get("customProperties"); f.setCustomProperties(parseCustomProperties(propertyMap)); return f; }
fp.setPermissions(permissions);
fp.setPermissions(permissions);
fout.setPermissions(FeatureJsonParser.parsePermissions( Bytes.toString(result.getValue(B_FEATURES_CF_CORE, B_FEAT_ROLES))));
/** * Transform node FF4J_FEATURE into core Feature. * * @param nodeFeature * @return */ public static Feature fromNode2Feature(Node nodeFeature) { Map < String, Object > nodeProperties = nodeFeature.getAllProperties(); String featureID = (String) nodeFeature.getProperty(NODEFEATURE_ATT_UID); Boolean enable = (Boolean) nodeFeature.getProperty(NODEFEATURE_ATT_ENABLE); Feature feature = new Feature(featureID, enable); if (nodeProperties.containsKey(NODEFEATURE_ATT_DESCRIPTION)) { feature.setDescription((String) nodeFeature.getProperty(NODEFEATURE_ATT_DESCRIPTION)); } if (nodeProperties.containsKey(NODEFEATURE_ATT_ROLES)) { String[] roles = (String[]) nodeFeature.getProperty(NODEFEATURE_ATT_ROLES); feature.setPermissions(new HashSet<>(Arrays.asList(roles))); } return feature; }
Set<String> auths = gson.fromJson(permissions, new TypeToken<HashSet<String>>() { }.getType()); feature.setPermissions(auths);
/** * TDD. */ @Test public void testUpdateFeatureMoreAutorisation() { // Parameters Set<String> rights2 = new HashSet<String>(Arrays.asList(new String[] { ROLE_USER, ROLE_ADMIN })); // Given assertFf4j.assertThatFeatureExist(F1); assertFf4j.assertThatFeatureHasNotRole(F1, ROLE_ADMIN); // When Feature fpBis = testedStore.read(F1); fpBis.setPermissions(rights2); testedStore.update(fpBis); // Then assertFf4j.assertThatFeatureHasRole(F1, ROLE_USER); assertFf4j.assertThatFeatureHasRole(F1, ROLE_ADMIN); }
feat.setEnable(fApiBean.isEnable()); feat.setGroup(fApiBean.getGroup()); feat.setPermissions(new HashSet<String>(fApiBean.getPermissions()));
f.setEnable(1 == row.getInt(COL_FEAT_ENABLE)); f.setGroup(row.getString(COL_FEAT_GROUPNAME)); f.setPermissions(mapFeaturePermissions(row));
/** * Allow to update feature. * * @param featureId */ private void updateFeature(HttpServletRequest req, String featureId) { Feature old = ff4j.getFeatureStore().read(featureId); // Core Feature fp = new Feature(featureId, old.isEnable()); fp.setPermissions(old.getPermissions()); fp.setCustomProperties(old.getCustomProperties()); fp.setFlippingStrategy(buildFlippingStrategy(req, fp.getUid())); // Description final String featureDesc = req.getParameter(DESCRIPTION); if (Util.hasLength(featureDesc)) { fp.setDescription(featureDesc); } // GroupName final String groupName = req.getParameter(GROUPNAME); if (Util.hasLength(groupName)) { fp.setGroup(groupName); } // Creation ff4j.getFeatureStore().update(fp); }
/** {@inheritDoc} */ @Override public Feature fromStore(Document document) { String featUid = document.getString(FEATURE_UUID); boolean status = document.getBoolean(FEATURE_ENABLE); Feature f = new Feature(featUid, status); f.setDescription(document.getString(FEATURE_DESCRIPTION)); f.setGroup(document.getString(FEATURE_GROUPNAME)); f.setPermissions(mapAuthorization(document)); f.setFlippingStrategy(mapStrategy(featUid, document)); f.setCustomProperties(mapCustomProperties(document)); return f; }
/** * Convert {@link DBObject} to {@link Feature}. * * @param dbObject * document in mongodb. * @return */ public Feature mapFeature(DBObject dbObject) { String featUid = (String) dbObject.get(UUID); boolean status = (Boolean) dbObject.get(ENABLE); Feature f = new Feature(featUid, status); f.setDescription((String) dbObject.get(DESCRIPTION)); f.setGroup((String) dbObject.get(GROUPNAME)); f.setPermissions(mapAuthorization(dbObject)); f.setFlippingStrategy(mapStrategy(featUid, dbObject)); f.setCustomProperties(mapCustomProperties(dbObject)); return f; }
public FeatureActions createOrUpdateFeature(String featureUID, FeatureApiBean featureApiBean) { featureValidator.assertFeatureUIDIsNotBlank(featureApiBean.getUid()); featureValidator.assertFeatureIdsMatch(featureUID, featureApiBean.getUid()); Feature feature = new Feature(featureUID); feature.setDescription(featureApiBean.getDescription()); feature.setEnable(featureApiBean.isEnable()); feature.setGroup(featureApiBean.getGroup()); feature.setPermissions(new HashSet<String>(featureApiBean.getPermissions())); initFlippingStrategy(featureApiBean, feature); initProperties(featureApiBean, feature); if (ff4j.getFeatureStore().exist(featureUID)) { ff4j.getFeatureStore().update(feature); return FeatureActions.UPDATED; } else { ff4j.getFeatureStore().create(feature); return FeatureActions.CREATED; } }