class PropertyModule extends BaseAtlasModule {

    @Override
    public void writeTargetValue(AtlasInternalSession session) throws AtlasException {
        AtlasPropertyStrategy strategy = session.getAtlasPropertyStrategy() != null
                ? session.getAtlasPropertyStrategy() : this.defaultStrategy;
        Field targetField = session.head().getTargetField();
        if (targetField instanceof PropertyField) {
            PropertyField targetPropertyField = (PropertyField)targetField;
            strategy.writeProperty(session, targetPropertyField);
            if (LOG.isDebugEnabled()) {
                LOG.debug("Processed target PropertyField: Name={} Value={} Strategy={}",
                        targetPropertyField.getName(), targetPropertyField.getValue(),
                        strategy.getClass().getName());
            }
        }
    }

    public  PropertyModule(AtlasPropertyStrategy propertyStrategy);

}